VB6.0用掲示板の過去のログ(No.1)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [過去ログ] [管理用]

投稿日: 2002/11/02(Sat) 10:21
投稿者とも
Eメール
URL
タイトルADOをコードした場合のUpdateDelete

今、ADOをコードで設定してプログラムを作成しているのですが、どうしても、UpdateとDeleteをしようとすると、「キーフィールドがNull」というエラーがでます。コードも何度もチェックしましたし、データベース(アクセス2000)のほうもフィールドをチェックしたりしましたが、問題はないのです。一体何が原因で、どのようになおせばいいのでしょうか?

まずフォームロードイベントで以下のように設定(テキストボックス以外にコンボボックスにデータをロードしてます)

Dim strSQL As String

Set conVideo = New ADODB.Connection
Set rsVideo = New ADODB.Recordset

strSQL = "SELECT Studio.[Studio Name], Video.[Movie Number]," & _
          "Video.Title, Video.Category, Video.Length " & _
          "FROM Studio INNER JOIN Video ON Studio.[Studio ID] = Video.[Studio ID]"

With conVideo
     .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
               "Persist Security Info=False;Data Source = " & App.Path & _
               "VBVideo2000.mdb;Mode = readwrite"
    
    .Open
End With
With rsVideo
      .CursorLocation = adUseClient
      .Open strSQL, conVideo, adOpenDynamic, adLockOptimistic, adCmdText
End With

Call AssignData
With rsVideo
  Do Until .EOF
   If ![Movie Number] <> "" Then
    cboNum.AddItem ![Movie Number]
    cboTitle.AddItem !Title
    cboStudio.AddItem ![Studio Name]
    cboCategory.AddItem !Category
   End If
   .MoveNext
Loop
.MoveFirst
End With

そしてAddコマンドボタンで
rsVideo.AddNew

として、Saveコマンドボタンで
rsVideo.Update

としています。Deleteも同様です。
考えられる、原因はなんでしょうか?


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- Web Forum -