当前位置:首页 » 操作系统 » jdbc数据库连接代码

jdbc数据库连接代码

发布时间: 2022-12-30 10:13:20

⑴ JDBC连接数据库的步骤都有哪些

创建一个以JDBC连接数据库的程序,包含7个步骤:

1、JDBC所需的四个参数(user,password,url,driverClass)

(1)user用户名;

(2)password密码;

(3)URL定义了连接数据库时的协议、子协议、数据源标识。

书写形式:协议:子协议:数据源标识。

协议:在JDBC中总是以jdbc开始。

子协议:是桥连接的驱动程序或是数据库管理系统名称。

数据源标识:标记找到数据库来源的地址与连接端口。

例如:(Mysql的连接URL)

jdbc:mysql:

//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;

useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为

gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。

(4)driverClass连接数据库所需的驱动。

2、加载JDBC驱动程序

在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(java虚拟机),这通过java.lang.Class类的静态方法forName(String className)实现。

例如:


注:列是从左到右编号的,并且从列1开始。

7、处理异常,关闭JDBC对象资源

操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声明顺序相反:

(1)先关闭requestSet

(2)再关闭preparedStatement

(3)最后关闭连接对象connection


实现代码如下:

requestSet.close();

preparedStatement.close();

connection.close();

⑵ jdbcl连接数据库的代码

try {
//load the jdbc driver ;

//DRIVER URL自己写
/*
*jdbc:mysql://<hostname>[<:3306>]/<dbname>
*jdbc:sqlserver://<server_name>:<port>[;databaseName=<dbname>]
*jdbc:derby://<server_name>:<port>/<databaseName>[;create=true]
*jdbc:postgresql:[<//host>[:<5432>/]]<database>
*/
DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
String url =" jdbc:oracle:thin:@<server>[:<1521>]:<database_name>"
//这个自己写
String userName =""
//这个自己写
String userPsw = ""
conn = DriverManager.getConnection(url, userName, userPsw);
//set if autoCommit
conn.setAutoCommit(false);
} catch (Exception ex) {
throw new Exception("connDB Init error." + ex.getMessage());
}

⑶ 常用数据库 JDBC 连接写法全攻略

常用数据库JDBC连接写法 MySQL()mm mysql bin jar Class forName( gjt mm mysql Driver ); cn = DriverManager getConnection( jdbc:mysql://MyDbComputerNameOrIP: /myDatabaseName sUsr sPwd ); PostgreSQL()pgjdbc jar Class forName( postgresql Driver ); cn = DriverManager getConnection( jdbc:postgresql://MyDbComputerNameOrIP/myDatabaseName sUsr sPwd ); Oracle()classes zip Class forName( oracle jdbc driver OracleDriver ); cn = DriverManager getConnection( jdbcracle:thin:@MyDbComputerNameOrIP: :ORCL sUsr sPwd ); Sybase()jconn jar Class forName( sybase jdbc jdbc SybDriver ); cn = DriverManager getConnection( jdbc:sybase:Tds:MyDbComputerNameOrIP: sUsr sPwd ); //(Default Username/Password: dba / sql ) Microsoft SQLServer() Class forName( net sourcefe jtds jdbc Driver ); cn = DriverManager getConnection( jdbc:jtds:sqlserver://MyDbComputerNameOrIP: /master sUsr sPwd ); Microsoft SQLServer() Class forName( microsoft jdbc sqlserver SQLServerDriver ); cn = DriverManager getConnection( jdbc:microsoft:sqlserver://MyDbComputerNameOrIP: ;databaseName=master sUsr sPwd ); ODBC Class forName( sun jdbc odbc JdbcOdbcDriver ); Connection cn = DriverManager getConnection( jdbcdbc: + sDsn sUsr sPwd ); DB Class forName( DB Driver ); String url= jdbc:db :// : /SAMPLE cn = DriverManager getConnection( url sUsr sPwd ); lishixin/Article/program/Oracle/201311/17201

⑷ jdbc连接数据库的几个步骤

创建一个以JDBC连接数据库的程序,包含7个步骤:
1、加载JDBC驱动程序:
在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机),
这通过java.lang.Class类的静态方法forName(String className)实现。
例如:
try{
//加载MySql的驱动类
Class.forName("com.mysql.jdbc.Driver") ;
}catch(ClassNotFoundException e){
System.out.println("找不到驱动程序类 ,加载驱动失败!");
e.printStackTrace() ;
}
成功加载后,会将Driver类的实例注册到DriverManager类中。
2、提供JDBC连接的URL
•连接URL定义了连接数据库时的协议、子协议、数据源标识。
•书写形式:协议:子协议:数据源标识
协议:在JDBC中总是以jdbc开始
子协议:是桥连接的驱动程序或是数据库管理系统名称。
数据源标识:标记找到数据库来源的地址与连接端口。
例如:(MySql的连接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字符集。如果characterEncoding设置为
gb2312或GBK,本参数必须设置为true 。characterEncoding=gbk:字符编码方式。
3、创建数据库的连接
•要连接数据库,需要向java.sql.DriverManager请求并获得Connection对象,
该对象就代表一个数据库的连接。
•使用DriverManager的getConnectin(String url , String username ,
String password )方法传入指定的欲连接的数据库的路径、数据库的用户名和
密码来获得。
例如:
//连接MySql数据库,用户名和密码都是root
String url = "jdbc:mysql://localhost:3306/test" ;
String username = "root" ;
String password = "root" ;
try{
Connection con =
DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
System.out.println("数据库连接失败!");
se.printStackTrace() ;
}
4、创建一个Statement
•要执行SQL语句,必须获得java.sql.Statement实例,Statement实例分为以下3
种类型:
1、执行静态SQL语句。通常通过Statement实例实现。
2、执行动态SQL语句。通常通过PreparedStatement实例实现。
3、执行数据库存储过程。通常通过CallableStatement实例实现。
具体的实现方式:
Statement stmt = con.createStatement() ;
PreparedStatement pstmt = con.prepareStatement(sql) ;
CallableStatement cstmt =
con.prepareCall("{CALL demoSp(? , ?)}") ;
5、执行SQL语句
Statement接口提供了三种执行SQL语句的方法:executeQuery 、executeUpdate
和execute
1、ResultSet executeQuery(String sqlString):执行查询数据库的SQL语句
,返回一个结果集(ResultSet)对象。
2、int executeUpdate(String sqlString):用于执行INSERT、UPDATE或
DELETE语句以及SQL DDL语句,如:CREATE TABLE和DROP TABLE等
3、execute(sqlString):用于执行返回多个结果集、多个更新计数或二者组合的
语句。
具体实现的代码:
ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ;
int rows = stmt.executeUpdate("INSERT INTO ...") ;
boolean flag = stmt.execute(String sql) ;
6、处理结果
两种情况:
1、执行更新返回的是本次操作影响到的记录数。
2、执行查询返回的结果是一个ResultSet对象。
• ResultSet包含符合SQL语句中条件的所有行,并且它通过一套get方法提供了对这些
行中数据的访问
• 使用结果集(ResultSet)对象的访问方法获取数据:
while(rs.next()){
String name = rs.getString("name") ;
String pass = rs.getString(1) ; // 此方法比较高效
}
(列是从左到右编号的,并且从列1开始)
7、关闭JDBC对象
操作完成以后要把所有使用的JDBC对象全都关闭,以释放JDBC资源,关闭顺序和声
明顺序相反:
1、关闭记录集
2、关闭声明
3、关闭连接对象
if(rs != null){ // 关闭记录集
try{
rs.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(stmt != null){ // 关闭声明
try{
stmt.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}
if(conn != null){ // 关闭连接对象
try{
conn.close() ;
}catch(SQLException e){
e.printStackTrace() ;
}
}

⑸ 3.写一段JDBC连接数据库的代码,CONNECTION最后要关闭。

public Connection getConnection() {
try {
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

return DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DataBaseName=test","sa","");
} catch (ClassNotFoundException e) {

throw new DaoException("加载驱动程序失败",e);
} catch (SQLException e) {
throw new DaoException("数据库连接失败",e);
}

}

public void close(ResultSet rs, Statement stmt, Connection conn) {
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(stmt != null){
try {
stmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}

}

⑹ 分别写出jdbc连oracle和mysql的主要代码

JDBC连接不同数据库的写法如下:

1、Oracle8/8i/9i数据库(thin模式)
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);

2、SQL Server2005及以上版本数据库
Class.forName("com.microsoft.sqlserver.SQLServerDriver");
String url="jdbc:sqlserver://localhost:1433;DatabaseName=mydb";
//mydb为数据库
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);

3、MySQL数据库
Class.forName("com.mysql.jdbc.Driver");
String url ="jdbc:mysql://localhost/myDB?
user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//myDB为数据库名
Connection conn= DriverManager.getConnection(url);

4、DB2数据库
Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();
String url="jdbc:db2://localhost:5000/sample"; //sample为你的数据库名
String user="admin";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);

5、Sybase数据库
Class.forName("com.sybase.jdbc.SybDriver").newInstance();
String url =" jdbc:sybase:Tds:localhost:5007/myDB";//myDB为你的数据库名
Properties sysProps = System.getProperties();
SysProps.put("user","userid");
SysProps.put("password","user_password");
Connection conn= DriverManager.getConnection(url, SysProps);

6、Informix数据库
Class.forName("com.informix.jdbc.IfxDriver").newInstance();
String url = "jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword"; //myDB为数据库名
Connection conn= DriverManager.getConnection(url);
7、PostgreSQL数据库
Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc:postgresql://localhost/myDB" //myDB为数据库名
String user="myuser";
String password="mypassword";
Connection conn= DriverManager.getConnection(url,user,password);

8、access数据库直连用ODBC的

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver") ;
String url="jdbc:odbc:Driver={MicroSoft Access Driver
(*.mdb)};DBQ="+application.getRealPath("/Data/ReportDemo.mdb");
Connection conn = DriverManager.getConnection(url,"","");
Statement stmtNew=conn.createStatement() ;

⑺ 求JDBC数据库连接Oracle数据库的代码注释,谢谢!初学

首先讲解单句的语句:
stmt = conn.prepareStatement(sql);// 创建一个 PreparedStatement 对象来将参数化的 SQL 语句发送到数据库。

rt = stmt.executeQuery();//执行给定的 SQL 语句,该语句返回单个 ResultSet 对象
rowset.populate(rt);//ResultSet 对象赋给 CachedRowSetImpl
stmt.executeUpdate();//执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,或者不返回任何内容的 SQL 语句

下面给你讲解下程序运行的整个过程:
首先会找到MAIN函数:
public static void main(String[] args) throws Exception {
执行第一句:
Test.update("insert into bob values(?,?,?)");//注意Test.update()方法,后面3个?号是占位符,表示会有3个参数
程序会找到Test类中的update方法:
public class Test {
private static PreparedStatement stmt = null; //(一)
private static ResultSet rt = null;
public static void update(String sql) throws Exception { //static 因为是静态方法,所以可以直接调用
start(); //调用自己的方法,建立数据库连接(这个方法你既然明白就不引入讲解了)
stmt = conn.prepareStatement(sql); //创建(一),将SQL 语句发送到数据库
int i = 1;

stmt.setInt(i++, 1); //这里就是那3个参数赋值 这里i=1
stmt.setString(i++, "小王"); //i=2
stmt.setInt(i++, 34); //i=3 以上地方的(i)直接写数字也可以
stmt.executeUpdate();//执行给定 SQL 语句,该语句可能为 INSERT、UPDATE 或 DELETE 语句,因为咱们传今天的是插入语句所以用这个方法执行
close(); //调用自己的方法,关闭数据库连接(同样注明了解,就不引入讲解了)
}//到这里 MAIN函数里的第一句才算执行完毕

回到Main函数中:
public static void main(String[] args) throws Exception {
运行下面一句:
CachedRowSetImpl rowset = Test.getList("select * from bob");//注意这里的SQL语句,是查询语句
程序会同样会找到Test类,但是这次会找getList方法:
首先进入Test类:
public class Test {
private static PreparedStatement stmt = null; //(一)
private static ResultSet rt = null; //(二)
找到getList方法:

public static CachedRowSetImpl getList(String sql) throws Exception {
start(); //连接数据库
CachedRowSetImpl rowset = new CachedRowSetImpl();(三)
stmt = conn.prepareStatement(sql);// 同样创建(一),将SQL 语句发送到数据库

rt = stmt.executeQuery();//因为上面是查询语句,所以用这个方法,执行给定的 SQL 语句,该语句返回单个 ResultSet (二)对象中。
rowset.populate(rt);// 将(二)中的结果集合放到3中
close(); //关闭数据库连接
return rowset; //将结果集(三)返回
} //到这里Test的这个方法执行完毕
回到MAIN函数:
//CachedRowSetImpl rowset = Test.getList("select * from bob") 因为上面的方法返回的(三)所以这里也要用(三)接收
while (rowset.next()) { //循环得到每个数值
System.out.println(rowset.getString("sid"));//roeset.getString方法的作用
System.out.println(rowset.getString("sname"));
System.out.println(rowset.getString("sage"));

数据库中的表bob中有3个字段 sid sname sage 他们的类型都是varchar类型(字符类型)
roeset.getString("sid")//找到结果集中sid列的值,因为这个字段是字符型,所以用getString方法

例如:假设bob表中sid 字段是 int
那么:roeset.getInt("sid")//会用getInt方法
同理:不通的类型会用调用相对应的方法

热点内容
福源密码宁波哪里有 发布:2025-05-10 17:27:04 浏览:846
javaclasstoobject 发布:2025-05-10 17:25:06 浏览:915
我的世界斗罗大陆手机版服务器号码 发布:2025-05-10 17:13:51 浏览:485
上古卷轴安卓版怎么启动游戏 发布:2025-05-10 17:13:06 浏览:54
加密loadrunner 发布:2025-05-10 17:08:46 浏览:353
ftp默认使用端口是8080 发布:2025-05-10 17:04:28 浏览:274
安卓美团我的评价在哪里 发布:2025-05-10 17:03:55 浏览:215
银行推荐算法 发布:2025-05-10 16:57:21 浏览:643
2014年二级c语言真题 发布:2025-05-10 16:56:25 浏览:181
绝地求生进不去显示服务器已满怎么办 发布:2025-05-10 16:56:21 浏览:91