
お目に頂きありがとうございます.
Visual Studio C# .NETのデータベースプログラミングの初歩の部分でつまずいてしまい,手助けしてください;
private OleDbConnection cn;
private OleDbCommand cmd;
private void Make()
{
String id1 = idText1.Text, passwd = passwdText1.Text;
/* make up Connection. */
cn = new OleDbConnection();
cn.ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0;" +
"Data Source=D:\\Work\\Visual Studio .NET 2003\\otherApplication1\\Custom.mdb";
cn.Open();
// レコードの追加
try
{
cmd = new OleDbCommand("INSERT INTO Table_custom values(id1, passwd, 0)", cn);
cmd.ExecuteNonQuery();
}
catch(Exception ex)
{
MessageBox.Show("そのIDはダメ☆");
this.Dispose();
}
}
レコード内に入っているIDと被らなければ,入力されたID・パスワード・0(初期値)をテーブルに代入しようとしています.
しかし何故か代入がされず,catch文に入ってしまいます.
どうしてでしょうか?
尚,テーブルのキーは,ID(Primary Key), Passwd, Balance です.
よろしくお願い致します
No.2ベストアンサー
- 回答日時:
No.1の者です。
テーブルの3項目はテキスト型ですか?
テキスト型の項目は、
シングルクォーテーションで囲う必要があるようです。
3項目ともにテキスト型ならこれで通りました。
"INSERT INTO Table_custom values('"+id1 +"','"+ passwd + "','0')"
型は,string, string, int という構成でして,
2つのstring型にシングルコーテーションで括ると
うまくinsertされました.
この「'」で括る場合や「"+変数+"」といったモノは
何を参照して知られたのでしょうか?
遅くなりましたが,親身に大変ありがとうございます
No.1
- 回答日時:
代入変数が文字列として扱われているからだと思います。
"INSERT INTO Table_custom values(id1, passwd, 0)"
↓
"INSERT INTO Table_custom values("+id1 +","+ passwd + ",0)"
これでどうでしょうか?
たしかにこのままだと文字列ではなかったですね;
+で括ると文字列に変わるのですか?
デバックしてみましたが,特に変化もなくcatchに入ってしまいました.
このINSERT文のどこが・・・(それ以外か?)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- MySQL my_itemsテーブルのIDにAUTO_INCREMENT を追加ができるかで 1 2023/01/03 09:09
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- PHP php エラー 2 2022/10/23 16:43
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- C言語・C++・C# Windows Formアプリからコンソールを呼び出して文字を出力させたい 8 2023/05/09 10:53
- MySQL MYSQL エラー 2 2022/10/18 11:37
- C言語・C++・C# プログラミング c言語 4 2023/03/07 01:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルに張り付けた写真のフ...
-
スイッチが二台あり、別々のア...
-
vba 空のデータをSplitする時の...
-
Windowsで複数のファイルを同じ...
-
高校1年生情報の問題について。
-
VBAでPDFを作成する際、同じ名...
-
VBAでPDF作成をしたあと、指定...
-
C#からvbsを実行したい
-
【VB.NET】Excelの最終行までの...
-
LINE APIからasp.net の web サ...
-
VB.NET Excelを読み込んでDataT...
-
入力フォームのテキストボック...
-
Windows10にデュアルブートでXP...
-
連想配列を配列に格納したいで...
-
onedrive にexcelファイルをア...
-
お世話になります。 Windows Up...
-
【VB.NET】for each文からのINS...
-
”KINGSOFT WPSのVBエディタ画面...
-
マクロで同じフォルダにある画...
-
asp.netにてgridviewの列を動的...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルに張り付けた写真のフ...
-
VBAでPDFを作成する際、同じ名...
-
VB.NET Excelを読み込んでDataT...
-
【VB.NET】App.configにファイ...
-
vba 空のデータをSplitする時の...
-
onedrive にexcelファイルをア...
-
phpのファイルがブラウザで開か...
-
Windowsで複数のファイルを同じ...
-
スイッチが二台あり、別々のア...
-
【VB.NET】Excelの最終行までの...
-
Windows10にデュアルブートでXP...
-
VB.NETでMSComm が追加できず?
-
ffftpでファイル取得が0バイト...
-
aspxをhtmlに変換する方法について
-
Accessのトグルボタンでサブフ...
-
お世話になります。 Windows Up...
-
高校1年生情報の問題について。
-
VBAでPDF作成をしたあと、指定...
-
asp.netにてgridviewの列を動的...
-
エクセルVBAで印刷する書式をク...
おすすめ情報