jdbc:mysql:// 是指JDBC连接方式;
localhost: 是指你的本机地址;
3306 SQL数据库的端口号;
test 就是你要连接的数据库的地址。
1)连接Oracle 8/8i/9i/10g/11g(thin模式)Class.forName("oracle.JDBC.driver.OracleDriver").newInstance()
String url="JDBC:oracle:thin:@localhost:1521:orcl" //orcl为Oracle数据库的SID
String user="test"
String password="test"
Connection con=DriverManager.getConnection(url,user,password)
2)连接DB2数据库
Class.forName("com.ibm.db2.jcc.DB2Driver")
String url="JDBC:db2://localhost:5000/testDb"/**数据库连接串**/
String user="test"String password="test"
Connection con=DriverManager.getConnection(url,user,password)
3)连接MySQL数据库
Class.forName("com.mysql.jdbc.Driver")
String url="JDBC:mysql://localhost:8080/testDB"
String user="test"String password="test"
Connection con=DriverManager.getConnection(url,user,password)
4)连接SQL Server数据库
Class.forName("com.microsoft.JDBC.sqlserver.SQLServerDriver")
String url="JDBC:microsoft:sqlserver://localhost:1433DatabaseName=testDb"
String user="test"String password="test"
Connection con=DriverManager.getConnection(url,user,password)
5)连接PostgreSQL数据库
Class.forName("org.postgresql.Driver")
String url="JDBC:postgresql://localhost/testDb"
String user="test"String password="test"
Connection con=DriverManager.getConnection(url,user,password)
6)连接Access数据库
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver")
String url="JDBC:odbc:Driver={Microsoft Access Driver (*.mdb)}DBQ="+application.getRealPath("/Data/testDb/mdb")
Connection conn=DriverManager.getConnection(url,"","")
7连接Sybase数据库
Class.forName("com.sybase.JDBC.SybDriver")
String url="JDBC:sybase:Tds:localhost:5007/testDb"
Properties pro=System.getProperties()
pro.put("user","userId")
pro.put("password","user_password")
Connection con=DriverManager.getConnection(url,pro)
8连接informix数据库
Class.forName("com.informix.JDBC.ifxDriver")
String url="JDBC:informix-sqli:localhost:1533/testDb:INFORMIXSERVER=myserver"user=testUserpassword=testpassword"Connection con=DriverManager.getConnection(url)
示例:
连接SQL Server2008R2数据库
首先Build Path → 添加外部sqljdbc.jar驱动
import java.sql.*
public class DB {
public static void main(String[] args) throws Exception {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
Connection conn = DriverManager.getConnection("jdbc:sqlserver://localhost:1433DatabaseName=数据库名", "sa", "1234")
Statement stmt = conn.createStatement()
ResultSet rs = stmt.executeQuery("select * from 表名")
while(rs.next()) {
System.out.println("id为:" + rs.getString("id") + "name为:" + rs.getString("name"))
}
System.out.println("数据库连接成功!")
rs.close()
stmt.close()
conn.close()
System.out.println("数据库成功关闭!")
}
}
步骤如下,1. 在开发环境中加载指定数据库的驱动程序。
接下来的实验中,使用数据库MySQL,所以需要下载MySQL支持JDBC的驱动程序(mysql-connector-java-5.1.18-bin.jar)。
2. 开发环境是MyEclipse,将下载得到的驱动程序加载进开发环境中。
3. 在Java程序中加载驱动程序。
在Java程序中,通过 “Class.forName(“指定数据库的驱动程序”)”
方式来加载添加到开发环境中的驱动程序,例如Class.forName(“com.mysql.jdbc.Driver”)。
4. 创建数据连接对象:通过DriverManager类创建数据库连接对象Connection。
DriverManager类作用于Java程序和JDBC驱动程序之间,用于检查所加载的驱动程序是否可以建立连接,然后通过它的getConnection方法,根据数据库的URL、用户名和密码,创建一个JDBC
Connection 对象。代码如:Connection connection = DriverManager.getConnection(“连接数据库的URL", "用户名",
"密码”)。
其中,URL=协议名+IP地址(域名)+端口+数据库名称;用户名和密码是指登录数据库时所使用的用户名和密码。具体示例创建MySQL的数据库连接代码如下:
Connection connectMySQL =
DriverManager.geiConnection(“jdbc:mysql://localhost:3306/myuser","root"
,"root" )
5. 创建Statement对象:Statement 类的主要是用于执行静态 SQL
语句并返回它所生成结果的对象。
通过Connection 对象的 createStatement()方法可以创建一个Statement对象。例如:Statement statament =
connection.createStatement()具体示例创建Statement对象代码如下:Statement statamentMySQL =connectMySQL.createStatement()
6. 调用Statement对象的相关方法执行相对应的 SQL
语句:通过execuUpdate()方法用来数据的更新,包括插入和删除等 *** 作,例如向staff表中插入一条数据的代码:
statement.excuteUpdate( "INSERT INTO
staff(name, age, sex,address, depart, worklen,wage)" + " VALUES ('Tom1', 321,
'M', 'china','Personnel','3','3000' ) ")
7. 通过调用Statement对象的executeQuery()方法进行数据的查询,而查询结果会得到
ResulSet对象,ResulSet表示执行查询数据库后返回的数据的集合,ResulSet对象具有可以指向当前数据行的指针。通过该对象的next()方法,使得指针指向下一行,然后将数据以列号或者字段名取出。如果当next()方法返回null,则表示下一行中没有数据存在。使用示例代码如下:
ResultSet resultSel =
statement.executeQuery( "select * from staff" )
8. 关闭数据库连接:使用完数据库或者不需要访问数据库时,通过Connection的close() 方法及时关闭数据连接。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)