sqlserver导出插入脚本代码
2023-06-13 09:14:32 时间
当然有其它工具可以做这件事,但如果客户不允许你在服务器乱装东西时这个脚本就会有用了。
复制代码代码如下:
DECLARE@tbImportTablestable(tablenamevarchar(128),deletedtinyint)
--appendtableswhichyouwanttoimport
InsertInto@tbImportTables(tablename,deleted)values("tentitytype",1)
InsertInto@tbImportTables(tablename,deleted)values("tattribute",1)
--appendalltables
--InsertInto@tbImportTables(tablename,deleted)selecttable_name,1fromINFORMATION_SCHEMA.tableswheretable_type="BASETABLE"
DECLARE@tbImportScriptstable(scriptvarchar(max))
Declare@tablenamevarchar(128),
@deletedtinyint,
@columnnamevarchar(128),
@fieldscriptvarchar(max),
@valuescriptvarchar(max),
@insertscriptvarchar(max)
DeclarecurImportTablesCursorFor
Selecttablename,deleted
From@tbImportTables
OpencurImportTables
FetchNextFromcurImportTablesInto@tablename,@deleted
WHILE@@Fetch_STATUS=0
Begin
If(@deleted=1)
begin
Insertinto@tbImportScripts(script)values("Truncatetable"+@tablename)
end
Insertinto@tbImportScripts(script)values("SETIDENTITY_INSERT"+@tablename+"ON")
set@fieldscript=""
select@fieldscript=@fieldscript+column_name+","fromINFORMATION_SCHEMA.columnswheretable_name=@tablenameanddata_typenotin("timestamp","image")
set@fieldscript=substring(@fieldscript,0,len(@fieldscript))
set@valuescript=""
select@valuescript=@valuescript+"casewhen"+column_name+"isnullthen""null""else""""""""+convert(varchar(max),"+column_name+")+""""""""end+"",""+" fromINFORMATION_SCHEMA.columnswheretable_name=@tablenameanddata_typenotin("timestamp","image")
set@valuescript=substring(@valuescript,0,len(@valuescript)-4)
set@insertscript="select""insertinto"+@tablename+"("+@fieldscript+")values("+"""+"+@valuescript+"+"")""from"+@tablename
Insertinto@tbImportScripts(script)exec(@insertscript)
Insertinto@tbImportScripts(script)values("SETIDENTITY_INSERT"+@tablename+"OFF")
Insertinto@tbImportScripts(script)values("GO")
FetchNextFromcurImportTablesInto@tablename,@deleted
End
ClosecurImportTables
DeallocatecurImportTables
Select*from@tbImportScripts
相关文章
- 用sql创建索引_sqlserver索引的建立与使用
- 本地sql数据库怎么与远程sql数据库同步使用_sqlserver复制数据库
- SQL Server中创建别名的方法(sqlserver别名)
- 重启后的SQLServer: 一次值得纪念的变革(sqlserver重启)
- SQL Server的值赋予:解决灵活性和安全性问题(sqlserver赋值)
- 重复记录解决 SQL Server 限制重复记录的方法(sqlserver限制)
- Sqlserver 数据库的自增特性分析(自增 sqlserver)
- SQL Server下的怎样运行才能取得最佳效果(怎么sqlserver)
- 塔自古聚宝,SQLServer来护宝(宝塔 sqlserver)
- SQL Server进程表明确任务状态(sqlserver进程表)
- SQL Server处理负数的奥秘(sqlserver负数)
- SQL Server表的数据导出之旅(sqlserver表导出)
- 如何在SQLServer中制作高效率的编辑技巧(sqlserver 编辑)
- 使用SQLServer提高企业数据处理能力(sqlserver 系统)
- sql深入探索SQLServer穿透SQL技术(sqlserver 穿透)
- 本使用SQLServer离线版本:简单易行(sqlserver离线版)
- SQLserver数据库界面的优雅设计(sqlserver的美化)
- SQLServer数据库规则与约束(sqlserver的约束)
- 『SqlServer数据库中的分组功能』(sqlserver的分组)
- SQLserver:最大的数据库服务器(SQLserver有多大)
- 存储深入浅出:SQLServer文件存储技术(sqlserver 文件)
- 利用SQLServer导入导出工具,提高数据传输效率(sqlserver导入导出工具)
- 市场份额SQLServer成为C市场份额领头羊!(sqlserver占c)
- 利用SQLServer写出代码的技巧(sqlserver写代码)
- 如何使用SQLServer实现分页查询(sqlserver做分页)
- SQL Server 使用困难:到底该怎么办?(sqlserver不适用)
- 借助SQLServer AU实现数据库优化(sqlserver au)
- 追踪SQLServer:知晓完美数据处理过程(追踪sqlserver)
- 记录让我们更好地使用SQLServer(记录sqlserver)
- sqlserver中distinct的用法(不重复的记录)
- sqlserver、mysql获取连接字符串步骤