テーブルにデータを挿入しようとしていますが、私が見たコード スニペットは、その人には機能するようですが、私には機能するようです! asp.netのデータベース処理がわからないので、何が間違っているのかわかりません。誰かがコードの何が問題なのか教えてもらえますか?
public partial class CompanyLogin : System.Web.UI.Page
{
protected void Button1_Click(object sender, EventArgs e)
{
OdbcConnection conn = new OdbcConnection();
conn.ConnectionString = @".\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\VCtemps.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
string sql = "insert into company values(@CompName, @BusinessType, @Pword)";
OdbcCommand cmd = new OdbcCommand(sql);
string CompName = txtCompName.Text;
string BusinessType = DropDownList1.Text;
string Pword = txtPassword.Text;
cmd.Connection = conn;
cmd.CommandText = "insert into company(CompName, BusinessType, Pword) Values(@CompName,@BusinessType,@Pword);";
cmd.Parameters.AddWithValue("@CompName",SqlDbType.VarChar);
cmd.Parameters.AddWithValue("@BusinessType",SqlDbType.VarChar);
cmd.Parameters.AddWithValue("@Pword",SqlDbType.VarChar);
cmd.ExecuteNonQuery();
conn.Close();
txtCompName.Text = "";
txtPassword.Text = "";
DropDownList1.Text = "";
}
}
皆さんのおかげでコードを修正しましたが、実行するか、登録ボタンをクリックすると、次のエラーが表示されます
ExecuteNonQuery には、オープンで使用可能な接続が必要です。接続の現在の状態は閉じています