oracl 数据库 sqlplus 导出数据为sql文件

属于我的梦,明明还在 / 2024-11-17 / 原文

首先确定表数据

然后执行导出命令

SET FEEDBACK OFF
SET HEADING OFF
SET TRIMSPOOL ON
SET PAGESIZE 0
SET LINESIZE 32767
SET FEEDBACK 6

SPOOL BPM_EXT_PROCINST.sql

SELECT 'INSERT INTO BPM_EXT_PROCINST (ID, BUSI_ID, BUSI_NAME, BUSI_TYPE_ID, BUSI_TYPE_NAME, START_TIME, END_TIME, PROCDEP_ID, J4_PI_ID, J4_PI_DBID, J4_PI_STATE) VALUES (' ||
        TO_CHAR(ID) || ', ''' ||
        REPLACE(BUSI_ID, '''', '''''') || ''', ''' ||
        REPLACE(BUSI_NAME, '''', '''''') || ''', ''' ||
        REPLACE(BUSI_TYPE_ID, '''', '''''') || ''', ''' ||
        REPLACE(BUSI_TYPE_NAME, '''', '''''') || ''', ''' ||
        TO_CHAR(START_TIME, 'YYYY-MM-DD HH24:MI:SS') || ', ' ||
        TO_CHAR(END_TIME, 'YYYY-MM-DD HH24:MI:SS') || ', ''' ||
        REPLACE(PROCDEP_ID, '''', '''''') || ''', ''' ||
        REPLACE(J4_PI_ID, '''', '''''') || ''', ''' ||
        REPLACE(J4_PI_DBID, '''', '''''') || ''', ''' ||
        REPLACE(J4_PI_STATE, '''', '''''') || ''');' AS insert_statement
FROM BPM_EXT_PROCINST;

SPOOL OFF

涉及中文,添加中文环境变量

export NLS_LANG=.AL32UTF8
sqlplus username/password@database