• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >MsSql > sql2005数据导出方法(使用存储过程导出数据为脚本)

sql2005数据导出方法(使用存储过程导出数据为脚本)

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了sql2005导出表数据,sql2005数据导出,sql2005导出excel,sql2005导出数据库,sql2005导入导出工具等相关知识,希望本文的分享对您有所帮助

执行语句:exec KeleyiOutputSqlData thetablename

以下是创建存储过程脚本:

@tablename sysname

AS

declare @column varchar(1000)

declare @columndata varchar(1000)

declare @sql varchar(4000)

declare @xtype tinyint

declare @name sysname

declare @objectId int

declare @objectname sysname

declare @ident int

set nocount on

set @objectId=object_id(@tablename)

if @objectId is null -- 判断对象是否存在

begin

print 'The object not exists'

return

end

set @objectname=rtrim(object_name(@objectId))

if @objectname is null or charindex(@objectname,@tablename)=0 --此判断不严密

begin

print 'object not in current database'

return

end

if OBJECTPROPERTY(@objectId,'IsTable') < > 1 -- 判断对象是否是table

begin

print 'The object is not table'

return

end

select @ident=status&0x80 from syscolumns where id=@objectid and status&0x80=0x80

if @ident is not null

print 'SET IDENTITY_INSERT '+@TableName+' ON'

declare syscolumns_cursor cursor

for select c.name,c.xtype from syscolumns c where c.id=@objectid order by c.colid

open syscolumns_cursor

set @column=''

set @columndata=''

fetch next from syscolumns_cursor into @name,@xtype

while @@fetch_status < >-1

begin

if @@fetch_status < >-2

begin

if @xtype not in(189,34,35,99,98) --timestamp不需处理,image,text,ntext,sql_variant 暂时不处理

begin

set @column=@column+case when len(@column)=0 then'' else ','end+@name

set @columndata=@columndata+case when len(@columndata)=0 then '' else ','','','

end

+case when @xtype in(167,175) then '''''''''+'+@name+'+''''''''' --varchar,char

when @xtype in(231,239) then '''N''''''+'+@name+'+''''''''' --nvarchar,nchar

when @xtype=61 then '''''''''+convert(char(23),'+@name+',121)+''''''''' --datetime

when @xtype=58 then '''''''''+convert(char(16),'+@name+',120)+''''''''' --smalldatetime

when @xtype=36 then '''''''''+convert(char(36),'+@name+')+''''''''' --uniqueidentifier

else @name end

end

end

fetch next from syscolumns_cursor into @name,@xtype

end

close syscolumns_cursor

deallocate syscolumns_cursor

set @sql='set nocount on select ''insert '+@tablename+'('+@column+') values(''as ''--'','+@columndata+','')'' from '+@tablename

print '--'+@sql

exec(@sql)

if @ident is not null

print 'SET IDENTITY_INSERT '+@TableName+' OFF'
</div>

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • sql2005数据导出方法(使用存储过程导出数据为脚本)
  • sql2005 数据同步方法
  • SQL2005 大数据量检索的分页

相关文章

  • 2017-05-11SQL Server 2005 同步复制技术
  • 2017-05-11SQLServer2005 没有服务器名称的两种解决方法
  • 2017-05-11SQL Server 2008 存储过程示例
  • 2017-05-11Windows2003 SQL2005添加系统用户修改系统登录密码
  • 2017-05-11SQL Server附加数据库出错,错误代码5123
  • 2017-05-11SQLserver 2008将数据导出到Sql脚本文件的方法
  • 2017-05-11MyEclipse 配置SQL Server 2008数据库驱动操作步骤
  • 2017-05-11sql Server 2008 R2还原或删除数据库时总是出错的解决方法
  • 2017-05-11Win7系统安装MySQL5.5.21图解教程
  • 2017-05-11SQL2005 自动备份的脚本

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • SQLServer 2008中SQL增强之二 Top新用途
    • SQL2008 附加数据库提示 5120错误 解决办法
    • SQLServer 2008中的代码安全(七) 证书加密
    • 当 MUST_CHANGE 为 ON (开)时,不能将 CHECK_POLICY 和 CHECK_EXPIRATION 选项设为 OFF (关)
    • 安装SQL Server 2008时 总是不断要求重启电脑的解决办法
    • 无法在com+ 目录中安装和配置程序集 错误:-2146233087的解决方法[已测]
    • SQL2005利用ROW_NUMBER() OVER实现分页功能
    • 数据库日常维护常用的脚本概述及部分测试
    • SQL2005 服务器因重装改名后出错的说明
    • win2003 Server配置SQL Server 2005远程连接的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有