我有一个复杂的嵌套 XML(从 C# 实体图生成),例如:
<Customers>
<Customer>
<Id>1</Id>
<Number>12345</Number>
<Addresses>
<Address>
<Id>100</Id>
<Street>my street </street>
<city>London</city>
</Address>
<Address>
<Id>101</Id>
<street>my street 2</street>
<city>Berlin</city>
</Address>
</Addresses>
<BankDetails>
<BankDetail>
<Id>222</Id>
<Iban>DE8439834934939434333</Iban>
</BankDetail>
<BankDetail>
<Id>228</Id>
<Iban>UK1237921391239123213</Iban>
</BankDetail>
</BankDetails>
<Orders>
<Order>
<OrderLine>
</OrderLine>
</Order>
</Orders>
</Customer>
</Customers>
Run Code Online (Sandbox Code Playgroud)
在将上述 XML 数据保存到实际表中之前,我需要先对其进行处理。为此,我创建了相应的表类型。这些表类型中的每一个都有一个额外的列(guid 为 ROWGUID),因此,如果我正在处理新数据(尚未分配主键),我会生成一个唯一键。我使用此列来保持不同表类型之间的关系完整性。
将上述嵌套 XML 转换为其相应表的 SQL 语法是什么,请记住子记录必须引用生成的父 guid?
我正在尝试将 Always Encrypted 应用程序部署到 Amazon AWS。有一个 2016 RDS 数据库和一个托管 ASP.NET 4.6 应用程序的 Windows Server 2016。
在 Windows Server 上,当应用程序在网络服务或应用程序池标识下运行时,我们得到的正是我非常确定的问题。
我们的错误:
System.Data.SqlClient.SqlException (0x80131904): Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding. ---> System.ComponentModel.Win32Exception (0x80004005): The wait operation timed out
到目前为止,没有任何效果(除了以管理员身份运行应用程序之外),我们不知道下一步该尝试什么。我们到处寻找某种“微软官方部署指南”,但所有这些都是关于如何在本地开发环境中使始终加密工作的教程,而不是关于服务器部署。
我需要将所有名字分成名字和姓氏。
\n\n我的名字在同一列中,并且名字有几个单词。\n例如
\n\ntable1\n\nNome\n____________________________________\nAbel da Silva Barros \nAbel da Silva Dias \nAbilio Rodrigo Garcia da Silva Costa \nAdelino David Oliveira Silva \nAdemar Adolfo Lopes Gomes \nAdriano Leonel Fernandes Castro Goncalves \nAgostinho Alberto Pereira Duarte \nAgostinho Fernando Nogueira Pereira \nAires Manuel Oliveira da Costa \nAlberto Costa \nAlberto Sergio Oliveira Dias Silva \nAlbino Mouta de Sousa \nAlfredo de Sousa Barreto \nAlfredo Guilherme Gon\xc3\xa7alves Cerqueira \nAlfredo Magalh\xc3\xa3es Queiros \nAlfredo Miguel Pereira Goncalves Vieira da Silva \nRun Code Online (Sandbox Code Playgroud)\n\n我需要这样的输出,只有拳头和姓氏!
\n\nAbel Barros\nAbel Dias\nAbilio …Run Code Online (Sandbox Code Playgroud) 我花了几天时间在谷歌搜索上寻找解决方案,但没有找到合适的解决方案。所以我把它贴在这里。
我有 3 台虚拟机。
虚拟机 1:
Windows Server 2012 R2 sp1,192.168.1.10
sql server 2016,端口 1432
sql server 2017,端口 1433
虚拟机2:
ubuntu 20.04
openssl 1.1.1p
虚拟机3:
ubuntu 22.04
openssl 3.0.2
在VM2(ubuntu 20.04)上:
连接到sql server 2016
sqlcmd -S 192.168.1.10,1432 -U test -P test
成功连接
连接到sql server 2017
sqlcmd -S 192.168.1.10,1433 -U test -P test
成功连接
在VM3(ubuntu 22.04)上:
连接到sql server 2017
sqlcmd -S 192.168.1.10,1433 -U test -P test
成功连接
连接到sql server 2016
sqlcmd -S 192.168.1.10,1432 -U test -P test
出现错误:
Sqlcmd:错误:适用于 SQL Server …
我需要从我们的生产数据库更新测试环境中的一些表。基本上是同一张表,只是更新了几个月。
所以,这是我试图实现的一个查询:
UPDATE [Server-DEV].[Database].[dbo].[bHRRM]
SET [Field1] = b.[Field1],
[Field2] = b.[Field2], ... ,
[FieldX] = b.[FieldX]
FROM [Server-PROD].[Database].[dbo].[bHRRM] AS b
Run Code Online (Sandbox Code Playgroud)
我不关心数据被覆盖,因为它是一样的。即使相反也是如此 - 如果有差异,最好测试服务器进行相应更新。但我不想要重复的。
KeyID现在,如果包含列,则存在问题。即使我将其排除在SET- 之外,仍然存在错误:
无法在具有唯一索引“biHRRM”的对象“dbo.bHRRM”中插入重复的键行。重复的键值为 (5, 1000)。
所以,第一个问题是——我做错了什么?
最近我安装了Microsoft Sql Server 2016,无论如何我找不到管理工作室文件,我想知道它位于何处?谢谢
我一直无法找到解决以下困境的可行解决方案。
我正在使用 SQL Server 2016 并在数据库中有下面显示的 2 个表。
Users 桌子:
Id Name
----------
1 Lisa
2 Paul
3 John
4 Mike
5 Tom
Run Code Online (Sandbox Code Playgroud)
Role 桌子:
Id UserId Role
------------------------
1 3 Manager
2 2,4,5 Developer
3 1 Designer
Run Code Online (Sandbox Code Playgroud)
我正在寻找循环遍历Role表的T-SQL 代码,提取UserIds 并Id从Users表中检索每个的关联名称。
所以循环结果看起来像这样:
John
Paul,Mike,Tom
Lisa
Run Code Online (Sandbox Code Playgroud) 我知道您可以使用下面的查询获取表的列的类型。
select COLUMN_NAME, DATA_TYPE
from INFORMATION_SCHEMA.COLUMNS
where TABLE_NAME = 'myTbl'
Run Code Online (Sandbox Code Playgroud)
我想知道是否在编写包含2个或更多表的选择查询时是否可以执行类似的操作?即有没有一种方法可以确定列数据类型?
我想随机更改表中记录的顺序。是否可以?我正在使用 SQL Server 2016。
Example:
From that:
[UID] [Name]
54 Name1
24 Name5
8 Name6
50 Name7
19 Name10
to like that: (randomly)
[UID] [Name]
50 Name7
8 Name6
19 Name10
54 Name1
24 Name5
Run Code Online (Sandbox Code Playgroud)
注意:这是两列
不需要100%替换记录,有时可以像彩票一样重复相同的顺序。我只需要混合它们。
sql-server-2016 ×10
sql-server ×8
sql ×4
t-sql ×2
iis ×1
openssl ×1
split ×1
ubuntu-22.04 ×1
xml ×1