手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >sqlserver 导出插入脚本代码
sqlserver 导出插入脚本代码
摘要:当然有其它工具可以做这件事,但如果客户不允许你在服务器乱装东西时这个脚本就会有用了。复制代码代码如下:DECLARE@tbImportTab...

当然有其它工具可以做这件事,但如果客户不允许你在服务器乱装东西时这个脚本就会有用了。

复制代码 代码如下:

DECLARE @tbImportTables table(tablename varchar(128), deleted tinyint)

-- append tables which you want to import

Insert Into @tbImportTables(tablename, deleted) values('tentitytype', 1)

Insert Into @tbImportTables(tablename, deleted) values('tattribute', 1)

-- append all tables

--Insert Into @tbImportTables(tablename, deleted) select table_name, 1 from INFORMATION_SCHEMA.tables where table_type = 'BASE TABLE'

DECLARE @tbImportScripts table(script varchar(max))

Declare @tablename varchar(128),

@deleted tinyint,

@columnname varchar(128),

@fieldscript varchar(max),

@valuescript varchar(max),

@insertscript varchar(max)

Declare curImportTables Cursor For

Select tablename, deleted

From @tbImportTables

Open curImportTables

Fetch Next From curImportTables Into @tablename, @deleted

WHILE @@Fetch_STATUS = 0

Begin

If (@deleted = 1)

begin

Insert into @tbImportScripts(script) values ('Truncate table ' + @tablename)

end

Insert into @tbImportScripts(script) values ('SET IDENTITY_INSERT ' + @tablename + ' ON')

set @fieldscript = ''

select @fieldscript = @fieldscript + column_name + ',' from INFORMATION_SCHEMA.columns where table_name = @tablename and data_type not in('timestamp', 'image')

set @fieldscript = substring(@fieldscript, 0, len(@fieldscript))

set @valuescript = ''

select @valuescript = @valuescript + 'case when ' + column_name + ' is null then ''null'' else '''''''' + convert(varchar(max), ' + column_name + ') + '''''''' end +'',''+' from INFORMATION_SCHEMA.columns where table_name = @tablename and data_type not in('timestamp', 'image')

set @valuescript = substring(@valuescript, 0, len(@valuescript) - 4)

set @insertscript = 'select ''insert into ' + @tablename + '(' + @fieldscript + ') values(' + '''+' + @valuescript + ' + '')'' from ' + @tablename

Insert into @tbImportScripts(script) exec ( @insertscript)

Insert into @tbImportScripts(script) values ('SET IDENTITY_INSERT ' + @tablename + ' OFF')

Insert into @tbImportScripts(script) values ('GO ')

Fetch Next From curImportTables Into @tablename, @deleted

End

Close curImportTables

Deallocate curImportTables

Select * from @tbImportScripts

【sqlserver 导出插入脚本代码】相关文章:

SQL Server 2008报表服务介绍

sql server 常用的几个数据类型

SQL server 表操作介绍

sql server中千万数量级分页存储过程代码

SQLServer2005 XML数据操作代码

SQL Server编写函数获取汉字的拼音码

sqlserver 游标的简单示例

sqlserver 数据库日志备份和恢复步骤

sql server删除外键约束

sqlserver使用窗口函数实现分页

精品推荐
分类导航