Introduction / Which Database?
Subtitles of the Movie
Now there's one question that continues to pop up among new developers and that one is which Database should I be using with my applications? And I get a lot of emails from people from my videos at VTC asking this question, I get a lot of it in live classes and so forth. It won't take a whole lot of experience for you to pretty much know with a lot of conviction what you want to use. Let me go ahead and cover this here so that there's no confusion and I can save you some headache and some heartache hopefully. You've got a number of database options out there on the market and the problem is the marketing departments for each of these products will tell you how cool they are and what they do. They tend to not tell you where the roadblocks are, or when the bridge goes out and all that kind of stuff, so, let me go through this here. The first option that most people tend to gravitate to is Microsoft Access. Now, a lot of reasons for this. It's part of their Office application, it's got a very easy-to-use interface; since people have had it they've been tinkering with it. Most small businesses start off playing with Access. Microsoft's made it very easy, but you need to understand for the most part, if you're doing any kind of commercial application, even if it's your own small business, you're probably going to get yourself in trouble with this if you're not very careful and here's why. It's a good product but it's not a fully relational database. Now there's a lot of people, even some Microsoft folks, who will take me out in the parking lot for saying things like this, but understand that Access is an excellent option for very small applications that are not going to grow and that have very few concurrent connections. Now a lot of people will build an Access database and their business starts to grow and more and more people start connecting and suddenly this thing begins to wobble and go down and get slow. Access was never meant for more than just a few and by that I mean 10 or less, simultaneous or concurrent connections to that database. Access really should be your last choice. If it's your only choice then its' your only choice and go for it, but at some point, as your application or your company grows, you're going to have to Port that out into something else. My strongest suggestion for you, if you don't have a full featured database like SQL Server, Oracle, or one of those and it's understandable because those things are expensive, get SQL Server Express. You can download it for free, I've already shown you in a couple of different videos, we talked about it in Getting Set Up, talked about it in maybe Visual Studio Overview, or something like that, but anyway, you can download SQL Server Express free from Microsoft's Web site, and I just want to tell you about some of the limitations of it. You're not getting a full SQL Server product here but you're getting enough to do some really cool things. First of all, this thing will only utilize one CPU, so it doesn't matter how many CPUs you have in your server or machine, you're only going to get services of one CPU. Next thing, it's only going to use 1 gigabyte for its data cache and it's only going to use 1 gigabyte no matter how much you have in your machine and you can't tune it past this, so keep that in mind. Now what that's going to translate to is, again, as more and more people begin to use this thing and connect to it simultaneously, you're going to notice a performance hit. Keep that in mind and usually you can use SQL Server Express to develop, get your application running and then hopefully you'll be able to generate enough income that you can go purchase the full version. Here's the main thing you need to watch on SQL Server Express. You have a limit of 4 gigabytes. That's your maximum database size. Now 4 gigabytes, depending on what you're doing, might be a bunch of space for you or it might not nearly be enough. You'll have to kind of look at it and see. But if you're about to build some, you know, 200-table of whatever, unless you're doing this just for production then you're going to have a problem with SQL Express, so just understand the limitation. Now, the next thing though, this good news is, a database that you create in SQL Server Express is very easy to move over into the full SQL version. Past that we jump up into the SQL Server Full Edition type things. Now you have to pay licensing on this and it can get expensive. The SQL Server Enterprise Edition, which is for large companies and very active databases, but just to give you a hint, you can see licensing fees per processor on the Enterprise Edition anywhere between 9 and 15 thousand dollars, and that may change by the time you get this video but that's kind of the going rate when we shot this thing, so. Now, what do you get with SQL Server and you start paying for it, you get unlimited data storage. You're really limited by your disk space and your disk storage technology, so you can go terabytes if you need to. You can have multiple CPU support, different versions support different numbers of CPUs, but you're, for the most part, limitless almost. That's a technical term: for the most part limitless almost. It's kind of a political term, actually. You have a number of Advanced tools in SQL Server, you have something called Profiler which is really a network analyzer for a SQL Server. You have all kinds of scheduling tools to set up jobs and have them run automatically on a schedule and so forth. Then, of course, you have Oracle. Oracle is an absolutely fantastic Enterprise Database product and again, it tends to be more expensive than SQL Server. Get three or four database people in a room and ask them which is better, SQL or Oracle and there will be a fight, and the Oracle people are especially loyal to their product and rightfully so. It's an excellent product. Past that there are others out there. IBM has some products and you'll see some other ones. But the bottom line I want to tell you here is, if you can get your hands on a SQL Server Full Edition go for it. If not I would suggest SQL Server Express and absolute last choice and I really don't know why you'd do it since SQL Express is free, is Access. So it'll give you a clue on where to go with the databases that you use with your ASP.NET or with any of your applications, actually.
Tutorial Information
| Course: | Microsoft ASP.NET 3.5 |
| Author: | Mark Long |
| SKU: | 34102 |
| ISBN: | 1-93633412-7 |
| Release Date: | 2010-03-24 |
| Duration: | 6 hrs / 69 lessons |
| Work Files: |
Yes |
| Captions: | Available on CD and Online University |
| Compatibility: |
Vista/XP/2000, OS X, Linux QuickTime 7, Flash 8 |
VTC Sign up & Benefits
- Unlimited Access
- 98,729 Video Tutorials (23,265 free)
- Video Available as Flash or QuickTime
- Over 1026 Courses
- $30 for One Month Access
- Multi-User Discounts Available
United States 