0

同様の質問が何度も行われていることを私は知っています。しかし、それは私にとってはうまくいきません。私はWindowsフォームアプリケーションに取り組んでいます。フォームの1つにリストボックスを配置し、データベースに保存されているテーブルの名前を表示したいと思います。テーブルにアクセスするには、どのクエリを作成する必要がありますか?

USE db_name 
SELECT * FROM sys.Tables

私のデータベース名はですdbSave.mdfが、これを上記のクエリにdb_nameとして入力すると、機能しません。助けてください...

4

4 に答える 4

1

これは私のために働きます:

SELECT * FROM information_schema.tables

ここで見つけました。

于 2012-11-29T06:32:16.847 に答える
0
SELECT * FROM sys.objects 
WHERE Type_desc='USER_TABLE'

これがお役に立てば幸いです:)

また、スキーマまたはデータベース レベルでフィルターを作成することもできます

于 2012-11-29T06:30:15.520 に答える
0

探しているものは、データベースごとに異なります。最善の策は、ある種の抽象 API を使用することです。私は .NET のデータ アクセスに詳しくありませんが、Java のライブラリでは "MetaData" オブジェクトを使用してアクセスします。

于 2012-11-29T06:24:16.180 に答える
0

データベースからテーブルリストを取得するには、クエリで問題ないと思います

SELECT * FROM sys.Tables

アプリケーションの接続文字列が既にそのデータベースに接続されているため、Use DB を使用する必要はありません。それが別の DB になったら、そのデータベースの新しい接続文字列を作成してください。

また、ユーザーがその作業中のデータベースで十分な権限を持っていることも確認してください。

于 2012-12-06T07:18:44.437 に答える