クエリでテーブルを適格にするか、DBOで名前を表示するのはいつですか?

StackOverflow https://stackoverflow.com/questions/4277371

  •  28-09-2019
  •  | 
  •  

質問

SQL Serverでビューがあります。My_Viewとしましょう。

コマンドを実行するとき SELECT * FROM MY_VIEW 正常に動作します。しかし、私がそれを実行するときSELECT * FROM dbo.MY_VIEW 私は *無効なオブジェクト名 'mydb.dbo.my_view' *を取得します

SAを使用してSQL Serverに接続しています。

これの何が問題になっていますか?そして、いつdbo.my_viewを使用する必要がありますか?

アップデート: ビューのスキーマ名はDBOで、ビューを作成したとき、SAに接続していました。

update2 問題はケースに敏感な照合であることがわかりました。問題は、DBOのためではありませんでした。プレフィックス。それは、データベースの照合がケースに敏感であり、クエリのテーブル名が間違った場合だったためです。

役に立ちましたか?

解決 3

問題はケースに敏感な照合であることがわかりました。問題は、DBOのためではありませんでした。プレフィックス。それは、データベースの照合がケースに敏感であり、クエリのテーブル名が間違った場合だったためです。

他のヒント

DBOとは別のスキーマ名でオブジェクトを作成しましたか?ビューを作成したときに資格を持っていなかった場合、ユーザーアカウントのデフォルトスキーマ名に依存します。 SQL 2K5および2K8では、デフォルトの動作は、各ユーザーとそれらを「DBO」スキーマに割り当てる新しいスキーマを作成することだと思います。

あなたはマスターデータベースにいます。マスターデータベースにビューを作成しました。あなたの実際のクエリはそうでした SELECT * FROM MyDB.dbo.MY_VIEW. 。代わりにMyDBデータベースでビューを作成してみてください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top