問題タブ [sqlparameter]

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.

0 投票する
2 に答える
1277 参照

asp.net - Vb 2010でSQL内でパラメーターを使用する方法(Web開発者)

SQLコードを処理しようとしていますが、問題が発生しています。列とVBが含まれるテーブルadminを備えた単純なデータベースがあります。UserNamePassword

テキストボックスからデータを読み取ってSQL文字列に入力できるようにしたい…SQL文字列は機能し(テスト済み)、簡単なSELECTステートメントで出力できるようになりましたが、 SQLにパラメータを読み取らせます。

ヘルプ?

0 投票する
2 に答える
4132 参照

c# - パスを SQL パラメータとして使用する場合の認識されないエスケープ シーケンス

nvarchar(500)文字列またはSQLを格納しようとしています。完全なファイル パスを文字列パラメーターとして渡すと、エラーが認識されないエスケープ シーケンスが発生します。

パスは、このストアド プロシージャが期待する通常のパラメータではないため、この可能性をどのように開いて、c:\foldername\subfoldername. 文字列の最初に追加する@か、StringBuilder を使用する必要がありますか?

ありがとう

0 投票する
2 に答える
16911 参照

c# - SqlParameterCollectionは、null以外のSqlParameterタイプのオブジェクトのみを受け入れ、DBNullオブジェクトは受け入れません。

pコレクションにSQLパラメーターを追加するInvalidCastExceptionと、投稿タイトルからのメッセージが表示されます。

parentIdデータベース内のnull許容整数およびnull許容整数です。

なぜこの例外が発生し、どうすれば解決できますか?

私はストアドプロシージャを使用せず、同様のスレッドを読みましたが、役に立ちませんでした。

0 投票する
2 に答える
732 参照

c# - インジェクションを防ぐための C# および SQL パラメーター

以下で渡すパラメーターの dataID がテキスト (または varchar または int) であることを確認するにはどうすればよいでしょうか (以下のコードで)。

私は次のようにコーディングすることに慣れています:

上部のコードで、2 つ以上のパラメーターを ExecuteQuery に渡すにはどうすればよいでしょうか?

0 投票する
2 に答える
9978 参照

c# - SqlParameter.Add と AddWithValue の違い

重複の可能性:
Parameters.Add と Parameters.AddWithValue の違い

MSDNコードから、これら2つの違いは何ですか:

パラメータを正しくキャストしていることを確認するために最初のものを実行する方が良いですか? コードをより安全にしようとしています。

0 投票する
4 に答える
3434 参照

c# - tablename を使用したクエリで SQL インジェクションを回避する

重複の可能性:
.NET の動的 SQL でテーブル/列名をサニタイズしますか? (SQL インジェクション攻撃の防止)

次のようなクエリがあります。

SQL パラメーター化は変数で機能しますが、テーブル名で機能させるにはどうすればよいですか? myID は int で渡されて変更されます (文字列に変換できます) が、SQL インジェクションから保護するにはどうすればよいでしょうか?

0 投票する
7 に答える
45548 参照

c# - SqlParameter に NULL 値を割り当てる最良の方法

C# クラス メソッドで使用しているオプションの入力パラメーターがいくつかあります。パラメータが使用されていない場合、オプションの構文は「0」の値を作成するため、メソッドで呼び出す SQL 挿入コマンドは、そのように挿入することになります。ただし、パラメーターが使用されていないときに、0 の代わりに NULL 値を挿入するコマンドが必要です。大量の「if」ステートメントを使用せずにこれを達成する最善の方法は何ですか?

以下は私が参照しているコードです。SqlParameter宣言でNULL値を指定できる構文/コマンドはありますか?

0 投票する
2 に答える
542 参照

c# - C#でのSQLパラメーターの追加

違いは何ですか:

と:

上記の違いは、@記号がある場合とない場合です。何か特別なことはありますか?

0 投票する
2 に答える
199 参照

c# - .Net の類似語を含む SQL パラメータ

私はかなり複雑なクエリを持っていて、好きな用語を修正していました (別の db テーブルとして持っていて、それらを検索クエリにロードします) が、それをパラメータ化すると、クエリは異なる結果を返します。

したがって、古いクエリには次のような like セクションがありました。

そして、私はそれを次のようなものに置き換えました(パラメータ付き):

私のパラメータは次のように追加されます:

これら 2 つのクエリは同じですか? 何か不足していますか?

0 投票する
1 に答える
408 参照

c# - IConvertibleエラーを伴う暗黙の演算子とSqlParameter.Valueへの割り当て

私はInt32としてクラスメンバータイプを持っていますが、要件は、このメンバーの.ToString()メソッドがInt32の特別にフォーマットされたバージョンを返す必要があることです。そこで、単純な値の代入セマンティクスを保持する暗黙の演算子を使用して構造体を作成し、.ToString()..をオーバーライドできます。

通常の使用法では、期待どおりに機能します。ただし、SqlParameter.Valueメンバーに割り当てると、「...useIConvertible...」エラーが発生します...

デバッグ中、構造体の.ToString()メソッドがSqlParameter.Value割り当てで呼び出されるように見えます。では、質問1は、基になるInt32値を割り当てる代わりに、なぜそれを行うのかということです。

関連する質問#2は、エラーがSqlCommand.ExecuteReader()メソッドで生成されるため、最初の割り当てでエラーが生成されないのはなぜですか?

私が書いたコードのあらゆる側面を自由に批評してください、しかし私は私の質問に対する良い答えを得ることを本当に望んでいます。

(追加するために編集)私は私の問題を言い換えます...

Int32を正確に模倣する値データ型を作成する必要があります(.ToString()の例外を使用)。これにより、ボックス化されると、構造体ではなくInt32値がボックス化されます。

これは可能ですか?