C# Sql类型和加密大小
我将在一些动态生成的Sql Server 2012表上引入对称密钥加密 我希望存储:C# Sql类型和加密大小,c#,sql,sql-server,sql-server-2012,encryption-symmetric,C#,Sql,Sql Server,Sql Server 2012,Encryption Symmetric,我将在一些动态生成的Sql Server 2012表上引入对称密钥加密 我希望存储: 瓦尔查尔(X) 整数 日期时间 布尔值 我使用 CREATE SYMMETRIC KEY MyKey WITH ALGORITHM = AES_256 ENCRYPTION BY CERTIFICATE MyCertificate GO 我使用插入数据,即 insert into SecureTable(value) values (EncryptByKey(@ui, CONVERT(varb
CREATE SYMMETRIC KEY MyKey
WITH ALGORITHM = AES_256
ENCRYPTION BY CERTIFICATE MyCertificate
GO
我使用插入数据,即
insert into SecureTable(value) values (EncryptByKey(@ui, CONVERT(varbinary(max), 12345)))
结果是:
0x0022377E67EFF34DAAAD0F812153593D01000000C867C6F2085D3850BF1F50275945CFEA90297C51D537E8C443B5F34050B325E0
如何有效地调整目标列的大小?使用AlwaysVARBINARY(MAX)
感觉不对
我要找的东西是:
- int=>varbinary(32)
- varchar(x)=>varbinary(Y)
- 布尔=>varbinary(10)
- 数据时间=>
- 整数:需要52个字节
- varchar(X):需要X+45到X+65字节
- 浮点:68字节
- 十进制(30,12):68字节
- 日期时间:68字节
- 位:52字节