1

MS Access データベースとフィールドを持つテーブル ストックを使用します。

  • ブランド名

  • モデル名

  • 株式

ここで、特定の製品の在庫値を更新したいと考えています。この目的のために、2 つの入力ボックスがあります。

以下のコードを使用します。

Private Sub cmddelstock_Click()
 Dim a As String
 Dim b As Integer
 a = InputBox("ENTER THE MODEL NAME HERE")
 b = Val(InputBox("ENTER NEW STOCK VALUE OF THE MODEL"))
 Adodc1.RecordSource = "UPDATE stock SET Stock='b' where Model_Name='a' "
 Adodc1.Refresh

私が経験しているエラーは、from 句の構文エラーです。コードを介してデータベースに接続するのではなく、右クリックして接続し、プロパティに移動します。そこで、接続文字列 = microsoft jet oledb 4.0 を使用します

次に、レコード ソース タブ コマンドでtype=1-adcmd type

在庫をUPDATEします

コマンドテキストでは何を使用すればよいでしょうか?

4

2 に答える 2

0

この構文では:

Adodc1.RecordSource = "UPDATE stock SET Stock='b' where Model_Name='a' "

a と b はバリアベルではなく、その文字です。これを次のように変更します。

"UPDATE stock SET Stock='" & b & "' where Model_Name='" & a & "'"
于 2013-08-24T17:06:28.293 に答える
0

.RecordSource プロパティはまさにそれです: ADODBGrid が満たされるソース。そのため、このプロパティを使用してUpdateSQL コマンドを発行することはできません (ちなみに、それ自体にいくつかの構文エラーがあります)。

基になるデータを処理するクラスのある種の .Execute Sub に SQL 文字列を配置する必要があります。

私は ADO に精通していません (DAO のみを使用しています) が、DAO では次のようになります。

dbStockDatabase.Execute "UPDATE Stock SET Stock.Stock=" & b & " WHERE Stock.Model_Name='" & a & "'"
于 2013-08-24T17:05:17.267 に答える