MSSQL 2005 Finally Released
mnovotny writes "Computerworld reports that Microsoft is finally set to release their belated SQL Server 2005. From the article: 'Despite a two-year delay, several users who have tested the software cited the improved performance and new functionality it brings as positive developments that likely will convince them to upgrade soon.' The free version can be downloaded directly from Microsoft."
Before the Anti-Microsoft redirect gets out. Please take into accounts. Most People who choose MS SQL Server already have a windows network, Oracle is to expensive for their needs, MySQL 5 just was released with most of the functionality that was in MS SQL 2000, Not many good tools for PostGreSQL, Easier to integrate with .NET, and gives PHB the warm and fuzzies. I have been working with MS SQL 2000 and I must say I was surprising pleased with it, other then the POS that is called DTS, I never had any problems with SQL server, with it crashing or problems handling a lot of data, or configuring security. My only Fear with MS SQL 2005 is that it will break so much compatibility that we well need to redo a lot of stored procedures and all our working around for DTS.
MS SQL Server Yes it is closed sources, I don't know what type of security holes they will find in it, It is defiantly bloated because it will not fit 5 1/2 single density floppy disk with enough rooms for a 2000 record table. If you already have MS SQL 2000 and in a year or so you need to upgrade it will probably be easer to go to 2005 them migrating to the others.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
You can download 'web installers' I believe, but ISO images are here
Microsoft has a serious Beta Testing problem. Partially due to the fact there is little incentive for the Beta Testers to release the bugs, and Microsoft arrogance. Beta Testers should should be rewarded with their work with free copies of the final version, plus they shouldn't have to pay Microsoft for the honor of Beta Testing. Most of the Beta Testers I have seen are people who just want to learn the tool before it is released to the public so they get those jobs that are just popping up asking for people with 2 years of MS SQL 2005 experience.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
The limited stored proc language that SQL server had before was actually a good thing; you could do some limited stuff in the DB. Thus, you weren't often able to give in to the tendency to stick application logic in the database tier.
And this quote pretty much says it all: Raichura said the support for Microsoft's Common Language Runtime technology via Visual Studio will let him avoid having to go to multiple developers with different specialties. "I can natively write stored procedures straight into software," he said. "This increases my resource pool because it reduces the distinction between software developers and architects."
Read: Now, I can pay people less to create a complete fucking pigsty that will perform well enough that the app will appear largely stable.
I was under the (apparently mistaken) impression that this was already out.. our system admin called our software supplier today and the person on the other end of the line basically said that they have the prices for the product but Microsoft has told them not to actually divulge the pricing information until the end of the month! Excuse me??
So what gives. The product is apparently out.. we want to buy it.. Microsoft have set the prices out.. so can we buy it or what?!
The favourable (p)reviews for SQL 2005 seem to be in stark contrast to those for Visual Studio 2005.. bloated, resource hungry, and bug laden.. apparently.
"Hey! Unless this is a nude love-in, get the hell off my property!!"
We were talking about this today. We have a need to cluster our main Intranet server and our current SQL 2000 Standard license doesn't allow clustering. With Enterprise, you can cluster up to four. That all changes with SQL 2005 - you can have a two node cluster with the standard edition, which is far cheaper.
The catch is whether or not we want to be one of the first servers to adopt SQL 2005. New releases scare the hell out of me, but we've also had some recent downtimes that a clustered server might have helped with.
Decisions, decisions . . .
This is really MSSQL 2003?
I installed SQL Server 2005 Enterprise downloaded from the MSDN last week.
The Management Studio Interface is pretty good, although not as responsive as I would like on a 2.8 GHz P4. Thankfully stored procedures can be edited in a non-modal window (in tabs).
SQL server also comes with MSXML 6 and SQLXML4. The upgrade analysis tool is very neat.
Microsoft Visual Studio 2005 Professional is much more CPU intensive than the Management Studio. They do look rather similar.
Microsoft Visual SourceSafe 2005 has an updated inteface, however many screens still look the same.
Free? Only if you buy their other products.
Get your own free personal location tracker
Clearly, this (as well as news of Oracle's "free/lite" version of 10g), are good news... that Open Source projects like MySQL, PHP, PostgreSQL, etc are forcing the "cathedral" software shops to re-examine their ways, since they (Microsoft & others) can't rely on piracy anymore (due to impacted profits) to keep the "pipeline full" and "mindshare". It's good for the closed source developers, and ultimately it will be good for OSS developers, as OSS entries in these fields mature. Competition is good, and the developers benefit.
Make sure everyone's vote counts: Verified Voting
And paint them even further into a corner such that migration to another DB is next to impossible.
From the at-least-it’s-not-December-31-yet dept.
Quantum materiae materietur marmota monax si marmota monax materiam possit materiari?
Thats pretty cool. I wish MySQL would give away free copies.......oh wait......!!!!!!
Giggidy Giggidy Gigg-a-dy
The only time I really get annoyed with the limits of standard SQL stored procedures is when I need an array of values to be passed into it. For instance, there are many times where a stored procedure that uses an "IN" statement could really benefit from passing in an array of values for the "IN". To get around this, you basically have to write a data access layer that creates SQL on the fly.
I'm all about separating "logic" from the data access layer, but simple things like that are probably possible using the C# stored procs.
Also, correct me if I'm wrong, but this approach is not too dissimilar from what Oracle has done with Java.
One of the most exciting features in SQL Server 2005 for me is the new Report Builder. SQL Server 2005 includes a new ClickOnce WinForms app called Report Builder that allows end-users to design their own reports from a business-user friendly data model. It is very similar to Business Object's WebIntelligence for those of you familiar with that product, but with an apparently more affordable licensing arrangement.
Essentially, the data architect takes the OLTP or data warehouse and abstracts it via metadata into Business entities with which end users are familiar. In Business Objects, this semantic layer is called a Business Universe and in SQLServer Reporting Services it's called the Data Model. Because this semantic layer understands how the data should be put together, it writes the underlying SQL necessary to give the user the answer they want. In principle and demos, it is very slick. We'll soon see how the two stack up in reality at my place of business, as we're setting up both this week to play with.
How I love those new toys :) been playing with them for a week or so now. The SQL Server Management Studio is less Access like, with is good :)
-Mark
So nice that Microsoft is embracing free software. Where's the SourceForge repository?
With spending like this, exactly what are "conservatives" conserving?
http://developers.slashdot.org/comments.pl?sid=166 851&cid=13914395
Clearly, this (as well as news of Oracle's "free/lite" version of 10g), are good news... that Open Source projects like MySQL, PHP....
MS HAS ALWAYS OFFERED A FREE DATABASE ENGINE, its no secret. SQl Server 2005 Express is just the new version of this product which has been available for years. Because of its easy transition to Sql Server its used a lot as a started Database for companies trying to sell in the SBM market. A lot of software application make use of MSDE (which is what the engine was called before Express edition)
For more information here http://www.microsoft.com/sql/msde/default.mspx
Now as for the Express editions being free... They are not (someone let me know if I am wrong here). They cost like 40 bucks or so, I had the beta installed on my system, once beta was over it prompted me to register/pay for it within 30 days..etc the usual MS registration.
I've used both SQL Server 2000 & MySQL 5.0.15 (and some others). Unless you want to make pretty pictures with DTS why wouldn't you decouple yourself from Bill Gates's teat and use MySQL 5? The major difference: limited support for triggers (which are generally a bad idea anyways as they hide code from lower-level developers).
i got ball this is my adress 108 20 37 av corona come n do it iam give u the sidekick so I can hit you wit it
Keeping the business logic out of the database may be good for you if the only thing your database ever talks to is a web app, but lots of us have databases that talk to a LOT of different applications. Rather than reinvent the wheel implementing the buisness logic in a million apps, we keep it in the database, where it keeps everthing consistant, no matter what app is talking to the database, and where it can run fast.
It appears that MS has done some interesting feature shuffling in their various free editions.
m pare-features.mspx
http://www.microsoft.com/sql/prodinfo/features/co
Has anyone out their tested out what is available in SQL express as far as job scheduling , DTS (now ETL) and replication?
Does anyone want to flame me for unashamedly using MS SQL?
As best as I can tell from their spec sheet, the following features of MSDE 2000 are not available in SQL Express:
* No job scheduler in SQL express. SQLAgent worked fine in MSDE 2000.
* Replication: MSDE for SQL could public and subscribe (as far as I understand), while SQL Express 2005 can only subscribe.
* They've changed the name of DTS to "Enterprise ETL Platform" or SSIS or something. While I haven't tested it out yet, it appears that DTS functionality is limited to basic import and export. For the really useful stuff (DTS to web services, for example) you need the pro edition.
Added:
* A user interface. MSDE 2000 basically had none. If you didn't have visual studio, or a developer's license to MSSQL, or some 3rd party administration and query tool, you basically had to use osql (command line).
* You get 4GB instead of 2GB.
Now, I have access to a few large corporate MS SQL servers, so this shouldn't really be a problem. However, large corporate servers have complex change-control processes.
Consequently, I rely on the desktop editions for all my ad-hoc stuff, development, and stuff that hasn't quite made it to production. I also run a database for a non-profit on MSDE, and was hoping to keep the replication features while moving up to SQL Express.
My motto: "A cat is no trade for integrity."
This must be in satire, or ignorance.
a ger
a ger
/ powerdesigner
Q L%20GUI%20Tools/document_view
Postgresql has a great variety of tools, both OSS and commercial that work great. I've been working on an updated list of all the tools. Here are a few of the most popular admin tools:
PGadminIII
http://www.sqlmanager.net/products/postgresql/man
DBvisualizer
http://www.minq.se/products/dbvis/
EMS Postgresql Manager
http://www.sqlmanager.net/products/postgresql/man
PHPpgadmin
http://sourceforge.net/projects/phppgadmin
Sybase Power Designer
http://www.sybase.com/products/enterprisemodeling
ERWIN data modeller
http://www3.ca.com/Solutions/Product.asp?ID=260
CASE Studio 2
http://www.casestudio.com/enu/default.aspx
Postgresql has a vibrant tool community. If you want more info on Postgresql tools see
http://techdocs.postgresql.org/v2/Guides/PostgreS
1) 1GB of RAM usage maximum.
2) 1 Processor usabe maximum (unlimited cores though).
3) 4GB total DB size maximum.
There are other limits too, like it can't do some enterprise things like a DB cluster, but the major ones are the size and processing limitation. So it would probably work as a web backend, but wouldn't scale without buying a bigger version.
Free MSSQL?? MySQL... beware ;) :D
I find it funny that company name products with years/dates when it is rule #2 that doing something will always take two times longer than your worst estimates
"From the moment I could talk, I was ordered to listen" - Cat Stevens
It's used as the eternal carrot... to keep the CTO from moving to a competetor's product that's already there and better. As long as 'real soon now' continues to inch ever closer, you can keep this up for an incredible length of time.
The mantra is: It's easier to stay with our junky product for X months than to go through the pain of migrating to their superior product. -- then, 6 months later, it's X-2 months.
If it finally comes out missing a couple of promised features (cut because 'we had to finally ship something!'), that's OK because it'll be in the next release ((due in X months).
Rinse-repeat.
Free Software: Like love, it grows best when given away.
A database release especially a MS database is about as interesting as somebody releasing a new ftp client.
Got Code?
You must not be into Object Oriented programming where you separate out the logic into tiers: Persistence Layer, Biz Logic Layer and Presentation Layer. Also, you must have been a DB admin before you were an app developer. Or maybe you've never been an app developer.
The MiniMSFT blog you link to has a tendancy to report the negatives only. For instance, the blog post links to Wesner Moise's post regarding some VS 2005 bugs he'd found. What is not as well publicized is Wesner's next post, in which he says,
"Despite the few hiccups, I am enjoying VS 2005 and have been able to work with it productively. VS 2005 is stable and performant, and it's better to have it arrive now rather than later. The runtime is solid, and various products across Microsoft and outside also depend on it being delivered on a timely basis."
Yes, I've found a few minor hiccups in VS2005 as well. But honestly, it's nothing like MiniMSFT would have it seem. I can't speak for everyone, but VS2005 has been solid for us since RTM (we were a MS beta tester from Beta 1 through RTM), and we're very happy with its current form.
Tech, life, family, faith: Give me a visit
great. Microsoft to deprecate t-sql for C# stored procedures. As a bonus they encourage you to not write orr understand SQL at all, well visual studio writes it for you. Well guess what, they want to obscure and redefine what a database is and what it is supposed to be. t-sql is a great language, queries are first class and it is designed from top to bottom to perform quickly and well.
What problem are they trying to solve...I'll tell you what. SQL works well and is defiened by a standards committe outside their control...why don't we all do everything in vb instead. I betcha one of the reasons it took so long to get out was they couldn't make it run anywhere as fast as 2000 without tons of tweaking.
I'm well aware of the different layers. I'm also aware that a lot of times places need to have applications that they didn't write inhouse plug into the database. If the only things you are ever going to have interact with the database are apps you write in-house it's one thing. Not all of us are working in that situation.
"Stored procedures" written in C# should really be thought of in the same way as the extended procedures from SQL Server 2000. In otherwords, you probably will never use that feature, and if you do find that you need it you must really scrutinize why and the security implications of doing so. In most cases, you're better off with straight T-SQL procedures, and that hasn't changed for SQL Server 2005.
Personally, I haven't yet found a good reason to use C# stored procedures, but I'm also not using SQL Server 2005 yet. When my team migrates in the coming months, I might change my tune, but for now I'm more interested in other feature enhancements like try/catch error handling semantics and the snapshot isolation levels (allows for better concurrency without having to risk dirty reads by using (nolock) or setting a "read uncommitted" isolation level).
Do you have examples of procedures gone horribly wrong? Preferably not something completely obvious, like a proc that takes a varchar(8000) as input and just passes that to exec (completely stupid, negates all of the benefits of using stored procs). From my experience, you're better off using stored procedures than dynamic SQL in your code, so long as a few sanity check requirements are in place -- limit the amount of dynamic SQL in your procedures, prefer table variables over temp tables (to prevent recompilations), and general T-SQL best practices: limit your use of cursors and looping since SQL is a set-based language, keep your transactions as short as possible, avoid forcing index hints, count() on an indexed column or better yet * (allows the plan engine to pick the best column to count on), etc.
Depends on what you mean by "application logic". If you meant to say "business logic", then I must vehemently disagree -- business logic should live close to the data, in a reusable form so it need not be implemented in each app that wants to use the data. Ideally that means stored procedures. If you can't implement your business logic in T-SQL, then you need to re-think your logic requirements and your schema. If it still can't be done, then you can go ahead and start moving it into external libraries, but you should try your best to keep your logic as close to your data as possible.
Not fully true. Serious developers simply know, that they will most probably have to port the system to the new tools. The sooner they learn the features/problems of the new systems, the better for them. So you can be sure that there were lots of beta testers that had a strong motivation, and most of them quite happy with the feedback I guess. As for getting free copies - let's take e.g. Blizzard. People didn't get a free copy although they spent hours on playing WoW in the beta program. And nobody complained. Oh, and btw - these MS products are free, unless you plan to make money on them. Fair enough imho. Disclaimer: I don't want to sound too pro-MS, but I just got tired of people often attacking MS just for the sake of it.
It is pretty easy to scale most things in a big n-tier system. Just buy more servers. The database however is really hard to scale. You quickly get to a point where twice the money will buy you only very little extra performance.
Therefore I treat the database as the "sacred resource". This almost always means that business logic is kept outside the database.
Your approach was right in the 80's when client/server was the norm. Today you should have an n-tier system and have the business logic in an application server.
You can still have lots of different applications while using centralized code. Only, now you call the application server instead of the database.
The Internet is full. Go Away!!!
I beta test their software and don't have to pay them to "test" it.
I do pay for MSDN, but that money is going to the developing tools and code I get for the subscription. Hence the DN in MSDN, Developers Network. Also I get access to any MS software released since DOS. The betas of their software is more of a "perk" if you will.
As far as "people who just want to learn the tool before it is released to the public", "just"? It's a friggen business man. If MS opened up all their programs to the public before the release, the world would be using betas and less inclined to use the final product when it got out. Not to mention you guys wouldn't start flaming them for any problems with the software, even IF it were in beta. I've seen tons of flames on Visual Studio 2k5 on Slashdot for months now, and it was just released today.
Try and be a little fair with your MS complaints... I'm sure you don't trash Firefox for crashing on its betas. I mean I understand this is a anti-ms site, but come on. Do you complain about oracle not giving everyone their betas? How about ibm?
Postgres already does this.
evil is as evil does
The name to google for the free limited SQL 2000 engine is MSDE - which stands for MS Data Engine, I think. Note that the limitations have changed between MSDE and the new Express db - overall it's generally similar, i.e it's the same great engine but with limits on size and speed (i.e. processors/clusters). The biggest new "freebie" for me is that the max database size is now 4GB instead of 2GB.
Here's hoping it went through more testing than VS2005 did...
Did you actually use VC2005, or did you just read a crappy blog entry and assume it fact >.<
Here's the scoop: I've used the VC2005 betas for about two months now. They work fine. No, seriously. Never once did I have a crash. Never once did it corrupt my hard drive. And never once did it kill a penguin. Guys, seerisnah.
Granted, it takes a teensy bit longer to boot than EMACS, but it has a lot of nice features. Like the oft-maligned "intellisense" - it's nice having the function/method/class prototypes at your fingertips as you fill in a function. Or the new, secure versions of strcpy(), memcpy(), and others. It can compile code for a wide variety of applications, such as:
It also supports a wide variety of CPUs:
Fairly impressive, all considering. Although I don't write multi-threaded apps, it does have some nice debugging tools for creating them, a nice GUI for those too lazy to write their own resource scripts, and a nifty-as-all-hell IDE. Contrary to popular opinion, it's stable as all hell, has more features than a nerd's Swiss Army Knife and creates fast code. Quite frankly, for those who actually program, it's a dream - and Microsoft released a beta that any of you could have download from http://msdn.microsoft.com/ (The free and fully-functional Beta is closed now. What, you don't regularly check Microsoft Developer's Network here? :-D)
So... All the VC2005 bashing seems to come from a blind hatred of Microsoft (remember, Bill Gates created his empire coding from his garage, like any proper geek would) and a blind belief in anything that will bash Microsoft. If you actually use VC2005, it's wonderful.
But wait, you can! You can download the "Express Edition" free (as in beer) from here. I don't know how much the "Express Edition" differs from the full product, but if you guys are going to whine about something, at least use it first
DATABASE WOW WOW
From Microsoft's page;
SQL Server Express is supported on x64 and EMT64 systems in Windows On Windows (WOW). SQL Server Express is not supported on IA64 systems.
Very interesting....
Have you ever tried to use relational integrity with PostgreSQL and Erwin? Or is this new with PostgreSQL 8? Because it certainly doesn't work with PG 7.x and the latest Erwin SP.
Laissez lire, et laissez danser; ces deux amusements ne feront jamais de mal au monde. - Voltaire
hmmm, I've found that particular form of reporting to get quickly unmanageable - with an explosion of hundreds of almost identical reports created, but not maintained by users. At one shop I visited they had so many that we could only test a sample of them - and found almost 50% to give incorrect results.
Since most reports of this type are created by users looking for answers to simple questions, i've found that creating dashboards with great navigation & drilling between graphs, charts, and tables to be a better option. This can then be managed by the warehouse or transactional database owners with its accuracy ensured.
Sigh, i've got one database that needs an upgrade right now and the only obstacle is the brio users with their reports that will break. I can't fix their reports, so I will have to give them some terribly-long transition time.
The persistence layer is nice for separating the logic in the app, but it doesn't mean you have to sacrifice the database server's built-in power & functionality. Persistence layers can map to stored procedures, views, etc.
Also, like the man says, sometimes there's other types of apps connecting to your DB, maybe not all within your control. If you're responsible for the health of the data and the system, you may not be able to trust that every developer or system is playing nice.
TODO: come up with a clever sig
OO is useful to a degree when it comes to database applications. However, there are a myriad of reasons hey you should push business logic into the database layer.
.Net, etc. - you cannot guarantee that libraries (if they exist/are comprehensive enough/are general in implementation) are reusable, much less properly reused. In this case it is best to plan for a single/manageable interface set based on views + stored procs you know you can maintain to abstract database schema changes from applications.
But before I get to these there is something to be said for implementing abstaction layers by providing interfaces and hiding implementations behind interfaces. You can thing of stored procedures and views in a database as just an interface layer between application components. When you do that, it becomes clear that stored procs and views are just another tool in the arsenal of a well rounded developer.
Back to why you might use views/stored procs. Let's start with complex applications environments. When you're dealing with multiple applications - some legacy, some new, written across a set of technologies - COM, JAVA,
In database land you must have consistent, repeatable, up to date data. By housing business logic in the database, you expose to users standard views and procedures that ensure that consistency is maintained between inserts, updates, and deletes. Often these same mechanisms are used to prevent too much access to data. For example, you can preven value that are out of bounds based on expectations of business processes/relationships existing in your database.
Since databases house complex relationships (not uncommon to have to join across 5 tables to get the result you want), to think that the application layer should contain this complexity is to build a fragile system open to errors made by developers who do not fully understand the system, or if so make assumptions about what can/will change in future that are not property grounded.
Continuing, maintainability/business agility is increased with proper use of views/stored procs. If only code is used to access database information, it is much more difficult to update all the destops in your company when a database schema changes than it is to update the innards of a stored procedure with a well known interface. As such any logic that pertains specifically to reading/updating/deleting content from the database should at least be evaluated against a similar implementation that is in the database itself.
So with that you need to take C# in the database for what it is worth - it allows you more easily to define complex business logic (types, behaviors, interfaces) than the comparative T-SQL. As such it speeds development of database applications. It makes database maintenance easier by making the code more easily read/updated. It also lowers the bar to having good database logic by reducing the need for highly complex T-SQL. For these benefits there are drawbacks - portability, perf, etc.
As a professional developer/DBA it is up to you to be able to make these tradeoffs. It is not as simple as saying OO is the right way to go always - that's a purist's approach. Purists have issues in business environments where tradeoffs are required to achieve the expected objectives in the given amount of time and with the given set of resources.
On behalf of the non-heterosexual people I know who are not in any way useless, failures, bad, irritating, enfuriating, or a let down: gay isn't an appropriate word to insult a crap computer program. My friends are cool and using 'gay' as a derogatory term is either an illustration of a prejudice or the lack of a vocabulary on your part.