私はVBが全くの初心者の者です。
スタッフマスタメンテの登録プログラムを作成しています。
VB2005、SQLServer、を使用しています。
例えば、スタッフコードが"001"のデータを画面から登録したとします。
その後続けて"001"のスタッフコードで登録しようとすると、『既に登録されています』のエラーメッセージが出ます。が、実際のDBを見てみると、"001"のスタッフコードのデータは登録されていない、という状況が起きています。
データベース開発入門の本を見ながら、作成しているのですが、本にあるサンプルプログラムの通りにコーディングしているのですが、何故かうまくいきません。何か足りないコーディングがあるのでしょうか?
'レコードの定義
Dim newrecord As スタッフマスタDataSet.スタッフマスタRow = Me.スタッフマスタDataSet1.スタッフマスタ.NewスタッフマスタRow()
'レコードにデータをセットする
newrecord.スタッフコード = txtSyaban.Text
'新規行をデータテーブルに追加する
Me.スタッフマスタDataSet1.スタッフマスタ.AddスタッフマスタRow(newrecord)
'テーブルアダプタを介して、スタッフマスタを更新する
Me.スタッフマスタTableAdapter1.Update(Me.スタッフマスタDataSet1.スタッフマスタ)
TableAdapter は全く使ったことありませんので、
ざっと検索しただけで回答します。
[TableAdapter の概要]
http://msdn2.microsoft.com/ja-jp/library/bz9tthwx(VS.80).aspx
>TableAdapter の場合、最初の作成時には、基になるデータベースに更新を戻す機能がありません。
UPDATE コマンドは設定したんですか?
分かりました。 原因はこれでした。(↓)
http://www.ailight.jp/blog/unaap/archive/2005/12/07/10249.aspx
ここで質問させて頂いてからも調べ続け、この(↑)サイトに辿り着いた、というわけです。。。
私と同じようにハマった人、多いみたいです。。。
お騒がせ致しました。m(__)m