我一直在尝试将用户输入的值插入到我的sql DB中,但是失败了很多次。以下是我尝试过的不同方法:
private void VessDet_Load(object sender, EventArgs e)
{
// SqlCommand cmd = new SqlCommand(" insert into Ves (Imo , VEsName , First_Bay, Last_Bay , TL_Condition ) values ( " + txtImo.Text + ",'" + txtName.Text + "'," + txtFirstBay.Text + "," + txtLastBay.Text +",'" + richTextBox1.Text + "' ) ", cnx);
SqlCommand cmd = new SqlCommand(" insert into Ves (Imo,VEsName,First_Bay,Last_Bay,TL_Condition) values ( @Imo,@VEsName,@First_Bay,@Last_Bay,@TL_Condition ) ", cnx);
cnx.Open();
cmd.Parameters.Add("@Imo", txtImo.Text);
cmd.Parameters.Add("@VEsName", txtImo.Text);
cmd.Parameters.Add("@First_Bay", txtImo.Text);
cmd.Parameters.Add("@Last_Bay", txtImo.Text);
cmd.Parameters.Add("@TL_Condition", txtImo.Text);
cmd.ExecuteNonQuery();
cnx.Close();
}下面是我尝试的第二种方法
private void VessDet_Load(object sender, EventArgs e)
{
// SqlCommand cmd = new SqlCommand(" insert into Ves (Imo , VEsName , First_Bay, Last_Bay , TL_Condition ) values ( " + txtImo.Text + ",'" + txtName.Text + "'," + txtFirstBay.Text + "," + txtLastBay.Text +",'" + richTextBox1.Text + "' ) ", cnx);
string ab = ("insert into Ves (Imo , VEsName , First_Bay, Last_Bay , TL_Condition ) Values ('" + txtImo.Text+"','"+txtName.Text+ "' ,"+txtFirstBay.Text+" ,"+txtLastBay.Text +" ,'"+richTextBox1.Text.ToString()+"' )");
SqlCommand cmd = new SqlCommand(ab, cnx);
cnx.Open();
cmd.ExecuteNonQuery();
cnx.Close();
}发布于 2019-12-20 23:00:29
第一件事是确保您的连接字符串已初始化。
附注:看起来你可能是在复制/粘贴txtImo.Text,而不是使用正确的文本框。
更新:
尝试将文本字段转换为整数。我相信它的语法是:(int)txtbox.Text
更新2:
尝试使用显式声明的数据库类型添加参数: cmd.Parameters.Add("@Imo",SqlDbType.Int).Value = Int.Parse(txtImo.Text);
顺便说一句,Int.Parse是这里转换为整数的正确方法。
发布于 2019-12-20 23:15:27
我猜您正在尝试将字符串值发送到整数参数。
cmd.Parameters.Add("@Imo", txtImo.Text);
cmd.Parameters.Add("@VEsName", txtImo.Text);
cmd.Parameters.Add("@First_Bay", int.Parse(txtImo.Text));
cmd.Parameters.Add("@Last_Bay", int.Parse(txtImo.Text));
cmd.Parameters.Add("@TL_Condition", txtImo.Text);发布于 2019-12-21 06:50:59
大家好,这本来是我的帖子,实际上我不得不吃东西,不管怎样,我找到了问题所在,如果你回到代码中,你会很容易地注意到,我试图插入…在LOAD_form中,我所做的就是切换到按钮代码并输入该代码谢谢大家的帮助,你是最棒的
私有无效VessDet_Load(对象发送者,EventArgs e) {
这是代码应该放在的地方
私有空BNext_Click(对象发送者,EventArgs e) {
https://stackoverflow.com/questions/59427169
复制相似问题