JDBC读写mysql总结
一、下载驱动(主要是jar包)
mysql-connection-java-5.1.31-bin.jar
二、添加jar包,配置环境变量
把驱动jar包添加到以下两个目录,并设置classpath环境变量。
1. 添加目录:
(CATALINA_HOME) D:\..\Tomcat 6.0\lib\
(JAVA_HOME) D:\..\jdk1.7\jre\lib\
2. 添加环境变量:classpath
-----记得添加jar包之后要设置环境变量!!!python的MySQLdb其实也是一样的,都要环境变量设置
D:\mysql-connector-java-5.1.31\mysql-connector-java-5.1.31-bin.jar;
%JAVA_HOME%\jre\lib\mysql-connector-java-5.1.31-bin.jar;
%CATALINA_HOME%\lib\mysql-connector-java-5.1.31-bin.jar;
3.eclipse设置mysql驱动
在eclipse的“首选项”里,SQL Explorer里选择JDBC Driver,编辑右侧MySQL Driver。
Extra Class Path选项卡,Add按钮,添加驱动jar包mysql-connection-java-5.1.31-bin.jar,并设置DriverClass Name为com.mysql.jdbc.Driver。
4. 项目构建路径引入外部JAR为驱动jar包
(然后就可以写jdbc链接数据库程序了,程序见下,如果直接要写.sql脚本,还需要第5步)
5.sql脚本直接链接数据库
打开透视图SQL Explorer,在Connection视窗里,右键新建链接Create New Connection Profile,
Name乱写,如testyy;
Driver为MySQL Driver;
URL为jdbc:mysql://localhost:3306/testdb -------(你自己的数据库名字为testdb)
User Name为root ------这里千万为root!!!安装mysql的时候配置选择了"默认",用户永远都是root,只是改了密码而已
Password为mysql密码;
勾上Auto Logon,点击确定;
右键Connection链接,新建New SQL Editor,编辑.sql脚本:select * from table;
点击左上角“奔跑的人”按钮,下面有输出,跟在mysql命令行里一样。
-------------
单独的jdbcDemo.java程序:
package com.hadoop.mysql; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * @Note:链接数据库时需要"添加构建路径",添加jar包:为jdbc驱动----"mysql-connector-java-5.1.31-bin.jar" * 注意数据库名字为testdb(写在url里),表名字为student(写在sql里的selete * from student里) * */ public class MyJdbcDemo { public static void main(String[] args) { String driver = "com.mysql.jdbc.Driver"; //驱动Driver String url = "jdbc:mysql://localhost:3306/testdb"; //url,数据库名字为testdb String user = "root"; //username------注意用户名一定是root!!! 用户名只能默认是root String password = "mysql"; //pwd-----密码可以为mysql,反正自己设置的 try { Class.forName(driver); //加载驱动 Connection conn = DriverManager.getConnection(url, user, password); //建立连接 if(!conn.isClosed()){ System.out.println("Succeed connecting to the database!"); } Statement statement = conn.createStatement(); //执行SQL的statement String sql = "select * from student"; //sql语句,表名称为student ResultSet result = statement.executeQuery(sql); //结果集result System.out.println("执行结果:"); System.out.println("sno"+"\t"+"sname"+"\t"+"sex"+"\t"+"bdate"+"\t"+"height"); while(result.next()){ System.out.print(result.getString("sno") + "\t"); System.out.print(result.getString("sname") + "\t"); //选择sname这列数据 System.out.print(result.getString("sex") + "\t"); System.out.print(result.getString("bdate") + "\t"); System.out.println(result.getString("height")); } result.close(); conn.close(); } catch (ClassNotFoundException e) { System.out.println("cannot find the driver!"); } catch (SQLException e) { e.printStackTrace(); System.out.println("SQLException!"); } } }
在控制台里的结果:
在数据库表里看到的结果,(这里就不打开mysql终端看了,在SQL Explorer里也一样可以看到结果):