sql语句集锦
一、主要是需要更新mssqlServer 的时候需要进行一些是否存在的判断,在mssql2000 和 2005 上测试没有哦问题
--//判断是表Table_UserInfo里是否有字段
if not exists(select * from syscolumns where id=object_id('Table_UserInfo') and name='Tel') begin
ALTER table Table_UserInfo add Tel varchar(200)--增加字段
--ALTER TABLE Table_UserInfo DROP COLUMN Tel--删除字段
--ALTER TABLE table_name ALTER COLUMN Tel varchar(200) --修改字段类型
end
--//判断要添加列的表Table_UserInfo中是否有主键
if exists(select 1 from sysobjects where parent_obj=object_id('Table_UserInfo') and xtype='PK') begin
select top 1 * from Table_UserInfo
end
--//判断表Table_Stat是否有索引Index_Other
IF EXISTS (SELECT * from dbo.sysindexes WHERE id = OBJECT_ID(N'[dbo].[Table_Stat]') AND name = N'Index_Other') begin
select top 1 * from Table_UserInfo
end
--// 判断是否有存储过程pr_DoStatCount
IF EXISTS (SELECT * from dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[pr_DoStatCount]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1) begin
DROP PROCEDURE [dbo].[pr_DoStatCount]
end
--判断是否有此表Table_stat_Count
IF EXISTS (SELECT * from dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].Table_stat_Count') and OBJECTPROPERTY(id, N'IsUserTable') = 1) begin
DROP PROCEDURE [dbo].[Table_stat_Count]
end
相关文档:
同一表多字段同时重复记录的SQL查询及处理数
比如现在有一人员表 (表名:peosons)
若想将姓名、身份证号、住址这三个字段完全相同的记录查询出来
select p1.* from persons p1,persons p2 where p1.idp2.id and p1.cardid = p2.cardid and p1.pname = p2.pname and p1.address ......
Student(S#,Sname,Sage,Ssex) 学生表
Course(C#,Cname,T#) 课程表
SC(S#,C#,score) 成绩表
Teacher(T#,Tname) 教师表
问题:
1、查询“001”课程比“002”课程成绩高的所有学生的学号;
select a.S# from (select s#,score from SC where C#='001') a,(select s#,score
fr ......
之前为了方便操作就在Sql Server的企业管理器里注册了远程服务器,但是前一段时间在远程服务器上修改了该数据库的密码,每次点击该注册服务器系统要等很长时间,象死机一样;修改连接属性也修改不了,点击后也没有反应,于是就想删除重新注册,既然无法在管理器里删除,就想从注册表里删除,找了好久终于找到了,对应的sql ......
操
作系统的支持
版
本和发行版
实
例、数据库和表空间
实
例名和SID
系
统数据库和系统表空间
本译文采用知识共享署
名-非商业性使用-相同方式共享 3.0 Unported许可协议
发布,转载请保留此信息
译者:马齿苋 | 链接:http://www.dbabeta.com/2010/oracle-sql-server-comparison-i.html
作者:S ......
函数如下
CREATE FUNCTION StockBalance_AmountIn(@SortID int)
RETURNS numeric(18,4)
AS
BEGIN
Declare @dblReturn numeric(18,4)
Select @dblReturn = SUM(AmountCurrentMonthIn) from AT_Materiel_StockBalance Where SortID = @SortID
Return (@dblReturn)
END
......