日期:2014-05-17  浏览次数:22850 次

以........开头的 标识符 太长。最大长度为 128怎么办?
RT,求指点迷津。我用的是C#。代码如下
string sql=string.Format("insert into xxx values ('{0}','{1}','{2}','{3}','{4})'",a,b,c,d,e);
SqlConnection con = new SqlConnection(连接字符串);
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = sql;
cmd.Connection = con;
cmd.ExecuteNonQuery();
con.Close();
结果执行的时候报了以........开头的 标识符 太长。最大长度为 128这是什么情况?怎么解决啊?

------解决方案--------------------
引用:
引用:RT,求指点迷津。我用的是C#。代码如下
string sql=string.Format("insert into xxx values ('{0}','{1}','{2}','{3}','{4})'",a,b,c,d,e);
SqlConnection con = new SqlConnection(连接字符串);
con.……



   string sqlstr = "insert into tb_BookInfo (BookName,BookIntroduce,BookPrice,BookIsNew) values(@BookName,@BookIntroduce,@BookPrice,@BookIsNew)"; 
                 SqlCommand mycom = new SqlCommand(sqlstr, con); 
                 //添加参数 
                 mycom.Parameters.Add(new SqlParameter("@BookName", SqlDbType.VarChar,50)); 
                 mycom.Parameters.Add(new SqlParameter("@BookIntroduce", SqlDbType.VarChar,50)); 
                 mycom.Parameters.Add(new SqlParameter("@BookPrice", SqlDbType.Money,8)); 
                 mycom.Parameters.Add(new SqlParameter("@BookIsNew", SqlDbType.Char,10)); 
                 //给参数赋值 
                 mycom.Parameters["@BookName"].Value = TextBox1.Text; 
                 mycom.Parameters["@BookIntroduce"].Value = TextBox2.Text; 
                 mycom.Parameters["@BookPrice"].Value = Convert.ToDecimal(TextBox3.Text); 
                 mycom.Parameters["@BookIsNew"].Value = DropDownList1.SelectedValue.ToString(); 
                 //执行添加语句 
                 mycom.ExecuteNonQuery(); 
                 con.Close(); 

参考通过SqlParameter参数添加