問題タブ [dynamic-sql]
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 - 動的 SQL ステートメントとは何ですか?
a) 動的 SQL ステートメントとは何ですか?
句または句の一部だけを SQL 文字列に動的に追加する SQL ステートメントはありますか?
b) 動的に提供される値のプレースホルダーを使用するパラメーター化された文字列も、動的 SQL ステートメントと見なされませんか?
ありがとう
sql - SQLジェネレーターを作成する場合、何を読む必要がありますか?
間もなく、メタデータを取得し、そこから動的SQLを生成するコンポーネントを作成する予定です。ほとんどの場合、SELECT、INSERT、UPDATE、DELETEの話をしていますが、CREATE /ALTERTABLEステートメントをいくつか含めることも可能だと思います。
既存のORMソリューションは法案に適合しないと確信していますが、それ以外の点では、どこでどのように詳細がまだ少し曖昧です。
私は他の開発者と同じようにSQLステートメントを書くことができ、過去にNHibernateを少し使用したことがありますが、データベースやORMの背後にある理論についてはほとんど何も知りません。準備作業を行いたいので、推奨される読み物やコードを探しています。
ちなみに、私のコーディング環境は.NET(C#)とSQLServerです。
sql - 動的SQLクエリとは何ですか?いつ使用しますか?
動的SQLクエリとは何ですか?いつ使用しますか?SQLServer2005を使用しています。
asp.net - proc (Sql Server 2008) で sp_executesql を使用すると、「選択権限が拒否されました」というエラーが発生する
私は Sql Server 2008 を使用しており、内部で sp_executesql を使用する proc を持っています。ASP.NET を介して proc を実行すると、次のエラーが発生し続けます。
オブジェクト 'MyTable'、データベース 'MyDatabase'、スキーマ 'dbo' に対する SELECT 権限が拒否されました。
私はこれについて多くの調査を行いましたが、ほとんどの人は、動的クエリの読み取り元のテーブルに対する選択権限を付与する必要があるという事実を指摘しています。さて、私はこれを行いましたが、まだ機能していないようです:
ご覧のとおり、基になるテーブルで選択を許可しようとしてやり過ぎました。動的SQLでMyTableのみを参照するように、procを書き直しました。上記のすべてのユーザーに、procの「実行」権限を付与しました...うまくいきません。
上記の「myuser」は、web.config の接続文字列のユーザー名です。
ここで何か不足していますか?
ありがとう!デイブ
sybase - 動的に生成されたデータウィンドウの列名
SyntaxFromSQL を使用してデータストアを動的に作成する場合 (SQL SELECT ステートメントに基づいてデータストアのソース コードを生成するため)、次のような構文を使用します。
データストアの生成された列の名前を確認するにはどうすればよいds_1
ですか? 2 つ以上のテーブルを結合する select ステートメントの場合、結果の列名の前に関連するテーブル名が付くことがあります。たとえば、列名を取得する代わりに、次のfield_id
ような列名を取得することがありますmy_table_field_id
。field_id
これは、後で関数の引数として列名 ( ) を指定すると問題が発生しGetItem
ますが、関連するデータストアではmy_table_field_id
代わりに列に名前が付けられています。
さらに悪いことに、異なる列定義 (テーブル名が前に付いている) を取得していた理由の 1 つは、ユーザーのログインにsa role
!?!?!が割り当てられていたことが原因であることがわかりました。
sql - SQL は、任意の数の同一テーブルからレコードを選択します
同じ構造の複数のテーブルと関連する名前を持つデータベース(SQLServer)にクエリを実行しようとしています。
一度に1つのテーブルで目的のレコードを返すクエリがあり、複数のテーブルを手動で選択できます
必要なテーブル名を代用する一般的なクエリは約 200 行で、ROWNUMBER()/PARTITION BY 関数、関連するテーブルへの複数の結合、およびいくつかの順序付けが含まれます。
時間が経つにつれて、新しいテーブルが追加され、nが変更されます。
nの任意の値に対して、すべてのnテーブルからレコードの UNION を選択する方法を誰かが提案できますか?
注: nテーブルのリストは、sysobjects テーブルに対するクエリで簡単に取得できます。
sql-server - IFステートメントによって取得されたSELECTSQLテーブル
ヘラーみんな、
私がやりたいのはそのようなことです。パラメータに応じてSQLテーブルを作成します。
これは例として挙げた単純なテーブルです。実際のSQLクエリははるかに大きいため、このクエリ内で動的SQLを使用できるとは思いません。だから私は他の方法が必要です。
sql - OracleでSQLコマンドを動的に作成して実行する
私はデータベースクラスを受講していますが、クラスのラボセクションの最初に、通常、以前に作成したデータベース内のすべてのテーブルを削除する必要があります。これを動的に実行するスクリプトを実行できるようにしたかったのですが、動作させることができないようです。これが私がこれまでに持っているコードです。
誰かが私が間違っていることについて正しい方向に私を向けることができれば、それは素晴らしいことです。ありがとう。
sql - spパラメータとして渡されたSQLテキストを実行するにはどうすればよいですか?
nvarcharパラメータを持つストアドプロシージャがあります。このSPを使用する場合、呼び出し元がsqlコマンドのテキストを提供することを期待しています。
SP内から提供されたSQLコマンドを実行するにはどうすればよいですか?
これも可能ですか?-
EXECを使用して可能だと思いましたが、次のとおりです。
指定された名前のストアドプロシージャが見つからないことを示すエラー。スクリプトなので、これは明らかに正確ですが、期待どおりに機能していないと思います。
debugging - SQL Server 2008 での長い動的 SQL のデバッグ
特定の条件下で爆撃する動的SQLステートメントがいくつかあるので、デバッグしようとしています。次のように構築されます。
私が言ったように、それはループの特定の反復で爆弾をします(なぜこのように実装されているのかを尋ねないでください、私はバグを修正しているだけです)。 。私は最初の255文字だけを手に入れていると思います。substring(@sql, 0, 200)
で結果を見ています'substring(@sql,0,200)' could not be evaluated
。助けてください。200から199までの0から199までのサブストリングを見て、このことを一緒に断ち切ってデバッグしたいと思っていました。
あなたからのポインタをいただければ幸いです。ありがとう!