`

sql server 把从一个表查询到的记录插到另一个表

 
阅读更多

表有标示

sql  server 2k

 

 

set IDENTITY_INSERT copylogtemplates ON

insert into copylogtemplates(ID,RIGHT_VALUE,LOG_TEMPLATE) 
select ID,RIGHT_VALUE,LOG_TEMPLATE from logtemplates

 

sql server 2005有两种方法

insert into copylogtemplates
select * from logtemplates

出现下错误

  仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'copylogtemplates'中的标识列指定显式值

1:set IDENTITY_INSERT copylogtemplates ON

insert  into (ID,RIGHT_VALUE,LOG_TEMPLATE)  copylogtemplates
select * from logtemplates

 

 

2:set IDENTITY_INSERT copylogtemplates ON

insert  into copylogtemplates (ID,RIGHT_VALUE,LOG_TEMPLATE) 
select * from logtemplates

 

sql  server 2k 只能用第二种方法。

 

 

select into 和insert into 两种复制语句

      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的字段外,还可以插入常量。示例如下:


<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->   --1.创建测试表
    create TABLE Table1
    (
        a 
varchar(10),
        b 
varchar(10),
        c 
varchar(10),
        
CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED
        (
            a 
ASC
        )
    ) 
ON [PRIMARY]

    
create TABLE Table2
    (
        a 
varchar(10),
        c 
varchar(10),
        d 
int,
        
CONSTRAINT [PK_Table2] PRIMARY KEY CLUSTERED
        (
            a 
ASC
        )
    ) 
ON [PRIMARY]
    
GO
    
--2.创建测试数据
    Insert into Table1 values('','asds','90')
    
Insert into Table1 values('','asds','100')
    
Insert into Table1 values('','asds','80')
    
Insert into Table1 values('','asds',null)
    
GO
    
select * from Table2

    
--3.INSERT INTO SELECT语句复制表数据
    Insert into Table2(a, c, d) select a,c,5 from Table1
    
GO

    
--4.显示更新后的结果
    select * from Table2
    
GO
    
--5.删除测试表
    drop TABLE Table1
    
drop TABLE Table2


      2.SELECT INTO FROM语句

      语句形式为:SELECT vale1, value2 into Table2 from Table1

      要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。示例如下:


<!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />-->   --1.创建测试表
    create TABLE Table1
    (
        a 
varchar(10),
        b 
varchar(10),
        c 
varchar(10),
        
CONSTRAINT [PK_Table1] PRIMARY KEY CLUSTERED
        (
            a 
ASC
        )
    ) 
ON [PRIMARY]
    
GO

    
--2.创建测试数据
    Insert into Table1 values('','asds','90')
    
Insert into Table1 values('','asds','100')
    
Insert into Table1 values('','asds','80')
    
Insert into Table1 values('','asds',null)
    
GO

    
--3.SELECT INTO FROM语句创建表Table2并复制数据
    select a,c INTO Table2 from Table1
    
GO

    
--4.显示更新后的结果
    select * from Table2
    
GO
    
--5.删除测试表
    drop TABLE Table1
    
drop TABLE Table2

 

 

 

 

 

 

分享到:
评论

相关推荐

    sqlserver将视图或表的记录不重复的插入到另一个表

    sqlserver将视图或表的记录不重复的插入到另一个表 纯SQL语句,定义为存储过程,程序可以直接调用存储过程,也可以供计划任务调用

    sqlserver 循环临时表插入数据到另一张表

    sqlserver 循环临时表插入数据到另一张表 -- 声明变量 DECLARE @SupCode as varchar(100), @ProdCode as varchar(50), @PackLayer as varchar(50), @CodeStatus as varchar(50), @ProductId as varchar(50), @...

    SQL语句实现跨Sql server数据库操作实例

    这里假设我们需要从IP地址为192.168.1.1的SQL Server实例(数据库名为TT)中查询表test1的所有记录。 **SQL语句示例**: ```sql SELECT * FROM OPENQUERY( [远程服务器别名], 'SELECT * FROM TT.dbo.test1' ) ``...

    SQLSERVER触发器插入数据

    描述中的代码片段展示了如何创建一个触发器`TT`,该触发器作用于`TSYS_BAMKZ`表上,当有新记录插入到该表时触发器将被激活,并执行相应的逻辑处理。 **CREATE TRIGGER TT ON TSYS_BAMKZ FOR INSERT AS** - **...

    全国城市 sqlserver版 在一个表中

    为了维护这种关系的完整性,可以定义`parent_id`为外键,指向`region`表自身的`id`字段,这样可以确保每个城市记录都关联到一个合法的上级区域。 ### 数据插入 给定的内容展示了大量使用`INSERT INTO`语句向`...

    使用flink-connector-sqlserver-cdc 2.3.0把数据从SQL Server实时同步到MySQL中

    - 如果有多个SQL Server表需要同步,可以创建多个源表和相应的数据流,然后合并到一个统一的目标表。 - 随着业务发展,你可能需要升级Flink CDC连接器版本,确保兼容性和利用最新特性。 总之,通过Flink-...

    sqlServer数据库大表分区方案

    2. **查询及更新语句(读写)缓慢**:当查询表数据或更新表数据的速度明显减慢时,可以通过分区来提高数据读写速度,进而提升数据库的整体性能。 3. **表中要有分段明显的列**:为了能够有效地进行表分区,表中必须...

    sqlserver 导出表及字段说明脚本.rar

    这个压缩包"sqlserver 导出表及字段说明脚本.rar"包含了一个名为"sqlserver 导出表及字段说明脚本.sql"的文件,这通常是一个用于生成SQL语句的脚本,用于描述数据库中的表结构以及各字段的详细信息。以下是对这个...

    Kepserver通过ODBC 读写SQL数据库

    KEPServerEX作为中间件,负责连接和管理不同来源的数据,而SQL Server则是一个流行的数据库管理系统,用于存储和处理数据。 接下来,你需要在SQL Server中设置好身份验证并启动服务器。通常,SQL Server有两种身份...

    java jsp sqlserver数据表转移到oracle实例 源代码

    标题中的“java jsp sqlserver数据表转移到oracle实例 源代码”表明这是一个关于使用Java和JSP技术,将SQL Server数据库中的数据表迁移至Oracle数据库的实际操作案例。这个过程通常涉及数据迁移、数据转换以及可能的...

    sqlserver 表分区 详解

    在SQL Server中,表分区是一种优化数据库性能的技术,尤其对于大型数据仓库系统,它能够显著提升数据查询和管理效率。本文将深入解析SQL Server表分区的概念、原理、优点、应用场景,以及实施步骤。 **1. 表分区的...

    c#从SQL server传输数据到FOXPRO的DBF表

    用C#写的从SQL server传输数据到FOXPRO的DBF表,就是将SQLserver里有两个表里的最新卡号插入到foxpro的DBF表文件里,里面用到了读写ini配置文件,还有判断数据库里的最新记录和用c#操作Foxpro数据库,希望能对您有所...

    sqlserver无主键表的同步方案1

    而对于包含image、text等字段的表,可以使用`SELECT INTO`创建一个新的副本表,然后根据表是否存在来决定是删除原表还是将副本表重命名为原表名,从而完成同步。 总之,针对SQL Server无主键表的同步方案,需要结合...

    轻松消除SQL SERVER重复记录

    然后,我们将`Products`表中的数据插入到`Products_temp`表中,SQL Server会自动忽略重复的记录,并给出提示。 ```sql INSERT INTO Products_temp SELECT * FROM Products ``` **步骤四:更新原表并删除临时表** ...

    SQL Server[中文版]从入门到精通.zip

    SQL Server就是一个典型的关系数据库管理系统(RDBMS),支持ACID(原子性、一致性、隔离性和持久性)特性,确保事务处理的可靠性。 2. **SQL Server基本操作**:这包括创建、修改和删除数据库,以及管理数据库的...

    MFC连接SqlServer数据库,并将查询的数据显示到listCtrl控件上

    创建一个CADORecordset对象,指定SQL查询语句,然后打开记录集。 ```cpp CADORecordset recordset(&conn); recordset.m_strCommandText = _T("SELECT * FROM TableName"); recordset.Open(); ``` 现在,我们需要将...

    vb.net如何简单的插入数据到sql server

    首先,你需要创建一个连接字符串来连接到SQL Server数据库。连接字符串应包含服务器名称、数据库名称、用户名和密码。例如: ```vbnet Dim connectionString As String = "Data Source=myServerAddress;Initial ...

    labview写入数据到sql server2005

    在“labview写入数据到sql server2005”的场景中,LabVIEW被用来作为数据处理和控制工具,与SQL Server 2005数据库进行交互,实现数据的写入操作。SQL Server 2005是微软公司的关系型数据库管理系统,它提供了数据...

    SQL SERVER 将select数据生成insert语句

    在SQL Server中,有时我们需要将一个数据库中的表结构和数据迁移到另一个数据库,或者备份部分数据以便于恢复或分析。在这种情况下,`SELECT INTO` 和 `INSERT INTO...SELECT` 语句是常用的工具,可以将数据从一个源...

    看懂SqlServer查询计划 .docx

    首先,打开SQL Server Management Studio (SSMS),执行一个查询,然后通过点击工具栏上的“显示估计的执行计划”按钮查看查询计划。在示例中,查询了一个视图OrdersView,该视图基于Orders和Customers表的LEFT OUTER...

Global site tag (gtag.js) - Google Analytics