加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

实现将SQLServer表里的数据导出为insert脚本

发布时间:2020-12-12 13:30:34 所属栏目:MsSql教程 来源:网络整理
导读:一数据库--任务--生成脚本 二:通常情况下,SQL Server里面的生成SQL脚本,只会包含数据库及表的字段结构,而不会包含表的数据,也就是SQL脚本里面只有Create database,Create table 这样的语句,没有insert into。 因为SQL Server并不包含这个功能,只能靠


一数据库-->任务-->生成脚本



二:通常情况下,SQL Server里面的生成SQL脚本,只会包含数据库及表的字段结构,而不会包含表的数据,也就是SQL脚本里面只有Create database,Create table 这样的语句,没有insert into。

因为SQL Server并不包含这个功能,只能靠第三方的代码了。

以下存储过程可以实现:

CREATE ? PROCEDURE ?dbo.UspOutputData?
@tablename ?sysname?
AS ?
declare @column varchar ( 1000 )?
@columndata @sql 4000 @xtype tinyint @name @objectId int @objectname @ident ?

set ?nocount? on @objectId = object_id ( )?

if is null -- ?判断对象是否存在?
begin print ? ' The?object?not?exists ' return end @objectname rtrim ( object_name ))?

? or charindex , ) = 0 此判断不严密? object?not?in?current?database OBJECTPROPERTY IsTable )? < > 1 ?判断对象是否是table? The?object?is?not?table select @ident = status & 0x80 from ?syscolumns? where ?id @objectid and ?status 0x80 not SET?IDENTITY_INSERT? ' + @TableName + ?ON ?syscolumns_cursor? cursor for ?c.name,c.xtype? ?syscolumns?c? ?c.id order by ?c.colid?

open ?syscolumns_cursor?
@column '' @columndata fetch next into while @@fetch_status >- 2 in 189 34 35 99 98 )? timestamp不需处理,image,text,ntext,sql_variant?暂时不处理?
case when len then else end then '' ?

167 175 ''''''''' + @name ''''''''' varchar,char? 231 239 ''' N '''''' nvarchar,nchar? @xtype 61 +convert(char(23),121)+ datetime? 58 +convert(char(16),120)+ smalldatetime? 36 +convert(char(36),0)">)+ uniqueidentifier? close deallocate ?syscolumns_cursor?

@sql set?nocount?on?select? insert? @tablename )?values( as? -- ) ?from? exec ?OFF GO

使用方法:?

exec UspOutputData 你的表名?

选择【执行模式】为“以文本显示结果”,然后将运行后的结果存成.sql,加上用SQL Server生成的数据库脚本就可以了。

另外可以利用第三方工具,导出数据可以用powerbuilder。在database painter里面,用SQL选出,或者直接打开表,点击生成的list datawindow,然后在菜单file->save rows as->选择SQL,那么生成的SQL语句就包括建表和insert数据的SQL了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读