标签: sql-server-2005

Select 语句来检索 xml 输出,如下所示

有人可以为我提供一些线索或解决方案来检索如下记录集吗?

注意:我阅读了 msdn 文档,但除了脱发之外别无他法:(

只是假设我有 2 个表通过 Rid 字段连接

表 1 列:

 Rid, UserName, Hash
Run Code Online (Sandbox Code Playgroud)

表 2 列:

 Rid, Phone, City, Email
Run Code Online (Sandbox Code Playgroud)

Table1Table2通过Rid柱连接。

我想使用 xml 自动或 xml 显式或您在 SQL Server 2005 Express 中获得的任何 xml 操作来获得 xml 输出。

预期输出:

<UserDetails>
    <Account>
        <UserName>
        </UserName>
        <Hash>
        </Hash>
    </Account>
    <Personal>
        <Phone>
        </Phone>
        <City>
        </City>
    </Personal>
</UserDetails>
Run Code Online (Sandbox Code Playgroud)

@matt 请查看我在下面创建的程序。当您在开始时使用代码执行存储过程时,您就会知道我面临的问题

stack_getusers  '<Request Type="GetUsers" CRUD="R">
                            <UserDetails>
                                <Rid></Rid>
                            </UserDetails>
                        </Request>'

CREATE PROCEDURE [dbo].[stack_getusers]    
@doc NTEXT    
AS    
DECLARE @idoc INT
EXEC sp_xml_preparedocument @idoc OUTPUT, …
Run Code Online (Sandbox Code Playgroud)

sql-server-2005 xml

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

为什么在少数列上启用聚集索引属性而不在其他列上启用?

听说只能有一个聚集索引?我可能错了,但我确定我在某个地方读过。

在我的 SQL Server 2005 表之一中,我有以下列:

SerialNum ------- BigInt -------- 主键

-------- nvarchar(50)

SchemeType ------ nvarchar(50)

当我使用 SQL Server Management Studio 在设计模式下打开表时,我注意到为District启用了聚集索引属性,而为SchemeType禁用了

如果只能有一个聚集索引,那么为什么在SerialNum已定义为主键的情况下,District 还要启用此属性?

如果可以有更多的聚集索引,那么如何为SchemeType列启用此属性?

sql-server-2005 database-design sql-server index-tuning

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

将 .sql 文件读入数据库

我创建了一个 sql 数据库并用一些好的数据填充它。现在我试图将所有存储过程移到另一个数据库实例。我将整个源数据库(包括心爱的存储过程)导出到一个 .sql 文件中。现在我正在寻找一种方法来将该数据读入另一台计算机的 sql server 安装中。

到目前为止,我已经尝试通过 Visual Studio UI 查看提示,并使用 sqlcmd 和输入文件。将 sqlcmd 与 .sql 文件一起使用后,一些行受到影响,但它们没有显示在服务器资源管理器中。

sql-server-2005 sql-server

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

SQL Server 数据库保持半独立

如果我没有使用所有正确的术语,但我有将自己与 SQL Server 分离的数据库,请原谅我。在 SQL Server Management Studio 中,数据库旁边将缺少加号,或者数据库将没有表。

现在解决这个问题很容易,只需分离并附加数据库,我们就可以备份并运行了。但这是什么原因呢?

sql-server-2005 sql-server ssms sql-server-2008-r2

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

无法恢复数据库:从服务器接收结果时发生传输级错误

这对我来说不是个好日子。我有一个 SQL Server 2005 Express SP4 (v.9.0.500) 的备份 (master.bak),我想将其还原到我的主数据库实例。我在单用户模式下运行 SQL Server (sqlservr.exe -m),连接到实例,然后我执行任务...恢复。这是我得到的错误:

标题:Microsoft SQL Server Management Studio Express

服务器“GINO\SQLEXPRESS”的还原失败。(Microsoft.SqlServer.Express.Smo)

如需帮助,请单击:http : //go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.2047.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Restore+Server&LinkId=20476

- - - - - - - - - - - - - - - 附加信息:

无法检索此请求的数据。(Microsoft.SqlServer.Express.SmoEnum)

如需帮助,请单击:http : //go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476


执行 Transact-SQL 语句或批处理时发生异常。(Microsoft.SqlServer.Express.ConnectionInfo)


从服务器接收结果时发生传输级错误。(提供程序:共享内存提供程序,错误:0 - 管道已结束。)(Microsoft SQL Server,错误:109)

如需帮助,请单击:http : //go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=109&LinkId=20476

请帮我恢复我的备份数据库,以便我可以继续我的业务!

sql-server-2005 sql-server

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

SQL Server - 包含 PK 的索引

让我们假设我们有一个如下表:

PK -- nonclustered primary key
Col1 -- unique clustered
Col2
Col3
Run Code Online (Sandbox Code Playgroud)

这是指数:

nonclustered index on (Col2, Col3)
Run Code Online (Sandbox Code Playgroud)

与此索引的任何不同:

nonclustered index on (Col2, Col3) include (PK)
Run Code Online (Sandbox Code Playgroud)

如果我的 PK 是集群的而不是非集群的怎么办?现在它有所作为/没有有所作为吗?

编辑添加:

我想这是一种迂回的提问方式:非聚集索引的指针是基于聚集索引还是主键返回到表?我假设使用的是聚集索引 RID。

index sql-server-2005 sql-server

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

如何检索添加到表中的统计信息背后的定义

有没有办法以编程方式检索添加到表列和索引的每个 STATISTICS 的定义。对于用户添加的和系统创建的索引。Sql Server 添加了许多像“__WA_Sys_*”这样的统计信息。

我需要重新编写其中一些并添加更多内容,但是有太多内容无法使用 Management Studio 手动完成。

sql-server-2005 sql-server-2008 statistics index-statistics

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

关于在系统数据库上创建用户对象的建议

我想在 SQL Server 上使用 Service Broker 为我们的生产数据库设置一堆事件通知。

我在我的测试机器上设置了一个新数据库,一切正常。问题是我宁愿不必为此通知目的部署整个数据库,而且我不能使用一个已经到位的用户数据库(无论如何,这将是一团糟)。

如果可能,我最好将通知对象部署在 上master,但首先我想确定这实际上是一个好主意(如果确实如此)。

网上书籍

不要在 master 中创建用户对象。如果这样做,必须更频繁地备份 master。

Books Online建议我不要在master. 此外,我们已经master经常备份我们的数据库。

master在这种情况下,我应该使用数据库还是其他东西?

master在设置之前,我应该了解数据库、服务代理或事件通知吗?

sql-server-2005 sql-server sql-server-2008-r2 service-broker event-notification

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

我的设置的硬盘配置

我有一个相当大的事务数据库 (100GB),有很多用户。数据库访问完全通过存储过程进行,这些过程大量使用临时表、表变量、游标和其他有趣的东西。

我正在一个新盒子上试用它以提高性能。新盒子有 5 个独立的物理硬盘。我正在努力想出一个最佳设置(主要是虽然无知,但我通常是 ac# dev)。到目前为止,我得到了以下信息:

Drive C: OS, SQL install, TempDB log
Drive D: Database data
Drive E: Database log
Drive F: TempDB data
Drive G: Databases indexes
Run Code Online (Sandbox Code Playgroud)

我走的是正确的道路吗?有什么明显的错误吗?

performance sql-server-2005 sql-server hardware

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

是否可以将 SQL Server 2005 Standard 就地升级到 SQL 2012 Enterprise?

目前,我有一个 SQL 2005 标准框。我想就地将其升级到 SQL 2012 Enterprise。当我说到位时,我指的是类似于 Office 2010 的安装,例如,它删除旧的 (Office 2007) 版本,将自身绑定到其前身曾经拥有的扩展并保留所有设置。

这可能吗?

如果不是,应该走什么程序?到目前为止,我得到了这个。

  1. 备份数据库
  2. 写下所有设置。
  3. 卸载 SQL 2005。
  4. 安装 SQL 2012 企业版。
  5. 恢复设置
  6. 恢复数据库。

sql-server-2005 sql-server upgrade sql-server-2012

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