sql语句执行删除时怎么就对数字有效果?

lanxiupu 2006-03-23 12:38:11
在servlet中使用如下语句:
String deleteWordStyle = request.getParameter("deleteWordStyle");
String deleteWord = request.getParameter("deleteWord");
String selectStatement="delete from escuage where "+deleteWordStyle+"="+deleteWord;
prepStmt = con.prepareStatement(selectStatement)

"deleteWord"对数字有效,当他是字母和汉字时都不行
看了好两天了,也没弄好
还望各位多多指教!!
...全文
314 点赞 收藏 25
写回复
25 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
嗯....
语法不能随便乱用,需要用什么才用什么,必须怎么用就怎么用.
就是语法不过关,不用问人,自己先潜下心看完并记住书里的基础再说.
回复
itzhiren 2006-03-24
预处理。。。。还真没看见呢
回复
conan19771130 2006-03-24
string.Format("delete from escuage where 列名='{0}'",内容)
回复
xiongbing528 2006-03-23
con.prepareStatement(selectStatement)




.看清楚点啊。.是预处理啊. "?"占位符呢
String selectStatement="delete from escuage where ?=?;


prepStmt.setString(1,deleteWord);
prepStmt.setString(2,deleteWordStyle);

回复
aywrenyue 2006-03-23
String selectStatement="delete from escuage where "+deleteWordStyle+"="+deleteWord;
--
String selectStatement="delete from escuage where "+deleteWordStyle+"='"+deleteWord+"'";
sql的数据类型转换的问题

-------------------------------------------------------------
同意以上说法

---------------------------
仔细检查代码,unclosed character literal错误是字符串不完整
回复
rickhunterchen 2006-03-23
看你报的什么错误,是数据库返回的错误,那说明你的数据库有问题.
回复
lanxiupu 2006-03-23
问题依旧,还是删除数字时有效
删除字母和汉字就不行了
回复
marine_chen 2006-03-23
en
回复
lanxiupu 2006-03-23
好,我再试试
回复
marine_chen 2006-03-23
那就改为:
String selectStatement="delete from escuage where 主键1 ='" + deleteWord + "' and 主键2 = '" + deleteWordStyle + "'";

删除一个数据很简单啊
别弄复杂化了
回复
lanxiupu 2006-03-23
表的主键有两个
deleteWord只是其中一个
感谢大家来关心
回复
marine_chen 2006-03-23
表的主键是哪个?

String selectStatement="delete from escuage where "+deleteWordStyle+"="+deleteWord;

改为:
String selectStatement="delete from escuage where 主键 = '" + deleteWord + "'";
回复
itzhiren 2006-03-23
"delete from escuage where "+deleteWordStyle+"="+deleteWord

把这一句输出看看,有什么错误没有?
回复
jspfans 2006-03-23
你肯定不是按照二楼哪样的写法,unclosed character literal,,你的引号数目不是双数,或引的不对,二楼的没错的,你看看整个程序有没有未完成的引号啊,楼主不会还是用记事本来写程序吧?
回复
lanxiupu 2006-03-23
加了,我都试了
程序中我是 String deleteWord

数据库中是char(20)
回复
sssss342072 2006-03-23
就是没加单引号啊,2楼都写出来了,还有问题就是你本身数据字段deleteWordStyle的类型,不对应了
回复
lanxiupu 2006-03-23
各位,能在帮我看看么?
回复
lanxiupu 2006-03-23
错误就是unclosed character literal

我上面的语句可以删除数据库中的数字
可是删不成字母和汉字
刚吃饭去了
回晚了,对不起
回复
jspfans 2006-03-23
错误什么样?贴出来看看
回复
lanxiupu 2006-03-23
加一个单引号时是两个错误,两个单引号时是四个错误

我知道你的意思,deleteWord是变量,不是常量
回复
加载更多回复
相关推荐
发帖
Web 开发
创建于2007-09-28

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2006-03-23 12:38
社区公告
暂无公告