enter image description hereenter image description here私は私のMS Accessデータベースにデータを挿入しようとします。私のテーブルの名前SignUp。ユーザーコードによってOleDBExceptionが処理されませんでした。エラーメッセージ:OverFlow
cmd.Parameters.Add("@name", OleDbType.VarChar).Value = txtNameSignUp.Text;
cmd.Parameters.Add("@surname", OleDbType.VarChar).Value = txtSurnameSignUp.Text;
cmd.Parameters.Add("@phone", OleDbType.VarChar).Value = txtPhoneSignUp.Text;
cmd.Parameters.Add("@mail", OleDbType.VarChar).Value = txtMailSignUp.Text;
cmd.Parameters.Add("@address", OleDbType.VarChar).Value = txtAddressSignUp.Text;
cmd.Parameters.Add("@username", OleDbType.VarChar).Value = txtUserNameSignUp.Text;
cmd.Parameters.Add("@password", OleDbType.VarChar).Value = txtPasswordSignUp.Text;
cmd.ExecuteNonQuery();
cnn.Close();
cnn = null;
私は電話のテキストボックスのために(OleDBType.Binary).Value = Convert.ToByte(txtPhoneSignUp.Text);
に試みたが、それは「大きすぎる」または「小さすぎる」と述べました。
sorgu =「@新規アカウント ([名]、[姓]、[電話]、[メール]、[アドレス]、[ユーザー名]、[パスワード]) 値(。INSERT INTO名、姓@ 、@電話、@メール、@アドレス、@ユーザー名、@パスワード); "; cmd =新しいOleDbCommand(sorgu、cnn);用
//cmd.Parameters.AddWithValue("@name", txtNameSignUp.Text); //cmd.Parameters.AddWithValue("@surname", txtSurnameSignUp.Text); //cmd.Parameters.AddWithValue("@phone", Convert.ToDouble(txtPhoneSignUp.Text)); //cmd.Parameters.AddWithValue("@mail", txtMailSignUp.Text); //cmd.Parameters.AddWithValue("@address", txtAddressSignUp.Text); //cmd.Parameters.AddWithValue("@username", txtUserNameSignUp.Text); //cmd.Parameters.AddWithValue("@password", txtPasswordSignUp.Text); cmd.Parameters.Add("@name", OleDbType.VarChar).Value = txtNameSignUp.Text; cmd.Parameters.Add("@surname", OleDbType.VarChar).Value = txtSurnameSignUp.Text; cmd.Parameters.Add("@phone", OleDbType.VarChar).Value = cmd.Parameters.Add("@mail", OleDbType.VarChar).Value = txtMailSignUp.Text; cmd.Parameters.Add("@address", OleDbType.VarChar).Value = txtAddressSignUp.Text; cmd.Parameters.Add("@username", OleDbType.VarChar).Value = txtUserNameSignUp.Text; cmd.Parameters.Add("@password", OleDbType.VarChar).Value = txtPasswordSignUp.Text; cmd.ExecuteNonQuery(); cnn.Close(); cnn = null;
にコードを変更します電話番号はデータベースの数値として定義されていますか?クエリは見やすいでしょう。 – Plutonix
私は数値とテキストを試しましたが、どちらもうまくいきませんでした。 – ibkanpak
あなたのテーブルの定義を表示してください(理想的にはあなたが使っているdbmsです)。電話欄が数値の場合、パラメータを 'VarChar'として追加することはできません。しかし、ほとんどの電話番号は数字の列が大きすぎるため、おそらく「大きすぎます」となります。 –