0

Access 2007 データベースへの書き込み/読み取りに C# を使用しています。テーブルは ID - オートナンバー [pkey] Fname - テキスト Lname - テキスト アドレス - テキスト

私が使用するクエリ文字列は

"Insert into TblMain (Fname,Lname,Address) Values ('"+fname+"','"+lname+"','"+adrs+"')"

エラーは返されず、クエリは実行されますが、データはデータベースに追加されません。

自動採番データ列を持たないテーブルへの挿入は完全に機能します。

私は何が欠けていますか?

4

4 に答える 4

1

テーブル名にはエイリアスを使用します。

于 2011-10-10T14:03:09.313 に答える
0

ID フィールドを含めて、追加されるレコードに一意の ID 番号を付けてみませんか?

http://msdn.microsoft.com/en-us/library/bb208861.aspx

宛先テーブルに主キーが含まれている場合は、一意の非 Null 値を主キー フィールドに追加してください。そうしないと、Microsoft Access データベース エンジンはレコードを追加しません。

オートナンバー型フィールドを持つテーブルにレコードを追加し、追加したレコードの番号を付け直す場合は、クエリにオートナンバー型フィールドを含めないでください。フィールドの元の値を保持する場合は、クエリにオートナンバー型フィールドを含めてください。

于 2010-03-20T05:25:15.653 に答える
0

フィールド名を角かっこで囲んでクエリを実行してみてください。

昔、フィールド名の 1 つが「ゾーン」であるという同様の状況に直面したことを覚えています (正しく覚えていると思います)。ADO がクエリを実行させない理由がわかりませんでした。後で、彼らの ADO ライブラリの実装がそのフィールド名と競合していることがわかりました。

于 2010-03-20T05:08:19.927 に答える