ps.setString(1, name); 放这段代码里什么意思

lindute 2011-11-03 12:47:18
public int deleteBookById(String name) {
String sql = "delete from book where id= ? ";
int count = 0;
try {
conn = DBConnection.getConnection();
ps = conn.prepareStatement(sql);
ps.setString(1, name);
count = ps.executeUpdate();
为什么要放这句代码啊ps.setString(1, name); 还有 int count = 0; 这个有什么用嘛
...全文
4089 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lindute 2011-11-03
  • 打赏
  • 举报
回复
为什么要将name 设置到sql的问好处
我的问号不是id嘛
LucEaspe 2011-11-03
  • 打赏
  • 举报
回复 2

public int deleteBookById(String name) {
String sql = "delete from book where id= ? ";
// 初始化count 在下面的update中使用
int count = 0;
try {
conn = DBConnection.getConnection();
ps = conn.prepareStatement(sql);
// 将name 设置到 sql 的问号处
ps.setString(1, name);
// 如果更新成功 则返回 1给 count 否则是 0
count = ps.executeUpdate();
开发者_android 2011-11-03
  • 打赏
  • 举报
回复
1代表你HQL语句中的第一个参数,(?,?)传给问号的~
Define_ling 2011-11-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 yuerzm 的回复:]
Java code


public int deleteBookById(String name) {
String sql = "delete from book where id= ? ";
// 初始化count 在下面的update中使用
int count = 0;
try {
conn = DBConnection.getConnection();
ps = con……
[/Quote]

好处是他会自己区分类型,根据你setXXX,类型的不同,这样子就减少问题的发生,比如时间的处理等
什么都不能 2011-11-03
  • 打赏
  • 举报
回复
要看书
chabale 2011-11-03
  • 打赏
  • 举报
回复 2
1代表你sql语句中的第一个问号,name是你要传得参数
比如你要删除 id为1的信息
ps.setString(1, “1”);
这样你的sql语句就成了 delete from book where id= ‘1’
这样你执行这条语句的时候 就把id为1的信息删除了
飞火流星02027 2011-11-03
  • 打赏
  • 举报
回复
设定sql语句所需的参数值,ps.setString(1, name);
1代表对应第一个参数
name是传入的值

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧