这是指这个问题:Duplicate records returned from table with no duplicates
“读提交”隔离级别假定一个事务可以以不同的方式读取同一条记录,但并不明确暗示记录可以重复。我同意同一事务中的两个语句可以返回不同的数据集,但返回带有重复记录的相同数据集听起来很疯狂。
据我所知,只有 MS SQL Server 有这种行为。
如果它符合ANSI SQL 标准定义的“Read Committed”隔离级别,请证明或反驳。
我正在使用此代码来混合日期和时间以将其用作唯一 ID
DateTime.Now.ToString("yyyyMMddHHmmssfffff")
Run Code Online (Sandbox Code Playgroud)
在 SQL Server 2017 中,我很困惑我可以使用哪种数据类型的最佳最小大小来存储此字符串。
最好的最小数据类型是什么:bigint,timestamp或varchar(19)?
我max_server_memory在我们的生产 SQL Server 上将设置配置为 141 GB,目标/总服务器内存为 144 GB。
我认为max_server_memory代表我愿意让 SQL Server 引擎使用多少内存,如果是这样,为什么它使用更多?
运行 SQL Server 2012 SP3,安装了 160 GB 内存的物理机,机器上没有运行其他实例,但我们也在运行集成服务。
我们有 75 个用户数据库,总大小为 928 GB。我不确定是否正在使用列存储,或者我如何检查它。这是一个供应商应用程序。
现在目标内存 = 144,384,008,总计 = 144,378,261。
该实例自美国东部时间昨晚 2019-05-01 22:20:21.097 以来一直在运行。我们有一些基础设施维护需要停止实例。但是,我注意到很长一段时间以来,总/目标始终为 144,而最大值始终设置为 141。周一至周五主要工作时间的 PLE 平均约为 0.5 到 1 小时,有时会跳至 2 小时.
我有这个查询:
SELECT fksiteID, SUM(SearchTypePerson) +
SUM(SearchTypeLocker) +
SUM(SearchTypeSpotRandom) +
SUM(SearchTypePersVehicle) +
SUM(SearchTypeVisitorContractorVehicle) +
SUM(SearchTypeCompanyVehicle) +
SUM(SearchTypeToilet) +
SUM(PatrolExternal) +
SUM(PatrolCarPark) +
SUM(PatrolPerimeter) +
SUM(PatrolInternal) +
SUM(VehicleCheckAmbientLine) +
SUM(VehicleCheckFridgeLine) +
SUM(VehicleCheckSealChecks) +
SUM(OtherChecksIDCards) +
SUM(OtherChecksIncidentReports) +
SUM(OtherChecksColdStoreChecks) AS NumChecks
FROM [AIP].[dbo].[AAHOfficerDailyActivityReport]
WHERE MonthOfReport = 6 AND RecordIsDeletedYN = 0 AND fkSiteID in (945,947,948,949,950,951,952)
GROUP BY fkSiteID
Run Code Online (Sandbox Code Playgroud)
这给出了这个结果:
fksiteID NumChecks
945 228
947 27
949 58
951 67
952 1015
Run Code Online (Sandbox Code Playgroud)
但是我希望它返回:
fksiteID NumChecks
945 228
947 27
948 0
949 58
950 …Run Code Online (Sandbox Code Playgroud) 我刚刚安装了 SQL Server Developer Edition 和 SQL Server Management Studio,如何配置服务器?我想将其配置为服务器名称为 localhost-sql-server,并带有登录名/密码。我找到了配置管理器,但不确定在哪里可以修改它。
我的公司正在进行 IT 大修,并考虑从 MS SQL Server(2016 标准版)转移到 MySQL 数据库(版本 5.6.10)。我已经使用 MS SQL Server 多年了,所以我很担心做出这个举动。基本上 - 我们的 IT 团队认为 MySQL 是免费的,并且只进行了一些语法更改。
我花了一天的时间阅读这些差异,老实说发现它们似乎非常相似。如果我要为 MS SQL Server 做一个案例 - 那么现在是时候去做了。一个关键细节——我们是一家分析公司,我们的 SQL 查询通常很复杂——所以我需要确保我们未来的 RDBMS 达到标准。
我多次遇到以下语句(关于过滤),我需要翻译。我对此的解释是,不可能使用单个查询来连接来自不同数据库的表。但是我看过 YouTube 视频,人们在 MySQL 中就是这样做的。请帮助我理解这种差异以及它是否重要。
MySQL 允许用户以多种方式过滤表、行和用户。但它需要用户按单个数据库过滤表、行或用户。在过滤数据时,开发人员必须通过运行多个查询来单独过滤数据库表。另一方面,SQL Server 使开发人员能够利用基于行的筛选。基于行的过滤选项按数据库方式过滤数据库上的数据。此外,过滤后的数据存储在单独的分发数据库中。因此,程序员在不考虑数据库数量的情况下过滤多行变得更加容易。
非常感谢您帮助破译引用的声明以及您看到的此举动的任何优点/缺点。谢谢!
我有一个csv包含 350,000 行的文件。想要按照与csv文件中相同的顺序将数据插入到临时表中。我正在尝试BULK INSERT使用:
BULK INSERT ##AllRows
FROM @FilePath
WITH
(
FIELDTERMINATOR = '\n'
)
Run Code Online (Sandbox Code Playgroud)
不幸的是,BULK INSERT按随机顺序插入数据。我每次执行的标题都在不同的行中。我在 SQL Server 2016 上运行它。是否有可能在旧版本的 SQL Server 中顺序方式有所不同?
使用该FIRSTROW选项不会将标题识别为文件的第一行。文件没有任何我们可以订购的列。在文件中,标题始终位于第一行。
这可能是巧合,但即使如此FIRSTROW=2,我的标题也有可能出现在表格中。我查了一下。看起来csv文件包含的行数越多,插入到表中的机会就越随机。
我刚刚去了一些资源说:
统一范围由单个对象拥有,混合范围最多可以由 8 个对象共享。
但是我无法理解他们的洞察力的含义,比如这种结构的好处是什么?基本上,我是这个领域的新手,所以如果你能提供一些直观的例子和应用程序,将不胜感激。
我们正在运行 SQL Server Standard 2016。有时需要安装 Microsoft 更新并重新启动服务器。
我们被要求研究在重启期间保持数据库可用。
因此,出于性能原因,我们不需要另一个数据库服务器,数据库应该“简单”在常规 Windows 更新的重新启动过程中可用。
在这种情况下,首选设置是什么?
sql-server ×10
bulk-insert ×1
csv ×1
data-pages ×1
datatypes ×1
group-by ×1
installation ×1
memory ×1
mysql ×1
restore ×1
sql-standard ×1
timestamp ×1