下面是用JAVA 通过JDBC连接 Oracle的步骤
希望对你有帮助
(1)装载并注册数据库的JDBC驱动程序
载入JDBC驱动:
ClassforName("oraclejdbcdriverOracleDriver");
注册JDBC驱动:
javasqlDriverManagerregisterDriver(new oraclejdbcdriverOracleDriver());
(2)建立与数据库的连接
要建立与数据库的连接,首先要创建指定数据库的URL。连接数据库的URL对象,利用DriverManager 的getConnection方法建立的。数据库URL对象与网络资源的统一资源定位类似,其构成格式如下:
jdbc:subProtocol:subName://hostname:port;DatabaseName=ⅹⅹⅹ
其中:
jdbc表示当前通过Java的数据库连接进行数据库访问;
subProtocol表示通过某种驱动程序支持的数据库连接机制;
subName表示在当前连接机制下的具体名称;
hostname表示主机名;
port表示相应的连接端口;
DatabaseName表示要连接的数据库的名称。
这里以与Oracle数据库的连接为例:
连接Oracle 8/8i/9i数据库(用thin模式)
url = jdbc:oracle:thin:@hostip:1521:oracleSID;
注意:hostip指主机的ip地址,oracleSID指数据库的SID。
再者确定连接数据库的用户名与密码,即user和password 的值:
user = “ⅹⅹⅹ “;
password = “ⅹⅹⅹ“;
最后使用如下语句:
Connection con=javasqlDriverManagergetConnection(url,user,password);
(3)创建Statement对象
例如:
Statement stmt = concreateStatement();
(4)调用并执行SQL语句
例如:
String sql = “select a,b,c from table1";//table1为你所要查询的表名,a,b,c为所要查询的字段
ResultSet rs = stmtexecuteQuery(sql);
(5)访问ResultSet中的记录集并从中取出记录
例如:
rsnext( );
rsabsolute(4);
String col1=rsgetString(1);
……
(6)依次关闭ResultSet、Statement和Connection对象
例如:
rsclose();
stmtclose();
conclose();
Java用JDBC连接数据库的时候部署驱动包方法: 1选中项目,然后选择Build Path,选择Configure Build Path; 2进入配置之后,点击Libraries,点击Add External JARs; 3找到驱动包,点击打开,添加加入之后,点击OK即可。
String url= "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName= bookshop";
直接用URL="jdbc:microsoft:sqlserver://localhost:1433/bookshop"不就可以了
使用JNDI就是不需要关心“具体的数据库后台是什么?JDBC驱动程序是什么?JDBC URL格式是什么?访问数据库的用户名和口令是什么?”等等这些问题。
不使用JNDI开发时,例如使用MySQL,要知道开发访问MySQL数据库的应用,于是将一个对 MySQL JDBC 驱动程序类的引用进行了编码,并通过使用适当的 JDBC URL 连接到数据库。
使用JNDI要在Web服务器中配置,例如Tomcat要在conf\contextxml中的<Resource>中配置数据源。具体怎么配置你可以百度搜索Java使用JNDI配置数据源。
JDBC配置数据源方式,和JNDI类似,就是将<Resource>中的配置自己在类中配置,要用到DBCP,需要3个jar包:
commons-collections4-40jar
commons-dbcp-14jar
commons-pool-16jar
配置方法很简单:
BasicDataSource dataSource = new BasicDataSource();//设置驱动类
dataSourcesetDriverClassName(className);
//连接字符串
dataSourcesetUrl(url);
dataSourcesetUsername(user);
dataSourcesetPassword(password);
//初始化连接
dataSourcesetInitialSize(initialSize);
// 最大连接数量
dataSourcesetMaxActive(maxActive);
//最大空闲连接
dataSourcesetMaxIdle(maxIdle);
//超时等待时间以毫秒为单位 6000毫秒/1000等于60秒
dataSourcesetMaxWait(maxWait);
//得到连接
Connection con = dataSourcegetConnection();
你SQL语句写的有问题,报的错是说你的第一个字段与数据库不匹配,因为你的insert语句不是插入所有字段,而是除了id的所有字段,所以应该将要插入的字段名字都写上,insert into tb_affiche (name,content,issueTime) values (,,);这样就对了。
test1 就是你的oracle数据库的sid 如果忘记了 可以到两个地方去找
1 右键点击 我的电脑 -> 系统服务 找到 OracleserviceXXX XXX 就是你的oracle数据库的sid 不区分大小写
2 就是 找到你的oracle的安装路径 在里面能找到你的sid
JAVA连接数据库的方式有多种:
根据所需要的不同数据库驱动分,分为四种:
1:1类驱动。这就是JDBC-ODBC桥的方式。但这种方式不适合程序的重用与维护,不推荐使用。需要数据库的ODBC驱动。
2:2类驱动。这就是JDBC+厂商API的形式。厂商API一般使用C编写,所以,这种方式也不长使用。
3:3类驱动。这就是JDBC+厂商Database Connection Server+DataBase的形式。
这种方法就是在JAVA 与 DATABASE之间价起了一台专门用与数据库连接的服务器(一般由数据库厂商提供)。他的好处在于能优化连接。
4:4类驱动。这就是纯JDBC+DATABASE的连接方式。也是推荐的连接方式。这使得APPLICATION与数据库分开,开发者只需关心内部逻辑的实现而不需注重数据库连接的具体实现。在这其中有两种连接的方式:
硬编码方式,就是在程序中硬性编入数据库连接的所须参数。
JNDI DataSource方式。就是在程序运行的外布环境中又称(Context)设置一个datasource数据源,有一个jndi 名称,程序只须查找此名称就可得到一个数据库连接的对象。
odbc桥接最常用的 ClassforName("sunjdbcodbcJdbcOdbcDriver"); //装载驱动程序 strCon = "jdbc:odbc:test"; //设置数据库连接字符串 test MySQL数据库 ClassforName("orggjtmmmysqlDriver")newInstance(); String url ="jdbc:mysql://localhost/testuser=soft&password=soft1234 &useUnicode= true&characterEncoding=8859_1" //URL重写输入用户名,密码 Connection conn= DriverManagergetConnection(url); //test为数据库名 Sql Server 2000数据库 ClassforName("commicrosoftjdbcsqlserverSQLServerDriver")newInstance(); String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=test"; //test为数据库 String user="sa"; String password="sa"; //用户名、密码根据实际情况修改 Connection conn= DriverManagergetConnection(url,user,password); Oracle8/8i/9i数据库(scott模式) ClassforName("oraclejdbcdriverOracleDriver")newInstance(); //myOracle为数据库的SID String url="jdbc:oracle:scott:@localhost:1521:myOracle"; String user="test"; String password="test"; //依情况而定 Connection conn= DriverManagergetConnection(url,user,password); conn=DriverManagergetConnection("jdbc:oracle:oci8:@ora9","system","manager"); 一般就用这几种,还有其他的,没用过!
以上就是关于JDBC连接ORACLE全部的内容,包括:JDBC连接ORACLE、如何使用jdbc配置数据库连接、jdbc连接数据库问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)