フォームに入力されたデータからテーブルを更新しようとしています。値のすべてがこのように構成されているSQLの更新、エラーなし、更新なし
_JEBatchDate = IIf(Me.textJEBatchDate.Text.Trim.Length > 0, Me.textJEBatchDate.Text.Trim, "")
更新SQLは次のようになります...
UPDATE [MAIN] SET [CheckNumber] = @checknumber, [CheckDate] = @checkdate, [CheckCashDate] = @checkcashdate, [CheckAmount] = @checkamount, [PayeeNumber] = @payeenumber, [AccountNumber] = @accountnumber, [Bank] = @bank, [ToTheOrderOf] = @totheorderof, [CheckType] = @checktype, [DatePaperworkSentToPayee] = @datepaperworksenttopayee, [DatePaperworkSentToBank] = @datepaperworksenttobank, [IncompleteReason] = @incompletereason, [RejectReason] = @rejectreason, [CaseNumber] = @casenumber, [BankStatus] = @bankstatus, [CorrWithPayee] = @corrwithpayee, [Comments] = @comments, [BankCredit] = @bankcredit, [Refund] = @refund, [DateFundsRecdFromBank] = @datefundsrecdfrombank, [DateRefundRecd] = @daterefunded, [DateTargetSent] = @datetargetsent, [NumberOfTargets] = @numberoftargets, [DateCreditPostedToCLI] = @datecreditpostedtocli, [DateSentToSGForRepayment] = @datesenttosgforrepayment, [DateClaimWasRepaid] = @dateclaimwasrepaid, [NewCheckNumber] = @newchecknumber, [NewCheckAmount] = @newcheckamount, [ARCHIVED] = @archived, [JEBatchName] = @jebatchname, [JEBatchDate] = @jebatchdate WHERE [ID] = @ID;
:
変数は、このようなフォームから引っ張られます
strValues = strValues & "[JEBatchDate] = @jebatchdate "
Try ... Catch内で、パラメータは次のように構成されます。
Try
Using updateCmd As New OleDb.OleDbCommand(UpdateSQL, HMOConnection)
updateCmd.Parameters.AddWithValue("@ID", Me.labelID.Text)
updateCmd.Parameters.AddWithValue("@checknumber", _checkNumber)
updateCmd.Parameters.AddWithValue("@checkdate", _checkDate)
私はupdateCmd.ExecuteNonQuery()
を使用してクエリを実行します。
コードはTry ... Catchエラーなしで実行されますが、レコードは更新されません。私はすべての名前、綴り、接続をダブルチェックしましたが、まだ更新は行われていません。どんなアイデアや提案も感謝しています!
EDIT
私は上から下に次の行を移動した場合、私はデータ型の不一致エラーを取得:
updateCmd.Parameters.AddWithValue("@ID", Me.labelID.Text)
どのようにして、更新が動作しないことを確認していますか? | DataDirectory |を使用しましたか?あなたの接続紐のショートカット? – Steve
私は直接データベースに入り、チェックすることができます。 – user3795810
データベースをプロファイリングして、それが期待していたデータベースに文がぶつかっているのを確認してください。さらに、SSMSでプロファイリングされたクエリを直接実行して、クエリが実際に行を更新することを確認しましたか? – Kritner