将PLSQL变量导出到CSV文件中
我有一个PL/SQL块,在其中声明并填充一些变量。 我只是使用例如将PLSQL变量导出到CSV文件中,sql,stored-procedures,plsql,oracle11g,export-to-csv,Sql,Stored Procedures,Plsql,Oracle11g,Export To Csv,我有一个PL/SQL块,在其中声明并填充一些变量。 我只是使用例如DBMS_OUTPUT.PUT_LINE('My Name='|| V|u Name)来检查值 我有42个这样的变量,我需要将每个变量导出到CSV文件中 SET SERVEROUTPUT ON; DECLARE RECORD_NUM VARCHAR2 (10) := 'ITEM0001'; USER_ID NUMBER (11); FIRST_NAME VARCHAR2 (25);
DBMS_OUTPUT.PUT_LINE('My Name='|| V|u Name)来检查值代码>
我有42个这样的变量,我需要将每个变量导出到CSV文件中
SET SERVEROUTPUT ON;
DECLARE
RECORD_NUM VARCHAR2 (10) := 'ITEM0001';
USER_ID NUMBER (11);
FIRST_NAME VARCHAR2 (25);
LAST_NAME VARCHAR2 (25);
BEGIN
SELECT ID, FIRSTNAME, LASTNAME
INTO USER_ID, FIRST_NAME, LAST_NAME
FROM MYSCHEM.EMPLOYEES
WHERE HIRE_DATE > SYSDATE;
DBMS_OUTPUT.PUT_LINE ('FIRSTNAME= ' || FIRSTNAME);
DBMS_OUTPUT.PUT_LINE ('LASTNAME = ' || LAST_NAME);
DBMS_OUTPUT.PUT_LINE ('USER_ID = ' || USER_ID);
END;
/
如何将这些变量导出到CSV文件?这里是如何使用utl\u文件的一个简单示例:
DECLARE
outputfile UTL_FILE.file_type;
BEGIN
outputfile := UTL_FILE.FOPEN ('DIRECTORY', 'filename.csv', 'w');
UTL_FILE.PUT_LINE (outputfile, 'One,Two,Three');
UTL_FILE.PUT_LINE (outputfile, '1,2,3');
UTL_FILE.PUT_LINE (outputfile, '1,2,3');
UTL_FILE.FCLOSE (outputfile);
END;
就像William提到的:这将在数据库服务器上创建一个文件
如果您想在客户端上创建数据库,我们需要更多详细信息,了解您的客户端如何访问数据库。我无法理解提供的链接上的解决方案的可能副本:(这是本地(桌面)吗文件还是可以在服务器上?格式是什么?例如,James,Gordon,4321
?提供的链接使用包写入数据库服务器上的文件。