`
Vasile
  • 浏览: 38755 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

spool命令和使用select语句批量动态生成sql语句

阅读更多
今天一个任务是从两张表中用sql语句导出些数据,并且提交这些数据的插入语句。上网查询后找到个方法,例子如下:
spool c:\data.sql;
select 'insert into table_name values('''||field_1||''','''||field_2||''');'from table_name where field_n=some_conditon;
spool off;
从这个方案中引申学到两条:spool命令和使用select语句批量拼装sql语句

   1. spool命令

1 Oracle的spool命令可以用来将数据export出来到文本文件。Oracle的Import/Export命令用于备份和恢复比较有效,但对于一些临时数据量的导出,Export不好用,甚至不可用。在这里,就是spool的发挥之地了。

2Spool一般使用格式为spool [filepath]filename;       其他sql语句;spool off;

要输出的内容都在spool语句中包含;

3 spool还有些其他控制命令:

set pagesize 0               --设置页面大小, 0表示无限制,如果设置为10,则10行数据后出现一空行
set num 18                  --设置数字的长度,如果不够大,则用科学记数法显示
set heading off             --设置不要题头,则不出现select的field list
set feedback off           --设置不需要返回信息, 比如" 100 rows selected“
set term off                 --
set trimspool on           --trim

4 如果在sqlplus中直接使用sql语句,则导出的数据文件中会包含spool语句中使用的sql语句,如果不想让生成这些可把要使用的sql语句存在一个文件中再在sqlplus中执行此文件即可。

   1. 使用select语句批量拼装sql语句

仿照select 'insert into table_name values('''||field_1||''','''||field_2||''');'from table_name where field_n=some_conditon;可联想批量生成其他sql语句,例如drop、update、delete语句。其中||为连接符号,三个单引号最后生成一个单引号。
分享到:
评论

相关推荐

    最全的Sql 语句命令大全(经典)

    在 Oracle 中,我们可以将多条 SQL 语句保存在一个文本文件中,然后使用以下命令来执行该文件中的所有 SQL 语句: SQL>start file_name SQL>@ file_name 这类似于 DOS 中的批处理,非常方便。 二、编辑当前输入 ...

    oracle sqlplus 中spool 的使用

    其中,`spool`命令是SQLPlus中的一个重要特性,它允许用户将SQL查询结果或命令输出到指定的文件中,这对于批量处理、数据备份或生成报告等工作非常有用。 #### 一、Spool命令基本用法 1. **启动Spool文件**:使用`...

    测试中可以一用的命令spool

    例如,你可能使用`spool`来收集和整理开发过程中生成的日志,或者是将数据库脚本的执行结果与源代码版本控制系统(如Git)集成。 在压缩包文件“个股资料”中,虽然没有具体的文件内容信息,但可以猜测这可能包含了...

    windows和unix下通过spool导出oracle数据(导成insert语句)

    本文将详细讲解如何在Windows和Unix环境下利用SQL*Plus的`spool`命令来导出Oracle数据库中的数据,并将其转换为INSERT语句或纯文本格式。 `spool`是SQL*Plus的一个内置命令,它允许用户将SQL*Plus会话的输出重定向...

    Oracle导入SQL脚本执行和常用命令大全

    Oracle 导入 SQL 脚本执行和常用命令大全 Oracle 导入 SQL 脚本执行和常用命令大全是一个非常重要的知识点,对于 Oracle 数据库的开发和维护人员来说非常有用。在本篇文章中,我们将介绍 Oracle 导入 SQL 脚本执行...

    输出到文本的SQL语句

    本文将详细介绍如何使用SQL语句将查询结果输出到文本文件中,并结合给定的部分内容进行具体说明。 #### 一、SQL Spool 命令简介 在Oracle数据库中,`spool`命令是一种非常实用的功能,它允许用户将查询结果或者...

    ORACLE SQL 语句(典型应用总结).pdf

    根据提供的文档信息,本文将对...以上总结了Oracle SQL语句的一些典型应用案例,涵盖了基本的SELECT语句、限定与排序操作以及常用的功能函数,希望这些知识点能够帮助读者更好地理解和掌握Oracle SQL的相关知识。

    Orcle的SQLplus语句详解[汇编].pdf

    本文将详细介绍 Oracle SQL*Plus 语句的使用和运行环境、常用命令、标准 SQL 语言目录、查询检索数据、插入、更新和删除数据库记录、事务处理、编译运行 SQL 语句和 PL/SQL 块、SQL 语言编写规则等知识点。...

    SqlPlus语句格式--Oracle学习篇[汇编].pdf

    在SQL*Plus中,用户可以使用各种命令来执行不同的操作,例如连接数据库、执行SQL语句、查看结果、管理数据库对象等。SQL*Plus也提供了一些特殊的命令和功能,例如描述命令、帮助命令、编辑命令、运行命令等。 在SQL...

    SQL*PLUS命令的使用大全

    - `SPOOL filename`:将输出重定向到文件,用于批量处理或生成报告 2. 动态SQL - 使用`EXECUTE`或`EXEC`执行PL/SQL块 - `EXECUTE IMMEDIATE`执行动态SQL语句 3. 错误处理 - `WHENEVER SQLERROR`:设置当SQL...

    Orcle的SQLplus语句详解.doc

    DUAL 表是一个虚拟表,用于提供一个对象供 SELECT 语句使用。 日期类型 SQLplus 中的日期类型需要使用 TO_DATE() 函数进行转换,例如 `TO_DATE('2022-01-01', 'YYYY-MM-DD')`。 查询语句 SQLplus 中提供了多种...

    Oracle SQLPLUS命令的使用大全.doc

    SQL语句如SELECT、INSERT、UPDATE等,主要用于数据的操作和定义,而SQL*Plus命令则更多地关注于环境配置、输出格式化和脚本执行。SQL语句会被保存在SQL buffer中,而SQL*Plus命令不会被保存,主要用于控制会话环境和...

    oracle导出sql语句的结果集和保存执行的sql语句(深入分析)

    总结,Oracle数据库提供了`spool`和`savelist`(或`sav`)命令,帮助我们方便地导出SQL查询结果和保存执行的SQL语句。`spool`用于将输出重定向到文件,`savelist`则用于记录执行的SQL命令。通过熟练掌握这两个命令,...

    SQL21日自学通

    在SELECT 语句使用约束201 在视图中修改数据201 在视图中修改数据的几个问题203 通用应用程序的视图204 删除视图语句207 使用索引207 什么是索引207 使用索引的技巧212 对更多的字段进行索引212 在创建索引时使用...

    Oracle_spool_用法详解

    为了更好地理解和使用 `Spool` 命令,我们需要了解一些 SQL*Plus 的设置命令,这些命令可以帮助我们定制输出文件的格式。 1. **设置列分隔符** - **命令**: `set colsep ''` - **功能**: 设置列之间的分隔符。...

    SQL-PLUS命令的使用大全

    - 使用`edit`命令进入编辑模式,便于修改SQL语句。 #### 3. 执行SQL语句 - 单条SQL语句可以通过直接输入后按回车键来执行。 - 多条语句可以存储在缓冲区(sqlbuffer),使用`/`来执行缓冲区中的所有SQL语句。 #### ...

    sql.plus命令大全

    - **应用场景**: 当需要执行一系列SQL语句时,可以将这些语句保存在一个文本文件中,然后通过此命令批量执行。 ##### 2. 对当前输入进行编辑 - **命令**: `SQL> EDIT` - **功能**: 启动内置的文本编辑器(默认为vi...

    SQLPLUS命令使用大全

    SQL*Plus命令分为两类:一类是SQL语句,如DML(数据操作语言)、DDL(数据定义语言)和DCL(数据控制语言)等;另一类则是SQL*Plus特有的命令,这些命令主要用于格式化输出结果或控制SQL*Plus的行为。 #### 二、SQL...

    数据库SQL*splus命令大全

    ### 数据库 SQL\*plus 命令大全 在 IT 领域中,SQL\*plus 是一个非常实用的工具,尤其对于那些刚开始接触数据库管理的初学者来说更是如此。...掌握这些命令和技巧对于数据库管理员和开发人员来说都是非常重要的。

Global site tag (gtag.js) - Google Analytics