M
_Mike
Ввожу в обычную виндовую форму данные, собираю их в выражение INSERT INTO и пытаюсь добавить с его помощью запись в таблицу БД. В отладке получаю (скопировано):
strInsert = "INSERT INTO person (familija,imja,otchestvo,fio,layer,chef) VALUES ("Грап","Илья","Ильич","Грап И.И.","2","4")"
Далее код:
Dim cmdDocument As New OdbcCommand(strInsert, ODBCcn)
На следующей строке кода:
cmdDocument.ExecuteNonQuery() - получаю ошибку: ERROR [HYT00] [MySQL][ODBC 3.51 Driver][mysqld-5.0.22-community-nt]Data too long for column 'familija' at row 1
Это неправда, потому что:
1. в таблице уже есть много записей, с куда более длинными фамилиями
2. этот же самый запрос, введенный и исполненный в эксплорере MySQL отрабатывает без вопросов.
К сведению: замена кавычек на апострофы никак не влияет на результат (абсолютно то же), исполнение или неисполнение инструкции:
Dim cmdCodePage As New OdbcCommand("set character_set_results='cp1251'", ODBCcn)
cmdCodePage.ExecuteScalar()
так же на результат не влияет. Че делать? (Особо сложные советы могу не понять - я еще совсем "зеленый" (не путать с "голубым") и то что изложил - практически предел моих возможностей на данный момент)
strInsert = "INSERT INTO person (familija,imja,otchestvo,fio,layer,chef) VALUES ("Грап","Илья","Ильич","Грап И.И.","2","4")"
Далее код:
Dim cmdDocument As New OdbcCommand(strInsert, ODBCcn)
На следующей строке кода:
cmdDocument.ExecuteNonQuery() - получаю ошибку: ERROR [HYT00] [MySQL][ODBC 3.51 Driver][mysqld-5.0.22-community-nt]Data too long for column 'familija' at row 1
Это неправда, потому что:
1. в таблице уже есть много записей, с куда более длинными фамилиями
2. этот же самый запрос, введенный и исполненный в эксплорере MySQL отрабатывает без вопросов.
К сведению: замена кавычек на апострофы никак не влияет на результат (абсолютно то же), исполнение или неисполнение инструкции:
Dim cmdCodePage As New OdbcCommand("set character_set_results='cp1251'", ODBCcn)
cmdCodePage.ExecuteScalar()
так же на результат не влияет. Че делать? (Особо сложные советы могу не понять - я еще совсем "зеленый" (не путать с "голубым") и то что изложил - практически предел моих возможностей на данный момент)