パラメータの名前は列と一致する必要はありませんが、プレースホルダーと一致する必要があります:
INSERT INTO testproc (mytext, mytext2) VALUES (?mytext, ?mytext2)
名前のないパラメータを使用する場合:
INSERT INTO testproc (mytext, mytext2) VALUES (?, ?)
順序は重要です。
私はいつも前者のオプションを使用しましたが、次のようになりました:
command.Parameters.Add("?mytext2", "aaaaaaaaaaaaaaaaa")
command.Parameters.Add("?mytext", "bbbb")
AddWithValue()に違いがあるかどうかわからない
更新:パラメータに疑問符がないことに気づきました。それが問題になります。クエリとパラメータの両方に疑問符を追加します。