2012-03-03 169 views
2

我知道如何将字符串:简单的MySQL二进制数据插入

MySqlConnection connection = new MySqlConnection(); 
connection .Open(); 
MySqlCommand command = connection.CreateCommand(); 
command.CommandText = "INSERT INTO User ('username') VALUE ('David')"); 
command.ExecuteNonQuery(); 
connection.Close(); 

我如何可以插入使用VARBINARY二进制数据?

+1

从字段名称中删除引号(')。 – Devart 2012-03-03 16:17:22

回答

1

您可以将字符串作为是 -

command.CommandText = "INSERT INTO User (username) VALUE ('David')"); 

此外,您还可以将数据作为一个十六进制值,使用Encoding.GetBytes方法获取butes的数组,然后字节转换为十六进制字符串(编写特殊函数),结果应该是这样的 -

command.CommandText = "INSERT INTO User (username) VALUE (0x4461766964)"); 
+0

如果有2K的数据要插入,我会怎么做,这个字符串可能会非常长... – 2012-03-03 17:43:59

+0

2K不是太长。重要的是数据包的大小不要超过max_allowed_pa​​cket的值 - http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar_max_allowed_pa​​cket – Devart 2012-03-05 07:24:19