java连接数据mysql

材料:

myEclipse  ,MySQL,mysql数据库的jdbc驱动包( http://www.mysql.com/downloads/mysql/ )

1.配置环境

将mysql连接jar放到例如lib这一个文件夹中(myEclipse中建立),然后点击"构建路径">"用作源文件夹";这里jar文件就顺利引入了.

2.实践

3.

建立数据库连接的过程:

1)加载数据库驱动,即Class.forName(dirver)

2)建立数据库连接,即DirverManager.getConnection("jdbc:mysql://127.0.0.1:3306/scutcs","root","root");

注:DirverManager是一个驱动管理器,内部有一个驱动注册表,可以向内部注册JDBC驱动

3)创建执行SQL的语句(Statement)

4)执语句.

5)处理执行的结果(也就是显示啦)

6)释放资源.

4.

(1)注册JDBC驱动

三种方式:

  a)Class.forName("com.mysql.jdbc.Driver");  //常用的方法.

  b)DirverManager.registerDirver(com.mysql.jdbc.Driver);

  会造成DriverManager中产生两个一样的驱动,并会对具体的驱动类产生依赖。

  c)System.setProperty(“jdbc.drivers”, “driver1:driver2”);

  虽然不会对具体的驱动类产生依赖;但注册不太方便,所以很少使用。

  (2)建立Connection

  Connection conn = DirverManager.getConnection    ("jdbc:mysql://127.0.0.1:3306/scutcs","user","password");

  (3)Statement  和PreparedStatement

  Statement 是一个SQL执行器,可以用来执行静态的SQL语句.

  Statment st = conn.createStatement();

  st.executeQuery(sql);

  PreparedStatement 可以防止SQL语句注入.

  String sql="select * from table_name  where col_name=?";

  PreparedStatement ps  = conn.PreparedStatement(sql);

  ps.setString(1,"col_value");

  ps.executeQuery();  //获取结果集

  (4)结果集ResultSet的处理

  ResultSet  rs  = statement.executeQuery(sql);

  while(rs.next())

  {

    rs.getString("col_name");

    rs.getInt("col_name");

    //..

  }

  (5)释放资源

  在使用完之后,必须关闭ResultSet , Statement无所谓,只要Connection关闭了    Statement就会自动关闭.

  例如:

   rs.close();  //关闭 ResultSet

   conn.close(); //关闭  Connection

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class StudentDBTest {

	public static void main(String[] args) {

		try{
			//第一个种
			Class.forName("com.mysql.jdbc.Driver").newInstance();
			Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/scutcs","root","root");

			//第二个中,因为有两个驱动
			//Class.forName("com.mysql.jdbc.Driver");//加载驱动
			//Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/scutcs","root","root");

			//statement用来执行sql语句
			Statement statement = con.createStatement();
			              //结果集
			ResultSet rs = statement.executeQuery("select * from student");

			System.out.println("SNO"+"\t"+"SNAME"+"\t"+"BDATE"+"\t"+"HEIGHT");
			System.out.println("------------查询结果结果------------");

			String name=null , date=null;
			int age;
			while(rs.next())
			{
				name = rs.getString("sname");
				date = rs.getString("bdate");
				age = rs.getInt("HEIGHT");

				name = new String(name.getBytes("ISO-8859-1"),"GB2312");

				System.out.println(rs.getString("sno") + "\t" + name + "\t" + date + "\t" + age);

			}              //释放资源
			rs.close();
			con.close();

		}catch(ClassNotFoundException e){
        	//捕获异常并且输出堆栈信息
            System.out.println("Sorry,can`t find the Driver!");
            e.printStackTrace();

           	}catch(SQLException e) {

            e.printStackTrace();

           	} catch(Exception e) {

            e.printStackTrace();
           	} 

	}

}
//student.sql

#
# Structure for table "student"
#

DROP TABLE IF EXISTS `student`;
CREATE TABLE `student` (
  `SNO` char(7) NOT NULL,
  `SNAME` varchar(8) NOT NULL,
  `SEX` char(2) NOT NULL,
  `BDATE` date NOT NULL,
  `HEIGHT` decimal(5,2) DEFAULT ‘0.00‘,
  PRIMARY KEY (`SNO`)
) ENGINE=MyISAM DEFAULT CHARSET=gbk;

#
# Data for table "student"
#

/*!40000 ALTER TABLE `student` DISABLE KEYS */;
INSERT INTO `student` VALUES (‘1‘,‘admin‘,‘男‘,‘2015-04-15‘,12.00),(‘2‘,‘root‘,‘女‘,‘2015-04-15‘,14.00),(‘3‘,‘ZhangYl‘,‘男‘,‘2015-05-31‘,20.00),(‘4‘,‘Lisin‘,‘女‘,‘2015-05-14‘,21.00),(‘5‘,‘lisi‘,‘男‘,‘2015-05-22‘,20.00);
/*!40000 ALTER TABLE `student` ENABLE KEYS */;

参考:

各种数据库的驱动名和连接地址格式:
1、Oracle8/8i/9i数据库(thin模式) 
数据库驱动名:   oracle.jdbc.driver.OracleDriver
数据库连接地址:jdbc:oracle:thin:@localhost:1521:orcl                //orcl为数据库的SID

2、DB2数据库 
数据库驱动名:   com.ibm.db2.jdbc.app.DB2Driver ").newInstance()
数据库连接地址:jdbc:db2://localhost:5000/sample"                    //sample为你的数据库名

3、Sql Server7.0/2000数据库 
数据库驱动名:   com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance()
数据库连接地址:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb"          //mydb为数据库

4、Sybase数据库 
数据库驱动名:   com.sybase.jdbc.SybDriver").newInstance()
数据库连接地址:jdbc:sybase:Tds:localhost:5007/myDB"            //myDB为你的数据库名

5、Informix数据库 
数据库驱动名:   com.informix.jdbc.IfxDriver").newInstance(); 
数据库连接地址:jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword"                                  //myDB为数据库名

6、MySQL数据库

要下载mysql-connector-java-5.1.13.zip,解压后,将mysql-connector-java-5.1.13-bin.jar拷贝到jdk的lib下,并将其目录添加到classpath中。
数据库驱动名:   org.gjt.mm.mysql.Driver").newInstance()   或者"com.mysql.jdbc.Driver"都可以,因为有两个Driver.java。
数据库连接地址:jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1                                                       //myDB为数据库名

7、PostgreSQL数据库 
数据库驱动名:   org.postgresql.Driver").newInstance()
数据库连接地址:jdbc:postgresql://localhost/myDB       //myDB为数据库名

时间: 2024-10-11 12:12:49

java连接数据mysql的相关文章

记一次java连接远程mysql数据库

用java连接远程数据库,写一个小java gui程序,写一张小表 student(number,name,sex),可以写入数据,删除数据,查询数据 主要代码: 1 public class TestSqlOnFrame { 2 public static void main(String[] args) { 3 frame frameOne=new frame(); 4 frameOne.main(); 5 } 6 } 7 8 class frame extends Frame{ 9 //新

如何用Java连接Aurora MySQL

作者:光环云 马立刚 ? ?以下是使用mysql-connector 连接Aurora for mysql参考示例:?Workbench 访问Aurora,跟mysql方式一致,如: Aurora.example.rds.cn-northwest-1.amazonaws.com.cn 用户名:root 密码:root Eclipse 开发首先在maven添加依赖,如下: <dependency> <groupId>mysql</groupId> <artifact

Django连接数据mysql

[背景] 系统centos6.x python 版本 3.4.3 django 1.9.x 默认django使用的数据库是sqlite3, 而我们常用的是mysql 我们需要连接mysql此时是需要django连接mysql的驱动,默认是MySQLdb,但是这个是很难下载安装的,在centos环境是pip是无法安装 所以需要使用pymysql 进行取代(安装来自包PyMySQL) [开始进行代替默认的MySQLdb工具的步骤] 1 在项目下的app目录下 加入使用pymsql作为MySQLdb

Java连接Oracle/MySQL数据库教程

导入包:import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; 声明变量:private static String USERNAMR = "lsdb"; //数据库用户名,在mysql所有数据库用户名密码是一样的,oracle各数据库的用户名

Java连接本地MySQL数据库进行增删改查操作

package Dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import entity.UserInfo; public class JDBC { Connection conn

Java连接MySQL Warning: Establishing SSL connection without server&#39;s identity verification is not recommended

1. 数据库 1.1 创建表 在当前数据库students中,创建数据表student: 1 mysql> create table student( 2 -> studentid char(10),#学生ID 3 -> name varchar(10),#学生姓名 4 -> age smallint,#学生年龄 5 -> grade smallint)#成绩 6 -> ; 1.2 插入信息: INSERT student VALUES("1*********

通过java连接mysql总结

简介:通过java连接mysql需要用到JDBC驱动.JDBC驱动安装在mysql-client客户端,mysql-server服务端不需要安装. 数据库安装初始化略.测试用到的命令: 1.创建测试用库,表,字段: create database score; use score; create table score(id nvarchar(10),stu_id nvarchar(10),c_name nvarchar(10),grade nvarchar(10)); insert into

Linux系统Java连接Mysql数据库

Linux系统下Java连接Mysql数据库方法与Windows下类似,具体步骤如下: 下载JDBC(驱动):mysql-connector-java-5.1.37.tar.gz 解压下载的数据包:tar -zxvf mysql-connector-java-5.1.37.tar.gz 解压后,mysql-connector-java-5.1.29-bin.jar位于mysql-connector-java-5.1.29目录下. 配置解压后,mysql-connector-java-5.1.29

java连接MySQL数据库

插播一段广告哈:我之前共享了两个自己写的小应用,见这篇博客百度地图开发的两个应用源码共享(Android版),没想到有人找我来做毕设了,年前交付,时间不是很紧,大概了解了下就接下了,主要用到的就是和服务器端交互,这个我之前没做过,因此接下来的时间里会陆续更新这一些列的博客,记录学习的点滴.第一篇主要是java读取mysql数据库文件.安装及配置文件稍后会上传到我的百度网盘供大家下载.其他的介绍在网上都可以找到相关的博客,下面直接给出源代码. mysql建立一个名为"vge_whu"的数