-----获取数据字典SQL(表字段说明)
SELECT 
    [Table Name] = OBJECT_NAME(c.object_id), 
    [Column Name] = c.name, 
    [Description] = ex.value 
FROM 
    sys.columns c 
LEFT OUTER JOIN 
    sys.extended_properties ex 
ON 
    ex.major_id = c.object_id 
    AND ex.minor_id = c.column_id 
    AND ex.name = 'MS_Description' 
WHERE 
    OBJECTPROPERTY(c.object_id, 'IsMsShipped')=0 
    -- AND OBJECT_NAME(c.object_id) = 'your_table' 
ORDER 
    BY OBJECT_NAME(c.object_id), c.column_id
    --第二种

SELECT 
      CASE WHEN a.colorder = 1 THEN d.name ELSE '' END AS 表名, 
      CASE WHEN a.colorder = 1 THEN isnull(f.value, '') ELSE '' END AS 表说明, 
      a.colorder AS 字段序号, a.name AS 字段名, CASE WHEN COLUMNPROPERTY(a.id, 
      a.name, 'IsIdentity') = 1 THEN '√' ELSE '' END AS 标识, 
     CASE WHEN EXISTS
           (SELECT 1
        FROM dbo.sysindexes si INNER JOIN
               dbo.sysindexkeys sik ON si.id = sik.id AND si.indid = sik.indid INNER JOIN
              dbo.syscolumns sc ON sc.id = sik.id AND sc.colid = sik.colid INNER JOIN
               dbo.sysobjects so ON so.name = si.name AND so.xtype = 'PK'
         WHERE sc.id = a.id AND sc.colid = a.colid) THEN '√' ELSE '' END AS 主键, 
      b.name AS 类型, a.length AS 长度, COLUMNPROPERTY(a.id, a.name, 'PRECISION') 
      AS 精度, ISNULL(COLUMNPROPERTY(a.id, a.name, 'Scale'), 0) AS 小数位数, 
      CASE WHEN a.isnullable = 1 THEN '√' ELSE '' END AS 允许空, ISNULL(e.text, '') 
AS 默认值, ISNULL(g.[value], '') AS 字段说明, d.crdate AS 创建时间, 
     CASE WHEN a.colorder = 1 THEN d.refdate ELSE NULL END AS 更改时间
FROM dbo.syscolumns a LEFT OUTER JOIN
      dbo.systypes b ON a.xtype = b.xusertype INNER JOIN
      dbo.sysobjects d ON a.id = d.id AND d.xtype = 'U' AND 
      d.status >= 0 LEFT OUTER JOIN
      dbo.syscomments e ON a.cdefault = e.id LEFT OUTER JOIN
      sys.extended_properties g ON a.id = g.major_id AND a.colid = g.minor_id AND 
      g.name = 'MS_Description' LEFT OUTER JOIN
      sys.extended_properties f ON d.id = f.major_id AND f.minor_id = 0 AND 
      f.name = 'MS_Description'
ORDER BY d.name, 字段序号

----表名解释
    SELECT a.Name,b.Value
     from sys.Objects as a left outer join sys.extended_properties as b on a.Object_id=b.major_id
     where a.type_desc='USER_TABLE' and a.schema_id=1 and b.minor_id=0
     
 --查询表的默认值

if object_id('tb_test') is not null
drop table tb_test
Go
create table tb_test(id int,name varchar(50) default 'abc',num int default 5)
insert  tb_test(id) select 1 ,'222',3
      UNION ALL select 1,'FF',100
      UNION ALL select 1,'WE'
go
declare @tbname varchar(50)
set @tbname='tb_test'--表名
select @tbname as tbname,c.name as colname,
  replace(replace(replace(replace(b.[text],'(''',''),''')',''),'((',''),'))','') as defaultvalue
 from sysconstraints a 
  join syscomments b on a.constid=b.id  
  join syscolumns c on a.id=c.id and a.colid=c.colid
  where a.id=object_id(@tbname) 
    and object_name(a.constid) like '%df%'

---获取索引数据详细信息

SELECT 
      CASE WHEN b.keyno = 1 THEN c.name ELSE '' END AS 表名, 
      CASE WHEN b.keyno = 1 THEN a.name ELSE '' END AS 索引名称, d.name AS 列名, 
      b.keyno AS 索引顺序, CASE indexkey_property(c.id, b.indid, b.keyno, 'isdescending') 
      WHEN 1 THEN '降序' WHEN 0 THEN '升序' END AS 排序, CASE WHEN p.id IS NULL 
      THEN '' ELSE '√' END AS 主键, CASE INDEXPROPERTY(c.id, a.name, 'IsClustered') 
      WHEN 1 THEN '√' WHEN 0 THEN '' END AS 聚集, CASE INDEXPROPERTY(c.id, 
      a.name, 'IsUnique') WHEN 1 THEN '√' WHEN 0 THEN '' END AS 唯一, 
      CASE WHEN e.id IS NULL THEN '' ELSE '√' END AS 唯一约束, 
      a.OrigFillFactor AS 填充因子, c.crdate AS 创建时间, c.refdate AS 更改时间
FROM dbo.sysindexes a INNER JOIN
      dbo.sysindexkeys b ON a.id = b.id AND a.indid = b.indid INNER JOIN
      dbo.syscolumns d ON b.id = d.id AND b.colid = d.colid INNER JOIN
      dbo.sysobjects c ON a.id = c.id AND c.xtype = 'U' LEFT OUTER JOIN
      dbo.sysobjects e ON e.name = a.name AND e.xtype = 'UQ' LEFT OUTER JOIN
      dbo.sysobjects p ON p.name = a.name AND p.xtype = 'PK'
WHERE (OBJECTPROPERTY(a.id, N'IsUserTable') = 1) AND (OBJECTPROPERTY(a.id, 
      N'IsMSShipped') = 0) AND (INDEXPROPERTY(a.id, a.name, 'IsAutoStatistics') = 0)
ORDER BY c.name, a.name, b.keyno

--
      
 --查询操作日志
 DBCC SQLPERF(LOGSPACE)  --数据库日志使用情况
 DBCC log (psydbnew, type=3 )
   
 DBCC log ( {dbid|dbname}, [, type={0|1|2|3|4}] )
参数: Dbid or dbname - 任一数据库的ID或名字   
type - 输出结果的类型:   
0 - 最少信息(operation, context, transaction id)   
1 - 更多信息(plus flags, tags, row length)   
2 - 非常详细的信息(plus object name, index name,page id, slot id)   
3 - 每种操作的全部信息   
4 - 每种操作的全部信息加上该事务的16进制信息
SELECT *  from::fn_dblog (null, null)   
              where operation in('LOP_INSERT_ROWS','LOP_DELETE_ROWS','LOP_MODIFY_COLUMNS')  
              
              
 ---自增ID 被删除后,新增数据ID保持连续性
create table a_test (id int identity(1,1) primary key,dd char(4))
insert a_test select '1eee'union all select 'eeee'union all select '1eee'union all select 'eeee'
select * from a_test
--方法1
truncate table a_test
--方法2
DBCC CHECKIDENT ('a_test', RESEED, 3)
--解释说明
dbcc checkident ('table_name', reseed, new_reseed_value)
/* 当前值设置为 new_reseed_value。如果自创建表后没有将行插入该表,
则在执行 DBCC CHECKIDENT 后插入的第一行将使用 new_reseed_value 作为标识。否则,下一个插入的行将使用 new_reseed_value + 1*/
---自增ID 被删除后,新增数据ID保持连续性    
--------------常用存储过程

exec master.dbo.sp_help tb----获取表结构信息
exec master.dbo.sp_helptext procname|viewname|functionname    ----获取存储过程、视图、函数等内容
exec master.dbo.sp_stored_procedures----获取存储过程列表
exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器
exec master.dbo.xp_subdirs 'c:'-- 获得子目录列表
exec master.dbo.xp_dirtree 'c:'--获得所有子目录的目录树结构及对应的深度
exec master.dbo.xp_cmdshell  ' type e:\结婚失败.txt'-- 查看某个文件的内容。
exec master.dbo.xp_cmdshell 'dir e:\*.txt ';--查找指定驱动器盘符下 后缀是txt的文件
exec master.dbo.xp_cmdshell  'dir e:';--获取指定驱动器下根目录的数据信息
exec master.dbo.xp_cmdshell 'dir e:\*.txt /s ';--查找指定驱动器盘符是所有目录下 后缀是txt的文件
exec master.dbo.xp_cmdshell 'dir e:\*.txt /s/a ';--查找指定驱动器盘符是所有目录下 后缀是txt的文件及详细信息
exec master.dbo.xp_cmdshell 'dir e:  /s/a';--指定驱动器盘符下 每个目录存在的文件及大小、创建时间
exec master.dbo.xp_fileexist   N'd:/Program   Files/Microsoft   SQLServer2008/MSSQL/BACKUP/psydbnew.dat' ---查询某个盘符下的文件是否存在
exec master.dbo.sp_addumpdevice   N'disk',   N'bakdevice',   N'D:/BACKUP/bakdevice'   ----添加备份设备、
exec master.dbo.sp_dropdevice   N'bakdevice' --删除备份设备
exec master.dbo.sp_rename   'test.dsd','dd'   ---  更改字段名  
select   convert(sysname,   serverproperty(N'servername'))  --得到SQL   SERVER   的服务器名  
exec master.dbo.xp_msver   N'ProductVersion',   N'Language',   N'Platform',   N'WindowsVersion',   N'ProcessorCount',   N'PhysicalMemory'  ---得到SQL   SERVER   平台信息     
exec master.dbo.xp_instance_regwrite   N'HKEY_LOCAL_MACHINE',   N'SOFTWARE/Microsoft/MSSQLServer/MSSQLServer',   'LoginMode',   N'REG_DWORD',   1  ---修改SQL   SERVER实例的登陆模式
  1---Windows认证模式   
  2---SQL和Windows认证模式 
---截断事务日志 
backup   log   database_name   with   NO_LOG|TRUNCATE_ONLY  
exec master.dbo.xp_instance_regwrite   N'HKEY_CURRENT_USER',   N'Software/Microsoft/MSSQLServer',   N'LastBackupFileDir',REG_SZ,   N'D:/Program   Files/Microsoft   SQLServer2008/backup/MSSQL$FANHUI/BACKUP/' --  改写备份路径

日志、字段备注查询、自增ID联系设置、常用存储过程的更多相关文章

  1. MySQL 使用自增ID主键和UUID 作为主键的优劣比较详细过程(从百万到千万表记录测试)

    测试缘由 一个开发同事做了一个框架,里面主键是uuid,我跟他建议说mysql不要用uuid用自增主键,自增主键效率高,他说不一定高,我说innodb的索引特性导致了自增id做主键是效率最好的,为了拿 ...

  2. MySQL 的自增 ID 用完了,怎么办?

      一.简述 在 MySQL 中用很多类型的自增 ID,每个自增 ID 都设置了初始值.一般情况下初始值都是从 0 开始,然后按照一定的步长增加.在 MySQL 中只要定义了这个数的字节长度,那么就会 ...

  3. mysql自增id超大问题查询

    引言 小A正在balabala写代码呢,DBA小B突然发来了一条消息,"快看看你的用户特定信息表T,里面的主键,也就是自增id,都到16亿了,这才多久,在这样下去过不了多久主键就要超出范围了 ...

  4. 基于MySQL自增ID字段增量扫描研究

    目录 目录 1 1. 问题 1 2. 背景 1 3. InnoDB表 2 3.1. 自增ID为主键 2 3.2. 自增ID为普通索引 4 3.3. 原因分析 7 4. MyISAM表 8 4.1. 自 ...

  5. mysql数据库单表只有一个主键自增id字段,ibatis实现id自增

    mysql数据库单表只有一个主键自增id字段,ibatis实现id自增 <insert id="autoid">        insert into user_id ...

  6. 在oracle数据库里创建自增ID字段的步骤

    CREATE TABLE ADVICE ( ID INT NOT NULL, ACTIVE NOT NULL, TYPE INT NOT NULL, MSG ) NOT NULL, ADVICE ) ...

  7. mysql 数据库自增id 的总结

    有一个表StuInfo,里面只有两列 StuID,StuName其中StuID是int型,主键,自增列.现在我要插入数据,让他自动的向上增长,insert into StuInfo(StuID,Stu ...

  8. 45 | 自增id用完怎么办?

    MySQL 里有很多自增的 id,每个自增 id 都是定义了初始值,然后不停地往上加步长.虽然自然数是没有上限的,但是在计算机里,只要定义了表示这个数的字节长度,那它就有上限.比如,无符号整型 (un ...

  9. IIS日志字段详解

    IIS日志字段详解 抓住8月的尾巴,弥补下这个月的空白,事情太多,忘了写博客这回事了. IIS日志字段设置                                          网站运营时 ...

随机推荐

  1. WinterCamp2017吃饭睡觉记

    noip考完后励志好好学习进HE队然后Au,就这样每天勤奋刻苦发愤图强不知不觉就到冬令营了. 除了我之外的大佬们都是以上经历. 我呢……一个很爱浪的蒟蒻. 冬令营到了,伟大的CCF本着报一个录一个的原 ...

  2. samba和nginx服务

    samba和nginx服务 1.s配置amba samba的功能: samba是一个网络服务器,用于Linux和Windows之间共享文件. 1.1配置环境 关闭防火墙和selinux systemc ...

  3. JAVA 线程池基本总结

    合理利用线程池能够带来三个好处. 第一:降低资源消耗.通过重复利用已创建的线程降低线程创建和销毁造成的消耗. 第二:提高响应速度.当任务到达时,任务可以不需要等到线程创建就能立即执行. 第三:提高线程 ...

  4. Java基础-面向接口(interface)编程

    Java基础-面向接口(interface)编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.接口的概念 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的“类 ...

  5. java基础-System类常用方法介绍

    java基础-System类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.System类概念 在API中system类介绍的比较简单,我们给出定义,system中 ...

  6. day12 继承

    设计原则:开闭原则:对于拓展open,对于修改close. 类与类的关系:1.is a(继承关系) 2.has a(组合关系) 继承的优点:1.代码的可重用性 2.父类的属性和方法用于子类 3.子类可 ...

  7. tomcat 性能检测

    一.jconsole 1.tomcat在windows上,start方式启动 在catalina.bat 文件中的:doRun和:doStart下添加以下代码 (没有换行) set JAVA_OPTS ...

  8. COGS 513 八

    513. 八 http://www.cogs.pro/cogs/problem/problem.php?pid=513 ★☆   输入文件:eight.in   输出文件:eight.out   简单 ...

  9. c++虚函数&重写

    虚函数是C++中实现多态的一种方法,父类A的一个函数声明为虚函数,在子类B中覆盖定义之后,当在调用的时候使用A*a=new B(),此时调用对应的那个虚函数的名字,则会执行B中的函数.当父类中没有定义 ...

  10. 《设计模式》-原则六:迪米特法则(LoD)

    啊哈哈哈哈,又到星期五了,真开心.回来吃完饭慌着去玩游戏,所以立马过来先完成今天的学习目标. 这个原则的命名好像是以某个人的名字命名的,算了我不去管这个了. 直接说说我学到的东西,这个迪米特法则又可以 ...