0

sql ce 3.5 を使用した ac# Visual Studio 2010 Express プロジェクトで、ce 3.5 データベース テーブルのデータセットのファイル クエリの挿入ステートメントを除いて、更新ステートメントを生成できました。

ただし、実行時エラーが発生しました: Update requires a valid InsertCommand when passed DataRow collection with new rows from

  myTblAdaptor.Update(myTbl)

fill メソッドがすべての更新ステムを生成し、データベースを直接生成するようにしました....しかし、myTblAdaptor.Insert が見つからないようです。実際、ウィザードの結果には Insert ステートメントがリストされませんでした。理由がわからない。SQLはSELECT [category]、[Value]、[seq] FROM [favorite]でした

そこで、データセット デザイン サーフェイスの myTbl に insertquery を追加して作成してみました。Insert1 メソッドを生成しました。

次に、 InsertMethod を追加しようとしました

データセット サーフェスを右クリックし、ビュー コードを選択し、

次に、ファイルの最後に次を追加しました。

namespace myappNS.myDSTableAdapters
{
public partial class myTblAdapter
{
    public int Insert(string category, string value, int? seq)
    {
        return Insert1(category, value, seq);
    }
}
}

また、アダプターに InsertCommand を手動で定義できるかどうかも確認しようとしましたが、見つかりませんでした。

私に何ができる?

助けが必要な場合は事前にthx。

4

1 に答える 1

0

私の間違いです。主なクエリで Insert ステートメントが生成されていないか、列数が一致していないことに気付いたはずです。これは単に、データベース テーブルの定義がデータセットの定義またはプライマリ クエリと異なることを意味します。

エラーを修正するには、データ セットからテーブルを削除し、データベース テーブル フォーム DataExporer をデータセット デザイン サーフェイスにドラッグ ドロップします。

于 2012-05-15T17:16:52.810 に答える