powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вставка картинки в базу mysql (c# odbc) что делаю нетак?
2 сообщений из 2, страница 1 из 1
Вставка картинки в базу mysql (c# odbc) что делаю нетак?
    #36791622
Denn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пытаюсь научиться вставлять картинки в базу (c#, odbc,mysql), пишу такой код:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
OpenFileDialog openFileDialog1 = new OpenFileDialog();
if(openFileDialog1.ShowDialog() == DialogResult.OK)
{
     if((myStream = openFileDialog1.OpenFile())!= null);
       {
            byte[] buf = new byte[myStream.Length];
            myStream.Read(buf,  0 , (int)myStream.Length);
            myStream.Close();
            OdbcConnection sqlConnection1 = new OdbcConnection(MyConString);

            String insertCmd = "INSERT INTO imagetest (image) (@pic)";
 
            OdbcCommand myCommand = new OdbcCommand(insertCmd, sqlConnection1);
            myCommand.Parameters.Add(new OdbcParameter("@pic", OdbcType.Image));
            myCommand.Parameters["@pic"].Value = buf;
            myCommand.Connection.Open();
            myCommand.ExecuteNonQuery();
            myCommand.Connection.Close();
        }
}

Выдает ошибку:
System.Data.Odbc.OdbcException: ERROR [42000] [MySQL][ODBC 5.1 Driver][mysqld-5.0.45-community-nt-log]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@pic)' at line 1
в System.Data.Odbc.OdbcConnection.HandleError(OdbcHandle hrHandle, RetCode retcode)
в System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader, Object[] methodArguments, SQL_API odbcApiMethod)
в System.Data.Odbc.OdbcCommand.ExecuteReaderObject(CommandBehavior behavior, String method, Boolean needReader)
в System.Data.Odbc.OdbcCommand.ExecuteNonQuery()

Если меняю "INSERT INTO imagetest (image) (@pic)"; на "INSERT INTO imagetest (text) (‘Простой текст’)";
То все проходит без ошибок, нужный текст в базе появляется, значит сам запрос верен, подскажите что делаю не так? (Нужно обязательно через ODBC)
...
Рейтинг: 0 / 0
Вставка картинки в базу mysql (c# odbc) что делаю нетак?
    #36792471
Denn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хм... спасибо за активное участие, разобрался, кто столкнется с похожей проблемой ответ такой:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
byte[] buf = new byte[myStream.Length];
myStream.Read(buf,  0 , (int)myStream.Length);
myStream.Close();
OdbcConnection sqlConnection1 = new OdbcConnection(MyConString);
String insertCmd = "INSERT INTO imagetest set image = ?";
OdbcCommand myCommand = new OdbcCommand(insertCmd, sqlConnection1);
OdbcParameter img = new OdbcParameter();
img.OdbcType = OdbcType.Image;
img.Value = buf;
myCommand.Parameters.Add(img);
myCommand.Connection.Open();
myCommand.ExecuteNonQuery();
myCommand.Connection.Close();
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вставка картинки в базу mysql (c# odbc) что делаю нетак?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]