sql-syscolumns,INFORMATION_SCHEMA.columns,sysobjects

1 //计算表tb_Blog的字段个数
2 select count(*) from syscolumns where id=object_id('tb_Blog')

 获取指定表的所有字段和字段类型

1 SELECT COLUMN_NAME,DATA_TYPE FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME='表名'

创建&&执行存储过程

--创建存储过程
if(object_id('proc_GetSubjectInfo','P') is not null)
begin
    drop proc proc_GetSubjectInfo
end
go
create proc proc_GetSubjectInfo(@HistPaperID int,@SubjectTitleID int,@EBatchID int)
as
    --写具体的sql存储过程
go

--执行存储过程
exec proc_GetSubjectInfo 35,4,94
--整数相除得到浮点数 并转为百分比
declare @xiaoshudian float;
select @xiaoshudian=convert(float,23)/convert(float,49) 
select @xiaoshudian
select convert(float,25)/convert(float,41) as DeFenLv,cast(cast(round(convert(float,25)/convert(float,41)*100,0) as decimal(18,0)) as varchar)+'%' as [PerCent]

数据库死锁(查询或其他陷入死循环)  

--停止死锁的进程:
declare @spid  int 
Set @spid  = 57 --锁表进程
declare @sql varchar(1000)
set @sql='kill '+cast(@spid  as varchar)
exec(@sql)

select * from sys.sysprocesses where hostname='SALE-PC'--查看SQL进程的详细信息

给已有的表添加列,类型为smallint,不可为空,默认值为0 (之前已有的数据都会默认该列的值为0)

alter table TClass add PhoneIsOpen smallint default 0  not null

查询数据库所有的表信息 

SELECT * FROM sysobjects WHERE XTYPE='U' ORDER BY name

 

posted @ 2016-05-18 17:51  zhyue93  阅读(267)  评论(0编辑  收藏  举报