小编ElD*_*Dog的帖子

如何将现有 GUID 插入脚本中的 Oracle RAW(16) 字段

我有一个 sql server 脚本,它将已知的固定 guid 值插入到表中。看起来像:

INSERT INTO MyTable (ID)
VALUES ('BBD098BF-58F0-4A84-90C2-F806D6D06061')
Run Code Online (Sandbox Code Playgroud)

请注意,guid 是人类可读的形式。由于ID是uniqueidentifier,sql server理解如何将字符串转换为guid数据类型。

我需要为Oracle制作相同的脚本,ID是RAW(16)类型。直接获取脚本是行不通的,因为 Oracle 将字符串解释为二进制文件,它应该是一些“其他”字符串,即正确二进制块的字符串表示形式。

有谁知道如何将人类可读的sql服务器字符串转换为Oracle所需的字符串?

例如,到目前为止,我只能考虑在 .net 代码中将 guid 保存到 Oracle,而不是在 oracle 脚本中进行选择来获取字符串。但这太疯狂了。

谢谢!

sql sql-server oracle

4
推荐指数
1
解决办法
1万
查看次数

使用Windows AES加密提供程序解密C++中的C#加密数据

我需要使用RijndaelManaged在C#中加密数据并在C++代码中解密.

C#加密代码:

static string Encrypt(string plainText)
{
    byte[] plainTextBytes = Encoding.UTF8.GetBytes(plainText);

    var keyBytes = new byte[] { /* ... 32 bytes of a key */};
    byte[] iv = new byte[] { /* ... 16 bytes of IV */ };


    var symmetricKey = new RijndaelManaged() 
    { 
        Mode = CipherMode.CBC, 
        Padding = PaddingMode.Zeros, 
        BlockSize = 128, // Must be 128 to be compatible with AES
        KeySize = 256 
    };

    var encryptor = symmetricKey.CreateEncryptor(keyBytes, iv);

    byte[] cipherTextBytes;
    using(var memoryStream = new MemoryStream())
    { …
Run Code Online (Sandbox Code Playgroud)

c# c++ encryption aes

3
推荐指数
1
解决办法
560
查看次数

TryParse:出错时设置哪个值?

int的TryParse方法的签名(其他是相同的)如下:

public static bool TryParse(string s, out int result)
Run Code Online (Sandbox Code Playgroud)

其中"out"表示即使在解析不成功的情况下也必须初始化结果.是否记录了在解析失败的情况下TryParse(s)设置变量的值?

我需要将一些值初始化为已解析的值,或者在解析失败的情况下将其初始化为默认值,如果保证默认值,我甚至不需要检查结果.

.net c#

0
推荐指数
1
解决办法
319
查看次数

标签 统计

c# ×2

.net ×1

aes ×1

c++ ×1

encryption ×1

oracle ×1

sql ×1

sql-server ×1