使用JAVA连接Mysql数据库,并完成相关操作

Java 访问 MySQL
通过使用JDBC让JAVA程序连接到数据库,并完成增删改查等操作。
大致步骤:
1、Mysql与eclipse、jdk等的下载(以及环境变量配置等,这里不做详细说明)。
2、将mysql-connector-java-5.1.8-bin.jar添加到eclipse、将mssql-jdbc-6.2.2.jre7.jar 或 mssql-jdbc-6.2.2.jre8.jar添加到eclipse项目。(注意是与要连接数据库的JAVA程序同一个项目)。
3、创建要连接的数据库与表。
4、写JAVA程序连接数据库,完成操作。

2、Java 连接 MySQL 数据库的常用方法
//以下是复制了学校给的操作步骤,最新版本当然不是5.1.8
①将mysql-connector-java-5.1.8-bin.jar添加到eclipse。
接下来进入MySQL官网https://dev.mysql.com/downloads/connector/j/下载最新的MySQL驱动程序,作者已经下载了 mysql-connector-java-5.1.8-bin.jar 的驱动程序文件。
作者的 java 程序安装在 C:\Program Files (x86)\Java\jdk1.7.0_07 文件夹中。由于安装 java程序时,会默认生C:\ProgramFiles(x86)\Java\jre7\lib\ext 文件夹,进入该文件夹,将mysql-connector-java-5.1.8-bin.jar 复制一份放入其中。
在 Eclipse 中,鼠标选中项目工程,右键点击 Build Path,选择 Configure Build Path,会跳 出 一 个 属 性 框 图 。 选 择 Java Build Path 下 的 Libraries , 查 看 是 否 有mysql-connector-java-5.1.8-bin.jar。如果没有,点击Add External JARs,浏览到JDBC的MySQL驱动的 jar 包,点击确定,将其导入到项目中。
②将mssql-jdbc-6.2.2.jre7.jar 或 mssql-jdbc-6.2.2.jre8.jar添加到eclipse
在使用 JDBC 程序连接 SQL Server 数据库时需要一个驱动程序来提供连接支持,微软
为 JDBC 访问 SQL Server 提供了一个驱动程序-Microsoft JDBC Driver for SQL Server。作者
5
6
下 载 了 SQL Server 的 JDBC 驱 动 程 序 6.2.2 版 本 sqljdbc_6.2.2.0_chs.exe 。 运 行
sqljdbc_6.2.2.0_chs.exe 程序,弹出一个解压窗体,点击【Unzip】按钮,可以将安装程序解
压到当前目录下。解压后的目录中有 mssql-jdbc-6.2.2.jre7.jar 和 mssql-jdbc-6.2.2.jre8.jar,两
者 功 能 一 样 , 只 是 不 同 的 版 本 。 选 择 其 中 一 个 jar 包 , 复 制 到 C:\Program Files
(x86)\Java\jre7\lib\ext 文件夹下。
在 Eclipse 中,鼠标选中项目工程,右键点击 Build Path,选择 Configure Build Path,会
跳出一个属性框图。选择 Java Build Path 下的 Libraries,点击 JRE System Library,查看是否
有 mssql-jdbc-6.2.2.jre7.jar 或 mssql-jdbc-6.2.2.jre8.jar。如果没有,点击 Add External JARs,
浏览到 JDBC 的 MySQL 驱动的 jar 包,点击确定,将其导入到项目中。

3、创建要连接的数据库与表
启动 MySQL。
Enter password:
接下来创建 InfoDb 数据库:
create database InfoDb;
然后,创建 student 表:
use InfoDb;
create table student(sNo varchar(8) primary key,
sName varchar(8) not null,
sSex varchar(4),
sAge int,
sSpecialty varchar(20),
sAddress varchar(50)
) ENGINE=InnoDB DEFAULT CHARSET=gbk;
插入数据:
INSERT INTO student VALUES(‘1’,‘李平’,‘男’, 22, ‘计算机应用技术’, ‘湖南’);
INSERT INTO student VALUES(‘2’,‘王丫’,‘女’, 19, ‘信息安全’, ‘广西’);
INSERT INTO student VALUES(‘3’,‘钟信’,‘男’, 21, ‘网络工程’, ‘重庆’);
INSERT INTO student VALUES(‘4’,‘木林’,‘女’, 20, ‘信息安全’, ‘北京’);
INSERT INTO student VALUES(‘5’,‘李文’,‘男’, 20, ‘计算机应用技术’, ‘上海’);
INSERT INTO student VALUES(‘6’,‘丽思’,‘女’, 18, ‘网络工程’,‘大连’);
如图:
在这里插入图片描述
4、写JAVA程序连接数据库,完成操作

//连接语句
public class DbProcess{
    
    
	Connection connection = null;
	ResultSet rs = null;

	//mysql数据库url
	String userMySql="root"; 
	String passwordMySql="";
	String urlMySql = "jdbc:mysql://localhost:3306/InfoDb?user="
			+userMySql+"&password="+passwordMySql + "&useUnicode=true&characterEncoding=gbk";
	
	//sqlserver数据库url
	//String urlSqlServer = "jdbc:sqlserver://localhost:1433;integratedSecurity=true;DatabaseName=InfoDb";
	
	public DbProcess() {
    
    
		try {
    
    
			//mysql数据库设置驱动程序类型
			Class.forName("com.mysql.jdbc.Driver"); 
			System.out.println("mysql数据库驱动加载成功");
			
			//sqlserver数据库设置驱动程序类型
	    //Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
	    //System.out.println("sqlserver数据库驱动加载成功");

		}
		catch(java.lang.ClassNotFoundException e) {
    
    
			e.printStackTrace();
		}
	}


	public void connect(){
    
    
		try{
    
    
			//mysql数据库
			connection = DriverManager.getConnection(urlMySql);  
			
			//sqlserver数据库
			//connection = DriverManager.getConnection(urlSqlServer);
			

			if(connection!=null){
    
    
	            System.out.println("数据库连接成功");
	        }
		}
		catch(Exception e){
    
    
			e.printStackTrace();
		}
	}
	
	public void disconnect(){
    
    
		try{
    
    
			if(connection != null){
    
    
				connection.close();
				connection = null;
			}
		}
		catch(Exception e){
    
    
			e.printStackTrace();
		}
	}


	public ResultSet executeQuery(String sql) {
    
    
		try {
    
    
			System.out.println("executeQuery(). sql = " + sql);
			
			PreparedStatement pstm = connection.prepareStatement(sql);
			// 执行查询
			rs = pstm.executeQuery();
		} 
		catch(SQLException ex) {
    
     
			ex.printStackTrace();
		}
		return rs;
	}
	
	//插入
	//executeUpdate 的返回值是一个整数,指示受影响的行数(即更新计数)。
	//executeUpdate用于执行 INSERT、UPDATE 或 DELETE 语句
	//以及 SQL DDL(数据定义语言)语句,例如 CREATE TABLE 和 DROP TABLE。
	
	//执行增、删、改语句的方法
	public int executeUpdate(String sql) {
    
    
		int count = 0;
		connect();
		try {
    
    
			Statement stmt = connection.createStatement();
			count = stmt.executeUpdate(sql);
		} 
		catch(SQLException ex) {
    
     
			System.err.println(ex.getMessage());		
		}
		disconnect();
		return count;
	}
}
//执行代码过长见下一篇博客:连接如下

> https://blog.csdn.net/King0237/article/details/111479100

最终结果如图:在这里插入图片描述
增删改查均可,实验成功。

猜你喜欢

转载自blog.csdn.net/King0237/article/details/111478380