shaokel 2019-06-25 12:18 采纳率: 95.2%
浏览 974
已采纳

请求大佬支援!!!!!! JDBC No value specified for parameter 2

图片说明图片说明

package com.sxt.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.util.Date;

/**
 * 测试PreparedStatement的基本语法
 * */
public class Demo3 {
    public static void main(String[] args) {
        //加载驱动类
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");//com.mysql.cj.jdbc.Driver   mysql6.0以上

        //建立连接(连接对象内部起始包含了Socket对象,是一个远程的连接,比较耗时!这是Connection对象管理的一个要点!)
        //真正开发中,为了提高效率,都会使用连接池来管理连接对象!
            Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/db_book?serverTimezone=GMT","root","109867");
            System.out.println(conn);

            String sql = "insert into employees(id,last_name) values (?,?)";//?占位符
            PreparedStatement ps = conn.prepareStatement(sql);
//          ps.setString(1, "qwq");//这里的参数索引是从1开始计算

            ps.setString(1, "sa");
//          ps.setObject(1,new Date());

            System.out.println("插入一行记录");
            ps.execute();  

        } catch (Exception e) {
            e.printStackTrace();
        } 
    }
}

  • 写回答

3条回答

  • Json-Huang 2019-06-25 12:48
    关注

    没有给字段last_name 赋值,ps.setString(1, "sa");改成ps.setString(1, "1");,即改成如下试试

     ps.setString(1, "1");
     ps.setString(2, “myname”); 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题