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