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
相关文档:
Use DatabaseName
--DB shrink
--获取database 空余空间, 决定是否作shrinkDB
exec [DBNAME].dbo.sp_spaceused
DBCC ShrinkDB(DBNAME)
--Log file shrink
Use DatabaseName
GO
Alter Database DatabaseName Set Recovery Simple
GO
Alter Database DatabaseName Set Recovery Full
GO
DBCC SHRINKFILE ('Log ......
在网上看到一个很好的例子讲解in和exists的区别,这里备忘下。
本示例所示查询查找由位于以字母 B 开头的城市中的任一出版商出版的书名:
USE pubs
SELECT title
from titles WHERE EXISTS
(SELECT *
from publishers
WHERE pub_id = titles.pub_id ......
很早做过的一个delphi项目,把里面用到的技术总结一下,主要是针对象我这样的delphi新手,技术上做个积累吧!
假设我们的数据库配置文件ServerInfo.ini内容如下:
[ServerInfo]
ServerIP=192.168.1.5
SQLDBName=Data
SQLUserID=sa
SQLPwd=
我们定义一个连接数据库的过 ......
--------------------------------------------------------------------------
-- Author : htl258(Tony)
-- Date : 2010-04-23 08:08:36
-- Version:Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
-- Jul  ......
以下转载,原文摘自http://www.cnblogs.com/fubeidong/archive/2007/07/06/526247.html
数据库中有个字段叫orderTime,是DateTime类型的数据,如果我们用以下SQL语句把它取出来:
select
orderTime
from orders
则会把时间都显示出来,而如果改成下面的SQL语句:
select
orderTime = convert(varchar(10),orderTime, ......