アプリ版:「スタンプのみでお礼する」機能のリリースについて

VB.NETで開発を行っています。データベースを使用するのですが、
フィールド数が150近いものになっており、クエリの自動生成ができなくて、
その部分は手動で作成しました。
で、DBへ書き込みを行う際に、INSERT文を作成していますが、そこで使用して
いる@付の変数が宣言されていない、という実行エラーが発生してます。この
@付の変数はどこで宣言を行えばよろしいのでしょうか?
よろしくお願いいたします。

A 回答 (1件)

使用するSqlInsertCommandが生成された後に、


SqlInsertCommandのParameters.Addメソッドでパラメータを追加する時に宣言出来ます。
宣言というか、insertCommandにその@付のパラメータを教えてあげるという感じです。

具体的には
Me.SqlInsertCommand1.Parameters.Add(New System.Data.SqlClient.SqlParameter("@categoryno", System.Data.SqlDbType.Int, 4, "categoryno"))
とかいう感じです

上記はVB.NET環境でsqlDataAdapterをデザイン画面にドラッグした時に起動されるウィザードによって自動生成された構文の一部です。
そのまま、独自の文脈に乗せるとうまく行かないかもしれません。

DB更新関連の構文は結構面倒なので、
もっと小さなDBで小さなクエリを自動生成して、
自動生成された構文を真似て行けば、
(不明に思ってもとにかく真似る)
エラーがなくなっていくと思います。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
100フィールドをこえるテーブルでは何かと面倒なので、
小さいテーブルに分割して処理を行ったところ、無事にDB
へ書き込みを行うことができました。
自動生成のクエリを参考に真似をしてみようとも思いましたが、
やっぱり難しかったです。
ありがとうございました。

お礼日時:2002/07/31 14:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!