All posts by Julie

More goodies for Developers in SQL Server 2008

A few days ago I wrote that I had learned about some of the new goodies in SQL Server 2008 that would be of interest to developers after watching Rick Dyess’ video, What about Developers? SQL Server 2008 and the Development Environment”

It must have been a busy day last December when another similarly enlightening email arrived in my inbox. Michael Campbell wrote a post for .NET Briefing entitled “SQL Server 2008: What’s New for Developers?”

Surprisingly there’s only a small overlap between the features that Rick highlights and those which Michael highlights, which means I get to learn more stuff! πŸ™‚

While I have this in my inbox, I can’t find the post anywhere on the originating blog on the WindowsDevPro website, so I’ll highlight the things Michael wrote about:

The MERGE statement in t-sql lets you provide data for the database without having to predetermine if it’s an insert or an update. Today you first have to query to see if the primary key exists or not. If not, do an Insert, otherwise do an update. Very cool.

Table-Valued parameters lets you pass shaped data as parameters to a stored procedure. Cool again, or as Michaeal calls it, “wicked”.

While Rick also talked about the HierarchyID, Michael pointed out something interesting about it: What’s cool, or interesting, about this data type though, is that it’s an intrinsic CLR data-type – meaning that Microsoft is starting to leverage Common Language Runtime functionality natively. I wonder what other CLR additions we’ll see in the future.”

Intellisense, though I’m already a big fan of Red-Gate’s SQL Prompt, which constantly saves me from having to go poke around tables that I haven’t worked with in eons before I start building my queries, not to mention the help wiht operators and functions. I wonder how the built in Intellisense compares?

GROUPING SETS which work with teh GROUP BY clause to simplify grouping that you might otherwise perform by using a UNION ALL clause on a bunch of GROUP BY clauses.

XXL User Defined Data Types (the XXL is my term, not official). UDDTs can exceed 8000 bytes.

Thanks Mikey! πŸ™‚

 

SQL Server 2008: What about Developers? video

Rick Dyess from Solid Quality Learning recorded a quick (12 minute) talking-head video explaining the new features of SQL Server 2008 that would be of interest to developers. It’s called “What about Developers? SQL Server 2008 and the Development Environment”  As I haven’t been paying huge attention to SS2008, I definitely wanted to see this.

You may have heard about some new date types: e.g. a Date that you don’t constantly have to strip the time out of and a time that you don’t have to extract out of a DateTime field – thank heavens!

There’s also a file stream type that stores the stream in the file system but keeps a pointer in the database to it. We often do this manually. So now SQL Server will take care of the plumbing for you.

I hadn’t been aware of the hierarchical type which lets you keep track of hierarchies between objects. I have to actually see this in action to understand it better.

There is also a geospatial type that will probably make a lot of people happy. It’s over my head. πŸ™‚

SQL Server 2008 takes care of a problem that I wasn’t even aware of. Rick explains that when you have a null in a column, it will take up the full space allocated to the column. That’s a lot of wasted space for containing “nothing”. SO that’s been fixed. Null will take up no space.

There are other features that he quickly reviews in the video such as improvements to Service Broker (e.g. it knows how to prioritize the services).

One thing I found confusing was the way he presented LINQ to SQL and Entity Framework (including EF’s object services). LINQ to SQL is a feature that is [extremely] useful for developers accessing a SQL Server Database. Entity Framework is a feature that is [extremely] useful for developers accessing any database which has an E.F. provider available. Rick presented these as “new features of SQL Server 2008” although I don’t really think he actually meant to suggest that these are features OF SQL Server 2008. But unfortunately, that’s how the message comes across. It’s not the end of the world, but a bit misleading (again, I believe wholly unintentional).There’s also “coming soon” book listed on Amazon with the confusing (to me) title of “Pro SQL Server 2008 Entity Framework”, from APress. But then again, Roger Jennings pointed out that the title of my own book “Programming Entity Framework” is odd given that Dave Sceppa’s book is called “Programming the Microsoft ADO.NET Entity Framework”. I know my title was created by O’Reilly to fit into the “Programming” series at O’Reilly, so perhaps the APress book is following some in-house pattern as well.

Anyway, the video from Rick was a very quick and helpful way for me to do a quick, high-level, catch-up.

Some really handy Crystal Reports Tips & Tricks

Jeff McWherter wrote an article on ASPAlliance called Six Quick Crystal Reports Design Tips.

When I first read through them I laughed at two in particular.

One was how to get check boxes to appear on a report. I struggled with this one a few years ago and now use it frequently. Why didn’t I just ask Jeff back then? (Oh yea, I didn’t know him)

The other is using a DRAFT watermark. I have been doing this for a long time, however I am using a jpeg and because of the way CR handles embedded images, the JPEG (even one that is 24kb) adds about 100 – 300 KB to the DLL. I spent a LOT of time trying to deal with this. Jeff shows how to just use text. TEXT! I never even thought of this! I will definitely be changing those reports.

The other four were all new to me!

IdeaBlade has implemented Entity Framework into their DevForce Framework

While many of us are still struggling to get our entity objects across tiers, keep change tracking in place, keep graphs together, DevForce seems to have figured it out.

They are now touting their new DEF (DevForce Entity Framework) which going into Beta 1 soon.

You can sign up for the beta and check out some of their resources here.

Me? I’ll still struggle. I want to  figure (and lavish the process of figuring) out how it works. Really, I don’t want to ski; I don’t want to hang out with my dogs or hubby; I certainly don’t EVER want to go on a vacation. Nope, no shortcuts for moi! πŸ™‚

There’s more to tell, but I’m supposed to be prepping for my user group presentation that’s tonight.

What I’m happy about is that it’s that this can be done in a flexible, reusable way; even if it’s still a little (yes, I know that’s probably a bit of an understatement, as was that) hard right now.

ADO.NET 3.5 Data Access Guidance at Vermont.NET on Monday

Last fall, I presented a 3 hour workshop at DevConnections, comparing and contrasting ADO.NET, LINQ to SQL and Entity Framework’s LINQ to Entities, Object Services and EntityClient as well as comparing LINQ to Entities to Entity SQL, then providing recommendations for when one makes sense over the others in various scenarios. It was a really fun session to present.

It was a little daunting to pull together, though, because even Microsoft hadn’t provided this guidance at that point beyond “LINQ to SQL is for RAD and EF is for the Enterprise”. There were a few great forum comments by Mike Pizzo which were helpful.

Coincidentally, (definitely coincidence, I’m not trying to suggest otherwise) Diego Vega, a PM on the EF team, wrote a great post on the the API part of the topic three days after I did the session. And then followed it up in December with a post about LINQ to Entities vs Entity SQL. I laughed that it was in response to a question by John Papa and emailed John to say “geeze, man, you were at the conference, and you were a speaker. You could have come to my workshop for free!” John had presented two great intro sessions on Entity Framework as part of the Data Access track.

So, I am presenting this as a shorter talk at Vermont.NET tomorrow night. We’ll see how short. I may just have someone lock the doors when I get started. πŸ™‚

I’ll be doing this session again in May at DevTeach and June at TEchEd. I expect it to evolve by June.

DataDeveloper.NET – A resource for developers interested in Data Access

Ahh – but who needs data anyway, right?

Everybody! πŸ™‚

There’s a new website in town filled with news from teh blogosphere, articles, tutorials and an extensive list of resources for doing Data Access.

It’s called DataDeveloper.NET and can be found at http://datadeveloper.net (leave out the www)

Yours truly has had fun writing bunches of Entity Framework tutorials.

There’s also a great article by Matthieu Mezil called Entity Data Mapping, Beyond the Basics.

Dave and Al no more (sniff sniff)

I think the appropriate mourning period is over.

Last week when Alex Homer and I were discussion the Data Access track at the upcoming DevConnections conference, he told me that he’s going to work for THE MAN. He’s taken a job on the Patterns and Practices Team for whom he has been contracting for a few years.

The next day there was a post on his blog called “Selling my soul“.

It’s not like I’ve been reading Dave & Al’s books since I was in diapers or anything (I believe Dave is younger than me anyway) but it’s definitely a huge deal for them and for anyone who has known them as Dave and AL or Al and Dave for such a long time. Sniff sniff.

It’s not a drama or anything so don’t’ watch for it to show up in the next issue of Soap Opera Digest. Just a big change for both of them who have teamed up for years.

Dave follows up on this blog post, The End of an Era.

My biggest worry is not being able to count on hanging out with Alex at future DevCOnnections. This has always been a problem when friends who I see at conferences go to work for Microsoft. They aren’t free to travel about quite as much. But at least I’ll still have Dave.

They’ll always be Dave and Al, to me.

Okay I have to get back to the kleenex now. πŸ˜‰