通过驱动连接mysql数据库,驱动得跟源码在一块,如图
先分析这句
3306 是本地端口 students是要连接的数据库
的名字
账号和密码,之前已经设置
接下来分析这个数据库内容:
这个要查的表是 mess,然后mess有四个字段分别是:number(字符型);name(字符型);date(日期类型);height(float浮点型);
接下来我们根据这些数据来建数据库和表
插入数据:
接下来就是运行程序:
如果使用的jdk是jdk18(非1.8),由于jdk18为广泛兼容汉字等编码,故默认为utf-8格式,ANSI需修改
注意:
(1) 用记事本编写代码在终端运行时需要带上驱动包,若用eclipse或idea等集成开发环境时可一次导入即可。终端运行时的命令:java -cp mysql-connector-java-8.0.29.jar; 主类
(2) 驱动版本要和MySQL版本一致,相关版本可在MySQL官网查询
一个典型的错误:
在日常编代码时候,要注意后缀,后缀要调出来,这种情况就是没有带后缀名
再次运行
运行主类的命令:java -cp mysql-connector-java-8.0.29.jar; Example11_1(主类)
换成别的数据库查询,编写一个新的代码
文件为fruit.java
代码如下:
import java.sql.*;
public class fruit {
public static void main(String args[]) {
Connection con=null;
Statement sql;
ResultSet rs;
try{ Class.forName("com.mysql.jdbc.Driver"); //加载JDBC_MySQL驱动
}
catch(Exception e){}
String uri = "jdbc:mysql://localhost:3306/水果店?useSSL=true";
String user ="root";
String password ="123456";
try{
con = DriverManager.getConnection(uri,user,password); //连接代码
}
catch(SQLException e){ }
try {
sql=con.createStatement();
rs=sql.executeQuery("SELECT * FROM fruit"); //查询mess表
while(rs.next()) {
String name=rs.getString(1);
Stringplace=rs.getString(2);
//Date date=rs.getDate(3);
float price=rs.getFloat(3);
System.out.printf("%s/t",name);
System.out.printf("%s/t",place);
//System.out.printf("%s/t",date);
System.out.printf("%.2f/n",price);
}
con.close();
}
catch(SQLException e) {
System.out.println(e);
}
}
}
运行一下:
结果一致!
如图片失效等问题请参阅公众号文章:https://mp.weixin.qq.com/s/1aOoV_6I21JuIfdaaW3UJQ
原创文章,作者:wdmbts,如若转载,请注明出处:https://blog.ytso.com/tech/database/267170.html