标签: sql-server-2005

使SQL Server数据库脱机时的极限等待时间

我正在尝试在我的开发数据库上执行一些离线维护(从实时备份中删除数据库),但是通过SQL Server Management Studio执行的"Take Offline"命令执行速度非常慢 - 大约30分钟加上现在.我只是在我的智慧结束,我似乎无法在网上找到任何可能导致速度问题,或如何解决它的参考.

有些网站建议与数据库的开放连接导致这种速度减慢,但使用此数据库的唯一应用程序是我的开发机器的IIS实例,并且服务已停止 - 没有更多的打开连接.

什么可能导致这种放缓,我该怎么做才能加快速度?

database performance sql-server-2005

275
推荐指数
7
解决办法
29万
查看次数

分配变量时SET与SELECT?

在T-SQL中分配变量时,SETSELECT语句之间有什么区别?

sql t-sql sql-server sql-server-2005 sql-server-2008

275
推荐指数
4
解决办法
37万
查看次数

SQL查询以选择两个日期之间的日期

我有一个start_dateend_date.我想获得这两个日期之间的日期列表.任何人都可以帮我指出我的查询中的错误.

select Date,TotalAllowance 
from Calculation 
where EmployeeId=1
  and Date between 2011/02/25 and 2011/02/27
Run Code Online (Sandbox Code Playgroud)

Date是一个datetime变量.

sql t-sql sql-server datetime sql-server-2005

270
推荐指数
9
解决办法
165万
查看次数

使用T-SQL从日期和年份创建日期

我试图将日期与单个部分(如12,1,2007)转换为SQL Server 2005中的日期时间.我尝试了以下内容:

CAST(DATEPART(year, DATE)+'-'+ DATEPART(month, DATE) +'-'+ DATEPART(day, DATE) AS DATETIME)
Run Code Online (Sandbox Code Playgroud)

但这会导致错误的日期.将三个日期值转换为正确的日期时间格式的正确方法是什么.

sql t-sql sql-server sql-server-2005

256
推荐指数
9
解决办法
38万
查看次数

"防止需要重新创建表的保存更改"负面影响

前言

我今天在SQL Server 2008中修改了一个列,将数据类型从货币(18,0)更改为(19,2).

我收到错误"您所做的更改需要从SQL Server中删除并重新创建以下表".

在您争相回答之前,请阅读以下内容:

我已经知道工具►选项►设计器►表和数据库设计器中有选项►取消选中 "禁止保存需要重新创建表的更改" . 通过五次单击阻止保存需要重新创建表的更改 ......所以不要回答!

实际问题

我的实际问题是针对其他事情,如下:

这样做有任何负面影响/可能的缺点吗?

当取消选中此框时,表是否会被实际删除并自动重新创建?

如果是这样,表格是否复制了源表的100%完全复制品?

sql-server database-design sql-server-2005 sql-server-2008

248
推荐指数
4
解决办法
18万
查看次数

如何在SQL中选择没有时间的日期

当我在SQL中选择日期时,它将返回为 2011-02-25 21:17:33.933.但我只需要Date部分2011-02-25.我怎样才能做到这一点?

sql sql-server sql-server-2005

243
推荐指数
9
解决办法
58万
查看次数

varchar和nvarchar SQL Server数据类型之间的主要性能差异是什么?

我正在我的学校使用一个小型网络应用程序的数据库SQL Server 2005.
我在varcharvs 的问题上看到了几个思想流派nvarchar:

  1. 使用varchar除非你处理了很多国际化的数据,然后使用nvarchar.
  2. 只是nvarchar用于一切.

我开始看到视图2的优点.我知道nvarchar确实占用了两倍的空间,但这不一定是一个大问题,因为这只是为几百名学生存储数据.对我而言,似乎最简单的是不要担心它并且只允许一切使用nvarchar.还是有什么我想念的?

sql-server storage varchar nvarchar sql-server-2005

232
推荐指数
10
解决办法
16万
查看次数

使用存储过程检查字符串是否包含SQL Server 2005中的子字符串

我有一根绳子,@mainString = 'CATCH ME IF YOU CAN'.我想检查这个词是否在ME里面@mainString.

如何在SQL中检查字符串是否具有特定的子字符串?

t-sql sql-server string stored-procedures sql-server-2005

231
推荐指数
2
解决办法
63万
查看次数

如何在SQL中获取字符串的第一个字符?

我有一个长度为6的SQL列.现在只想获取该列的第一个字符.SQL中是否有任何字符串函数可以执行此操作?

sql sql-server sql-server-2005

230
推荐指数
6
解决办法
60万
查看次数

如果只在sql server中存在外键约束,我该怎么办?

我可以使用以下代码删除表,但不知道如何使用约束执行相同的操作:

IF EXISTS(SELECT 1 FROM sys.objects WHERE OBJECT_ID = OBJECT_ID(N'TableName') AND type = (N'U')) DROP TABLE TableName
go 
Run Code Online (Sandbox Code Playgroud)

我还使用此代码添加约束:

ALTER TABLE [dbo].[TableName] 
  WITH CHECK ADD CONSTRAINT [FK_TableName_TableName2] FOREIGN KEY([FK_Name])
    REFERENCES [dbo].[TableName2] ([ID])
go
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2005

223
推荐指数
6
解决办法
25万
查看次数