tag:blogger.com,1999:blog-191775882008-07-16T20:14:20.121-04:00John's .NET/SQL Brain DumpJohn B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comBlogger22125tag:blogger.com,1999:blog-19177588.post-6990523969407298732007-04-30T11:59:00.000-04:002007-05-04T10:22:25.981-04:00Moving to blogs.hydrussoftware.comI've been spending some time over the last few months getting up to speed on Community Server, and with its blogging capabilites, we at Hydrus Software thought it best to move our blogs onto an in-house CS installation. So, all of my future blogging activities will be conducted on John's (new) Brain Dump. I hope to see you all there.(By the way, I was able to update my CSS vs. table layout John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-87446662291313347592007-03-29T08:50:00.001-04:002007-03-29T08:50:37.919-04:00Rapid-Fire Highlights of SD West 2007I returned from a full week of SD West on Saturday, and it was a fantastic experience! While I don't have time to dive into all of the details of the trip, I do want to get the highlights out of the way: Juval Lowy and WCF: I spent the first full day of the conference listening to Juval Lowy discuss Windows Communication Foundation in the .NET Framework 3.0. His explanation of all that you canJohn B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-36168572808914530802007-03-28T10:50:00.001-04:002007-03-28T10:50:27.315-04:00Understanding ADO.NET OrcasIf you're like me and enjoy diving into a technology before reading the manual, then you may have experienced confusion when working with the version of ADO.NET Orcas (formerly ADO.NET vNext). I've been playing with the March CTP of Orcas for a couple of days now, and I finally believe that I have the different ADO.NET features sorted out. I was planning to write my own post to summarize the John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-9709688703229045502007-03-08T08:52:00.001-05:002007-03-08T08:53:35.985-05:00Code Formatter for Windows Live WriterHere's a handy tool for all of you code-slinging bloggers out there. Steve Dunn has created a Code Formatter for Windows Live Writer, which allows you to paste formatted code directly into your blog posts. It supports C#, XML, and other languages, and should make your blogging experience far easier. Check it out.Thanks to Roy Osherove for pointing this out!John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1698432148794826902006-12-20T10:48:00.000-05:002006-12-21T11:12:12.311-05:00Database Vulnerabilities: SQL Server 2005 vs. OracleI'm not usually one to grab the coattails of other bloggers, but this post is worth mentioning. It indicates that SQL Server 2005 has not had a single disclosed vulnerability in its first year of release, which is an impressive feat. Heck, I've found vulnerabilities and errors in software I've released in the first ten minutes.
SQL Server 2005 - 1 Year And Not Yet Counting...
John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1165373906602515042006-12-05T21:55:00.000-05:002006-12-06T22:34:25.849-05:00Escaping Tables With CSSI must say that I've become a fan of CSS and the ideas behind the semantic web. I like the notion of table-less design, using <DIV> and <SPAN> elements everywhere to make my HTML clean and self-descriptive.Juxtaposed against my desire to create slick CSS, though, are the desires of my employers. I'm a consultant, and my job is to get things done. The clients that I work for are businesspeople; John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1157658158029933012006-09-07T15:37:00.000-04:002006-09-07T15:42:38.203-04:00Now Enabled for Windows Live Alerts!Now if you want to be the first of your friends to know when I update my blog, just click the link in the right-hand navigation of the blog, and you can be notified via Live Messenger, email, or cell phone whenever I add some content.I still can't get Live Mail to work, by the way, but I saw this on DotNetKicks and thought it would be a nifty gizmo to put on here.John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1156781106466331132006-08-28T12:04:00.000-04:002006-08-28T12:08:18.753-04:00GMail vs. Windows Live MailAs you probably know by now, I'm a Microsoft fan. My company is a Microsoft certified partner, I develop using Microsoft technologies, and in general, I really like what I get from them.That being said, when GMail appeared, I was looking for a webmail service to separate my work and personal email, and so I signed up for an account. I like it very much: labels are cool, searching is great (whatJohn B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1153943192008910442006-07-26T15:39:00.000-04:002006-08-29T13:26:07.023-04:00NDoc 2.0 is Dead!I just got an email from Kevin Downs, chief of the NDoc .NET code documentation project, saying that he is no longer supporting development of the 2.0 version of the software. His primary reasons for quitting are (1) a lack of community support (read: $$$) for the project, and (2) a mail-bomb attack directed at him personally, apparently related to the fact that he's not working as fast as John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1152716934481711542006-07-12T10:47:00.000-04:002006-07-12T11:21:25.166-04:00VB.NET and Block-Scoped VariablesWhen I was first introduced to .NET, I learned C#. I came from a C++ and Java background, and so C# seemed like the most natural language for me to choose for development. My entire development team worked in C#, and everything was beautiful.Then, my company won a contract to perform a major system rewrite and integration project, and the developers that we are working with here came from VB. John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1152279539850976662006-07-07T09:29:00.000-04:002006-07-07T09:38:59.860-04:00Cross-Browser Implementation of DOM Range & SelectionI'm very glad to find somebody writing quality code to ease the pain of creating cross-browser JavaScript. I've been working on an application that has DOM selections and ranges at its center, and was very pleased to find Jorgen Horstink's implementation of the DOM Range and Selection objects for IE and other non-standards compliant browsers. Per Jorgen's own comments, the implementation of John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1150378414245534682006-06-15T09:02:00.000-04:002006-06-20T08:42:16.063-04:00Finding the Current and Last Page Numbers of a Crystal Report in ASP.NET 1.1I've been banging my head for about a week on the problem of determining the last page number of a Crystal Report viewed through the web ReportViewer class. You would think that the report viewer class, which has methods like ShowLastPage and ShowNextPage would have properties like CurrentPageNumber and LastPageNumber, but alas, you would be wrong. So I had to roll my own implementation of John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1148669638228837772006-05-26T14:49:00.000-04:002006-07-11T15:10:25.066-04:00SQL Trick: Finding Integers in Character ColumnsQ: What WHERE condition do you use to find all values in a column that contain only numbers? (No decimal points, no minus signs, just 0-9.A: [column name ] NOT LIKE '%[^0-9]%'This is the kind of thing that I'll forget a year from now when I need it again.UPDATE: 7/11/06I ran into the need for this again, and I thought I should note that this technique can be used to check that a column contains John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1148490514880665762006-05-24T12:56:00.000-04:002006-05-26T16:58:34.270-04:00DataSet Toolkit: Can't Live Without It!I haven't been this excited about the release of a product, but I really think that this one will make the lives of developers a whole lot easier. The DataSet Toolkit from Hydrus Software is an intelligent framework that makes data access in .NET applications a breeze. All you need to do is to define a DataSet that resembles the structure of your SQL database (SQL Server, Oracle, or whatever), John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1148301737999973492006-05-22T08:33:00.000-04:002006-05-22T08:42:18.010-04:00Free Intellisense for SQL Server!
I read this morning that Red Gate Software has released a *free* program that adds Intellisense to your standard SQL editors (Query Analyzer, Enterprise Manager, Management Studio and VS). I tried it out, and had it up and running in less than five minutes. Since I write a lot of queries everyday, and often find myself retyping the same things over and over, this is sure to be a huge timesaverJohn B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1147283408512209732006-05-10T13:33:00.000-04:002006-05-26T18:32:01.196-04:00Optional, Multi-Column DataSet RelationshipsPerhaps I'm a moron and everybody else in the .NET development community knew this before I did. But I will confess that until today, I had no idea how to create optional, multi-column relationships in strongly typed data sets. I knew that you can use the <xs:keyref> element to create multi-column relationships, but these relationships come with foreign keys, making them required. I also knew John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1133984378769170282005-12-07T14:13:00.000-05:002005-12-07T14:41:28.180-05:00Typed DataSet Woes (Auto-Increment Keys)I use typed datasets in my .NET solutions quite a bit. Since most of the applications that I build have a lot of pull-data-modify-it-save-it-back processing, the dataset provides me with a simple way to get that job done.Sometimes, though, the tool that converts XSD schemas into typed datasets will crap out, and the errors that it reports can be less than helpful. Consider this error, for exampleJohn B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1133894925402376852005-12-06T13:39:00.000-05:002005-12-07T14:41:50.226-05:00Wintellect's BlogI don't really like the idea of creating a blog that is just filled with links to other blogs, but I'm willing to make an exception for Wintellog, from the folks at Wintellect. For those of you who don't know, Wintellect has been associated with some of .NET books available.Their titles include Applied Microsoft .NET Framework Programming by Jeffrey Richter, which is one of the tomes of our tradeJohn B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1133387676430512022005-11-30T16:47:00.000-05:002005-11-30T16:58:21.963-05:00Moving SQL Server ObjectsWell, I'm preparing for a significant move to production tomorrow morning, including a bunch of new database code. I really can't remember how I was confident that I moved everything before I discovered Red Gate's SQL Compare and SQL Data Compare. These tools make database migration a breeze, and I recommend them for anyone who needs to move DDL or domain data between environments.I still need John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1132688263535525802005-11-23T12:33:00.000-05:002007-04-23T08:54:58.817-04:005 Reasons to use Indexed ViewsI love indexed views in SQL Server! My current project is a fairly large system for a government entity, containing over 70 live tables, and so the queries that I have written are intense. Many of them are so intense, in fact, that the database server's processor has decided to take its sweet old time producing results. I've been able to mitigate (but not eliminate, unfortunately) a lot of the John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1132588429175900742005-11-21T12:32:00.000-05:002005-11-23T16:41:52.030-05:00Avoiding Cursors with Superclass-Subclass TablesEver since I read Itzik Ben-Gan's article in SQL Server Magazine about changing cursor-based logic to set-based logic, I've avidly sought to avoiding using cursors in my SQL procedures. One of the biggest problems that I've faced on this front is the issue of inserting records into a superclass-subclass table structure. Here's an example of the table structure that I'm talking about:
I spent John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.comtag:blogger.com,1999:blog-19177588.post-1132587758481475802005-11-21T10:43:00.000-05:002007-04-23T08:48:05.116-04:00First PostI don't have anything useful to say at this point, because I'm working. But I want to have something up here so that I can see what my blog looks like with a post.I have some thoughts about partitioning and indexed views in SQL Server 2000 that I'm itching to post, but they'll have to wait until I get a bit more time.John B.http://www.blogger.com/profile/04811729082606032907noreply@blogger.com