web-dev-qa-db-ja.com

無効なオブジェクト名SQL

SQLコードで無効なオブジェクト名エラーが発生し続けます。 (member_number, subscriber_policy_number)は、エラーメッセージで下線が引かれます。

コード自体はエラーなしで正常に実行されますが、これはなぜ起こるのですか?上記のコードはどれも強調表示されていません

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

正しいデータベースを使用していることを確認してください。デフォルトで「マスター」データベースに設定されている可能性があり、参照先テーブルの完全なスキーマを持っているようには見えません。

例:[DatabaseName].[Schema].[TableName]または[Database1].[smmdmm].[aid_data]

お役に立てれば。

30
Sev09

試してください:

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

受け取ったエラーによると、MSSQLを使用していると思われます。

クエリの最初に試してください:

use [YOUR_DATABASE_NAME];

次にクエリ。それは私の場合に役立ちました。

11
kamil.ka

それには2つの理由があるかもしれません。

  1. テーブル名が間違っています

    Sol:テーブル名を確認して実行してください

  2. クエリのテーブル名にデータベース名とスキーマ名が記載されていません

    Sol:SQLクエリのデータベース名とスキーマ名に言及してください。

例:

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

私の場合、modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();がありませんでした

1
Daniel

これは私のために働く:編集-> IntelliSense->ローカルキャッシュの更新

1
hoogw

それは関数で私に起こり、それはずっと前にドロップされたその中のテーブルでした

0
Phil50

プログラムを実行するたびにこのエラーが発生し続けていたため、このページにアクセスしました。とにかく、設定でSQL文字列テーブル名にアンダースコアがなく、次のようになっているはずです。 tbl_Customer。

0
Pixel17

大文字と小文字の区別の問題に直面しました。以下は私の誤ったクエリでした

SELECT * FROM [bccci$Biochemical View] AS ibv 

ここに "V"-テーブル名の最後の部分の最初の文字は大文字ですが、実際のテーブル名では小文字でした。あれは [bccci$Biochemical view]。だから私の正しいコードは

SELECT * FROM [bccci$Biochemical view] AS ibv 
0