I'm wondering if I'll have trouble installing SQL Server 2008 on my development machine whilst our production server is 2005? E.g. is something change so that my 2005 databases/sps/functions/views will not work correctly or other issues I should think about?
Would like to do this just to test drive the new SQL Server but still be able to develop the old product and preferring not to install both...
I am using only SQL server 2008 on my dev machine against production SQL server 2005 systems, and have not encountered any problem yet.
Personally I wouldn't. I prefer to keep my dev machine as close to a replica of the live environment as possible (in terms of software at least; physical separation is somewhat harder!).
In many ways the two versions are very similar, and SQL Server 2008 does support compatibility modes, but no matter what you do it isn't actually SQL Server 2005. If your production server isn't using 2008 then you can't take advantage of its capabilities anyway so all you're doing is increasing the chance of something working not quite the same without gaining any benefit.
Presumably the reason you want to do this is to play around with 2008 and see what its new capabilities are? In this case I'd recommend building a virtual machine with SQL Server 2008 and then you can play around as much as you like without jeopardizing the environment you need to get on with your normal work.
Just be aware that some tools may not connect to SQL2008 properly just yet.
Example is VS-DBPro2008. You can't use most of the useful features without installing the GDR-RC, which is still flakey.
Also, if you build something on 2008, you won't be able to detach/attach or backup/restore from the 2008 -> 2005.
I've done this without too much trouble. When you create a database, you can choose a compatibility mode such as 2005, or 2000.
You may also find this helpful: Breaking Changes to Database Engine Features in SQL Server 2008
http://msdn.microsoft.com/en-us/library/ms143179.aspx
Yes. We do exactly this even though our production systems are 2005, and have run into very few issues. While there are some compatibility issues you'll want to know about there are also a few benefits:
Sql Management Studio is based off VS 2008 so if you are using VS 2008 you don't get VS 2005 installed
Sql Management Studio is faster and supports some nice new features such as intellisense
Our build machines have Sql 2005 which runs all our unit and integration tests. Our development and production test virtual machines that mimic our production systems also run Sql 2005. This way we ensure our SQL and DDL are compatible with production.
There is no way you can have a development environment that duplicates your production environment. We just install too much stuff on our machines to do our jobs or for downtime.
Related
I installed VS 2008, VS 2012 and the community version 2013 along with the matching SQL Servers but never needed the SQL Servers and never checked if they were properly installed.
I recently picked up SQL Server Management Studio and tried to connect to a server.
Unfortunately, it does not detect any local server, even though I have about twenty different entries in programs & apps for SQL Server related stuff including SQL Server 2012 and 2014 Express Localdb, an installation of SQL Server 2008, data-tier app frameworks, native clients, transact SQL, a couple "compact" versions, tools and what's not.
One would think that something in this mess would be recognized as a server, but apparently not so. I had an entry for SQL Server in the start menu with a nice GUI with an install DB option... that requested a server media folder (lord knows which). I tried starting manually one of the many SQL Servers (sqlservr.exe) from the program files folders to no avail (I get a message about a corrupt installation)
My DB experience is pretty much exclusively with MySQL and I am lost with all these applications that look like they should do something but don't.
I would like to have a bare bones installation that works for the following use:
Coding Winform apps with local databases (compatible with Entity Framework)
Allows to distribute the apps with local databases for free (commercial use, small data volume)
Running SQL queries from SQL Server Management Studio
What is the minimum I need for this purpose?
Should I uninstall all the existing SQL Server related programs and make a clean install from a single install file (for instance, would installing the 1.1gb SQL Server 2014 Management Studio Express 64 Bit.exe give me all I need)?
Or if not, is there any way to install a recent version and ignore the underlying mess? (I don't really care for the disk space, I just want this thing to work).
I apologize if this question is a mess but I am pretty confused with this, and I could really use a hand figuring out what's what.
I am about to start a project on VB.. For that I am using Visual Basics 2008 Express Edition.. So I just wanted to know which is the best suitable SQL Server for the same.
SQL Server 2008 was released alongside VS 2008, so one of its variants would be recommended. The Express Edition will work well. If you want to use User Instances (such as when the database file is stored in an App_Data folder for a website, you need to have Express Edition installed. In addition, if you plan to use any data related projects in an actual production environment, but don't want to spend, it's the only option that's freely available.
Of course, you might want to consider the age of the product. VS 2008 itself is 2 generations behind (at present, Jan 2013), as is SQL Server 2008. You can easily use later editions of both SQL Server and Visual Studio (in there Express Editions), and I'd usually recommend moving up to the latest that's installable on your machine.
If you're wanting to try out all of the SQL Server features, a trial installation or Developer Edition would be recommended - but for the latter, you need an MSDN license, and if you're going that far, you should seriously consider moving up from VS Express.
Microsoft SQL Server 2008 R2 hands down. It's free and you can use stored procedures, functions and such.
We are running SQL Server 2005 and we want to upgrade the instance.
Is it best to go to SQL 2008 or can we jump right to SQL 2012?
What is recommended and what should we look out for?
I am thinking about doing this.
Newest version is often best choice, but that depends on applications, which use SQL server. (Of course hardware and OS should match too.)
If it is your in-house developed app, then you just have to run all tests against newest version, optionally fix problems and let it run.
If it is some 3rd party app, then you need to ask from app vendor, what SQL versions are (best) supported.
If you are developing and selling some application based on SQL server, then you have to support and maintain many versions of server (like we do - we support SQL2000 to SQL2008; SQL2012 is currently in testing phase).
I've got experience with MySQL, DB2, and Oracle, but aside from writing a few queries, I've never used SQL Server.
My question is a three parter:
1) For a developer, what are some good "free" client tools to look at, and why (by "free" I mean open source, freeware, or the tools that come with SQL Server itself)?
2) I plan to run Developer or Express Edition on my workstation for development, and either Standard or Enterprise Edition in the testing and production environments. What methods exist if any for transferring data between different servers and the different editions?
3) Are there any common pitfalls that someone like me (who is used to the other database systems that I mentioned) might encountered during development?
TIA
SQL Server Express with tools.
All editions have the same SQL language features and code is 100% portable between them. There are 3rd party tools to synch changes, but moving entire DBs is easy using inbuilt tools.
Nah. The problem with databases is SQL and set theory, not the choice of RDBMS. If you understand databases/SQL you'll be OK.
SQL Server Management Studio which comes with SQL Server (any editions), or you can download it separately. SQL Server Profiler which doesn't come with Express.
Management studio has tools for backup/restore database. You can also consider detach/attach method to synchronize db .
It's hard to say. But if you had Mysql experience you will be pleasantly surprised by SQL Server.
UPDATE
There are so many things that each DB vendor implements differently that it's really hard to focus on some of them. One thing I was not used before is that SQL Server doesn't let unique columns to have more than 1 NULL value(there is a workaround though)
We run SQL Server 2005 exclusively for databases that we use (I'm trying to push to get them upgraded, but alas!). On the client side with Management Studio, are there any benefits to upgrading to SSMS2008 when only connecting to SQL Server 2005 databases? I've seen that Intellisense won't work, so I'm curious if it's worth the hassle.
Yes, there's quite a few improvements intellisense is definitely a big one for developers (Intellisense only works against SQL Server 2008 databases, unfortunately), but there are also other things like T-SQL Debugger, Activity Monitor, the Object Explorer Details
Also, multi-server queries, and the ability to color the connections (get a visual clue whether you're on dev, test or prod system) and a lot more.
See some good background info here at Simple-Talk.
It is up to you. My favorite is search feature. See link for details.
Having worked with SQL 2005 since it came out, upgraded my client tools to 2008 when it came out, and still not upgraded our server, I don't think it is worth upgrading, especially if you aren't moving to SQL 2008 on your server anytime soon. There is no real harm in upgrading, but you need to get familiar with a slightly different tool that IMO is neither worse nor better.
There are a lot of things to like about SQL2008 SSMS, even if you are connecting to SQL 2005 servers:
Customize the columns in the object views, including some very useful ones like DB size
When viewing a query execution plan, it will list any indexes that it recommends
Color-code server connections
Execute SQL statements against multiple servers
In our environment, we have a mix of SQL 2000, 2005, and 2008 servers, so I still use SQL 2005 SSMS to connect to all three (The new "Activity Monitor" in SQL2008 SSMS doesn't work for SQL 2000 servers.)
I don't want to sound like taking sides, but Toad 4.6 rulez! :-)