使用JDBC访问MySQL数据库也有两种方法(这里不介绍使用APP SERVER的数据库连接池访问数据库),一种是使用JDBC-ODBC桥方式连接,这里不作介绍了,可以参考连接SQL Server2000的方式。这里主要介绍使用MySQL提供的JDBC驱动程序来连接:
首先下载(http://www.mysql.com)、安装并配置MySQL,下载MySQL5.1并进行安装。安装完成之后接着进行配置,配置时选择Standard Configuration(标准配置)即可,然后选择服务器名字MySQL51,并选中"Include Bin Directory in Windows PATH",之后输入root用户的密码,最后执行配置就可以了。这里还有一点,如果要使MySQL支持中文,还需要更改一下配置信息,更改MYSQL安装目录下的my.ini文件里的内容。把default-character-set=中的拉丁编码改为utf8,然后保存,重新启动MYSQL服务器,之后建立的数据库及数据库中的表的编码就是UTF8了,表中就可以插入中文了。安装完成后,下一步要进行的是安装MYSQL JDBC驱动程序。
到http://mysql.cs.pu.edu.tw/Downloads/Connector-J/mysql-connector-java-5.1.2-beta.zip下载MYSQL5.1的JDBC驱动程序,解压缩到你放JDBC驱动程序的位置就可以了,不需要安装。然后设置Classpath环境变量,在Classpath环境变量里添加JDBC驱动程序,如我的是添加D:\JDBC_Driver\mysql\mysql-connector-java-5.1.2-beta\mysql-connector-java-5.1.2-beta-bin.jar。这样就可以了,可以写程序进行测试了。
在mysql里创建数据库mydb,并在mydb里建一个表格studinfo如下:
create database mydb;
use mydb;
create table studinfo
(ID varchar(10) primary key,
Name varchar(30),
Age int);
然后使用下面的程序往数据库里插入一条记录并读出来打印:
1
package
jdbc.test1;
2
3
import
java.sql.
*
;
4
5
/**
6
*
@author
wzhongyu
7
*
8
*/
9
public
class
JDBCDemo {
10
11
/**
12
*
@param
args
13
*/
14
public
static
void
main(String[] args) {
15
String user
=
"
root
"
;
16
String password
=
"
123456
"
;
17
String url
=
"
jdbc:mysql://localhost:3306/mydb
"
;
18
String driver
=
"
com.mysql.jdbc.Driver
"
;
19
//
String driver = "org.gjt.mm.mysql.Driver";
20
String tableName
=
"
studinfo
"
;
21
String sqlstr;
22
Connection con
=
null
;
23
Statement stmt
=
null
;
24
ResultSet rs
=
null
;
25
try
{
26
Class.forName(driver);
27
con
=
DriverManager.getConnection(url, user, password);
28
stmt
=
con.createStatement();
29
30
sqlstr
=
"
insert into
"
+
tableName
+
"
values ('20000908','honey',21)
"
;
31
stmt.executeUpdate(sqlstr);
32
33
sqlstr
=
"
select * from
"
+
tableName;
34
rs
=
stmt.executeQuery(sqlstr);
35
36
ResultSetMetaData rsmd
=
rs.getMetaData();
37
int
j
=
0
;
38
j
=
rsmd.getColumnCount();
39
for
(
int
k
=
0
; k
<
j; k
++
)
40
{
41
System.out.print(rsmd.getCatalogName(k
+
1
));
42
System.out.print(
"
\t
"
);
43
}
44
System.out.println();
45
while
(rs.next())
46
{
47
for
(
int
i
=
0
;i
<
j;i
++
)
48
{
49
System.out.print(rs.getString(i
+
1
));
50
System.out.print(
"
\t
"
);
51
}
52
System.out.println();
53
}
54
}
55
catch
(ClassNotFoundException e1)
56
{
57
System.out.println(
"
数据库驱动不存在!
"
);
58
System.out.println(e1.toString());
59
}
60
catch
(SQLException e2)
61
{
62
System.out.println(
"
数据库存在异常!
"
);
63
System.out.println(e2.toString());
64
}
65
finally
66
{
67
try
68
{
69
if
(rs
!=
null
) rs.close();
70
if
(stmt
!=
null
) stmt.close();
71
if
(con
!=
null
) con.close();
72
}
73
catch
(SQLException e)
74
{
75
System.out.println(e.toString());
76
}
77
}
78
}
79
}
80
程序运行后会打印出插入表中的数据。
如果要在eclipse中运行这个程序,首先需要在eclipse(这里用的是MyEclipse)中配置数据库。打开eclipse,选择window-->Preferences-->MyEclipse-->Database Explorer-->Database Drivers,点链接进入到DB Browser,右键点空白处-->new,新建一个数据库连接。要填入的东西如下:
Driver template:MySQL Connector/J
Driver name:MySQL Connector/J
Connection URL:jdbc:mysql://<hostname>[<:3306>]/<dbname> (注上面选择MySQL Connector/J之后,这里会自动填入的)
User name:root
Password:123456 (注这里的密码是配置MYSQL时的密码)
在下面的Driver JARs框的右面点Add JARs,找到JDBC驱动程序mysql-connector-java-5.1.2-beta-bin.jar最后点OK就配置完成了。
如果不喜欢MYSQL的在命令行上运行方式,可以到http://www.mysql.com上去下载一个GUI工具就可以了。