Comment écrire une mise à JOUR SQL avec des alias de Table dans SQL Server 2008?

J'ai un très de base UPDATE SQL -

UPDATE HOLD_TABLE Q SET Q.TITLE = 'TEST' WHERE Q.ID = 101;

Cette requête s'exécute correctement dans Oracle, Derby, MySQL - mais c' échoue dans SQL server 2008
avec l'erreur suivante:

"Msg 102, Niveau 15, État 1, Ligne 1 syntaxe Incorrecte près de 'Q'."

Si je supprime toutes les occurrences de l'alias, "Q" à partir de SQL, puis il travaille.

Mais j'ai besoin d'utiliser l'alias.

  • Pourquoi avez-vous besoin d'utiliser un pseudonyme? Il ne semble pas que vous en avez besoin.
  • Oui - à partir de la perspective de programmation je n'ai pas besoin d'elle. Mais j'ai déjà un/une ancienne bibliothèque, qui génère toutes sortes de Sql DML avec des alias de table. La bibliothèque a beaucoup de classes avec une sorte de logique complexe. Maintenant, se débarrasser de la table des alias dans la bibliothèque de est plus de travail que le peaufinage de la logique existante à travailler pour MSSQL. Aussi lorsque plusieurs tables sont impliqués, j'ai besoin d'avoir de la table d'alias.
InformationsquelleAutor javauser71 | 2011-02-12