問題タブ [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# - ExecuteScalar() の結果をキャストする c#
なぜこれが機能するのでしょうか
しかし、これは例外を生成します
System.InvalidCastException: 指定されたキャストは無効です。
なぜ有効ではないのでしょうか。
編集
私は、貨物の価格を取得するクエリから単一の結果を返そうとしています。したがって、小数が必要なため、これをに変換できません。int
したがって、にキャストしようとしていdouble
ます。私はまだasp.netを学んでいるので、これを達成するためのより良い方法があれば、正しい方向に向けてください:)
EDIT 2 SQLで完全なコード...
c# - ExecuteNonQuery および ExecuteScalar を使用した SPROC 挿入
SQL 挿入の問題。ストアド プロシージャを実行してテーブルに行を挿入し、作成された ID を返します。このように実行し、出力パラメーター @ID を使用して ExecuteNonQuery() を使用すると、int idinserted に対して -1 が返されますが、挿入された ID が返されます。レコードが挿入されたので、1 を返すべきではありません。ExecuteNonQuery を使用してレコードが挿入されたことを確認し、挿入された ID を取得したいと思います。
SQL 挿入
このように挿入とc#を行うとExecuteScalar()
ExecuteScalar()
次のエラーをスローします
「指定されたキャストは無効です
c# - C#を使用してSQL整数列に追加する
C# バックエンドから SQL テーブルを更新しようとしていますが、正常に実行されません。mainServiceButton は、linkName 列の既存の値です。これが私がこれまでに持っているものです:
テーブルの作成方法は次のとおりです。
望ましい結果は、リンク (linkName) がクリックされるたびに clickCount を 1 ずつ増やすことです。助言がありますか?
c# - ExecuteScalar は常に 0 を返します
なぜこれが起こっているのかわかりません。同じ問題をオンラインで見たことがありますが、それを修正するための助けはほとんどありません。
Access 内でクエリを実行すると、0 ~ 10 の範囲の異なる値が返されますが、何らかの理由で、コード内で同じ値が返されません。
c# - タイプ「int?」を暗黙的に変換できませんか? 「int」に。
「タイプ 'int を暗黙的に変換できませんか?」というエラーが表示されます。戻り行の OrdersPerHour に明示的な変換が存在します (キャストがありませんか?)」。私の C# スキルはそれほど高度ではないため、その理由はわかりません。どんな助けでも大歓迎です。
c# - C# の OleDbCommand での ExecuteScalar からのキャスト
コードから次のエラーが表示されます。
次のエラーが発生しました:
System.Data.OleDb.OleDbException (0x80040E07): 条件式のデータ型が一致しません。System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling (OleDbHResult hr) で System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult (tagDBPARAMS dbParams、Object& executeResult) で System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult) で System.Data. OleDb.OleDbCommand.ExecuteCommand(CommandBehavior 動作、Object& executeResult) で System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior 動作、String メソッド) で System.Data.OleDb.OleDbCommand.ExecuteScalar() で NJDataExtractExceltoAccess.Form1.FindAcctId(String x 、OleDbConnection y) の C:\Path\Form1.cs:line 158
マイクロソフトのページには次のように書かれています。
典型的な ExecuteScalar クエリは、次の C# の例のようにフォーマットできます。
私も試しました:
と
しかし、同じ行で同じデータ型エラーを受け取ります。ExecuteScalar()
オブジェクトからキャストするにはどうすればよいですかOleDbCommand
(接続と挿入文字列が機能します)。
sql - ExecuteScalar() 制限?
GUID (sql では varchar(50,notnull)) を持っています。VB では ExecuteScalar() を介して SQL から返されます。VB ではその値を文字列 (最大 2GB) に格納しています。その後、GUID = Stored の場所で select を実行します。 GUID
プログラムを実行すると、GUID サンプル {3F2504E0-4F89-11D3-9A0C-0305E82C3301} が切り詰められているように見えます
サンプル エラー 浮動小数点値 '3F2504E0' はコンピューター表現の範囲外です (8 バイト)
私のexecuteScalarはこの情報を切り捨てていますか?
コード:
c# - SQL 関数は C# で間違った値を返します
SQL Management で実行すると正しい答えを返す SQL の関数があります。これは私の関数です。
しかし、C# プログラムで使用すると、このコードで 0 (ゼロ) の値が返されます。どこに間違って書きましたか?
sql-server - SQLストアドプロシージャのステージングテーブルからSQLスクリプトを実行する方法
以下のシナリオに対する最善のアプローチは何ですか?
私の C# プログラムには、UPDATE、INSERT、DELETE などの SQL コマンドがいくつかあります。C# プログラムでそれらを実行することはできますが (正常に動作します)、ストアド プロシージャの 1 つが最後の行に到達したときにこれらの sql コマンドを実行する必要があります。そのため、同じデータベース内のいくつかのステージング テーブルに SQL コマンドを格納することを計画しており、ストアド プロシージャ内でこのテーブルを開いて 1 つずつ実行したいと考えています。
ストアド プロシージャ内でテーブルを開き、いくつかの条件 (select * from TempStagingTable where customerId = '1000' など) に基づいてテーブルをトラバースするという点で、最善のアプローチは何ですか。10 件のレコードが返された場合、それらをループして、「CustomSqlScript」という名前の列に格納されている sql コマンドを実行したいと思います。
PS: SQL 2008 R2 を使用しています。