我有以下程序,它应该将一些数据写入文件。
CREATE OR REPLACE PROCEDURE export_to_xml
IS
F UTL_FILE.FILE_TYPE;
CURSOR c_cursor IS
SELECT x FROM (select xmlelement( "user", xmlforest( uname, action, time ) ) as x from table_log);
action c_cursor%ROWTYPE;
BEGIN
F := UTL_FILE.FOPEN('XML', 'log.xml', 'w');
OPEN c_cursor;
LOOP
EXIT WHEN c_cursor%NOTFOUND;
FETCH c_cursor INTO action;
UTL_FILE.PUT(F, action.x);
UTL_FILE.NEW_LINE(F);
END LOOP;
CLOSE c_cursor;
UTL_FILE.FCLOSE(F);
END;
/
但是当我尝试编译过程时出现以下错误
PLS-00306: wrong number or types of arguments in call to 'PUT'
任何人都知道问题的原因是什么?我知道它来自UTL_FILE.PUT(F, action.x);
,但我没有看到任何其他方式来引用光标。
答案 0 :(得分:1)
HTMLInputElement.defaultValue
返回XMLType
。您可以使用xmlelement
将其转换为getStirngVal()
,以便将其与varchar
一起使用:
put