【发布时间】:2014-03-19 05:34:23
【问题描述】:
我有一个 mysql 表,其中包含我用 PDF 填充的 Medium Blob 字段。
PDF 没有问题地存储在字段中,并使用以下查询插入:
INSERT INTO PDFHistory ( OrderId, PDFByteArray) VALUES ( 123456, Convert.ToBase64String(pdf.ByteArray))
我无法提取记录并填充 byte[] 对象。我收到错误消息“输入不是有效的 Base-64 字符串,因为它包含非 base 64 字符、两个以上的填充字符或填充字符中的非法字符。”
dbManager.Open();
using (DataTable dt = dbManager.ExecuteDataTable(CommandType.Text, "SELECT * FROM PDFHistory WHERE OrderId = {0} ORDER BY Timestamp DESC LIMIT 1" ))
{
if (dt.Rows.Count > 0)
{
byte[] PDFByteArray = Convert.FromBase64String(dt.Rows[0]["PDFByteArray"].ToString());
}
}
感谢任何见解。
编辑:
mysql blob 记录看起来像这样(一般)
JVBERi0xLjQKJ.....太多,无法发布.....AAAAAAAAAA==
【问题讨论】: