ADOを使ってSQLServerと接続しています。
AddNewメソッドを使用してDBに新規登録をしたいのですが、
ボタンのクリック時に
Private Sub Command1_Click()
rs.AddNew
rs.Fields("フィールド名")
rs.Update
End Sub
とやると新規登録ではなく一番始めのレコードを上書きしてしまいます。
このような場合、どのような記述をすればよいのでしょうか?
お願いいたします。
DAOでコード書くとき同じような書き方しますけど、
Private Sub Command1_Click()
rs.AddNew "フィールド名","フィールド値"
End Sub
でいくと思います。
rs.Fields("フィールド名")
rs.Update
のrs.Updateが作用してしまっているのではないでしょうか?
さっそくの返答ありがとうございました。
rs.AddNew "フィールド名","フィールド値"
で追加されました。
しかし、テキストボックスの内容を追加する場合はうまくいきません。
rs.AddNew "フィールド名",テキストボックス名
ではだめなのでしょうか?
テキストボックスで引っかかるとしたら、
フォーカスを取得していないとかの問題だと思います。
テキストボックス1.SetFocus
rs.AddNew "フィールド名",テキストボックス1.Text
読み込むテキストボックス名の数が多い場合は、
別途変数を用意して代入してしまった方が楽ですよ。
ありがとうございました。できました。
ツイート | ![]() |