【问题标题】:Serialize values in T-SQL query序列化 T-SQL 查询中的值
【发布时间】:2014-01-27 19:31:22
【问题描述】:

我正在尝试使用文件中的值填充数据库中的表。 我得到了所有的工作,但我遇到了一个问题。 使用数据库的应用程序(C# 应用程序)在插入数据时序列化数据值,然后在以后使用时反序列化它们。

我无权访问 C# 应用程序的代码,因此没有太多关于它的信息。 表格中有两个字段,一个是friendlyValue,一个是value

例如:

“71”->“214783719”

“蒙台梭利雷焦艾米利亚文化 -> |S3VsdHVyLCBNb250ZXNzb3Jp|UmVnZ2lvIEVtaWxpYQ==|”

"0 (F, förskoleklass) 1 2 3 4 5" -> "|MCAoRiwgZsO2cnNrb2xla2xhc3Mp|MQ==|Mg==|Mw==|NA==|NQ==|"

“Språk”->“|U3Byw6Vr|”

“15-55”->“21474836632147483703”

无论如何在 T-SQL 查询中以这种方式序列化数据吗? 使用存储过程或函数?

【问题讨论】:

  • 不可能序列化和反序列化。可能是一些加解密...
  • 看起来像 base64 编码的。
  • 啊,你是对的。文本似乎是 base64 编码的。但是数字呢?
  • 数字 15,55,71 似乎都因某种原因被2147483648 抵消了。
  • SO 帮助您破译应用程序的序列化程序

标签: .net sql-server sql-server-2008 tsql serialization


【解决方案1】:

您可以访问 C# 应用程序的二进制文件吗?如果是这样,您可以使用像 ILSpy 这样的 .NET 反编译器软件,您可以从 here 下载该软件来反编译 .NET 二进制文件并查看您的数据是如何编码的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-07-22
    • 2014-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多