

我在MyEclipse错误的原因
错误的终极解决办法是逐步缩小代码,一句一句的调试。
1.提示:java.sql.SQLException: Io 异常:
Connection ct=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:ORACLE1","scott","tiger");
原因:上面这名在连接代码把数据库名写错,将ORAL1改为正确的ORACLE1
2.在pl/sql中使用dbms_output.put_line输出没有任内容,原因是输入选项关闭了
set serveroutput on/off //打开输出选项,如果是on,写完回车会输入一行hello,world,off不会输出
3.java是区分大写小的,下面的命令写错的地方
Class.forName("oracle.jdbc.driver.OracleDriver"); //Class的C必需大写
String name=cs.getString(2); //String的S要大写,小写出氏
System.out.println("7788 name is: "+name); //System的S也要大写,;println的l是L的小写
4.提示:PLS-00201: 必须说明标识符 'VARHCAR2'
原因:create or replace procedure sp_pro8 (spNo in number,spName out varhcar2,spSal out number,spJob out varchar2) is 这句中的varhcar2写错了,正确应该是varchar2
5.提示: PLS-00103: 出现符号 "end-of-file"在需要下列之一时: ; 符号 ";" 被替换为 "end-of-file" 后继续
原因:少了个分号,我在end tespackage; 少了最后的分号;所以提示如上
6.提示:4/17 PLS-00103: 出现符号 "FROM"在需要下列之一时: . ( % ; for 符号 ";在 "FROM" 继续之前已插入。
原因:这句的前面那个from应为for,open p_cursor from select * from emp where deptno=spNo;
7.提示:java.sql.SQLException: 无法转换为内部表示
原因:System.out.printIn(rs.getInt(1)+" "+rs.getInt(2));应改为System.out.printIn(rs.getInt(1)+" "+rs.getString(2));
8.提示:3/22 PLS-00103: 出现符号 ";"在需要下列之一时: := . ) , @ % default character
原因:第3行第22个字符位置有错,因为过程的参数之间应该用逗号分开,而不是分号
create or replace procedure fenye
(tableName in varchar2,
Pagesize in number;--这里的分号写成了逗号
pageNow in number; --应该是豆号
p_cursor out tespackage.test_cursor
) is