Questions tagged «sql-server-2008»

使用此标记可以解决针对Microsoft SQL Server 2008版本的特定问题。

3
聚簇索引必须唯一吗?
如果聚集索引不是唯一的,会发生什么?因为插入的行流到某种“溢出”页面,会导致性能下降吗? 它是“独特的”吗?使其独特的最佳方法是什么? 我之所以问是因为我当前正在使用聚集索引将表划分为逻辑部分,但是性能如此一般,最近我得到了使聚集索引唯一的建议。我想要第二点意见。 谢谢!


8
SQL Server 2008空字符串与空间
今天早上我碰到了一些奇怪的事情,以为我要把它提交评论。 有人可以解释为什么针对SQL 2008运行以下SQL查询时会显示“等于”。数据库兼容性级别设置为100。 if '' = ' ' print 'equal' else print 'not equal' 这将返回0: select (LEN(' ')) 它似乎正在自动修剪空间。我不知道在以前的SQL Server版本中是否是这种情况,而且我什至没有办法进行测试。 我遇到这个问题是因为生产查询返回的结果不正确。我找不到任何地方记录此行为。 有人对此有任何信息吗?

2
错误0xc0202049:数据流任务1:无法插入只读列
我正在使用SQL Server 2008导入和导出向导。我需要导入一个数据库。我打开了SQL Server导入/导出向导,并执行了以下操作: 对于目的地,我选择了“ SQL Server本机客户端10”。 然后我从一个或多个表或视图中选择了复制数据。 SSIS立即运行 但我遇到以下错误, 操作已停止... 初始化数据流任务(成功) 初始化连接(成功) 设置SQL命令(成功) 设置源连接(成功) 设置目标连接(成功) 验证中(错误) 消息错误0xc0202049:数据流任务1:无法插入只读列“ ActionID”。(SQL Server导入和导出向导) 错误0xc0202045:数据流任务1:列元数据验证失败。(SQL Server导入和导出向导) 错误0xc004706b:数据流任务1:“组件“目标-AuditActions”(22)”验证失败,并返回了验证状态“ VS_ISBROKEN”。(SQL Server导入和导出向导) 看来我无法导入标识列和时间戳列,因此如何强制导入这些值?

10
TSQL:如何将本地时间转换为UTC?(SQL Server 2008年)
我们正在处理一个需要处理来自不同时区和夏令时设置的全球时间数据的应用程序。这个想法是将所有内容以UTC格式存储在内部,并且仅针对本地化的用户界面来回转换。SQL Server是否提供任何机制来处理给定时间,国家/地区和时区的翻译? 这肯定是一个普遍的问题,所以我很惊讶Google不会提供任何可用的东西。 有指针吗?

6
了解T-SQL中的PIVOT函数
我对SQL非常陌生。 我有一个这样的表: ID | TeamID | UserID | ElementID | PhaseID | Effort ----------------------------------------------------- 1 | 1 | 1 | 3 | 5 | 6.74 2 | 1 | 1 | 3 | 6 | 8.25 3 | 1 | 1 | 4 | 1 | 2.23 4 | 1 …

11
在SQL Server查询中返回月份名称
使用SQL Server 2008,我有一个用于创建视图的查询,并且试图显示月份的名称而不是整数。 在我的数据库中,datetime位于列中OrderDateTime。查询中返回日期的行是: DATENAME(yyyy, S0.OrderDateTime) AS OrderYear, DATEPART(MONTH, S0.OrderDateTime) AS OrderMonth 这将返回整数的年份和月份的列。我想返回月份名称(Jan, Feb, etc)。我试过了: CONVERT(varchar(3), DATEPART(MONTH, S0.OrderDateTime) AS OrderMonth 这显然是不正确的,因为我得到 'AS'附近的语法不正确 信息。我的查询的正确语法是什么?

3
完全外加入vs.完全加入
只是玩弄查询和示例以更好地理解联接。我注意到在SQL Server 2008中,以下两个查询给出的结果相同: SELECT * FROM TableA FULL OUTER JOIN TableB ON TableA.name = TableB.name SELECT * FROM TableA FULL JOIN TableB ON TableA.name = TableB.name 它们是执行完全相同的操作以产生相同的结果,还是在更复杂的示例中遇到不同的结果?这只是可互换的术语吗?

7
varchar(max)随处可见?
使您的所有Sql Server 2008字符串列都为varchar(max)有任何问题吗?我允许的字符串大小由应用程序管理。该数据库应仅保留我提供的内容。通过将所有字符串列声明为SqlServer 2008中的varchar(max)类型,无论实际输入到它们中的数据大小如何,都会对性能产生影响吗?

14
错误-SqlDateTime溢出。必须介于1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之间
我一直在使用我编写的这段代码,它以这种最不清楚的方式工作。我希望在数据库中插入一行,其中包括两列DateTime: myrow.ApprovalDate = DateTime.Now myrow.ProposedDate = DateTime.Now 但是,当我更新数据库时,收到此错误: SqlDateTime溢出。必须介于1/1/1753 12:00:00 AM和12/31/9999 11:59:59 PM之间。 我什至尝试从数据库复制插入的值并将其硬编码到要更新的对象中: // I copied this value from the DB myrow.ApprovalDate = Convert.ToDateTime("2008-12-24 00:00:00.000"); 仍然是同样的错误,奇怪的是,上述技巧适用于第一次插入数据库,但此后失败。有什么想法吗?

5
“从中选择1个”有什么作用?
我读了一些文章,但真的不明白该怎么select 1 from做?有人说“您应该使用select 1而不是select *”。这是一个示例表: cust_id cust_name cust_address 1000000001 Village Toys Mapl 1000000002 Kids Place South 1000000003 Fun4All Sunny 1000000004 Fun4All Riverside 1000000005 The Toy Store 53rd 当我写select 1 from customer_table这条语句做什么时,结果将是什么?

5
禁用交易日志
Oracle具有可以发出的SQL命令,这样就不会记录事务。SQL Server 2008是否有类似的东西? 我的情况:我们需要在服务器(Dev,QA,Prod)上发送Tx日志,但是也许我们可以在开发人员机器上不使用它们。


1
您可以在以下代码中解释sys.sp_addextendedproperty的用法吗?
创建视图后,以下代码中发生了什么?您能给我任何想法或方法吗? 此代码是从这里获取的。 /****** Object: View [dbo].[vProductImages] Script Date: 04/28/2008 16:59:05 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE VIEW [dbo].[vProductImages] AS SELECT dbo.Products_Images.ProductID, dbo.Images.ThumbUrl, dbo.Images.FullImageUrl FROM dbo.Products_Images INNER JOIN dbo.Images ON dbo.Products_Images.ImageID = dbo.Images.ImageID GO EXEC sys.sp_addextendedproperty @name=N'MS_DiagramPane1', @value=N'[0E232FF0-B466-11cf-A24F-00AA00A3EFFF, 1.00] Begin DesignProperties = Begin PaneConfigurations = Begin PaneConfiguration …


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.