易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL Server 2000 重命名数据库

某项目之前的数据库有变化,但是以前写的程序是支持老数据库的,新数据库有一些问题,需要修改,但是数据库就重复了,于是就要把开发机上之前的数据库重新命名。
这里记录一下步骤(旧名称:MobileMsg,新名称:MobileMsg_old):
1、关掉企业管理器,打开查询分析器;
2、修改数据库名称:
EXEC sp_dboption 'MobileMsg', 'Single User', 'TRUE'
Go
EXEC sp_renamedb 'MobileMsg', 'MobileMsg_old'
Go
EXEC sp_dboption 'MobileMsg_old', 'Single User', 'FALSE'
Go
3、修改修改数据库的逻辑名称:
alter database MobileMsg_old modify file(name='MobileMsg_Data', newname='MobileMsg_old_Data')
alter database MobileMsg_old modify file(name='MobileMsg_Log',  newname='MobileMsg_old_Log')
Go
4、关闭SQL Server服务,修改物理名称:
C:\Program Files\Microsoft SQL Server\MSSQL\Data\MobileMsg_old_Data.MDF
C:\Program Files\Microsoft SQL Server\MSSQL\Data\MobileMsg_old_Log.MDF
5、重命名数据库物理文件:
exec xp_cmdshell 'rename  C:\Program Files\Microsoft SQL Server\MSSQL\Data\MobileMsg_Data.MDF C:\Program Files\Microsoft SQL Server\MSSQL\Data\MobileMsg_old_Data.MDF'
exec xp_cmdshell 'rename  C:\Program Files\Microsoft SQL Server\MSSQL\Data\MobileMsg_Log.LDF  C:\Program Files\Microsoft SQL Server\MSSQL\Data\MobileMsg_old_Log.LDF'
go


相关文档:

一次插入多条信息(sql)

注释:只适合单表单列数据,
create database test
go
use test
go
create table users
(
:id int identity(1,1) primary key not null,
:name nvarchar(20)
)
go
create proc sp_Inserts
@Names nvarchar(4000)
as
declare @Name nvarchar(20),@ErrorSum int
:set @ErrorSum = 0
:begin tra ......

Merge SQL 2008

merge [target] t
using [source] s on t.id = s.id
when matched then update t.name = s.name, t.age = s.age -- use "rowset1"
when not matched then insert values(id,name,age) -- use "rowset2"
when source not matched then delete; -- use "rowset3"
MERGE dbo.table AS im ......

SQL Server选择了非聚集索引而不是聚集索引

聚集索引不仅包含索引的key值,还包含表数据;
非聚集索引只包含索引的key值。
SQL Server在有些情况下,有聚集索引和非聚集索引存在时,会选择走非聚集索引,而不走聚集索引。
例子如下:
在 SQL Server 的adventureWorks数据库下,运行如下语句:
select DepartmentID,Name from HumanResources.Department
Departm ......

SQL Server索引统计信息未及时更新,导致排序混乱

今天,遇到了这样的一个例子:
SQL Server索引统计信息未及时更新,导致排序混乱
我们知道,在sql
server上创建索引后,同时会对该索引上的值进行排序,但对于新增加的值,如果未能及时更新统计信息,将有可能导致排序的混乱,也就是没有排序。
这是产生问题的语句:
Select * from V_L_IcStockProInEntry Where FInt ......

sql server 日志文件的收缩

完全备份或日志备份虽说都有截断日志的功能,但是不会收缩日志文件的空间返回给操作系统.
如果你想将日志文件的空间返回给操作系统的话,只有一种方法,就是收缩数据库(选择日志文件)
ZT一个相关帖子,供参考!
物理日志文件:
    这个比较好理解,实实在在的东西,数据库目录下面的.ldf文件就是,有些人喜欢改后 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号