Any tips for a Sybase developer learning SQLServer? - sql-server

I'm an experienced Sybase developer (10+ years) looking to branch out into SQLServer. Does anyone have any advice on good courses / books to help me transition? Thanks.

SQLServer originally came from Sybase so I don't think you're going to have any major issues. Still, you might find this article helpful.
http://www.devarticles.com/c/a/SQL-Server/Migrating-from-Sybase-to-SQL-Server/

Microsoft has a tool - SQL Server Migration Assistant for Sybase that automates porting of your database from Sybase ASE to SQL Server 2005 or 2008 (including T-SQL, e.g. in your stored procedures) and you may find some useful documentation regarding migration process there too:
http://www.microsoft.com/sqlserver/2005/en/us/migration-sybase.aspx
Maybe you should also look at new features of SQL Server 2005/2008 more closely (in comparison with SQL Server 2000) because at least ASE 12.5 was more close to SQL Server 2000 (for example, you had no varchar(max)/varbinary(max)/nvarchar(max), newer MS' T-SQL enhancements are not likely to be available in Sybase because I doubt Sybase likes to add every feature Microsoft adds :) ).

For a developer I really don't think there is anything you should be worried about. The Sybase origins of SQL Server will clearly show up in all common tasks.
One thing I would recommend is to go over the features that appeared in SQL Server since 2005 and 2008 releases, specially 2005. You want to give them a cursory look just to understand what they do and to be prepared to use them in your arsenal: Crypto functions, CLR procedures, XML data type, varchar/varbinary(MAX) types, Service Broker, snapshot isolation, filestream storage, MERGE statement, common table expressions and recursive queries.
A book that is targeted specifically at developers for SQL 2005 should also be of elp, like Expert SQL Server 2005 Development perhaps. Make sure is a new content book, not a reprint of a SQL 2000 book updated for 2005. For more advanced coverage, the Inside SQL 2005 series is very good.

I'd suggest hands on work would be good and just see how you get on.
Have you a favourite Sybase DB to port, for example, reading up as you go along?

Related

What to consider when getting started with SQL Server?

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)

Any benefits to SQL Management Studio 2008 when only connecting to SQL Server 2005 databases?

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! :-)

SQL Query Designer

I am wondering what the best (free preferred) sql query designers tools for Windows Vista are?
I am looking to create quite complicated INSERTS and UPDATES that involves joins etc and being a SQL beginner would like to use a tool to help design my queries a bit faster.
Thanks
This one: Microsoft SQL Server Management Studio Express
http://www.microsoft.com/downloads/details.aspx?FamilyId=C243A5AE-4BD1-4E3D-94B8-5A0F62BF7796&displaylang=en
I favor Oracle SQL Developer which supports many SQL databases, not just Oracle. SQL Developer has a lot of nice features, runs on all platforms, and the software is free.
You might like dbForge Query Builder for SQL Server. It's not a freeware, but you can try 30-days trial.

Advantages and disadvantages between sql 2005 and sql 2008?

Exact duplicate:
Advantages of MS SQL Server 2008 over MS SQL Server 2005?
i am a sql developer and i use sql 2005. i want to now to pass to 2008 but i am a little affraid. can anyone gives me some advices about this. should i still continue using sql 2005 or is better pass all my projects to 2008 due to better performace?
Who is going to use your projects; if they are going to customers with existing SQL Licenses then 2005 might be the way to go; assuming they are running 2005. SQL 2005 databases will work on 2008; though if you use some of the new language features in 2008 then the SQL2008 databases wont be backwards compatible to 2005.
If you are controlling where they are going to be deployed; some of the new features in sql 2008 might be of interest; better full text search, improved Analysis services, reporting services and some language tweaks. If you are managing the servers; your admins will likely appreciate the new management features in 2008.
I moved to 2008 because I am heavy into SSIS and have large databases meaning: The backup compression and increased concurrent processes in SSIS for 2008 make it worth it for me.
I moved 6 projects from 2005 to 2008 without any problems except reporting services. To me the biggest benefit is the SQL Management Studio enhancements like auto complete and change history.
The only reason I did upgrade was because I work in education and Microsoft is very gracious on licensing.
In general, unless you hear that it is a disaster, I think you should strive to use the most recent release at the earliest opportunity. The advances in server functionality and the tool set will usually offset the time it takes you to learn the new features. All software is built with planned obsolescence in mind, so you will eventually need to migrate to newer technology. If you make a habit of migrating your systems to the latest technology, you will find that the migrations become relatively painless.
One of the benefits of SQLServer 2008 with respect to SSIS is that it includes very fast bulk connectors for Oracle and Teradata (well, the development and enterprise versions do).
So if you need to move data between SQLServer 2008 and those databases you get this for no additional cost.
See Microsoft Connectors for Oracle and Teradata by Attunity
Another major benefit in SQLServer 2008 is the new Change Data Capture (CDC) functionality which means you can build your application in any way you like and then if at later time you are interested in starting some processing when table X changed, you can turn on CDC for that table and get a change table that contains all the changes to table X with minimal overhead. Ben Hall did a useful post on this.
I think SQL 2008 has somewhat advantage in compare to sql 2005
New data types(date,time,files stream)
2.Backup compressin
3.Data compression
4.policy based management.
If anyone know better answer kindly inform

SQL language differences between MSSQL 2000 and 2005

My company has an application developed for SQL Server 2005 (among others), and a potential client is attempting to install it on SQL Server 2000. Naturally, installation failed. Specifically, it failed with syntax errors in our CREATE TABLE statements.
Is there a summary of the language differences between these two databases?
You can take a look at the list of breaking changes here at technet.
I know of no summary of Transact SQL changes from 2000 to 2005. There are a few books that take a detailed look at the changes but I wouldn't call them a summary.
For a more immediate answer to your client's problem you could try comparing the specifications for the 2000 and 2005 versions of the CREATE TABLE function.

Resources