Tag: sql server 2008 r2

在脚本向导中缺lessSQL Server 2008 R2脚本数据

在我的SQL Server 2008 R2中 脚本向导的脚本选项屏幕在部分表/视图选项部分查找我find脚本数据行并希望将该选项设置为True,但是我失败了。 我没有find任何脚本数据选项。 为什么我的SQL Server 2008 R2上缺less脚本数据选项? 是否有任何命令来生成插入数据选项。 为什么出现这个问题? 如何解决? 提前致谢

显式删除临时表或让SQL Server处理它

处理临时表删除的最佳做法是什么? 我已经读过,你应该明确处理掉,也是SQL服务器应该处理下降….什么是正确的方法? 我一直觉得你应该自己清理你在一个杂志中创build的临时表,等等。但是,我发现了其他一些不同的地方。 任何有识之士将不胜感激。 我只是担心我没有遵循我创build的临时表的最佳做法。 谢谢, 小号

SQL Server – 创build一个数据库表的副本,并将其放在同一个数据库?

我有一个数据库数据库中的表ABC。 我想在同一个数据库中创build名称为ABC_1,ABC_2,ABC_3的ABC副本。 我如何使用Management Studio(最好)或SQL查询来做到这一点? 这是针对SQL Server 2008 R2的。

如何解决SQL Server错误1222即解锁一个SQL Server表

我正在一个数据库中,我通过数据加载器加载一个原始表中的数据。 但是今天的数据加载程序由于未知的原因卡住了。 然后我停止从Windows任务pipe理器的数据加载器。 但是,我再次尝试加载原始表中的数据,但发现它被locking,我不能做任何操作。 我试过重新启动SQL Server服务,但没有解决。 而且我没有权限在这台服务器上终止进程。 以下是SQL Server显示的消息。 执行Transact-SQL语句或批处理时发生exception。 (Microsoft.SqlServer.ConnectionInfo) 计划地点: 在Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(String sqlCommand,ExecutionTypes executionType) 在Microsoft.SqlServer.Management.Common.ServerConnection.ExecuteNonQuery(StringCollection sqlCommands,ExecutionTypes executionType) 在Microsoft.SqlServer.Management.Smo.ExecutionManager.ExecuteNonQuery(StringCollection查询) 在Microsoft.SqlServer.Management.Smo.SqlSmoObject.ExecuteNonQuery(StringCollection查询,布尔includeDbContext) 在Microsoft.SqlServer.Management.Smo.NamedSmoObject.RenameImplWorker(String newName) 在Microsoft.SqlServer.Management.Smo.NamedSmoObject.RenameImpl(String newName) =================================== 超过locking请求超时时间。 参数@objname不明确,或者声明的@objtype(OBJECT)错误。 (.Net SqlClient数据提供程序) 服务器名称:162.44.25.59错误号:1222 严重性:16状态:56 过程:sp_rename行号:282 我的SQL Server版本是2008 R2。

SQL Server 2008上的唯一键与唯一索引

我有一个名为countries的表,我通过在SQL Server 2008 R2上创buildtypes为“唯一键”的“索引/键”来将country_name列定义为唯一的。 但是我有以下问题: 将创build“唯一键”types的“索引/键”自动创build此列上的非聚集索引? 如果将types从“唯一键”更改为“索引”,并将IsUnique值保持为“是”,那么会有什么区别吗? 所以为什么有两个选项“独特的钥匙”和“指数”,我认为这两个是相同的?

来自SQL Server的DateTime字段在Excel中显示不正确

在白天无数次我正在复制和粘贴从SQL Server Management Studio到Excel的logging。 我的问题是,如8/23/2013 4:51:02 PM DateTime值不能正确显示,如下图所示,即使它显示在function框中正确。 将数据types更改为ShortDate修复显示问题,但是由于我有大量的date字段进行格式化,因此很繁琐。 由于Excel和SQL Server都是微软产品,人们会期望Excel能够正确显示date字段。 编辑:所以这似乎是Excel的显示问题。 我将我的Management Studio结果复制到记事本,然后从那里复制到Excel,我仍然遇到同样的问题。 将记事本2013-08-23 16:52:11.493复制到Excel将显示52:11.5 (显示分钟,秒和四舍五入毫秒)。 Excel版本是2010年。 任何想法来简化这个?

分区函数COUNT()OVER可能使用DISTINCT

我正在尝试编写以下代码以获得一个不同的NumUsers,如下所示: NumUsers = COUNT(DISTINCT [UserAccountKey]) OVER (PARTITION BY [Mth]) pipe理工作室似乎不太高兴。 当我删除DISTINCT关键字时,该错误消失,但不会是一个明显的计数。 DISTINCT在分区function中似乎不可能。 我怎么去find不同的数字? 我是否使用更传统的方法,如相关的子查询? 再仔细看看这些,可能这些OVER函数与Oracle的工作方式不同,它们不能在SQL-Server用来计算运行总数。 我在SQLfiddle上添加了一个实例,我尝试使用分区函数来计算运行总数。

使用基于Count的IF ELSE语句来执行不同的Insert语句

当我通过数据库进行search时,如果发现某个特定的项目不存在,则运行INSERT语句,如果find一个或多个此项目,则运行另一个INSERT语句。 我不完全确定如何使用IF ELSEexpression式。 我到目前为止是一个声明,将计数目标数据出现的次数; 如果大于0,它将打印为TRUE,否则打印为FALSE。 我找不到任何示例来帮助我理解如何使用它来运行两个不同的INSERT语句。 这是我到目前为止: SELECT CASE WHEN COUNT(*)>0 THEN 'TRUE' ELSE 'FALSE' END ( SELECT [Some Column], COUNT(*) TotalCount FROM INCIDENTS WHERE [Some Column] = 'Target Data' GROUP BY [Some Column] )

触发器在表上时,不能使用带有OUTPUT子句的UPDATE

我使用OUTPUT查询执行UPDATE : UPDATE BatchReports SET IsProcessed = 1 OUTPUT inserted.BatchFileXml, inserted.ResponseFileXml, deleted.ProcessedDate WHERE BatchReports.BatchReportGUID = @someGuid 这句话很好,很好。 直到在桌上定义一个触发器。 然后我的UPDATE语句会得到错误334 : 如果语句包含不带INTO子句的OUTPUT子句,则DML语句的目标表“BatchReports”不能具有任何已启用的触发器 现在,SQL Server团队在博客文章中解释了这个问题: 错误消息是不言自明的 他们也提供解决scheme: 该应用程序已更改为使用INTO子句 除了我不能整个博客文章的正面或反面。 所以让我问我的问题:我应该改变我的UPDATE ,以便它的工作? 也可以看看 更新与OUTPUT子句 – 触发器和SQLMoreResults 为什么MERGE语句的目标表不允许启用规则? 语句包含一个没有INTO子句错误的OUTPUT子句

单个SQL Server语句是primefaces性的还是一致的?

在SQL Server ACID是一个语句吗? 我的意思是 给定一个单独的T-SQL语句,不包含在BEGIN TRANSACTION / COMMIT TRANSACTION ,是该语句的动作: primefaces :要么执行所有的数据修改,要么不执行它们。 一致性 :完成后,交易必须保持所有数据处于一致状态。 隔离 :并发事务所做的修改必须与其他并发事务所做的修改隔离。 耐久性 :交易完成后,其影响永久存在于系统中。 我问的原因 在现场系统中,我有一个单一的声明,似乎违反了查询的规则。 实际上,我的T-SQL语句是: –If there are any slots available, –then find the earliest unbooked transaction and mark it booked UPDATE Transactions SET Booked = 1 WHERE TransactionID = ( SELECT TOP 1 TransactionID FROM Slots INNER JOIN […]