SQL Server Mgmt Studio affiche «nom de colonne non valide» lors de la list des colonnes?

J'ai l'habitude des scripts en Python ou Matlab, et mes premières heures avec SQL ont été exaspérantes. Je voudrais faire apparaître une list de colonnes à l'écran de n'importe quelle façon, forme ou forme; mais quand j'utilise des commands comme

select * from "2Second Log.dbo.TagTable.Columns" 

Je continue à recevoir l'erreur:

Nom de colonne incorrect '[la première colonne de ma table]'.

même si je n'ai jamais demandé explicitement [la première colonne de ma table], il l'a trouvé pour moi. Comment pouvez-vous identifier correctement le nom de la première colonne, puis prétendre que c'est invalide? Les bébés seront étranglés.

Ma structure de données, requête et le message d'erreur.

Cette database a été générée par le logiciel FactoryTalk d'Allen Bradley. Qu'est-ce que je voudrais vraiment faire est de produire une list réelle des strings "TagName" … mais je reçois la même erreur quand j'essaye cela. S'il y avait un moyen de double cliquer sur la table et de l'ouvrir et de la regarder (comme dans Matlab), ce serait idéal.

Reprenant la suggestion de juergen dans le commentaire ci-dessus. Il semble que vous 2Second Log la requête sur la database master , pas la database 2Second Log qui contient réellement votre table. (Vous pouvez le dire en regardant la database dans la list déroulante en haut à gauche de votre capture d'écran). Deux choses que vous pouvez faire:

  • Changez la list déroulante en haut à gauche de 2Second Log . Cela va cibler votre requête vers une database différente
  • Mettez le nom de votre database entre parenthèses comme suggéré par juergen, c.-à-d. select * from [2Second Log].dbo.TagTable

En revanche, si vous cherchez un bon tutoriel SQL, je vous recommand fortement le tutoriel Mode SQL . C'est une plateforme interactive fantastique pour mouiller vos pieds SQL.

utilisez toujours des crochets lorsque les noms / champs ont des espaces ou des tirets.

 select * from [2Second Log].dbo.TagTable