我继承了一些 SQL Server 数据库。有一个表(我称之为“G”),大约有 8670 万行,41 列宽,来自 SQL Server 2014 Standard 上的源数据库(我称之为“Q”),它得到了 ETL在 SQL Server 2008 R2 Standard 上具有相同表名的目标数据库(我将称之为“P”)。
即 [Q].[G] ---> [P].[G]
编辑:2017 年 3 月 20 日:有人问过源表是否是目标表的唯一源。是的,它是唯一的来源。就 ETL 而言,并没有发生任何真正的转变;它实际上旨在成为源数据的 1:1 副本。因此,没有计划向此目标表添加其他源。
[Q].[G] 中略多于一半的列是 VARCHAR(源表):
同样,[P].[G] 中的相同列是 NVARCHAR(目标表),具有相同宽度的相同列数。(换句话说,长度相同,但 NVARCHAR)。
这不是我的设计。
我想将 [P].[G](目标)列数据类型从 NVARCHAR 更改为 VARCHAR。我想安全地做到这一点(没有转换造成的数据丢失)。
如何查看目标表中每个 NVARCHAR 列中的数据值以确认该列是否实际包含任何 Unicode 数据?
可以检查每个 NVARCHAR 列的每个值(在循环中?)并告诉我是否有任何值是真正的 Unicode 的查询(DMV?)是理想的解决方案,但欢迎使用其他方法。
Kenneth Fisher 发表了一篇关于如何确定我的 SSIS 包是什么 SQL 版本的博客文章?2015 年 4 月。
它有一个表,其中列出了哪些 SQL 版本映射到PackageFormatVersion
在 XML 元数据中找到的 SSIS 包。这在查看 1 个单独的包时很有用。
我有一个包含大约 100 个 SSIS.DTSX
包的文件夹,我需要知道它们都是哪个 SQL 版本。
如何批量确定文件夹(文件系统)中PackageFormatVersion
多个.DTSX
包的(即 SQL 版本)是什么?
最终目标是确定哪个是正确的 TFS 版本来获取和实施以将这些包放入,因为当前不存在源代码控制系统。Kenneth 提供的表将帮助我回答这个问题,但首先我需要确认包 SQL 版本是什么。
假设我没有安装 BIDS 或 SSDT。
假设所需的输出是这样的,其中管道指定了一个新列:
PackageFilename | PackageFormatVersion
--------------------------------------
Package1.dtsx | 3
Package2.dtsx | 4
Run Code Online (Sandbox Code Playgroud)
欢迎使用 PowerShell、TSQL、可以抓取目录结构的 3rd 方工具或其他工具。
微软昨天发布了SQL Server 2017 CU10 KB4342123 (14.0.3037.1)。我尝试查看包含的修补程序列表,但没有看到任何对最近发布的远程代码执行漏洞修补程序KB4293805 CVE-2018-8273 (14.0.3035.2)安全更新的引用。
我们如何确定 SQL Server 2017 CU10 是否包含安全修补程序 KB4293805 CVE-2018-8273?
CU10 的更高版本号是否足以确定这一点?
注意:我已经在 CU9 上安装了 CVE-2018-8273 修复程序。
在数据库引擎上的 SQL Server 中,您可以运行这样的 SQL 查询来获取服务器的版本信息,例如版本和版本以及更新级别等。
SELECT @@VERSION
Run Code Online (Sandbox Code Playgroud)
查询 SSAS(表格或多维)实例的 MDX 等效项是什么?是否有 SSAS DMV 可以让我得到这个答案?
我浏览了SSAS DMV的联机丛书页面,但我没有注意到任何可以帮助我的 DMV。DISCOVER_INSTANCES 似乎没有信息。
假设 SQL Server 数据库引擎未与 SSAS 实例安装在同一台服务器上,因此我无法通过查询数据库引擎来检查这一点。
就我而言,这是针对 SQL 2012 表格实例,但也想知道如何查询多维实例。
sql-server ×3
datatypes ×1
dmv ×1
patching ×1
powershell ×1
ssas ×1
ssis ×1
t-sql ×1
unicode ×1
xml ×1