web-dev-qa-db-fra.com

Nom d'objet invalide sql

Je continue à recevoir une erreur de nom d'objet invalide sur mon code SQL. (member_number, subscriber_policy_number) est souligné avec le message d'erreur. 

Le code lui-même fonctionne correctement sans erreur, pourquoi cela se produit-il? Aucun des codes ci-dessus n'est surligné

update smmdmm.aid_data
set Member_Number = Subscriber_Policy_Number
where Member_Number in ('000000000','000000001')
12
user3814197

Assurez-vous que vous utilisez la bonne base de données. Il peut s'agir par défaut de la base de données "Master" et il ne semble pas que vous ayez le schéma complet pour la table référencée.

Ex: [DatabaseName].[Schema].[TableName] ou [Database1].[smmdmm].[aid_data]

J'espère que cela t'aides.

28
Sev09

Essayer:

Edit -> IntelliSense -> Refresh Local Cache
18
Revanth Kumar

En fonction de l'erreur que vous recevez, je suppose que vous utilisez MSSQL.

au début de vos requêtes, essayez:

use [YOUR_DATABASE_NAME];

et ensuite votre requête. Cela m'a aidé dans mon cas.

11
kamil.ka

Il pourrait y avoir 2 raisons pour cela.

  1. Le nom de la table est faux

    Sol: Vérifiez le nom de la table et essayez de l'exécuter

  2. Le nom de la base de données et le nom du schéma ne sont pas mentionnés avec le nom de la table dans la requête

    Sol: Mentionnez la base de données et le nom du schéma dans une requête SQL.

Pour ex:

select * from MESQLDBM.dbo.Alert ([DatabaseName].[Schema].[TableName])
2
GSK

Dans mon cas, il me manquait modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

1
Daniel

Cela fonctionne pour moi: Éditer -> IntelliSense -> Actualiser le cache local

1
hoogw

Cela m'est arrivé dans une fonction et c'était une table à l'intérieur qui avait été abandonnée depuis longtemps

0
Phil50

Je suis arrivé sur cette page alors que je rencontrais cette erreur chaque fois que j'exécutais le programme. Quoi qu'il en soit, j'ai constaté que, dans les paramètres, le nom de la table de chaînes SQL manquait le trait de soulignement et aurait dû être comme suit; tbl_Client 

0
Pixel17

J'ai fait face à un problème de sensibilité à la casse. Ci-dessous ma requête erronée 

SELECT * FROM [bccci$Biochemical View] AS ibv 

ici "V"- Le premier caractère de la dernière partie du nom de la table est en majuscule, mais dans le nom de la table, il s'agissait d'une minuscule. c'est [bccci$Biochemical view]. Donc, mon code correct était

SELECT * FROM [bccci$Biochemical view] AS ibv 
0
Md. Zakir Hossain