2012-03-08 88 views
0

代碼顯示如下:錯誤插入值到數據庫中asp.net,登記表的C#

nection cnn = new SqlConnection("Data Source=USER-PC\\KHEMCHAND;Integrated Security=True"); 

protected void Page_Load(object sender, EventArgs e) 
{ 
    cnn.Open(); 
} 

protected void Button1_Click(object sender, EventArgs e) 
{ 
    SqlCommand cmd = new SqlCommand("insert into tbl_ragistration values(@f_name,@l_name,@email_id,@pass_word,@[date of brth],@add_ress,@gender)", cnn); 
    cmd.Parameters.AddWithValue("@f_name", Texfname.Text); 
    cmd.Parameters.AddWithValue("@l_name", Texlname.Text); 
    cmd.Parameters.AddWithValue("@email_id", Texemail.Text); 
    cmd.Parameters.AddWithValue("@pass_word", Texpwd.Text); 
    cmd.Parameters.AddWithValue("@[date o birth]", Texdbt.Text); 
    cmd.Parameters.AddWithValue("@add_ress", Texadd.Text); 
    cmd.Parameters.AddWithValue("@gender", DropDownList1.Text); 
    cmd.ExecuteNonQuery(); 
    cnn.Close(); 
} 
+1

** ** WHAT是誤差Δθ請發佈完整且準確的錯誤消息.... – 2012-03-08 05:58:53

回答

1

變化cmd.Parameters.AddWithValue("@[date o birth]", Texdbt.Text);到在插入參數值分配cmd.Parameters.AddWithValue("@[date of birth]", Texdbt.Text);。並且也不打開頁面加載事件中的連接。 Befor執行查詢打開連接,執行查詢,然後關閉了一個更好的方法連接

 cnn.Open(); 
     cmd.ExecuteNonQuery(); 
     cnn.Close(); 
1

您可以通過以下方式嘗試,我希望這是很好的做法(雖然數據庫執行應該放在數據訪問層), 謝謝你的時間。

public string ConnectionString 
{ 
    get 
    { 
     return "Data Source=USER-PC\\KHEMCHAND;Integrated Security=True"; 
    } 
} 

protected void Page_Load(object sender, EventArgs e) 
{ 

} 

protected void Button1_Click(object sender, EventArgs e) 
{ 
    using (SqlConnection cnn = new SqlConnection(ConnectionString)) 
    { 
     using (SqlCommand cmd =new SqlCommand(
      "insert into tbl_ragistration values(@f_name,@l_name,@email_id,@pass_word,@[date of brth],@add_ress,@gender)" 
      ,cnn)) 
     { 
      cmd.Parameters.AddWithValue("@f_name", Texfname.Text); 
      cmd.Parameters.AddWithValue("@l_name", Texlname.Text); 
      cmd.Parameters.AddWithValue("@email_id", Texemail.Text); 
      cmd.Parameters.AddWithValue("@pass_word", Texpwd.Text); 
      cmd.Parameters.AddWithValue("@[date o birth]", Texdbt.Text); 
      cmd.Parameters.AddWithValue("@add_ress", Texadd.Text); 
      cmd.Parameters.AddWithValue("@gender", DropDownList1.Text); 
      cnn.Open(); 
      cmd.ExecuteNonQuery(); 
     } 
    } 
} 
1

確保您也聲明瞭列名在你插入語句:在執行命令&不是在頁面加載&包裝

protected void Button1_Click(object sender, EventArgs e) 
{ 
    using (SqlConnection cnn = new SqlConnection(ConnectionString)) 
    { 
     using (SqlCommand cmd =new SqlCommand(
      "insert into tbl_ragistration (f_name,l_name,email_id,pass_word,[date of brth],add_ress,gender) values (@f_name,@l_name,@email_id,@pass_word,@dateofbrth,@add_ress,@gender)" 
      ,cnn)) 
     { 
      cmd.Parameters.AddWithValue("@f_name", Texfname.Text); 
      cmd.Parameters.AddWithValue("@l_name", Texlname.Text); 
      cmd.Parameters.AddWithValue("@email_id", Texemail.Text); 
      cmd.Parameters.AddWithValue("@pass_word", Texpwd.Text); 
      cmd.Parameters.AddWithValue("@dateofbirth", Texdbt.Text); 
      cmd.Parameters.AddWithValue("@add_ress", Texadd.Text); 
      cmd.Parameters.AddWithValue("@gender", DropDownList1.Text); 
      cnn.Open(); 
      cmd.ExecuteNonQuery(); 
     } 
    } 
} 

問候

0
  1. 打開連接您的代碼在try catch塊內記錄錯誤。
protected void Button1_Click(object sender, EventArgs e) 
    { 
SQLConnection cnn = new SqlConnection(WebConfigurationManager.ConnectionStrings["yourConnectionString"].ConnectionString); 

SqlCommand cmd = new SqlCommand("insert into tbl_ragistration values(@f_name,@l_name,@email_id,@pass_word,@[date of brth],@add_ress,@gender)", cnn); 
    cmd.Parameters.AddWithValue("@f_name", Texfname.Text); 
    cmd.Parameters.AddWithValue("@l_name", Texlname.Text); 
    cmd.Parameters.AddWithValue("@email_id", Texemail.Text); 
    cmd.Parameters.AddWithValue("@pass_word", Texpwd.Text); 
    cmd.Parameters.AddWithValue("@[date o birth]", Texdbt.Text); 
    cmd.Parameters.AddWithValue("@add_ress", Texadd.Text); 
    cmd.Parameters.AddWithValue("@gender", DropDownList1.Text); 
    try 
    { 
     cnn.Open(); 
     cmd.ExecuteNonQuery(); 
    } 
    catch(SQLException ex) 
    { // Log your error 
     lblStatus.Text="An error occured"+ ex.Message; 
     throw ex; 
    } 
    finally 
    { 
     if(cnn!=null) 
     { 
      cnn.Close(); 
     } 
    } 
}