1、自定义4个常用的存储过程:
sp_select :select * from
sp_helpremark :查表的列,列的类型,备注(这里只查询有备注的列)
sp_columns1 : 查表所有的列,列的类型,length
sp_columns2 :查表所有的列,横向显示
注意:上面4个自定义存储过程,必须在查询分析器中执行后,才能快捷键使用。
A) sp_select :
CREATE proc sp_select(@sql varchar(1000)) as begin set @sql='select * from ' + @sql; exec (@sql); end
B) sp_helpremark :
CREATE PROC [dbo].[sp_helpremark] @TABLE_NAME VARCHAR(50) AS SELECT COLID,SO.NAME,EP.VALUE,SO.LENGTH,MIN(ST.NAME) AS TYPE FROM SYS.EXTENDED_PROPERTIES EP RIGHT JOIN SYS.SYSCOLUMNS SO ON MAJOR_ID=ID AND COLID=MINOR_ID LEFT JOIN SYS.SYSTYPES ST ON ST.XTYPE=SO.XTYPE WHERE ID=OBJECT_ID(@TABLE_NAME) GROUP BY COLID,SO.NAME,EP.VALUE,SO.LENGTH ORDER BY COLID
C) sp_columns1 :
CREATE PROC sp_columns1 @table_name VARCHAR(1000) AS BEGIN SELECT a.name,c.data_type,a.length FROM syscolumns a LEFT JOIN information_schema.columns c ON a.name=c.column_name WHERE a.ID = OBJECT_ID (@table_name) END
D) sp_columns2 :
CREATE PROC sp_columns2(@table_name VARCHAR(1000)) AS BEGIN DECLARE @column_name VARCHAR(100)--列名 DECLARE @columns VARCHAR(1000)--所有列名 SELECT @columns='' DECLARE mycursor cursor FOR SELECT name FROM syscolumns WHERE id=(SELECT id FROM sysobjects WHERE name=@table_name) OPEN mycursor FETCH NEXT FROM MyCursor INTO @column_name WHILE @@FETCH_STATUS =0 BEGIN SELECT @columns=@columns+@column_name+',' FETCH NEXT FROM MyCursor INTO @column_name END CLOSE MyCursor DEALLOCATE MyCursor SELECT @columns END
2、打开数据库,工具>>选项>>键盘:
在存储过程列里,填写按快捷键时执行的存储过程(注:这里的存储过程列需要 写入特定的方法名)
再根据上面4个自定义的存储过程名称,选择对应不同的快捷键,确定完成。
>>>>>>>>>>>>使用方法:
打开查询分析器: 直接写表名,选中,并按目标快捷组合键,完成查询。