【发布时间】:2018-10-15 06:49:21
【问题描述】:
我希望从 mysql 数据库中读取一个 blob 文件并显示该 blob 的“散列”段。
这是我尝试过的。
MySqlConnection _connection = new MySqlConnection("Database=forum;Data Source=localhost;User Id=root;Password=");
MySqlCommand cmd = new MySqlCommand("SELECT data FROM xf_user_authenticate WHERE user_id=1", _connection);
_connection.Open();
MemoryStream ms = new MemoryStream();
FileStream fs;
Byte[] bindata;
bindata = (byte[])(cmd.ExecuteScalar());
ms.Write(bindata, 0, bindata.Length);
API.consoleOutput($"{bindata.Length} - {bindata.ToString()}");
这会输出到控制台,结果是
97 - 58
但这是我的 blob 的内容
a:1:{s:4:"hash";s:60:"$2y$10$myhashishere";}
【问题讨论】:
-
MySQL 的示例使用了阅读器和 GetBytes();你确定 ExecuteScalar 返回一个字节[]?