問題タブ [executescalar]
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.
c# - C# SQL 集計 ExecuteScalar 戻りクエリ
DB 内の名前エントリの数をカウントする SQL 集計関数。
cmd.ExecuteScalar
2 回電話をかけたことに注意してください。興味深い部分は、クエリが異なる結果を返すことです。
正しい値を返しません。name 列に name が存在するか存在しない場合は、両方に対して null を返します。
正しく戻ります。これは、存在する場合は「1」を返し、存在しない場合は「0」を返します。
Web を検索しても、わかりやすい説明は見つかりませんでした。
name 列に name がない場合、cmd.ExecuteScalar
が返されることを読みましたnull
。
違いは何ですか:
ありがとう、deDogs
.net - ExecuteScalar は null を返すことができますか?
クエリがあります: "Select IsNull(ItemBarcode,0) From Items where ItemID = 12313" データベースに 12312 ID がテーブルに存在しない場合、".NET ExecuteScalar" は何を返しますか (割り当てた場合)オブジェクト変数に?
結果値はどうなりますか?
linq - LINQ to Entities 新規選択
エラーが発生しています:
LINQ to Entities はメソッド 'System.Object ExecuteScalar(System.String)' メソッドを認識せず、このメソッドはストア式に変換できません。エラーが発生するのはなぜですか?
しかし、Addresss = "ASASAS" は実行されていますか?
c# - 使用中の例外ExecuteScalar
ADO.netを使用してC#のデータベースから人を取得したいと思います。
私はこのコマンドを使用します:
その後
ボタンをクリックすると、これらのコマンドが2回呼び出されます。
はじめてOKです。しかし、2回目は、次のようになりますTimeOutException
。
タイムアウトが期限切れになりました。操作が完了する前にタイムアウト期間が経過したか、サーバーが応答していません。
使っcommand.Disposed();
てみcommand.Connection.Close();
ました。しかし、これらは私の問題を解決しません。
この問題を解決する方法を教えてください。
asp.net - OledbConnection ExecuteScalar が古い値を返す
値が変更されるたびにドロップダウンボックスがあり、次のメソッドで選択クエリを実行してテキストボックスを更新する必要があります。しかし、何が起こるかというと、クエリは常にドロップダウン ボックスの最初の項目の結果を返します。プログラムをデバッグすると、テキストの値は常にドロップダウン ボックスの最初の項目の値になります。
SELECT suburb FROM sites WHERE SiteName = '" + siteId.SelectedValue + "'" を使用すると、テキスト ボックスに正しい値が表示されます。クエリが [サイトからアドレスを選択] の場合、正しい値を取得するのに問題があります。
protected void siteId_SelectedIndexChanged(object sender, EventArgs e) { string connect = "Provider=Microsoft.Jet.OleDb.4.0;Data Source=|DataDirectory|db.mdb"; using (System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection(connect)) {
c# - ID値を返すときのExecuteScalarとExecuteNonQuery
使用するのが最適かどうか、または新しく挿入された行のID列を返したいかどうかをExecuteScalar
判断しようとしています。私はこの質問ExecuteNonQuery
を読み、そこでの違いを理解していますが、数週間前に書いたコードを見ると(このサイトから多額の借用をしているときに)、挿入物で次のように使用していることがわかりました。ExecuteScalar
これは私が必要とするものにはうまく機能するので、私は疑問に思っています
ExecuteNonQuery
挿入を行うのに「より適切」であるため、ここ で使用する必要があるかどうか。- 出力パラメーターを使用しているので、ID値の取得はどちらの方法でも同じでしょうか?
- いずれかの方法に関連するパフォーマンスの影響はありますか?
- 一般的に、これを全体的に行うためのより良い方法はありますか?
違いが生じる場合に備えて、Visual Studio 2010、.NET 4.0、およびSQLServer2008r2を使用しています。
c# - C#Scope_Identityの問題
いくつかの回答を閲覧しましたが、うまく機能していないようです。
プログラムの別の部分で使用できるように、テーブルのIDフィールドを返す必要があります。
しかし、運がなく、同じです
そして、レコードがテーブルに挿入されたとしても、両方とも0を返します。
以下のコードをダンプします、誰かが私が間違っていることを見ることができますか?
およびストアドプロシージャ:
c# - この操作のクラスを作成する
mysqldatabaseからデータを取得し、C#アプリケーションに変数を投入しています。私はこのコードを使用しています:
これを行った後、「forcatime」ToStringを変換し、MessageBoxにスローします。
この操作のクラスを作成する方法があるかどうかを知りたいのですが、それを実行する必要があるたびに、すべてのコードを何度も作成するからです。ありがとう
c# - SELECT の直後に ExecuteScalar は戻りますか?
最近、興味深い動作に気付きました。
SqlCommand.ExecuteScalar()を使用して MS SQL ストアド プロシージャを実行すると、アプリケーションはSELECTの実行後に表示される SQL エラーまたは PRINT をまったく認識していないようです。
最も可能性の高い説明は、ストアド プロシージャが終了するのを待たずに、SELECT の結果が表示された直後にフロー制御が C# に渡されることです (ただし、ストアド プロシージャはその下でサイレントに実行を続けます)。
明らかな利点はパフォーマンスの向上です (結果は既にわかっているため、待つ必要はありません)。残念ながら、C# アプリは、その時点以降に発生する可能性のある SQL 例外を認識しません。
誰かが私の説明を確認できますか? この動作を変更できますか?
asp.net - asp サーバーでの SQL Server 接続のエラー
asp サーバーでは、以下に示すようExecuteScalar
に、実行後に SQL Server のエラーが発生します。エラーは時々発生するだけで、常に表示されるわけではありません。では、なぜこのエラーが発生するのか知っている人はいますか? それを解決する方法は?ExecuteReader
ExecuteNonQuery
System.Data.SqlClient.SqlException: サーバーに要求を送信するときに、トランスポート レベルのエラーが発生しました。(プロバイダー: TCP プロバイダー、エラー: 0 - 既存の接続がリモート ホストによって強制的に閉じられました。)
System.Data.SqlClient.SqlConnection.OnError (SqlException 例外、ブール型 breakConnection)
で System.Data.SqlClient.SqlInternalConnection.OnError (SqlException 例外、ブール型 breakConnection)
で System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning (TdsParserStateObject stateObj)
で.Data.SqlClient.TdsParserStateObject.WriteSni()
で System.Data.SqlClient.TdsParserStateObject.WritePacket(Byte flushMode)
で System.Data.SqlClient.TdsParserStateObject.ExecuteFlush()
で System.Data.SqlClient.TdsParser.TdsExecuteSQLBatch(String text, Int32 タイムアウト、SqlNotificationRequest、notificationRequest、TdsParserStateObject (状態オブジェクト)
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds (CommandBehavior cmdBehavior、RunBehavior runBehavior、ブール値 returnStream、ブール値 async)
で System.Data.SqlClient.SqlCommand.RunExecuteReader (CommandBehavior cmdBehavior、RunBehavior runBehavior、ブール値 returnStream、文字列メソッド、DbAsyncResult 結果)
でSystem.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior、RunBehavior runBehavior、Boolean returnStream、String メソッド)
で System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior 動作、String メソッド)
で System.Data.SqlClient.SqlCommand.ExecuteReader( )
WinMsg.Page_Load(オブジェクト送信者、EventArgs e) で