首先我们再来熟悉下INSERT INTO 与 SELECT INTO 的语法结构:
---------
1、
Insert是T-sql中常用语句,Insert INTO table(field1,field2,...) values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。
1.INSERT INTO SELECT语句
语句形式为:Insert into Table2(field1,field2,...) select value1,value2,... from Table1
要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。
2、
SELECT INTO FROM语句
语句形式为:SELECT vale1, value2 into Table2 from Table1
要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。
----------
今天在DB2下需要表复制的情况下,反复使用SELECT INTO FROM 都提示失败,后来一查,才发现在DB2中,SELECT INTO 被用在了诸如存储过程中给变量复制的功能,复制表只能用另一种办法实现了:
CREATE TABLE Table2 LIKE Table1
INSERT INTO Table2
SELECT * FROM Table1
-----------
注:经查实,在Oracle中select into from复制表也不可以使用-----原因很简单:select into是PL/SQL language 的赋值语句!如果使用则Oracle会抛出0RA-00905:missing keyword的异常!
而Oracle的替代做法是:
CREATE TABLE Table2 AS Table1
INSERT INTO Table2
SELECT * FROM Table1
分享到:
相关推荐
db2 IBM DB2在企业级的应用最为广泛, 在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器。收费 大型企业 Access 微软 Access是一种桌面数据库,只适合数据量少的应用,在处理少量 数据和单机访问的数据库时...
五种常见数据库(oracle,teradata,gbase,hive,db2),通过指令的方式导出csv格式文件的总结,实例.例如spool,select.. into outfile,export .... of del,fastExport.
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1(仅用于SQlServer) 法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:...
某知名公司内部ORACLE培训资料,绝对不可多得。 如果你下载后觉得不行,可以损我。 一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql ...
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1(仅用于SQlServer) 法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:...
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1(仅用于SQlServer) 法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:...
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用) 法一:select * into b from a where 1<>1 法二:select top 0 * into b from a 2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access...
常用的数据库管理系统(DBMS)有 MySQL、Oracle、SQL Server、DB2 等。 数据库基础知识点: 1. 数据库的作用:数据库是存储和管理数据的基本对象,包括文字、图形、图像、声音等有组织的、可共享的数据集合。 2. ...
大型 DBMS 软件如 IBM DB2、ORACLE、SQL SERVER、INFORMIX 等等。 4. 实体型之间的关系有哪些? 实体型之间的关系有三种:一对一关系、一对多关系和多对多关系。 5. 实体型之间的一对一关系的例子 例如,一种...
sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表) (5) 数据记录统计函数: AVG(字段名) 得出一个表格栏平均值 COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据...
mssql 2000 Access DB2 oracle 【mysql安装】 1、官方下载mysql win32 msi 2、点击安装 3、配置 4、查看是否安装成功 通过cmd 输入netstat -a搜索3306端口是否处于listening状态 【mysql服务的启动与停止】 1...
SQL语言广泛应用于各种关系数据库管理系统中,如Oracle、DB2、MySQL等。它提供了一个标准化的语言,用于管理和操作关系数据库,以提高数据的安全、完整性和一致性。同时,SQL语言也广泛应用于数据科学、商业智能、...
Use any databases, such as DBMS SQL Server, Oracle, or DB2, Use any programming languages, such as java, c++, asp.net, php. Use c/s or b/s Model. Submitted materials: 1. Program manual. (papers and...
比较著名的关系数据库管理系统有 Oracle、Sybase、DB2、MySQL、Microsoft SQL Server、Microsoft Access 等。 SQL 语言 SQL 是一个国际化标准语言,几乎所有关系型数据库都用 SQL 语言执行数据查询和操纵。理解 ...
JDBC Driver Mannager->局部JDBC驱动->客户端数据库->数据库服务器->返回查询结果,这种访问事实上是转换JDBC调用为相应的数据库(Oracle, Sybase, Informix, DB2, 和其他的数据库数据库管理系统)的客户端API调用...
7.在 test/src/VereORM.xml 只需简单配置 实体模型User 到 表 user 的映射 <?xml version="1.0" encoding="UTF-8"?> <dataSource class="com.vere.orm.db.pool.PooledConnection"> ...
;;;;;;;;... 1.... 2.... 3.... 4.... 5.... 6.... The syntax of the file is extremely simple.... Section headers (e.g.... at runtime.... There is no name validation.... (e.g.... previously set variable or directive (e.g....