AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-10681

Sky's questions

Martin Hope
Sky
Asked: 2016-02-29 16:56:34 +0800 CST

从包含 XML 列的表中选择

  • 0

我收到了一个 Excel 文件(2010 版),根据要求,我被要求将其保存为 XML 文件,然后导入 SQL 数据,以便在正常的 SELECT 语句中查询。

下面是我遵循的步骤列表,但现在我对数据有一个 SELECT,没有返回任何记录。我不确定这是否是由于我从 Excel 文件中获取 XML 文件所做的转换,还是我的OPENXML查询有问题。

  1. 为了XML从文件中获取.xlsx文件,我在 EXCEL 2010 中打开了该文件并将其保存在“XML 电子表格 2003 (*.XML)”中。
  2. 我使用以下代码将 XML 文件导入到表中:

    INSERT INTO XMLwithOpenXML(XMLData, LoadedDateTime)
    SELECT CONVERT(XML, BulkColumn) AS BulkColumn, GETDATE() 
    FROM OPENROWSET(BULK 'C:\DEV\TestXML.xml', SINGLE_BLOB) AS x;
    
    
    SELECT * FROM XMLwithOpenXML
    

在此处输入图像描述 1. XML 数据现在已存储在表中,因此我使用下面的代码在 SELECT 语句中读取它以访问各个列:

    DECLARE @XML AS XML, @hDoc AS INT, @SQL NVARCHAR (MAX)


 SELECT @XML = XMLData FROM XMLwithOpenXML

    EXEC sp_xml_preparedocument @hDoc OUTPUT, @XML


    SELECT SNo,Salutation,PatientNRIC,FirstName,LastName,Gender,Race
    FROM OPENXML(@hDoc, 'ROOT/SNo/Salutation/PatientNRIC/FirstName/LastName/Gender/Race')
    WITH 
    (
        SNo [nvarchar](50) '@SNo',
        Salutation [nvarchar](100) '@Salutation',
        PatientNRIC [nvarchar](255) '@PatientNRIC',
        FirstName [nvarchar](255) '@FirstName',
        LastName [nvarchar](255) '@LastName',
        Gender [nvarchar](255) '@Gender',
        Race [nvarchar](255) '@Race'
    )   

然后

EXEC sp_xml_removedocument @hDoc
    GO

但是我得到的只是列的名称,没有返回实际数据:

在此处输入图像描述

我对 OPENXML 评论和使用 XML 文件完全陌生,尝试阅读不同的帖子,但仍然无法弄清楚为什么我的选择查询中没有显示任何数据。任何帮助表示赞赏。

sql-server import
  • 1 个回答
  • 8635 Views
Martin Hope
Sky
Asked: 2014-04-07 14:09:04 +0800 CST

如何设置 Tablix 外边框宽度

  • 4

在 SSRS 2008 R2 中,Tablix 具有“边框宽度”属性。我假设通过给这个属性赋值,我可以定义外边框的宽度。但它什么也没做。

我想让 Tablix 的外边框比内部网格更薄。我们的报告中有许多 Tablix,其中包含许多单元格,在顶部、底部、左侧和右侧边框上选择每个单元格并将外部边框粗细宽度设置为 3pt 是很痛苦的。

在此处输入图像描述 在此处输入图像描述

sql-server-2008 ssrs
  • 1 个回答
  • 13583 Views
Martin Hope
Sky
Asked: 2013-11-27 18:58:08 +0800 CST

查找列包含 [ 和 ] 字符的行

  • 2

我需要在列包含包含[ ]. 当我使用LIKE时,它将[]作为通配符序列,并且不能按我的需要工作。

例如,我想搜索一个名为的列Address并获取字符串包含的任何值[Sydney]:

SELECT * FROM Location
WHERE Address LIKE '%[Sydney]%'

我不能使用CONTAINS(),因为这不是全文索引列。

t-sql sql-server-2008-r2
  • 1 个回答
  • 2529 Views
Martin Hope
Sky
Asked: 2013-11-25 21:53:23 +0800 CST

使用 OLE DB Source SQL 命令与使用对象工具设计查询

  • 1

在 SSIS 中,我们可以使用 OLE DB Source SQL 命令在数据库上运行 T-SQL 脚本,然后将输出用作源。例如,复杂的查询可以包装在 OLD DB 源 SQL 命令中,输出可以直接写入文件或目标表。这样,我们就不必设计数据流来进行合并连接、查找等。

我想知道这种方法与在 SSIS 设计工具中定义 sql 查询(使用工具箱中的可用对象)相比是否有任何缺点。看起来,完成工作所需的时间更少,运行速度可能更快。

如果您分享您对这种方法的优缺点的想法,我们将不胜感激。

谢谢。

sql-server sql-server-2008-r2
  • 1 个回答
  • 684 Views
Martin Hope
Sky
Asked: 2013-08-14 17:38:54 +0800 CST

没有数据可显示时如何保持 Tablix 的结构

  • 9

我们有一个 SSRS 报告,它在 tablix 中显示数据集的结果。如果数据集中的查询未返回数据,则会显示 Tablix 的标题,但不会显示标题下方的 tablix 单元格。我知道 to 有一个属性NoRowMessage,但实际上它不是我们想要的。因为当我指定消息时,SSRS 会显示消息而不是空的 tablix。我必须按原样显示 tablix 结构,但单元格为空。

我什至使用函数为 tablix 的每个单元格值设置规则IsNothing,如果值为空,则显示空白(“”),但这没有帮助。

你有什么主意吗?提前感谢您的帮助。

sql-server-2008-r2 ssrs
  • 1 个回答
  • 34582 Views
Martin Hope
Sky
Asked: 2013-06-14 21:49:07 +0800 CST

运行与 SQL Server 作业不同的服务器上存在的 exe 文件

  • 6

我们.exe在服务器上有一个文件,比如Server1应该从存在于不同服务器上的 SQL Server 作业运行,例如:Server2。怎么做到呢?

我知道它是否是本地文件,我可以xp_cmdshell在 Job 步骤中使用并运行该.exe文件,但在我们的例子中,该文件存在于不同的服务器上。如果可行,应该设置什么安全权限来实现它?

sql-server sql-server-2008-r2
  • 2 个回答
  • 9749 Views
Martin Hope
Sky
Asked: 2013-05-16 22:41:06 +0800 CST

如何在 SSRS 2008 运行时向表中添加行/列

  • 0

通常我们将表格设计为在报表中具有 x 行数和 y 列数。但是我们如何创建一个在运行时根据源查询的结果动态添加行和列的报表呢?

例如我想列出stdentId、StudentName和每个学生注册的任何课程。由于课程数量因人而异,我应该在运行时根据查询结果为课程添加行和相关列. 怎么做到呢?例如:

在此处输入图像描述

提前感谢您的帮助。

ssrs ssrs-2008
  • 2 个回答
  • 2123 Views
Martin Hope
Sky
Asked: 2013-04-30 22:10:55 +0800 CST

图像在 SSRS 报告上淡出

  • 0

我们有一个使用 Report Builder 3 构建的 SSRS 报告。此报告顶部有一个彩色徽标,当在屏幕上看到该报告、打印它或将其导出到 Word 时,它会正确显示。但是,当报告导出为 pdf 时,图像会褪色并且看起来是透明的。图像嵌入在报告中,图像文件类型为.jpg. W

在此处输入图像描述

为什么会这样?我该如何预防?

ssrs
  • 1 个回答
  • 440 Views
Martin Hope
Sky
Asked: 2013-02-22 21:44:02 +0800 CST

在 HashBytes 函数中选择正确的算法

  • 23

我们需要创建 nvarchar 数据的哈希值以进行比较。T-SQL 中有多种哈希算法可用,但在这种情况下,最好选择哪一种?

我们要确保对于两个不同的 nvarchar 值具有重复哈希值的风险最小。根据我对互联网的研究,MD5 似乎是最好的。那正确吗?MSDN 告诉我们(下面的链接)有关可用算法的信息,但没有说明哪种算法适用于什么条件?

哈希字节 (Transact-SQL)

我们需要在两个 nvarchar(max) 列上连接两个表。正如您可以想象的那样,查询需要时间来执行。我们认为最好保留每个 nvarchar(max) 数据的哈希值并对哈希值进行连接,而不是 blob 的 nvarchar(max) 值。问题是哪种哈希算法提供了唯一性,这样我们就不会遇到一个哈希值用于多个 nvarchar(max) 的风险。

sql-server sql-server-2008-r2
  • 4 个回答
  • 19380 Views
Martin Hope
Sky
Asked: 2013-02-22 17:57:03 +0800 CST

生产环境中的 Microsoft 基线配置分析器

  • 3

我遇到了 Microsoft 发布的用于配置分析的有用工具。它被称为Microsoft Baseline Configuration Analyser 2.0.

我在我的本地实例上下载并运行了它,并收到了一些错误和警告。在安装过程中,它会警告您应该接受 power shell 上发生的一些更改以安装该工具。

考虑到这一点,您认为安装在生产服务器上进行定期检查是否安全?

有没有人以前使用过这个工具并推荐过它?

谢谢。

best-practices sql-server-2008-r2
  • 1 个回答
  • 499 Views
Martin Hope
Sky
Asked: 2013-02-20 16:46:59 +0800 CST

如何在 Datetimeoffset 列中设置时间偏移而不更改日期部分

  • 2

有什么方法可以直接设置列timeoffset的datetimeoffset,而不必使用SWITCHOFFSETwhich 来更改日期?

在下面的帖子中,我们可以看到SWITCHOFFSET将相应地更改日期以及设置时间偏移(这不是我们想要的):http: //blog.sqlauthority.com/2010/07/15/sql-server-datetime-功能开关偏移示例/

例如,我将日期值设为“2013-02-10”,并希望将其记录在不同的时区,而不会丢失“2013-02-10”。只需将 timeoffset 设置为需要的值,例如:+11、-4、-6 等。

可能吗?

谢谢。

sql-server sql-server-2008-r2
  • 3 个回答
  • 8851 Views
Martin Hope
Sky
Asked: 2013-02-13 14:09:59 +0800 CST

我们能把使用 xp_cmdshell 的风险降到最低吗?

  • 6

使用xp_cmdshell可能很有帮助,有时可能是某些场景的唯一答案。我在互联网上阅读了一些帖子,启用xp_cmdshell可能会危及数据库/服务器的安全性。

我的问题是,我们能做些什么来降低风险吗?例如,我们是否可以设置一些限制/应用用户角色等提供保障措施来降低风险?

谢谢。

sql-server sql-server-2008-r2
  • 2 个回答
  • 7843 Views
Martin Hope
Sky
Asked: 2013-02-11 21:18:19 +0800 CST

恢复数据库上的最新备份

  • 1

我们有一个存储过程,它将备份从数据库到指定位置。有时备份过程运行不止一次。它会导致在同一个文件名上拥有多个备份集。当我们编写 T-SQL 使用这个备份文件恢复目标 db 时,我们如何告诉 SQL 恢复目标数据库上的最新 db 备份集(使用 T-SQL 命令)?

当我们使用 MS SQL 管理工作室恢复备份时,我们可以简单地选择我们想要恢复的备份集。但是我需要使用 T-SQL 运行还原,并且想知道如何确定 SQL 使用最新的数据库备份集进行还原。例如,从下图中,我想恢复最后一个备份集(以黄色突出显示):

在此处输入图像描述

我检查了这个网站,但找不到答案。如果您能提供帮助,我将不胜感激。

谢谢。

sql-server-2008-r2 restore
  • 2 个回答
  • 5792 Views
Martin Hope
Sky
Asked: 2013-02-06 18:59:51 +0800 CST

服务器默认排序规则更改或不更改

  • 0

我们新服务器的默认排序规则是SQL_Latin1_General_CP1_CI_AS. 但是,用作将数据迁移到该服务器上的目标数据库的源的其他数据库的排序规则是Latin1_General_CI_AS.

为了避免在我们将数据从数据库 1(排序规则:)加载Latin1_General_CI_AS到数据库 2(排序规则:)时出现错误SQL_Latin1_General_CP1_CI_AS,我将数据库 2(目标数据库)的排序规则更改为Latin1_General_CI_AS.

但是我想知道它是否会产生任何副作用?服务器默认排序规则是什么原因SQL_Latin1_General_CP1_CI_AS?在性能等方面,它比其他排序规则好吗?

谢谢你的帮助。

sql-server sql-server-2008-r2
  • 1 个回答
  • 1234 Views
Martin Hope
Sky
Asked: 2013-01-17 20:49:03 +0800 CST

如何识别 db orphan mdf 和 ldf 文件

  • 2

我想识别磁盘上的孤立 mdf 和 ldf 文件并将它们删除。在互联网上搜索后,在 MSDN 论坛上找到了下面的脚本。但是当我运行脚本时,它会返回许多类似系统的 db 文件,这些文件似乎不是孤立的,或者至少不能安全删除!

您知道识别孤儿文件的更好方法吗?或者你能解释一下这些数据库文件指的是什么(删除它们是否安全)?

例如,以下文件出现在此查询的结果中:

在此处输入图像描述

/*
exec sp_configure 'show advanced' ,1
reconfigure
exec sp_configure 'xp_cmdshell' ,1
reconfigure
*/
if object_id('tempdb.dbo.#os_files') is not null
    drop table #os_files
create table #os_files([filename] varchar(2000))

--list all .mdf and .ldf files on the c drive
-- you will need to call this again to 
-- populate the #os_files table, if you have
-- db files on other databases eg. d:, e:

insert into #os_files exec xp_cmdshell 'DIR C:\*.mdf /b /s'
insert into #os_files exec xp_cmdshell 'DIR C:\*.ldf /b /s'

delete from #os_files where filename is null

update #os_files set filename=rtrim(filename)

select 
    os.filename as orphaned_files 
from 
    #os_files os
    left outer join master.dbo.sysaltfiles db on rtrim(db.filename) = os.filename 
where 
    db.dbid is null
order by 1

谢谢你。

sql-server-2008-r2
  • 2 个回答
  • 3023 Views
Martin Hope
Sky
Asked: 2013-01-02 19:59:11 +0800 CST

SQL Server 作业中的事务和 Try-catch

  • 9

我们在 SQL Server 作业的每个步骤中都有 DML 操作。为了确保在出现问题时回滚更新/插入,我已将每个步骤的数据修改包装在TRY CATCH和TRANSACTION块中:

BEGIN TRY
    BEGIN TRANSACTION

        [[INSERT/update statements]] ...

    IF @@TRANCOUNT > 0
    BEGIN
        COMMIT TRANSACTION
        PRINT 'Successful.'
    END

END TRY

BEGIN CATCH
    SELECT
        ERROR_NUMBER() AS ErrorNumber,
        ERROR_SEVERITY() AS ErrorSeverity,
        ERROR_STATE() AS ErrorState,
        ERROR_PROCEDURE() AS ErrorProcedure,
        ERROR_LINE() AS ErrorLine,
        ERROR_MESSAGE() AS ErrorMessage

    IF @@TRANCOUNT > 0
    BEGIN
        ROLLBACK TRANSACTION
        PRINT 'Unsuccessful.'
    END
END CATCH

它是否确保在发生错误时回滚数据操作?还是应该考虑其他因素?

会有更好的方法(使用配置等)吗?

谢谢你。

sql-server sql-server-2008-r2
  • 2 个回答
  • 14162 Views
Martin Hope
Sky
Asked: 2012-12-28 19:21:54 +0800 CST

在另一个作业中调用 SQL Server 作业

  • 13

是否可以调用 SQL Server 作业在另一个作业中运行?

我知道我们可以将 Job 1 的所有步骤添加到 Job 2,但我不想这样做。首先,作业 2 已经很大,其次我找不到复制粘贴选项来在作业之间复制步骤,因此手动添加步骤会很耗时。

任何建议表示赞赏。

sql-server-2008-r2 jobs
  • 3 个回答
  • 42588 Views
Martin Hope
Sky
Asked: 2012-12-10 17:31:15 +0800 CST

从 SQL Server 作业运行 SSIS 包时登录失败

  • 6

我有一个 SSIS 包,可以将数据从 Sybase 数据库迁移到 SQL Server。已通过 ODBC 连接建立到源数据库的连接。

如果我直接在我的机器上运行包,它会成功运行,但是如果我想通过我在本地机器(目标数据库所在的位置)上创建的 SQL Server 作业运行它,我会收到登录失败错误:

An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80004005  Description: "Login failed for user 'xxx\user1'.".  An OLE DB record is available.  Source: "Microsoft SQL Server Native Client 10.0"  Hresult: 0x80004005  Description: "Cannot open database "MySybaseDatabase" requested by the login.

我知道该作业实际上是作为“SQL Server 代理服务帐户”运行的,xxx\user1 它与在 ODBC 连接中设置访问源数据库的用户不同,但不知道为什么 odbc 连接登录不采取优先和使用而不是代理服务帐户?

我在不同的网站上阅读了一些帖子,他们在谈论设置代理等,但不知道这是否与我的问题非常相关。

已通过 ODBC 建立与源数据库的连接,但由于该步骤失败,我向其中添加了 userId 和密码,以强制 SQL 使用我想要的 userId 而不是 SQL Sever 代理用户,但这没有帮助。 在此处输入图像描述 您知道我们如何解决此登录问题吗?

谢谢你。

sql-server-2008-r2 ssis
  • 1 个回答
  • 30987 Views
Martin Hope
Sky
Asked: 2012-12-05 19:53:21 +0800 CST

使用参数执行 SQL 任务时出错

  • 3

我在 SSIS 包的错误处理程序部分中有一个执行 SQL 任务对象。它的作用是使用 OLE DB 连接向表中插入一条记录。插入语句中有一个值应该来自用户变量。

当我尝试传递查询时,我收到以下错误,我搜索了很多互联网并尝试了不同的东西,但仍然收到错误消息:

“查询解析失败。参数信息无法从 SQL 语句中导出。在准备命令之前设置参数信息。”

我为 SQLStatement 设置的是:

INSERT INTO ErrorLog(ErrorDateTime, ErrorDescription) VALUES(GETDATE(),?)

我在任务的参数映射部分有什么: 在此处输入图像描述

SQLSourceType 是“直接输入”,由于此查询没有结果,因此 ResultSet 已设置为“无”。

目标表中的 ErrorDescription 列是 varchar(max)。

知道如何解决这个问题吗?

t-sql sql-server-2008-r2
  • 1 个回答
  • 3398 Views
Martin Hope
Sky
Asked: 2012-11-02 18:14:42 +0800 CST

如何授予用户 UNSAFE ASSEMBLY 权限

  • 8

我们如何分配一个用户,例如:数据库所有者 (DBO) 的 UNSAFE ASSEMBLY 权限?

我要求它使用户能够创建程序集并且不知道 SA 密码,所以无能为力EXEC sp_changedbowner ‘sa’。

任何想法?

谢谢你。

sql-server sql-server-2008-r2
  • 2 个回答
  • 29624 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve