zhou0773 发表于 2022-10-19 15:38

JavaMysql

今天我刚学到Mysql和Java连接,但是遇见了一个bug,我有点迷,我也对着视频看了,步骤都是对的,希望那位大佬能指点一下下面是代码和报错的异常
这是报错行
at com.dy.jdbc.Jdbc01.main(Jdbc01.java:34)
这是异常
Exception in thread "main" com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown database 'dy_db02'
这是代码
package com.dy.jdbc;

import com.mysql.jdbc.Driver;

import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;

/**
* @ClassName Jdbc01
* @AuThor 微笑
* @date 2022/10/19 14:14
* @Param 第一个Jdbc程序,完成简单的操作
* @version 1.0
*/
public class Jdbc01 {
    public static void main(String[] args) throws SQLException {
      //前置工作,在chapter创建一个目录(这个项目的目录名字是libc),然后将Mysql.jar拷贝到该目录
      //然后再点击下面的添加..加入到项目中才能使用
      //注册驱动
      Driver driver = new Driver();//创建driver
      //得到连接
      //jdbc:mysql://是规定好的协议,通过jdbc的方式连接mysql
      //localhost是主机地址,也可以是ip地址
      //3306表示监听的端口
      //dy_db02表示连接到那个数据库
      String url = "jdbc:mysql://localhost:3306/dy_db02";
      //将用户名密码封装到Properties 对象
      Properties properties = new Properties();
      //user和password是规定好的,后面值是根据情况来动,
      properties.setProperty("user","root");//用户
      properties.setProperty("password","011201");//密码
      Connection connect = driver.connect(url, properties);
      //执行sql
      String sql = "insert into actor values(null,'刘德华','男','1970-11-11','110')";
      //statement 用户执行静态sql语句并返回其生成的结果的对象
      Statement statement = connect.createStatement();
      int rows = statement.executeUpdate(sql);//如果是dml语句返回的就是影响行数(1)成功(0)失败
      System.out.println(rows>0? "成功" : "失败");

      //关闭连接
      statement.close();
      connect.close();
    }
}

youth96 发表于 2022-10-19 15:41

dy_db02 这个数据库你提前创建好没

zhou0773 发表于 2022-10-19 15:41

youth96 发表于 2022-10-19 15:41
dy_db02 这个数据库你提前创建好没

创建好了

无闻无问 发表于 2022-10-19 15:43

String sql = "insert into actor values(null,'刘德华','男','1970-11-11','110')";


actor是什么

zhou0773 发表于 2022-10-19 15:44

无闻无问 发表于 2022-10-19 15:43
String sql = "insert into actor values(null,'刘德华','男','1970-11-11','110')";




actor是表名称

无闻无问 发表于 2022-10-19 15:44

有这个表吗?

youth96 发表于 2022-10-19 15:45

zhou0773 发表于 2022-10-19 15:41
创建好了

你截图你创建好的信息,或者用可视化数据库截图展示一下这个数据库

zhou0773 发表于 2022-10-19 15:45

无闻无问 发表于 2022-10-19 15:44
有这个表吗?

嗯嗯这个表我在sqlyong创建好了

无闻无问 发表于 2022-10-19 15:47

你可用try包起来,然后单步调试,看Exception e中e的值,就知道原因,我就是这样排错的…呵呵

zhou0773 发表于 2022-10-19 15:48

youth96 发表于 2022-10-19 15:45
你截图你创建好的信息,或者用可视化数据库截图展示一下这个数据库


CREATE TABLE `actor` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`NAME` varchar(32) NOT NULL DEFAULT '',
`Sex` char(1) NOT NULL DEFAULT '女',
`borndate` datetime DEFAULT NULL,
`phone` varchar(12) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

大佬这是我创建表的代码
页: [1] 2 3
查看完整版本: JavaMysql