gpt4 book ai didi

c# - 将 base 64 字符串插入 SQL Server 数据库

转载 作者:太空狗 更新时间:2023-10-29 22:03:15 25 4
gpt4 key购买 nike

我从一个 XML 文件中获得了一个 base 64 字符串,我想将该字符串插入到我的 SQL Server 数据库中。我的数据库中的字段是哪种字段类型?变量(最大)?在插入我的数据库之前,我是否必须将 base 64 字符串转换为另一种格式?

最好的问候

最佳答案

如果您打算按原样存储您的 Base64 字符串,您可以使用 VARCHAR 数据类型。 Base64 编码被设计为仅使用 7 位 ASCII 字符。

但是,如果您更喜欢以二进制格式存储数据,则需要使用 VARBINARY 数据类型并将 Base64 字符串转换为二进制。您可以使用 XQuery 功能(从 SQL Server 2005 开始)轻松地将值转换为 VARBINARY,反之亦然。

将变量中的 Base64 值转换为 VARBINARY:

declare @str varchar(20);

set @str = '3qAAAA==';

select cast(N'' as xml).value('xs:base64Binary(sql:variable("@str"))', 'varbinary(20)');

将变量中的二进制值转换为 Base64:

declare @bin varbinary(20);

set @bin = 0xDEA00000;

select cast(N'' as xml).value('xs:base64Binary(xs:hexBinary(sql:variable("@bin")))', 'varchar(20)');

来源(以及更多示例):Converting from Base64 to varbinary and vice versa .

关于c# - 将 base 64 字符串插入 SQL Server 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1945266/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com