JDBC连接各种数据库方式列表

JDBC连接各种数据库方式列表:

下面罗列了各种数据库使用JDBC连接的方式,可以作为一个手册使用。

1、Oracle8/8i/9i数据库(thin模式)

Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl"; //orcl为数据库的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);

2、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);  

3、Sql Server7.0/2000数据库

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";
//mydb为数据库
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);  

4、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);

5、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);

6、MySQL数据库

Class.forName("org.gjt.mm.mysql.Driver").newInstance();
//或者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);

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() ; 

 

9、看你用哪种jdbc

如果是jdbcOdbc桥

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

Connection con = DriverManager.getConnection("jdbc:odbc:数据源名",username,pwd);

 

10、如果是jtds

Class.forName("net.sourceforge.jtds.jdbc.Driver");

Connection con = DriverManager.getConnection("jdbc:jtds:sqlserver://服务器地址:1433/数据库名",username,pwd); 

Notes: 需要先把相关的jar包放到classpath里面才行或者导入引用类文件夹中,要不然Class.forName的时候会报ClassNotFoundException

 

JDBC连接数据库的步骤:

1、加载要连接数据库的驱动程序-----jtds

Class.forName("net.sourceforge.jtds.jdbc.Driver");
注:Class.forName()方法将给定的类加载到JVM,如果系统中不存在给定的类,则会引发异常,所以要导入jtds-1.2.jar

2、通过驱动程序管理器得到连接实例

String connectionStr = String.format("jdbc:jtds:sqlserver://%s:%d;databaseName=%s;",
    "ServerName", 1433, "DBName", "UserName", "Password"); 

Connection conn=null;
//net.sourceforge.jtds.jdbc.Driver
 conn = DriverManager.getConnection(connectionStr);
注:DriverManager类跟踪已注册的驱动程序,通过getConnection(URL)方法, 找到一个能够连接至URL中指定的数据库驱动程序
它接收三个参数, 分别表示1 数据源的名称、类型 2 用户名(可选) 3 密码(可选)

3、基于连接对象建立处理器对象

Statement statement = conn.createStatement();

4、准备sql命令

  StringBuilder strBuild = new StringBuilder();
  strBuild.append("select top 1 * from dtCRSLogRequest rq left outer join dtCRSLogResponse rs ");
  strBuild.append("on rq.crsLogNumber = rs.crsLogNumber ");
  strBuild.append("where CRSID = 'AirInterface' order by rq.crsLogNumber desc");
  String sqlStr = strBuild.toString();

5、执行命令返回结果集

ResultSet result = null;

result = conn.createStatement().executeQuery(sqlStr);

6、显示结果集

while (result.next())
   {
    System.out.println("***************Start for printing**************************");
    System.out.println("CRSLogNumber: " + result.getString("CRSLogNumber"));
    System.out.println("MeesageType: " + result.getString("CRSID"));
    System.out.println("TransactionType: " + result.getString("TransactionType"));
    System.out.println("TransactionDesc: " + result.getString("TransactionDesc"));
    System.out.println("***************End for printing**************************");
   }

7、关闭资源

    result.close();//关闭记录集 
    statement.close();//关闭处理器对象 
    conn.close();.关闭连接对象

Example:

package database;

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

public class TestDatabase
{

	/**
	 * @param args
	 */
	public static void main(String[] args)
	{
		// TODO Auto-generated method stub
		String connectionStr = String.format("jdbc:jtds:sqlserver://%s:%d;databaseName=%s;",
				"ServerName", 1433, "DBName");
		StringBuilder strBuild = new StringBuilder();
		strBuild.append("select top 1 * from dtCRSLogRequest rq left outer join dtCRSLogResponse rs ");
		strBuild.append("on rq.crsLogNumber = rs.crsLogNumber ");
		strBuild.append("where CRSID = 'AirInterface' order by rq.crsLogNumber desc");
		String sqlStr = strBuild.toString();
		
		try
		{
			Connection conn = null;
			Class.forName("net.sourceforge.jtds.jdbc.Driver");
			//net.sourceforge.jtds.jdbc.Driver
			conn = DriverManager.getConnection(connectionStr);			
			synchronized (conn)
			{
				Statement statement = conn.createStatement();
				ResultSet result = null;
				result = statement.executeQuery(sqlStr);
				while (result.next())
				{
					System.out.println("***************Start for printing**************************");
					System.out.println("CRSLogNumber: " + result.getString("CRSLogNumber"));
					System.out.println("MeesageType: " + result.getString("CRSID"));
					System.out.println("TransactionType: " + result.getString("TransactionType"));
					System.out.println("TransactionDesc: " + result.getString("TransactionDesc"));
					System.out.println("***************End for printing**************************");
				}
				result.close();
				statement.close();
				conn.close();
			}			
		}
		catch (ClassNotFoundException e)
		{
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		catch (SQLException e)
		{

			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}


 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值