[Oracle数据库中有关CBO优化的三个问题]一.如何使用CostBased优化器优化查询操作?Oracle 提供了基于成本(CostBased)和基于规则(RuleBased)两种优化器,简称为CBO和RBO,用于确定查询操作的执行计划。CostBased优化器将计...+阅读
这种异常的出现大致上有下面几种:
1。IP错误。
在设置URL时错误,例如:jdbc:oracle:thin:192.168.0.36:1521:sharp
数据库服务器不正确:ping 服务器IP是否正确。不正确,将URL更改为正确
端口号错误:一般不会错误。
进行一下操作:在DOS上键入sqlplus,检查oracle是否开启
一却正常,执行下面第2步。
2。防火墙
如果机器上安装有放火墙,可能是服务器端口号屏蔽而造成的。关闭防火墙后,尝试重新连接。
仍然不行,执行第3步。
3。数据库监听未启动 修改PC上注册表中的ImagePath值。
我下面以现在主流的数据库ORACLE为例
重新手动启动数据库监听
如何使用JDBC连接oracle数据库
ConnectionFactory类:package jdbc;import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;import org.apache.log4j.Logger;public class ConnectionFactory { private Connection connection = null; private String url = "jdbc:oracle:thin:localhost:1521:ORACLE"; /** * 创建连接 * return */ public Connection createConnection(){ try { Class.forName("oracle.jdbc.driver.OracleDriver"); connection = DriverManager.getConnection(url, "scott", "tiger"); return connection; } catch (ClassNotFoundException e) { Logger.getLogger(this.getClass()).error(e.getMessage()); return null; } catch (SQLException e) { Logger.getLogger(this.getClass()).error(e.getMessage()); return null; } } /** * 释放连接 */ public void releaseConnection(){ if (connection!=null) try { connection.close(); } catch (SQLException e) { Logger.getLogger(this.getClass()).error(e.getMessage()); } }}测试类:Test.javapackage jdbc;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class Test { private static ConnectionFactory cFactory = new ConnectionFactory(); static ResultSet rs = null; static Connection connection = null; static Statement statement = null; /** * param args */ public static void main(String[] args) { try {// Statement statement = cFactory.createConnection().createStatement(); // ResultSet rs = statement.executeQuery("select * from test"); /*上面注释掉的程序是之前写的,可是查询不出数据,rs.next()方法一直是false,后来后,使用PrepareStatement替代Statement,解决了问题*/ PreparedStatement pState = cFactory.createConnection().prepareStatement("select * from test"); ResultSet rs = pState.executeQuery(); while(rs.next()){ String id = rs.getString("id"); String name = rs.getString("name"); //【等同写法:String name = rs.getString(2);此时name要对应数据库中的第二列】 String age = rs.getString("age"); String sex = rs.getString("sex"); System.out.println("id="+id+";name="+name+";age="+age+";sex="+sex); } } catch (SQLException e) { e.printStackTrace(); } } }
jdbc连接oracle的方式?3种
java与oracle的接口: 在数据库中运行JAVA可以说是ORACLE8i的最令人激动的新特性。在你创建的使用ORACLE8i 数据库的应用程序中,你可以使用与JAVA有关的新特征,轻松的将程序发布到INTERNET或INTRANET上。 Methods for Using Java in ORACLE 大家都知道JAVA在跨平台开发与INTERNET开发中已经比较流行,ORACLE8i及以后的版本中都包含了对在数据库中运行JAVA的扩展支持,这里有两种方法可以使用: JDBC:与ODBC类似, JDBC 提供了一个驱动接口使你可以在JAVA程序中访问数据库。注:JDBC驱动内嵌在数据库中虚拟机中。 SQLJ:是一个JAVA预编译器,它可以将内嵌的SQL语句转化为JAVA语句.SQLJ的使用与运行机理与其它ORACLE的与编译器(如Pro*C,Pro*COBOL)类似。实际上,为了使我们形象的记住SQLJ提供的功能,我们也可以直接将SQLJ改名为Pro*Java。
将JAVA集成到数据库中是双向的。也就是说你可以在JAVA中调用SQL与PL/SQL,也可以在SQL与PL/SQL中调用JAVA。JAVA程序可以直接通过JDBC驱动调用SQL与PL/SQL,反过来,你也可以在SQL与PL/SQL中直接调用JAVA。在数据库中,JAVA命名空间直接映射到数据库模式的命名空间中,这样可以方便JAVA的存取与调用。数据库同时提供扩展的DDL语句,通过这些语句,你可以象创建一个存储过程一样在数据中创建内嵌的JAVA程序。 Features of ORACLE JDBC Drivers 在ORACLE8i中有三种类型的JDBC驱动,他们都使用相同的 syntax, APIs, and Oracle extensions,以使JAVA代码在robust clients、Web-based Java applets, and Java stored procedures之间保持轻便灵活:三种类型如下: 1.JDBC OCI: 此驱动类似于传统的ODBC 驱动。因为它需要Oracle Call Interface and Net8,所以它需要在运行使用此驱动的JAVA程序的机器上安装客户端软件 2.JDBC Thin: 这种驱动一般用在运行在WEB浏览器中的JAVA程序。
它不是通过OCI or Net8,而是通过Java sockets进行通信 ,因此不需要在使用JDBC Thin的客户端机器上安装客户端软件。 3.JDBC KPRB: 这种驱动由直接存储在数据库中的JAVA程序使用,如Java Stored Procedures 、triggers、Database JSP's。It uses the default/ current database session and thus requires no additional database username, password or URL. 如何配置使JAVA可以通过Oracle JDBC Drivers连接到数据库:1.安装Sun JDK. 2. 修改PATH环境变量,使其指向JDK的bin目录 3. 设置CLASSPATH环境变量,使其指向正确的JDK的lib及oracle的JDBC接口。 CLASSPATH = ".;????" 3. 运行"java –version" ,验证java的版本。 如何在不同的操作系统上根据接口类型设置客户端: 对JDBC THIN接口: 在windows与unix下的设置方法一样: 1.根据jdk的版本,只需要将classesxx.zip拷贝到指定的目录,不需要安装Oracle Client。
在装完数据库后,该文件会在$ORACLE_HOME/jdbc/lib目录下。2.设置CLASSPATH,使其包含上面的classesxx.zip 3.根据需要,拷贝oracle的其它zip文件并设置CLASSPATH 对JDBC OCI接口: Fow Windows: 1.安装Oracle Client. 2.根据jdk的版本,设置CLASSPATH,使其包含正确的classesxx.zip 3.根据需要设置CLASSPATH,使其指向Oracle的其它zip文件 4.设置PATH,使其包含$ORACLE_HOME/bin目录
以下为关联文档:
Oracle数据库你的意思是不是要说 要建一个触发器 当要删除这条记录时 触发写到其他表? CREATE OR REPLACE TRIGGER 触发器名称 BEFORE DELETE ON 表名 REFERENCING NEW AS New OLD AS Old...
数据库oracle简介Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流...
什么是Oracle数据库 Oracle数据库是什么Oracle应用产品包括财务、供应链、制造、项目管理、人力资源和市场与销售等150多个模块,荣获多项世界大奖,现已被全球近7600多家 企业所采用。由于在电子商务方面的杰出表现,Or...
求教 plsql连接本机数据库是未响应问题sqlplus 连接的时候用的是 sqlplus user/pass 还是 sqlplus user/passorcl 那种方式,如果是user/pass,则没有使用listener的。 把tnsnames.ora和listener.ora两个文件中的HOST...
php5连接mysql数据库的问题连接方式多种多样 一般来说php5,我用mysqli来连接 $db = new mysqli("localhost","用户名","密码","库名"); 用法 $rs = $db->query(""); while ($record = $rs->fetch_assoc()) { echo $re...
请教JDBC怎么连接ORACLE数据库找到你安装的oracle文件夹,例如我的oracle是装到C:\ 则找到路径:C:\oracle\product\10.2.0\db_1\jdbc\lib 下有一个文件叫class12.jar复制他,在MyEclipse 创建一个web项,创建完成...
怎么配置plsql连接本机oracle数据库?-- 使用SYSTEM帐号登陆ORACLE,执行如下命令创建表空间和用户: -- 创建表空间,空间大小根据自己的需要修改,注意路径要设绝对路径. CREATE TABLESPACE ts1 DATAFILE 'C:\oracle\o...
请问用plsql怎么连接oracle数据库?首先您要开启监听 $lsnrctl start 其次您要安装oracle客户端,即client. 然后您要在oracle客户端的net configuration assitant工具里设置好监听和服务名。 然后您的plsqldev...
如何通过PLSQL连接oracle数据库1 按Windows徽标键,进入开始界面,找到Net Configuration Assistant,单击运行之 2 进入Oracle Net Configuration Assistant配置向导,勾选本地网络服务名配置,单击下一步; 在网络服...