--Sql Server 2000

declare @id int,
@name varchar(100),
@s varchar(8000)
declare cur_1 cursor for select id,name from sysobjects where xtype='U' --and id=537768973
open cur_1
fetch cur_1 into @id,@name
while(@@fetch_status=0)
begin
if exists(select * from tempdb..sysobjects where id=object_id('tempdb..##temp'))
drop table ##temp
create table ##temp(名称 varchar(100),数据类型 varchar(100),长度 varchar(100),默认值 varchar(100),注释 varchar(100))
Insert into ##temp(名称,数据类型,长度,默认值,注释)
select '表名:',Cast(@name as varchar(100)),'','',''
union all
select '名称','数据类型','长度','默认值','注释'
union all
select Cast(t3.name as varchar(100)) 名称,Cast(t5.name as varchar(20)) 数据类型,Cast(t3.length as varchar(20)) 长度,isnull(Cast(t6.text as varchar(100)),'') 默认值,isnull(Cast(t4.value as varchar(1000)),'') 注释
from syscolumns t3
left join sysproperties t4 on t3.id=t4.id and t3.colid=t4.smallid
left join systypes t5 on t3.xtype=t5.xusertype
left join syscomments t6 on t3.cdefault=t6.id
where t3.id=@id
union all
select '','','','',''
union all
select '','','','',''
union all
select '-','-','-','-','-' --declare @s varchar(8000)
set @s='Insert Into OpenRowSet(''Microsoft.Jet.OLEDB.4.0'',''Excel 8.0;DataBase=C:\temp.xls'',''select * from [Sheet1$]'') select * from ##temp'
Exec(@s) fetch cur_1 into @id,@name
end
deallocate cur_1
--Sql Server 2008

declare @id int,
@name varchar(100),
@s varchar(8000)
declare cur_1 cursor for select id,name from sysobjects where xtype='U' --and id=37575172
open cur_1
fetch cur_1 into @id,@name
while(@@fetch_status=0)
begin
if exists(select * from tempdb..sysobjects where id=object_id('tempdb..##temp'))
drop table ##temp
create table ##temp(名称 varchar(100),数据类型 varchar(100),长度 varchar(100),默认值 varchar(100),注释 varchar(100))
Insert into ##temp(名称,数据类型,长度,默认值,注释)
select '表名:',Cast(@name as varchar(100)),'','',''
union all
select '名称','数据类型','长度','默认值','注释'
union all
select Cast(t3.name as varchar(100)) 名称,Cast(t5.name as varchar(20)) 数据类型,Cast(t3.length as varchar(20)) 长度,isnull(Cast(t6.text as varchar(100)),'') 默认值,isnull(Cast(t4.value as varchar(1000)),'') 注释
from syscolumns t3
left join sys.extended_properties t4 on t3.id=t4.major_id and t3.colorder=t4.minor_id
left join systypes t5 on t3.xtype=t5.xusertype
left join syscomments t6 on t3.cdefault=t6.id
where t3.id=@id
union all
select '','','','',''
union all
select '','','','',''
union all
select '-','-','-','-','-' --declare @s varchar(8000)
set @s='Insert Into OpenRowSet(''Microsoft.Jet.OLEDB.4.0'',''Excel 8.0;DataBase=C:\temp.xls'',''select * from [Sheet1$]'') select * from ##temp'
Exec(@s) fetch cur_1 into @id,@name
end
deallocate cur_1

Sql Server 2000/2008 用Sql导出数据表结构(包括注释)到Excel的更多相关文章

  1. 【SQL Server复制】数据库复制:修改表结构、新增表、新增存储过程 会被复制到订阅服务器?

    转自:https://www.cnblogs.com/happyday56/p/3849018.html 关键字:sql server复制 [SQL Server高可用性]数据库复制:修改表结构.新增 ...

  2. SQL Server 存储(1/8):理解数据页结构

    我们都很清楚SQL Server用8KB 的页来存储数据,并且在SQL Server里磁盘 I/O 操作在页级执行.也就是说,SQL Server 读取或写入所有数据页.页有不同的类型,像数据页,GA ...

  3. SQL SERVER 2000 迁移后SQL SERVER代理服务启动错误分析

    公司有一个老系统,这个系统所用的数据库是SQL SERVER 2000,它所在的Dell服务器已经运行超过10年了,早已经过了保修服务期,最近几乎每周会出现一次故障,加之5月份另外一台服务器坏了两个硬 ...

  4. SQL Server 2000/2005 分页SQL — 单条SQL语句

    有关分页 SQL 的资料很多,有的使用存储过程,有的使用游标.本人不喜欢使用游标,我觉得它耗资.效率低:使用存储过程是个不错的选择,因为存储过程是经过预编译的,执行效率高,也更灵活.先看看单条 SQL ...

  5. SQL Server性能优化(8)堆表结构介绍

    一.表结构综述 下图是SQL Server中表的组织形式(其中分区1.分区2是为了便于管理,把表进行分区,放到不同的硬盘数据文件里.默认情况下,表只有一个分区.).表在硬盘上的存放形式,有堆和B树两种 ...

  6. mysql导出数据表结构,必须退出mysql命令.重新使用msyqldump命令

    只导出数据库中所有表结构(-d 减去数据) 导出所有表结构和数据 mysqldump -uroot --default-character-set=utf8 -p123-d必须空格good>H: ...

  7. SQL Server 存储(2/8):理解数据记录结构

    在SQL Server :理解数据页结构我们提到每条记录都有7 bytes的系统行开销,那这个7 bytes行开销到底是一个什么样的结构,我们一起来看下. 数据记录存储我们具体的数据,换句话说,它存在 ...

  8. Windows 7 X64 SQL Server 2000 企业管理器无法建立新表

    问题现象: 当建立新表时会出现一个空白的窗口,敲击键盘输入后就会出现应用出错,然后退出. 解决方案: 选中某个已经存在的表,再点右键,新建表就可以正常操作了.

  9. 如何隐藏掉SQL Server中自带系统数据库,数据表,存储过程等显示文件,只显示用户的数据库,数据表等文件

    企业管理器了,---->   编辑该数据库的注册属性--->“常规”属性页下面-->“显示系统数据库和系统对象”的选项去掉

随机推荐

  1. 系统空间占用排查 tomcat超大日志catalina.out 删除 与df 状态更新

    二.catalina.out占用多达60+G 并且其他诸如catalina.2016-03-29.log等具体日期的日志文件,个别的也有10G左右,直接删除这些大个头.df看稍有改善.针对catali ...

  2. (原)InsightFace及其mxnet代码

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/8525287.html 论文 InsightFace : Additive Angular Margin ...

  3. spring+mybatis+atomikos 实现JTA事务

    1. 选择哪种transaction manager?      在单数据源情况下,JDBC,Hibernate,ibatis等自带的 transaction manager已能用于处理事务.     ...

  4. fedora开机出现There is a problem with the configuration server. (/usr/libexec/gconf-sanity-check-2 exited with status 256)

    Install problem!The configuration defaults for GNOME Power Manager have not been installed correctly ...

  5. ROS学习(十一)—— msg srv

    一.msg 和 srv介绍 1.定义 消息(msg): msg文件就是一个描述ROS中所使用消息类型的简单文本.它们会被用来生成不同语言的源代码 服务(srv): 一个srv文件描述一项服务.它包含两 ...

  6. SpringBoot配置属性之MQ

    SpringBoot配置属性系列 SpringBoot配置属性之MVC SpringBoot配置属性之Server SpringBoot配置属性之DataSource SpringBoot配置属性之N ...

  7. XSS安全处理

    Security.class.php文件 <?php class Security { public $filename_bad_chars = array( '../', '<!--', ...

  8. 【ASP.NET】ASP.NET中权限验证使用OnAuthorization实现

    在项目开发中,通常我们都会涉及到用户登录才能访问的网页,比如购物网站,我们浏览商品,添加购物车(以前开发的时候在这里就需要登录用户,但是现在有了缓存的实现,这里可以将商品加入缓存,等到结账的时候再登录 ...

  9. Mysql按数字大小排序String字段

    问题是这样的,当我们按由大到小的顺序排序一组数字的时候,它应该如此: 9800 8000 900 但如果是这些数字是以String类型存储的话,直接排序的结果会是这样: 9800 900 8000 当 ...

  10. 验证码识别 图像降噪 Python (一)

    原始图片: 降噪后的图片 实现代码: # coding:utf-8 import sys, os from PIL import Image, ImageDraw # 二值数组 t2val = {} ...