問題タブ [information-schema]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - INFORMATION_SCHEMA を使用して DB 内のすべての外部キーの主キーを見つける方法
テーブル内のすべての外部キーを検索し、各外部キーについて、それが指す主キー テーブルと列を検索します。これをすべての DB ベンダー (または少なくとも INFORMATION_SCHEMA を適切に実装しているすべて) に対して使用したいので、INFORMATION_SCHEMA を使用してこれを行う必要があります。
私が思いついた最高のものは次のとおりです。
これは複雑すぎると思います。これにはより良い選択がありますか?
ありがとう - デイブ
mysql - information_schema のダンプを自動化する
MySQL 上のすべてのデータベースをバックアップする方法を探しています。mysqldump を実行するバッチ ファイルを作成しましたが、正常に動作しています。残念ながら、私は MySQL 5.0 を使用しており、mysqldump に information_schema を含む新しいバージョンにアップグレードできません。
このデータベースをダンプする方法を誰か教えてもらえますか? 私は過去8時間試してきましたが、うまくいきません!
誰かが助けてくれることを願っています。
乾杯
アレックス
tsql - INFORMATION_SCHEMAタイムアウトに対するクエリ
SQL Server 2008ManagementStudioを使用してSQLServer2000に接続しています。
それは素晴らしく、甘くて迅速に機能します。でも、これ:
タイムアウトで停止します。
タイムアウトの理由は何ですか?
PSselect count(*) from information_schema.tables
はすぐに戻ります。データベースには334個のテーブルがあります。
php - SHOWTABLESクエリを制限する方法
私は次のクエリを持っています:
結果のページ付けが必要ですが、希望どおりに機能します。私は試した:
特定のプレフィックスが付いたすべてのテーブルを返し、コメント順に並べ替える必要があります。1ページに6件の結果が表示されるLIMITを介してページネーションを行いたい。
私は明らかに非常に間違ったことをしています。これはどのように達成できますか?
編集:私はこれを見ました。それは私にはうまくいきませんでした。
mysql - MySQLで現在実行中のストアドプロシージャ名を取得しますか?
MySQL で作成したストアド プロシージャのログが必要です。これは、MS SQL Server で @@procid として利用できることを知っています。
MySQLで同等のものは何ですか?
タイムスタンプ、connection_id、database() を使用します。
実行中のspの名前を取得するにはどうすればよいですか? 私を呼んだSPはどうですか?
ありがとう、アダム
java - H2データベーススキーマへのアクセス
現在、 jOOQを使用してJavaの組み込みH2データベースにアクセスし、テーブルクラスなどを生成しています。現在、次のようなクエリを実行できます。
私のコードでは、結果などを返します。
ただし、情報スキーマを照会できません。H2コンソールを使用して問題なくアクセスでき、特定のinformation_schemaテーブルのビューの作成は正常に機能します。私の質問は、たとえば次のようなクエリを実行するために、information_schemaにどのようにアクセスする必要があるかです。
私のJavaコード内から?ビューを作成する必要がありますか、jooq-metaまたはその他の手段でスキーマにアクセスできますか、またはjooq-codegenによって使用されるプロパティファイルに何かを追加する必要がありますか(information_schemaは生成されたテーブルクラスに作成されません) ?または、他の何か?
編集:これはjooqを使用するための私の最初の進出であり、MySQLのバックグラウンドから来ています。私が効果的に達成しようとしているのは、DB関連のコードが機能することを確認するためにいくつかの単体テストを実行できるようにすることです。そのため、データベースのメタデータ(スキーマ)にアクセスして、ユーザーが作成したテーブルが存在するかどうかを知らなくても、何かを返したいと思います。
java - 適切なデータベーススキーマのクエリ
これは、jooqを使用してH2と対話するためにJavaで複数のスキーマを指定することについての私の以前の質問に続く質問です。
私のテストH2DBには、現在2つのスキーマ、PUBLICとINFORMATION_SCHEMAがあります。PUBLICは、H2によってデフォルトスキーマとして指定されています。たとえばINFORMATION_SCHEMA.TABLESから情報を抽出する必要があるクエリを実行すると、クエリは「テーブル不明」のSQLエラーで失敗します。このようなクエリを実行するには、を実行する必要がありfactory.use(INFORMATION_SCHEMA)
ます。ビルドエラーなどはなく、Eclipseは適切にオートコンプリートします(例:TABLES.TABLE_NAME)。
これを行わないと、スキーマの正しいFactoryオブジェクトを作成しても、jooqが適切なスキーマを付加していないように見えます。
マッピングについて読みましたが、どのスキーマを入力/出力として使用するかについて少し混乱しています。
mysql - mysqlでのLimitの使用
最初の質問は良い結果をもたらしていますが、質問は2番目についてです
制限2,2を与えたとき。どのように2つの行を選択できますか?これは、Weedの動作クエリです
2番目のクエリまたはその合計バグの何が問題になっていますか?解決策は何でしょうか?
2番目のクエリの期待される結果は、値を持つ単一の行です2 and Amount
sql - PostgreSQL: ストアド プロシージャとテーブル値関数を区別する方法は?
質問:
Microsoft SQL Server には、ストアド プロシージャとテーブル値関数があります。
違いは、ストアド プロシージャからはさらに選択を実行できないのに対し、テーブル値関数からは実行できることです。
例えば
SELECT * FROM sp_whatever WHERE xxx
違法ですが
、
SELECT * FROM TVF_whatever WHERE xxx
完全に合法です
今私の質問:
PostgreSQL では、information_schema.routines
テーブル値関数とプロシージャをどのように区別できますか?
違いはありますか?
一般的に、PostgreSQL で関数とプロシージャを区別するにはどうすればよいでしょうか?
つまり、理論的には、SQL サーバーでは、次のように区別できます。
テーブル値関数:information_schema.data_type = 'table'
ストアド プロシージャ:information_schema.data_type IS NULL
関数:information_schema.data_type != 'table' AND information_schema.data_type IS NOT NULL
これはPostgresでどのように行われますか?
理論的には、ストアド プロシージャの戻り値の型は void ですが、ストアド プロシージャはテーブルを返すこともできるため、違いがあると仮定して、tvf とストアド プロシージャを区別する方法はありません。
したがって、私の質問も定式化できます
。PostGreSQL では、テーブル値関数を作成する方法と、ストアド プロシージャを作成する方法 (それぞれ 1 つの例)。
もしあれば、2つの戻り値の型の違いに興味があります。