Sql-server – Setting DATEFIRST to 6

date formatsql serversql-server-2008

I would like to set FIRSTDATE to 6 (ie: saturday), i have read that to change it parmanently i could set the default language of the login to one of an existing language from the sys.syslanguages and alter the login of the user like:

USE [master]
GO
ALTER LOGIN [some_user] WITH DEFAULT_LANGUAGE = [Français]
GO

But:

SELECT * FROM sys.syslanguages;

i get many languages, but no one has the DATEFIRST set to 6 (they are all set to 1 or 7).

Question:

Can i add another language based on an existing one, and set de field datefirst to 6 ?

Can i modify an existing syslanguage ?

All what i want, is te set it to 6 parmanently, because i need it to get the right week number.

Thank you for help !

Best Answer

Can i add another language based on an existing one, and set de field datefirst to 6 ? Can i modify an existing syslanguage ?

You cannot modify sys.language in 2005 and up.

All what i want, is te set it to 6 parmanently, because i need it to get the right week number.

Is there any specific reason to do this at sql server level ? Why cant this be done at the application level ?

http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=62891 has a method to do it using registry changes, but be CAUTIOUS of doing it without proper testing !!

Edit: Added my comment in answer:

How about using SET DATEFIRST N (where N = 1 through 7 and 7 is default). Ref: msdn.microsoft.com/en-us/library/aa259210(v=sql.80).aspx