帮忙看下这段代码是哪儿的错
string mystr = "Data Source=2A8F16F1506B4CE;Initial Catalog=sabing;Integrated Security=True";SqlConnection conn = new SqlConnection(mystr);
conn.Open();
SqlCommand cmd = new SqlCommand("detele from student where 姓名='"+comboBox3.SelectedItem.ToString()+"'");
cmd.CommandType = CommandType.Text;
cmd.Connection = conn;
cmd.ExecuteNonQuery();(老是说这错了 说是 from附近有语法错误)
MessageBox.Show("删除成功");
conn.Close();
xianshi();(这个是我自己定义的函数) --------------------编程问答-------------------- detele 写错了吧。应该是delete吧 --------------------编程问答-------------------- SqlCommand cmd = new SqlCommand("detele from student where 姓名='"+comboBox3.SelectedItem.ToString()+"'",conn); --------------------编程问答-------------------- SqlCommand cmd = new SqlCommand("detele from student where 姓名='"+comboBox3.SelectedItem.ToString()+"'");
delete 错了。 --------------------编程问答-------------------- 看错了
SqlCommand cmd = new SqlCommand("delete from student where 姓名='"+comboBox3.SelectedItem.ToString()+"'"); --------------------编程问答-------------------- 啊~我去死了 别拦我~~~~~~~~~~~~~~~~~~~~~~~ --------------------编程问答-------------------- string mystr = "Data Source=(local);Initial Catalog=sabing;Integrated Security=True";
SqlConnection conn = new SqlConnection(mystr);
conn.Open();
SqlCommand cmd = new SqlCommand("update student set 年龄=" + textBox3.Text + " where 姓名='" + comboBox2.SelectedItem.ToString() + "'");
cmd.CommandType = CommandType.Text;
cmd.Connection = conn;
try
{
cmd.ExecuteNonQuery();
MessageBox.Show("插入成功");
}
catch
{
MessageBox.Show("你的输入有误,请检查你的输入!");
}
finally
{
conn.Close();
}
xianshi();
但是但是~这短呢
也是同样的错误啊
update没写错吧 --------------------编程问答-------------------- 把sql语句直接放到数据库中执行一下试试 --------------------编程问答-------------------- 确实有错呢
但是我不知道错在哪儿啊
update student set 年龄=11 where 姓名='张三'
这样是不对的? --------------------编程问答--------------------
正解 --------------------编程问答-------------------- update student set 年龄='" + textBox3.Text + "' --------------------编程问答-------------------- sql文拼接好像有错,SqlCommand cmd = new SqlCommand("update student set 年龄='" + textBox3.Text + "' where 姓名='" + comboBox2.SelectedItem.ToString() + "'");
--------------------编程问答-------------------- 无论你现在的代码哪里出错,先告诉你一个建议吧:
把
try
{
cmd.ExecuteNonQuery();
MessageBox.Show("插入成功");
}
改为:
try
{
int temp = cmd.ExecuteNonQuery();
if(temp > 0)
{
MessageBox.Show("成功");
}
}
因为ExecuteNonQuery方法是有返回值的,而且是有意义的 --------------------编程问答-------------------- 具体错误消息是什么,试试set 年龄='11' --------------------编程问答--------------------
年龄的值类型是int不用加引号的 --------------------编程问答--------------------
我有一段代码也是先前那样写的 但是不报错呀 证明这个问题应该不是很大吧 --------------------编程问答--------------------
set 年龄=" + textBox3.Text + "
textBox3.Text 是字符串型。需要转换成int型就OK 了 。
set 年龄=" + Convert.toInt32(textBox3.Text) + "
应该是可以得。
--------------------编程问答--------------------
那个是根据智能提示打出来的 不会有错 --------------------编程问答-------------------- 学习!
--------------------编程问答--------------------
不可以啊 依然报错
问一下 知道怎么把我截的图放在帖子里吗?
给你们看下报错的那个 --------------------编程问答--------------------
你把错误的消息发上来我看看。 --------------------编程问答-------------------- 额...
不会插入图片 我给你打吧 --------------------编程问答-------------------- 把图发到csdn博客上,地址拷过来
--------------------编程问答-------------------- cmd.ExecuteNonQuery(); 这句话是黄色的
然后一对话框指着他说
标题是
未处理sqlexception
内容是
第一行:''附近有语法错误 --------------------编程问答-------------------- 把你的错误复制下来啊、不能复制吗?
再有就是在你执行SQL操作和有for循环的地方加上try,catch语句。这样得话有异常能捕捉到。 --------------------编程问答--------------------
试过的 和没加他一样 --------------------编程问答-------------------- 你把你的SQL语句复制下来,到数据库里执行一下。看看是哪错误。参数就自己随便放一个就行。关键是看SQL语句哪有错
未处理sqlexception
是未处理异常。加上try catch语句。 --------------------编程问答--------------------
正解!! --------------------编程问答--------------------
上面的就是SQL语句 我确实不知道错在哪儿啊 --------------------编程问答-------------------- 姓名=“张三” --------------------编程问答--------------------
我可以很肯定的说
这个是错的
C#里字符串才是""
数据库路里是'' --------------------编程问答-------------------- 我好像不对吧。
你看看是不是你用的表不在你现在用的数据库中。 --------------------编程问答-------------------- 你那句语句是对的啊。我刚看了看书。你那句是对的。
你看看你的表建在哪个数据库中 --------------------编程问答-------------------- 额...
在的 在的
我用了很多次了
这个只是其中一个功能
其他的都能用
就他不行 --------------------编程问答-------------------- 晕,
你在数据库中执行的时候提示什么错误 --------------------编程问答-------------------- 第 1 行: ' ' 附近有语法错误。 --------------------编程问答--------------------
和在VS里运行报的是同样的错
哎~这是什么事啊
我其他的代码
基本和他一样
就数据库语句不一样
怎么就错了捏 --------------------编程问答-------------------- 姓名='张三'别告诉我你的等号是中文的等号啊。
update student
update student set 年龄=11 where 姓名='张三'
GO
年龄=11 姓名='张三'
这两个等号,哪个是中文的? --------------------编程问答--------------------
试试
int num=0;
string mystr="Server=你的IP;DataBase=你的数据库名sabing;UID=SQL登录名(本地默认通常为sa);Pwd=";
SqlConnection conn = new SqlConnection(mystr);
SqlCommand cmd = new SqlCommand("detele from student where [姓名]='"+comboBox3.SelectedItem.ToString()+"' ");
cmd.CommandType = CommandType.Text;
if (conn.State != ConnectionState.Open) { conn.Open(); }
cmd.Connection = conn;
num = cmd.ExecuteNonQuery();
...
--------------------编程问答--------------------
他在数据库中执行都有错,说明他的SQL语句有错吧,不是conn.Open(); 的问题了吧? --------------------编程问答-------------------- 额...确实
但是 但是~
全改英文后 依然... 依然... --------------------编程问答-------------------- 可以断定是 sql 语句问题。LZ检查 --------------------编程问答-------------------- 泪奔~~
就我现在的水平
我看了它一晚上了
我都觉得它没错啊 --------------------编程问答-------------------- 你调试的时候,在SqlCommand cmd = new SqlCommand("detele from student where 姓名='"+comboBox3.SelectedItem.ToString()+"'");上设置一个断点,运行完这句之后, 鼠标点上cmd这边变量, 然后查看一下它里面的SelectCommand这个属性里的内容, 应该是那条SQL语句.把它拷贝出来,在数据库软件中执行一下, 如果没有问题. 说明不是拼写错误,应该是调用执行时的问题. --------------------编程问答-------------------- 我给你写的你试了吗?
--------------------编程问答-------------------- 早试过了
语句我觉得是没错的
但是 在数据库里都用不起啊 --------------------编程问答--------------------
你的语句我run了一遍没问题呀
还有,我发现LZ的列名都是汉字嘛
以后最好用英文. --------------------编程问答-------------------- 哎~
我还是明天问老师去
因为要用控件把表名显示出来
所以特别换中文的 --------------------编程问答--------------------
千真万确 --------------------编程问答-------------------- 呵呵,UP
还是个学生哦
头像用女的???
关注的人就是多噢. --------------------编程问答-------------------- SqlCommand cmd = new SqlCommand("update student set 年龄=" + textBox3.Text + " where 姓名='" + comboBox2.SelectedItem.ToString() + "'");
年龄= 这个等于怎么用的是全角的等于呀。
补充:.NET技术 , C#