SQL Server 2005 - trucs en vrac

On n'utilise pas assez le motclé case en TSql. En particulier pour les tris...

Pour voir si un utilisateur est sysadmin: SELECT is_srvrolemember('sysadmin')

Le XML:
SELECT table.col1 'noeud@id', table.col2 'noeud/ssnoeud' FOR XML Path('   ')
A l'inverse, il y a une méthode nodes pour requêter un doc xml:
DECLARE MYDATA XML
SET MYDATA = 'bla bla xml'
SELECT XMLColumn.value('noeud' ou 'noeud/@' ou 'noeud/noeud', datatype) 'col1', ... FROM @MYDATA.nodes('requête Xpath de sélection') resultTable (XMLColumn)

XQuery: select @MYDATA.query('//dornano[@valeur > 10])

Les fonctions
Elles doivent être déterministes. Elles ne peuvent rien modifier dans la base de données. Elles peuvent retourner une table.

Les procédures stockées peuvent être écrite en CLR (sp_configure 'clr enabled', '1' ). Mais je ne recommande de l'utiliser qu'en cas de calculs sévères, sinon cela va être très lent...

On n'emploie pas souvent non plus la syntaxe: INSERT INTO <nom table> default values

Il y a maintenant en TSQL le try catch avec BEGIN TRY et END TRY

Modification avec offset sur un champ varchar(max)
UPDATE matable SET macol.WRITE (valeur, offset,longueur)

Les champs UPDATETEXT et WRITETEXT deviennent déconseillés.

La discussion continue ailleurs

URL de rétrolien : http://www.d-ornano.com/blog-de-marc-hoang/index.php?trackback/33

Fil des commentaires de ce billet