Ik heb het volgende probleem:
Ik heb een functie ISOyear en ISOweek gemaakt die van een gegeven DateTime de juiste iso-jaar en iso-week terug geeft.
ISOyear('2005-01-01') geeft 2004
ISOweek('2005-01-01') geeft 53
Maar, dit werkt alleen wanneer de week begint op maandag.
Bij een STOREDPROC is dat geen probleem, je zet bovenaan gewoon:
SET DATEFIRST 1
Maar dat mag niet in een VIEW of een FUNCTION.
Nu is de vraag of het mogelijk is om de datefirst over de gehele database op 1 te zetten.
Ik heb wel iets gevonden en dat is de default-language te veranderen van English naar Dutch.
Maar dan veranderd de dateformat ook en dat wil ik niet. En bovendien verander je niet zomaar de default-language van een productie-database.
Een andere optie zou kunnen zijn is handmatig de datefirst kolom in de syslanguages-tabel te veranderen van 7 in 1 voor de huidige taal (English)
Ik weet niet wat de gevolgen zijn over de gehele database als ik deze setting verander.
Kan dit zomaar of is nog een andere oplossing?
Ik heb een functie ISOyear en ISOweek gemaakt die van een gegeven DateTime de juiste iso-jaar en iso-week terug geeft.
ISOyear('2005-01-01') geeft 2004
ISOweek('2005-01-01') geeft 53
Maar, dit werkt alleen wanneer de week begint op maandag.
Bij een STOREDPROC is dat geen probleem, je zet bovenaan gewoon:
SET DATEFIRST 1
Maar dat mag niet in een VIEW of een FUNCTION.
Nu is de vraag of het mogelijk is om de datefirst over de gehele database op 1 te zetten.
Ik heb wel iets gevonden en dat is de default-language te veranderen van English naar Dutch.
Maar dan veranderd de dateformat ook en dat wil ik niet. En bovendien verander je niet zomaar de default-language van een productie-database.
Een andere optie zou kunnen zijn is handmatig de datefirst kolom in de syslanguages-tabel te veranderen van 7 in 1 voor de huidige taal (English)
Ik weet niet wat de gevolgen zijn over de gehele database als ik deze setting verander.
Kan dit zomaar of is nog een andere oplossing?