MySQL не распознает изображение - PullRequest
0 голосов
/ 20 декабря 2011

У меня есть клиентское приложение, встроенное в C #, которое отправляет изображение вместе с идентификатором в веб-сервис. Затем веб-служба получает эту информацию и вставляет ее в базу данных MySQL. Но кто-то, веб-метод не может распознать изображение, и вместо этого он просто сохраняет @icon в базе данных .... кто-нибудь может сказать мне, где я делаю ошибку? Заранее спасибо!

[WebMethod]
public string sendDataToMySql(string application_id, byte[] buffer)
{
    string MyConString = "SERVER=localhost;" +
           "DATABASE=test;" +
           "UID=root;" +
           "PASSWORD=password;";


    MySqlConnection connection = new MySqlConnection(MyConString);
    connection.Open();
    MySqlCommand command = new MySqlCommand("", connection);
    command.CommandText = "UPDATE application SET icon='@icon' WHERE application_id='" + application_id +"';";

    MySqlParameter oParam1 = command.Parameters.Add("@icon", MySqlDbType.Blob);
    oParam1.Value = buffer;

    command.ExecuteNonQuery();

    connection.Close();
    return "Data was inserted successfully!";
   }

1 Ответ

1 голос
/ 20 декабря 2011

Если бы мне пришлось что-то угадать, было бы SET icon='@icon' должно быть SET icon=@icon. Первое имеет смысл, только если вы действительно хотите вставить этот строковый литерал.

И вторая вещь, о которой я хотел бы знать, это @icon против ?icon. Я вижу код asp.net в stackoverflow со ссылкой на синтаксис вопросительного знака и dev.mysql.com со ссылкой на синтаксис символа at.

Я должен признаться, что было бы правильным для любых существующих драйверов там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...