想把一个excel文件读到oracle中,请问有什么办法?
解决方案 »
- 求一函数,有关字符串替换
- 在windows 的MFC中用OCCI通过连接字符串连接Windows上的oracle10g 报告ora12560
- 求SQL语句,请高手帮忙
- 一道题目 大家来帮忙
- 求助,关于forall的使用,编译出错!
- ORA查数据大写的问题!
- 在SQL*Plus worksheet中执行delete from table操作无响应
- ORA-01033: ORACLE initialization or shutdown in progress
- plsql里面两个集合的合集、差集、交集怎么写?
- sql sever 2000中的数据表导到oracle 9i中,怎么不行?
- 求一个返回前几笔数据的查询语句,急啊~
- 如何把一个表的多个字段合并起来.
fpath IN STRING,
fname IN STRING,
max_num IN NUMBER
)
IS
file_handle UTL_FILE.file_type;
text_buffer STRING (1000);
line_num NUMBER;
BEGIN
DBMS_OUTPUT.put_line ('INPUT PATH=' || fpath);
DBMS_OUTPUT.put_line ('INPUT FILENAME=' || fname);
line_num := 0; BEGIN
file_handle := UTL_FILE.fopen (fpath, fname, 'R', max_num); LOOP
line_num := line_num + 1;
UTL_FILE.get_line (file_handle, text_buffer);
DBMS_OUTPUT.put_line ('LINE' || line_num || ' : ' || text_buffer);
END LOOP;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
RETURN;
WHEN UTL_FILE.invalid_path
THEN
DBMS_OUTPUT.put_line ('INVALID PATH');
WHEN UTL_FILE.invalid_mode
THEN
DBMS_OUTPUT.put_line ('INVALID MODE');
WHEN UTL_FILE.invalid_filehandle
THEN
DBMS_OUTPUT.put_line ('INVALID FILEHANDLE');
WHEN UTL_FILE.invalid_operation
THEN
DBMS_OUTPUT.put_line ('INVALID OPERATION');
WHEN UTL_FILE.read_error
THEN
DBMS_OUTPUT.put_line ('READ ERROR');
WHEN UTL_FILE.write_error
THEN
DBMS_OUTPUT.put_line ('WRITE ERROR');
WHEN UTL_FILE.internal_error
THEN
DBMS_OUTPUT.put_line ('INTERNAL ERROR');
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line (SQLERRM);
END;
EXCEPTION
WHEN OTHERS
THEN
DBMS_OUTPUT.put_line ('OTHER ERROR=' || SQLERRM);
END preadfiletest;然后
exec preadfiletest('d:\tmp', 'test.txt', 100);总是提示:'INVALID PATH '怎么解决,有没什么其他的方法读写文件??
SQL> ALTER SYSTEM SET UTL_FILE_DIR='d:\testtmp' scope=spfile;
ALTER SYSTEM SET UTL_FILE_DIR='d:\testtmp' scope=spfile
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
兄弟!用POI吧!
SQL> ALTER SYSTEM SET UTL_FILE_DIR='d:\testtmp' scope=spfile;
不行,要把动态参数文件转换为静态参数文件,用文本编辑器编辑后再转为动态参数文件。
Oracle中有些参数是不能用ALTER SYSTEM SET命令修改的。