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 ......
今天,遇到了这样的一个例子:
SQL Server索引统计信息未及时更新,导致排序混乱
我们知道,在sql
server上创建索引后,同时会对该索引上的值进行排序,但对于新增加的值,如果未能及时更新统计信息,将有可能导致排序的混乱,也就是没有排序。
这是产生问题的语句:
Select * from V_L_IcStockProInEntry Where FInt ......
某项目之前的数据库有变化,但是以前写的程序是支持老数据库的,新数据库有一些问题,需要修改,但是数据库就重复了,于是就要把开发机上之前的数据库重新命名。
这里记录一下步骤(旧名称:MobileMsg,新名称:MobileMsg_old):
1、关掉企业管理器,打开查询分析器;
2、修改数据库名称:
EXEC sp_dboption 'MobileMs ......
之前为了方便操作就在Sql Server的企业管理器里注册了远程服务器,但是前一段时间在远程服务器上修改了该数据库的密码,每次点击该注册服务器系统要等很长时间,象死机一样;修改连接属性也修改不了,点击后也没有反应,于是就想删除重新注册,既然无法在管理器里删除,就想从注册表里删除,找了好久终于找到了,对应的sql ......
很早做过的一个delphi项目,把里面用到的技术总结一下,主要是针对象我这样的delphi新手,技术上做个积累吧!
假设我们的数据库配置文件ServerInfo.ini内容如下:
[ServerInfo]
ServerIP=192.168.1.5
SQLDBName=Data
SQLUserID=sa
SQLPwd=
我们定义一个连接数据库的过 ......