怎样用SQL语句查询自己到底写了哪些 存储过程?这对于资深的技术人员来说,可能是很简单的一个问题,但对于资历不深的人来说,可能要费下心思查下资料了。
方法一:
Select * from sysobjects where xtype = 'P'
and category = 0
andleft(name,2) <> 'sp'
方法二:
查询用户自己编写了多少个SP
Select COUNT(*) frominformation_schema.routines
where routine_type = 'PROCEDURE'
and left(SPECIFIC_NAME,2)<> 'sp'
and left(SPECIFIC_NAME,2)<> 'fn'
and SPECIFIC_CATALOG ='testLocal'
方法三:
usetestLocal
go
select count(*) from sysobjects
where xtype = 'P'and category =0 and left(name,2) <> 'sp'
go
这条SELECT语句中的 xtype 可以 替换成 type,出来的效果是一样的。
今天发现 Count 方法很奇特。比如,我要粗略地知道Employee表中有多少条记录,我就写以下的SQL语句:
select count(*) from Employee;
但其实也有其他的写法,效果和结果都是等价的:
select count(1) from Employee;
一下语句在MySQL 和 SQL Server 是和上面的两条语句一样的,但在Oracle中是会出错的
select count(‘iwop’) fromEmployee;
select count('') from Employee;