我对JavaDB和Netbeans感到非常沮丧!现在可以感谢任何帮助。我使用Netbeans 7.2.1和最新的Java SDK。
目的:
将CSV格式的数据从位于C:\的文件导入名为APP.USERS的JavaDB表。
我做了什么:
我使用以下代码尝试使用Netbeans中的SQL Query实用程序将数据导入表中:
CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE
(null, 'USERS',
'FIRSTNAME,LASTNAME,USERNAME,PASSWORD,UNIQUENR,MEMBERSINCE,DOB,EMAIL,AWARDPOINTS,USERTYPE',
'c:\SQL_APP_USERS', '\n',',','UTF-8', 0);
`
SELECT * FROM APP.USERS;`
INSERT INTO
APP.USERS(FIRSTNAME,LASTNAME,USERNAME,PASSWORD,UNIQUENR,MEMBERSINCE,DOB,EMAIL,AWARDPOINTS,USERTYPE)
VALUES (FROM 'c:\SQL_APP_USERS.txt'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
));
--Check the content of the table.
SELECT * FROM APP.USERS;
的问题:
http://docs.oracle.com/javadb/10.4.1.3/tools/ctoolsimport16245.html
)Error code -1, SQL state 42Y03: 'SYSCS_UTIL.SYSCS_IMPORT_DATA' is not recognized as a function or procedure.
Error code -1, SQL state 42X01: Syntax error: Encountered "FROM" at line 2, column 9
请帮助。
答案 0 :(得分:2)
1。)你给我们的指定功能
CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE
(...
与错误消息
不匹配 SYSCS_UTIL.SYSCS_IMPORT_DATA
未被识别为功能或程序。
2。)传递的值数量不符合要求 没有带8个参数的重载函数。
CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE
(null,'STAFF','c:\output\myfile.del',';','%',null,0);
1 2 3 4 5 6 7
CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE
(null, 'USERS','FIRSTNAME,...,', 'c:\SQL_APP_USERS', '\n',',','UTF-8', 0);
1 2 3 4 5 6 7 8
序列错误。
这意味着每列都是一个单独的行。
'\n',','
应该是
',','\n'
3。)如果那么容易就会很好。
INSERT INTO ... VALUES (FROM 'c:\SQL_APP_USERS.txt'
所以这是一个简单的Java Utility类,可用于将CSV文件加载到数据库中。
Import CSV into Database example
测试:
c:\myfile.del
CALL SYSCS_UTIL.SYSCS_IMPORT_TABLE
(null,'CUSTOMER','c:\myfile.del',';','%',null,0);
此处,为测试创建了表FRIENDS
。
由于文件'c:\ myfile.del'为空,所以无事可做
没有错误:is not recognized as a function or procedure