2016-04-27 16 views
-1
STSQL = "select STOCKROOM_QTY from mpcs.si_mtipart_info where inv_type = '" & rsMPCS("inv_type") & "' and mti_part_no = '" & rsMPCS("mti_part_no") & "'" 
    rsMPCS2 = MPCS_SELECT_SQL(UCase(STSQL)) 
    If rsMPCS2.HasRows Then 
     Dim CurrentQuan As Long = rsMPCS2("STOCKROOM_QTY") 

     STSQL = "update mpcs.si_mtipart_info set STOCKROOM_QTY = " & (CurrentQuan - NumericUpDown1.Value) & " where inv_type = '" & rsMPCS("inv_type") & "' and mti_part_no = '" & rsMPCS("mti_part_no") & "'" 
     MPCS_UPDATE_SQL(UCase(STSQL)) 

上記のコードは、OracleテーブルのSTOCKROOM_QTYを変更しているものの一部です。SQLスロー例外を選択して、データが存在しないというメッセージを表示します。

私は取得していますエラーが、私は、SELECTステートメントを実行する場合、それはあなたはそれが存在して見ることができますselect STOCKROOM_QTY from mpcs.si_mtipart_info where inv_type = MACH_PART' and mti_part_no = '01400010005'

を送信しているがenter image description here

です。

enter image description here

ダウン投票する理由あなたはそれが行われた方法が好きではありませんので。私はそれを研究し、可能な限り明確にし(写真を与えても)、努力もしました。それ以上の情報がなければ誰かが簡単に問題を見ることができました。

+0

まずSQLインジェクションが可能です。 – lad2025

+3

あなたのエラーは 'No data for the row/column'です。あなたのカラムは存在しません; –

+0

私は間違って入力しましたが、データはあまり正しくありません。そしてlad2025、私は私が通過し、これらのものを最終的に修正していることを知っています、今は内部アプリケーションは外部へのアクセスだけですが、私はこのコードを時間通りに継承しました。 – Lee

答えて

1

あなたはデータリーダーを使用しているようです。その場合は、データにアクセスする前にReadメソッドを呼び出す必要があります。

+0

それは常に小さなもの、素晴らしい目Jmcilhinney、それはすべてです。愚かな私はそれを逃した。ありがとうございました。 – Lee

関連する問題