求助 怎么修改数据库指定数据

baidu_27685685 2016-05-14 05:14:58

//修改特定学生的信息
public void upDate()throws Exception{
System.out.println("=====进入修改学生信息功能=====");
Scanner scan = new Scanner(System.in);
System.out.print("请选择要修改的信息(name/math/os/java): ");
String s = scan.next();
if(s.equals("name")){
/*
String sql = "update student set name = ? where id = //";
PreparedStatement pstmt = con.prepareStatement(sql);
/////id怎么输入确定
System.out.print("请输入要新名字: ");
name = scan.next();
pstmt.setString(2,name);
pstmt.executeUpdate();
*/
}
}
部分代码如图 我想修改指定ID的人都名字,怎么不初始化id修改,而是从键盘选择要修改的id。再改这个id的名字
...全文
207 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
baidu_27685685 2016-05-16
  • 打赏
  • 举报
回复
引用 10 楼 qq_34736995 的回复:
[quote=引用 9楼我是你的主体 的回复:][quote=引用 8 楼 qq_34736995 的回复:] [quote=引用 7楼我是你的主体 的回复:][quote=引用 4 楼 qq_34736995 的回复:] [quote=引用 2楼我是你的主体 的回复:][quote=引用 1 楼 qq_34736995 的回复:] 没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改
我的意思是要修改的信息where后边不得初始化嘛,怎么不初始化而是在键盘输入 假如我要修改id为1的人的名字 我就要写 String sql = "update student set name = ? where id =1"; 现在这个1我要从键盘输入 而不是在程序中初始化出来。[/quote]写一个bean把id和name封装 成一个对象 然后用get方法传到sql中吧 应该可以[/quote] 能给我个例子吗[/quote]刚才重新看了下你的问题 我懂你的意思了 我也是初学者 我回去试试[/quote] 嗯呢[/quote]应该能看清吧。我电脑不上网。就拍了个图。试了下可以走。不知道是不是你要的效果[/quote] 谢谢你 可以用了 我这学期学的java 数据库只是其中一章。所以不会的太多了 希望可以加个好友 相互进步
baidu_27685685 2016-05-16
  • 打赏
  • 举报
回复
引用 8 楼 qq_34736995 的回复:
[quote=引用 7楼我是你的主体 的回复:][quote=引用 4 楼 qq_34736995 的回复:] [quote=引用 2楼我是你的主体 的回复:][quote=引用 1 楼 qq_34736995 的回复:] 没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改
我的意思是要修改的信息where后边不得初始化嘛,怎么不初始化而是在键盘输入 假如我要修改id为1的人的名字 我就要写 String sql = "update student set name = ? where id =1"; 现在这个1我要从键盘输入 而不是在程序中初始化出来。[/quote]写一个bean把id和name封装 成一个对象 然后用get方法传到sql中吧 应该可以[/quote] 能给我个例子吗[/quote]刚才重新看了下你的问题 我懂你的意思了 我也是初学者 我回去试试[/quote] 嗯呢
Kevin要奋斗 2016-05-16
  • 打赏
  • 举报
回复
引用 7楼我是你的主体 的回复:
[quote=引用 4 楼 qq_34736995 的回复:] [quote=引用 2楼我是你的主体 的回复:][quote=引用 1 楼 qq_34736995 的回复:] 没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改
我的意思是要修改的信息where后边不得初始化嘛,怎么不初始化而是在键盘输入 假如我要修改id为1的人的名字 我就要写 String sql = "update student set name = ? where id =1"; 现在这个1我要从键盘输入 而不是在程序中初始化出来。[/quote]写一个bean把id和name封装 成一个对象 然后用get方法传到sql中吧 应该可以[/quote] 能给我个例子吗[/quote]刚才重新看了下你的问题 我懂你的意思了 我也是初学者 我回去试试
Kevin要奋斗 2016-05-16
  • 打赏
  • 举报
回复
引用 9楼我是你的主体 的回复:
[quote=引用 8 楼 qq_34736995 的回复:] [quote=引用 7楼我是你的主体 的回复:][quote=引用 4 楼 qq_34736995 的回复:] [quote=引用 2楼我是你的主体 的回复:][quote=引用 1 楼 qq_34736995 的回复:] 没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改
我的意思是要修改的信息where后边不得初始化嘛,怎么不初始化而是在键盘输入 假如我要修改id为1的人的名字 我就要写 String sql = "update student set name = ? where id =1"; 现在这个1我要从键盘输入 而不是在程序中初始化出来。[/quote]写一个bean把id和name封装 成一个对象 然后用get方法传到sql中吧 应该可以[/quote] 能给我个例子吗[/quote]刚才重新看了下你的问题 我懂你的意思了 我也是初学者 我回去试试[/quote] 嗯呢[/quote]应该能看清吧。我电脑不上网。就拍了个图。试了下可以走。不知道是不是你要的效果
baidu_27685685 2016-05-15
  • 打赏
  • 举报
回复
引用 4 楼 qq_34736995 的回复:
[quote=引用 2楼我是你的主体 的回复:][quote=引用 1 楼 qq_34736995 的回复:] 没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改
我的意思是要修改的信息where后边不得初始化嘛,怎么不初始化而是在键盘输入 假如我要修改id为1的人的名字 我就要写 String sql = "update student set name = ? where id =1"; 现在这个1我要从键盘输入 而不是在程序中初始化出来。[/quote]写一个bean把id和name封装 成一个对象 然后用get方法传到sql中吧 应该可以[/quote] 能给我个例子吗
baidu_27685685 2016-05-15
  • 打赏
  • 举报
回复
引用 5 楼 heiyedezhou 的回复:
//修改特定学生的信息 public void upDate()throws Exception{ System.out.println("=====进入修改学生信息功能====="); Scanner scan = new Scanner(System.in); System.out.print("请选择要修改的信息(name/math/os/java): "); String s = scan.next(); if(s.equals("name")){ /* String sql = "update student set name = ? where id = ?"; PreparedStatement pstmt = con.prepareStatement(sql); /////id怎么输入确定 System.out.print("请输入要新名字: "); name = scan.next(); pstmt.setString(1,name); System.out.print("请输入你要修改人的ID: "); int id = scan.nextInt(); pstmt.setInt(2,id); pstmt.executeUpdate(); */ } } 你这样试一试看看行不行
还是有错误Exception in thread "main" com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value: 'tim'
heiyedezhou 2016-05-14
  • 打赏
  • 举报
回复
//修改特定学生的信息 public void upDate()throws Exception{ System.out.println("=====进入修改学生信息功能====="); Scanner scan = new Scanner(System.in); System.out.print("请选择要修改的信息(name/math/os/java): "); String s = scan.next(); if(s.equals("name")){ /* String sql = "update student set name = ? where id = ?"; PreparedStatement pstmt = con.prepareStatement(sql); /////id怎么输入确定 System.out.print("请输入要新名字: "); name = scan.next(); pstmt.setString(1,name); System.out.print("请输入你要修改人的ID: "); int id = scan.nextInt(); pstmt.setInt(2,id); pstmt.executeUpdate(); */ } } 你这样试一试看看行不行
Kevin要奋斗 2016-05-14
  • 打赏
  • 举报
回复
引用 2楼我是你的主体 的回复:
[quote=引用 1 楼 qq_34736995 的回复:] 没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改
我的意思是要修改的信息where后边不得初始化嘛,怎么不初始化而是在键盘输入 假如我要修改id为1的人的名字 我就要写 String sql = "update student set name = ? where id =1"; 现在这个1我要从键盘输入 而不是在程序中初始化出来。[/quote]写一个bean把id和name封装 成一个对象 然后用get方法传到sql中吧 应该可以
不安分的黑娃 2016-05-14
  • 打赏
  • 举报
回复
和name一样当参数传到sql
baidu_27685685 2016-05-14
  • 打赏
  • 举报
回复
引用 1 楼 qq_34736995 的回复:
没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改
我的意思是要修改的信息where后边不得初始化嘛,怎么不初始化而是在键盘输入 假如我要修改id为1的人的名字 我就要写 String sql = "update student set name = ? where id =1"; 现在这个1我要从键盘输入 而不是在程序中初始化出来。
Kevin要奋斗 2016-05-14
  • 打赏
  • 举报
回复
没看懂你的问题 id是主键 唯一怎么改?改名字可以但是没有id无法改name,应该是先获取到id才能执行修改

62,628

社区成员

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

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