Azure SQL数据库是Microsoft Azure中托管的关系PaaS数据库。 Azure SQL数据库为云开发人员提供可预测的性能,可伸缩性,业务连续性,数据保护和近乎零的管理。
我有一个表单(子表单,但不相关),它有一个多表链接表视图作为其记录源。到目前为止,我们在通过表单更新任何列时从未遇到过任何实际问题。我们有
将 New-AzSqlDatabaseExport 与 SAS 令牌结合使用
我正在尝试将 Azure SQL DB 作为 bacpac 文件导出到存储帐户中。我正在利用 AzSqlDatabaseExport pwshell 模块来实现此目的。如果我使用存储访问密钥,该脚本就可以工作,但是......
我正在尝试将每行的 sql 结果转换为 json 格式,尽管语法很困难。这个想法是使用 ADF 提取一些数据,将其转换为这种格式并提供给 api。 ...
我想将源表列表中的数据复制到目标表中 在源代码中我有以下 3 个表 测试_cus1 测试_cust2 测试_cust3 进入以下目标表 焦油_cus1 焦油_cus2
如何在 Azure 上为 SQL 存储过程创建 API 包装器
我在 Azure SQL 数据库上有一个存储过程,可以使用它来执行 EXEC [dbo].[PGET_JSON] @code = N'XYZ' 它返回 FOR JSON 结果 { “XX”:[ { “DocOstatni”:[...
我每个月都会尝试将一份 Power BI 报告导出到 Sharepoint 上的 XLSX 文件。数据是从 Azure SQL 数据库中提取的,查询是: ''' 从[报告]中选择*。[
sp_invoke_external_rest_endpoint 到 Azure 队列会导致有毒消息
从 Azure SQL 使用 sp_invoke_external_rest_endpoint 消息已成功在 Azure 队列中排队。有效负载是HelloWorld 使用 sp_invoke_external_rest_endpoint 从 Azure SQL 中,消息已成功在 Azure 队列中排队。有效负载是<QueueMessage><MessageText>HelloWorld</MessageText></QueueMessage>。 当队列触发的 Azure 函数使消息出队时,它最终会进入有害队列。 如果我采用相同的消息(在本例中为HelloWorld),并通过门户添加它(仅在选中“以 Base64 编码消息正文”时才有效),则消息成功出列。 我尝试了多种方法来了解后台发生的事情,但我已经没有想法了。 这感觉像是一个编码问题。关于如何最好地解决这个问题有什么想法吗? 如果想要重新创建体验,下面是一些代码。 SQL 代码(Azure SQL 数据库) DECLARE @QueueMessage_XML nvarchar(max) = N'<QueueMessage><MessageText>HelloWorld</MessageText></QueueMessage>'; DECLARE @QueueMessage nvarchar(max) = @QueueMessage_XML; DECLARE @Time datetime = SYSUTCDATETIME(); DECLARE @FormattedMoment nvarchar(50) = FORMAT(@Time, 'ddd, dd MMM yyyy HH:mm:ss' ) + ' GMT'; DECLARE @ContentType nvarchar(256) = N'"content-type":"application/xml"'; DECLARE @Accept nvarchar(256) = N'"accept":"application/xml"'; DECLARE @StorageApiMsVersion nvarchar(256) = N'"x-ms-version":"2023-11-03"'; DECLARE @MsDate nvarchar(256) = N'"x-ms-date":"' + @FormattedMoment + N'"'; DECLARE @HeadersArray table([HeaderItem] nvarchar(256) NOT NULL); INSERT INTO @HeadersArray ([HeaderItem]) VALUES (@ContentType), (@Accept), (@StorageApiMsVersion), (@MsDate); DECLARE @Headers nvarchar(4000) = N'{' + (SELECT STRING_AGG([HeaderItem], ',') FROM @HeadersArray) + N'}'; DECLARE @Method nvarchar(6) = N'POST'; DECLARE @TimeoutSeconds int = 30; DECLARE @Response nvarchar(max) = N''; DECLARE @VisibilityTimeoutSeconds int = 20; DECLARE @AccountName nvarchar(256) = N'stacctname'; DECLARE @QueueName nvarchar(256) = N'request'; DECLARE @QueueEndpoint nvarchar(256) = N'https://' + @AccountName + N'.queue.core.windows.net'; DECLARE @Url nvarchar(4000) = @QueueEndpoint + N'/' + @QueueName + N'/messages'; DECLARE @ReturnValue int = 0; EXEC @ReturnValue = sp_invoke_external_rest_endpoint @url = @Url, @payload = @QueueMessage, @headers = @Headers, @method = @Method, @credential = [https://stacctname.queue.core.windows.net], @timeout = @TimeoutSeconds, @response = @Response OUTPUT; SELECT @ReturnValue AS [ReturnValue], @Response AS [Response]; Azure 函数应用程序代码 隔离 C# .NET 8 Visual Studio 2022 版本 17.9.0 预览版 1.0 using Azure.Storage.Queues.Models; using Microsoft.Azure.Functions.Worker; using Microsoft.Extensions.Logging; namespace FunctionApp; public class DequeueRequest(ILogger<DequeueRequest> logger) { private readonly ILogger<DequeueRequest> _logger = logger; [Function(nameof(DequeueRequest))] public void Run([QueueTrigger("request", Connection = "AzureWebJobsStorage")] QueueMessage message) { //intentionally muted _ = message.Body; } } 更新 我主要缩小了范围,以确保该值是从 SQL BASE64_ENCODE(CAST(@Payload_String AS varbinary(max))) 中进行 base64 编码的。它几乎可以解决这个问题,但是当尝试 JSON 序列化从队列中拉出的字符串时,它会抛出一个我无法跟踪的错误。原始字符串是有效的并确认可以通过序列化,因此这是关于从队列中拉出并发送到 json 序列化程序时发生的转换。 IOW,如下确认反序列化成功 var request = JsonSerializer.Deserialize<Request>( @"{""RequestId"":80,""StartDate"":""1753-01-01T00:00:00"",""EndDate"":""9999-12-29T00:00:00""}") 下面失败并将消息变成有毒消息(其中消息正文应该是base64字符串) var request = JsonSerializer.Deserialize<Request>(message.Body.ToString()); 已解决(至少是一个工作解决方案。作为替代工作解决方案,可能会提高效率或减少“必须做的事情”) 顶级域名;DR ... BASE64_ENCODE 将用作 <MessageText> 值的非 unicode 字符串 将此编码后的消息放入xml格式(如下) <QueueMessage><MessageText>base64_encoded_value</MessageText></QueueMessage> 如果字符串值来自 FOR JSON 语句,请确保编码采用该值的非 unicode 表示形式(这是关键,但作为编码问题的原因并不明显)。 我的基本经验测试表明 BASE64_ENCODE 必须 是非 unicode 值的 varbinary(至少对于我的问题所需的字符)。
我已使用以下代码将数据写入Azure sql数据库: def write_to_sqldatabase(final_table, target_table): #将表数据写入spark dataframe Final_table.write.format(...
我在 Azure SQL 上执行存储过程时遇到问题。顺便说一句,该过程很大,平均执行时间约为 30-40 秒。 有一个主数据库和一个副本。 我的 API
无法授予 AD 组访问权限以连接到 Azure SQL Server/数据库
因此,我创建了一个 Azure SQL 服务器,并在该服务器下有几个数据库。我的主要目标是允许其他几个 AD(现在是 Entra?)组访问服务器下的数据库。我不
如何使用在部署管道中运行的控制台应用程序连接到具有托管标识的 Azure SQL 数据库?
我正在尝试使用托管标识以无密码方式连接到 Azure SQL 数据库。连接我的 .NET Core 网站很顺利,但现在我正在尝试使用控制台应用程序做同样的事情...
使用azure数据工厂将雪花中的别名列名称插入到azure sql中
我有下面的选择查询,它从雪花中的多个表中选择值并插入到azure sql中 我正在使用 azure 数据工厂...... 选择 a.first_name 作为名称,b.emp_id 作为 Id ...
如何使用azure数据工厂将选定的列从ADLS表复制到Azure Sql数据库
我正在尝试将选定的列从 ADLS 表复制到 Azure sql 数据库。 我为源端和接收端创建了一个数据集,那么下一步是什么
应用此线程中提供的解决方案(基本上是将用户管理员角色添加到我正在使用的托管身份中)后,在连接到 m...
我有一个 Azure 托管立场数据库,其中存储了多个租户。现在,我的一位客户正在请求数据源来使用 Power BI 运行报告。我正在寻找最好的方法我该怎么做
无法使用 ODBC 驱动程序 17 和 Authentication=ActiveDirectoryMsi 连接到 Azure SQL 数据库
我尝试使用 Azure Active DIRECTORY 用户托管标识将 Azure 容器实例连接到我的 Azure SQL 数据库。但我无法使用 ODBC 驱动程序 17 建立连接。 错误混乱...
如何使用无密码连接字符串将 Visual Studio 中的 ASP.NET MVC 项目连接到 Azure SQL 数据库
我想找到一种利用 Azure 托管标识无需密码即可连接到 Azure SQL 数据库的解决方案。 我已经根据以下文档在Azure上完成了设置。然而...
在 M1 mac 上使用 Python 中的 SQLAlchemy 连接到 Azure 数据库
我尝试连接到 Azure SQL Server 数据库,但不断收到此错误: (pyodbc.InterfaceError) ('IM002', '[IM002] [unixODBC][驱动程序管理器]未找到数据源名称且没有默认值
相同的查询 - 不同的 Azure SQL - 关闭逻辑读取 - 不同的性能
X Azure SQL DB 和 Y Azure SQL DB 在不同的 SQL 弹性池上运行。 即使同一个查询返回不同的行数,但其执行的逻辑读取次数却很接近,w...
Java JDBC RowMapper:将 MSSQL Server datetimeoffset 转换为 Java OffsetDateTime
我正在使用 JDBC 模板从 MS SQL Server / Azure 中的数据库检索数据。我有我的 注册日期作为 SQL 中的 datetimeoffset。对应的RowMapper/ResultSet方法是什么,来转换...