Okay, today I had to put together a report that some users could access to pull a very simple dataset out of the database. I did it in ASP.NET, and it took, literally, 5 minutes, 3 of which was spent playing with my new toy, the SmartPaster Addin. I'm serious, it was like, asp:textbox, asp:textbox, asp:button, asp:datagrid, then open connection, dump command to a SqlDataReader, bind SqlDataReader to datagrid, done.

It then took upwards of 3 hours to roll it out.

When I put it on the server, It wouldn't connect to the database. It's a new environment, and this is the first thing I have deployed to that network. The database server was set up by our LIMS vendor, and as such, I had never even looked at it. Well, it turns out, after hours of trying to troubleshoot it, that the database was set to listen on a non-default port. I was kicking myself, thinking how simple that was. But then again, I have never run into that in 8 years of web development. Hell, I didn't even know until just recently that you could specify a port in the connection string. I'm sure on some level I would have assumed that you could, but it just never came up. The problem was just so simple that I spent all that time poking around in server configurations, routing and port management, Google searching, and whatnot. SQL listening on a different port never even crossed my mind.

Funny how experiences like this totally reshape your thinking. If I ever run into it again, you can be sure that the next time I have to connect to a new and unknown database that I will just load up Enterprise Manager and check the ports and other settings. But today, it took me forever, because my past experiences have never included needing to make such a check.