C#用sqlcommand删除数据库中的某一行始终出错。

stringstr=dataGridView1.SelectedCells[0].Value.ToString();stringsql="delete*fromIDwhe... string str = dataGridView1.SelectedCells[0].Value.ToString();
string sql = "delete * from ID where Ls='"+str+"'";
string consqlserver = "Data Source=.;Initial Catalog=student;Integrated Security=True;";
SqlConnection con = new SqlConnection(consqlserver);
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = sql;
cmd.Connection = con;
cmd.ExecuteNonQuery();
con.Close();
报错为cmd.ExcecuteNonQuery()附近有语法错误!
数据库中的Id是int,我也尝试过把Str转化成int。但还是报这个错误。
展开
 我来答
澤希Dc
2014-06-18 · TA获得超过1747个赞
知道小有建树答主
回答量:509
采纳率:0%
帮助的人:255万
展开全部
string sql = "delete * from ID where Ls='"+str+"'";
其实是多了一个*号,你把*号删掉应该就OK了。
string sql = "delete from ID where Ls='"+str+"'";

另外,如楼上所说,有可能ID和Ls弄反了。
追问
大哥,你太猛了!能不能再请教一下。我删除后datagardview数据如何更新。
追答
再读取一下数据库,然后再绑定一次就OK了
阳光的雷咩咩
2014-06-18 · TA获得超过1.4万个赞
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:7786万
展开全部

只是猜想:你把表名与列名写反了,改成下面试试

string sql = "delete * from Ls where ID ='" + "str" + "'";
追问
是多了一个* 号
追答
哦,还没注意到是delete。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式