2017-10-28 244 views
0

これを検索しようとしましたが、何の助けにもなりませんでした。私は、Accessデータベースにレコードを追加する必要があり、学校のプロジェクトで作業しようとしているが、私はありません編集または挿入モードでエラー」データセットを取得しています。Delphiのデータセットは編集モードまたは挿入モードではありません

sName := ledName.Text; 
sUName := ledUserName.Text; 
sPass := ledPassword.Text; 
sEmail := ledEmail.Text; 
sCell := ledPhone.Text; 

dmUsers.tblUsers.ReadOnly := False; 

dmUsers.tblUsers.Open; 
dmUsers.tblUsers.Insert; 

dmUsers.tblUsers.Last; 
dmUsers.tblUsers['UserName'] := sUName; 
dmUsers.tblUsers['Password'] := sPass; 
dmUsers.tblUsers['Email'] := sEmail; 
dmUsers.tblUsers['Cell Number'] := sCell; 
dmUsers.tblUsers['Actual Name'] := sName; 
dmUsers.tblUsers['Balance'] := 0; 
dmUsers.tblUsers['Points'] := 0; 

dmUsers.tblUsers['Present'] := False; 

dmUsers.tblUsers.Post; 

私が「かわかりません間違っているのmは。任意の助けをいただければ幸いです。

+1

データセットを編集する前に「編集」を呼び出します。次に、 'Append'(または' Insert')を呼び出して、 'Last'呼び出しを削除してください。 – Victoria

答えて

1

あなたがアクティブなレコードを変更することができ、データセットのメソッドを呼び出した場合(のようなFirstLastNextまたはLocate)データセットがPost変更がmodifedする場合はCheckBrowseModeを呼び出しますかCancel新しいレコードが変更されていない場合は、結果はデー​​タセットがdsBrowse、causi編集を許可しないようにしてください。

コードを次のように変更してください。 Lastコールでは、データセットの最後に新しいレコードを作成したかったので、Appendを使用します。

sName := ledName.Text; 
sUName := ledUserName.Text; 
sPass := ledPassword.Text; 
sEmail := ledEmail.Text; 
sCell := ledPhone.Text; 

dmUsers.tblUsers.ReadOnly := False; 

dmUsers.tblUsers.Open; 

dmUsers.tblUsers.Append; 

dmUsers.tblUsers['UserName'] := sUName; 
dmUsers.tblUsers['Password'] := sPass; 
dmUsers.tblUsers['Email'] := sEmail; 
dmUsers.tblUsers['Cell Number'] := sCell; 
dmUsers.tblUsers['Actual Name'] := sName; 
dmUsers.tblUsers['Balance'] := 0; 
dmUsers.tblUsers['Points'] := 0; 

dmUsers.tblUsers['Present'] := False; 

dmUsers.tblUsers.Post; 
関連する問題