Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Вниз

MySQL и Multiple-step operation generated errors   Найти похожие ветки 

 
Stealth   (2005-12-08 13:10) [0]

Hi ALL!

Cоединениюсь с базой MySQL через ODBC.
Для соединения использую компонент TADOConnection.
Для работы с таблицей (предположим News) использую связку TADOQuery и TDataSource.
И вот что происходит:
хочу занести поля таблицы в TADOQuery, для этого подключаюсь к базе (через TADOConnection) перевожу свойство TADOQuery Active в True и нажимаю AddAllField.
Все поля таблицы добавились, но...
1. Если таблица пустая, он всем текстовым полям таблицы присваивает тип MEMO (хотя при создании таблицы они были созданы, например, как VARCHAR(150)).
2. Если в таблице добавить (через консоль) одну запись, то он ставит тип StringField (что мне и нужно), но размер его ставит не 150, как объявлено при создании таблицы (VARCHAR(150)), а столько, сколько символов забито в этом столбце в этой записи.
3. При попытке поменять свойство Size поля в ADOQuery с 13 символов (которые он сам поставил) на 150 символов (VARCHAR(150)) все проходит успешно... НО: при добавлении в таблицу через ADOQuery данных, если данные в этом столбце более чем 13 символов (которые он сам определил) возникает ошибка:
Multiple-step operation generated errors...

Как от этого избавится???????????
Может кто подскажет???

Данные вставляю так:

If News.State <> dsEdit then News.Edit;
News.Append;
News.FieldByName("Title").AsString := "Новая новость и описание Новая новость и описание Новая новость и описание";
News.Post;

Заранее спасибо. (Delphi 2005)


 
Desdechado ©   (2005-12-08 13:44) [1]

не используй AddAllFields, а добавляй вручную и без Active в Design-time

>Новая новость
масло масляное


 
Johnmen ©   (2005-12-08 13:44) [2]

Избавление радикальное - не использовать ODBC драйвер с ошибками.
А ещё радикальнее - перейти на dbExpress.


 
Sergey13 ©   (2005-12-08 13:48) [3]

If News.State <> dsEdit then News.Edit; - лишнее


 
Anatoly Podgoretsky ©   (2005-12-08 13:53) [4]

В мире столько кривых ODBC драйверов, что и не сосчитать.


 
Stealth   (2005-12-08 13:53) [5]

СПАСИБО ВСЕМ!!!!!!
Проблема была решена установкой флага Dont optimize column width в настройке DSN ODBC.
:o)

2 Johnmen:
сколько не бился - так и не получилось работать с MySQL через dbExpress в Delphi 2005.
А бился долго...

ЕЩЕ РАЗ ВСЕМ СПАСИБО!!!!!


 
Johnmen ©   (2005-12-08 13:58) [6]

>Stealth   (08.12.05 13:53) [5]
>сколько не бился - так и не получилось работать с MySQL через dbExpress в Delphi 2005.

Это странно. Там всё очень просто...


 
Stealth   (2005-12-08 15:12) [7]

ПРОБЛЕМА ТАК И НЕ РАЗРЕШИЛАСЬ!!!!!!
В свойствах полей все ок определилось...
Но при получении строки выскакивает ошибка, что мол ожидается String, а приходит MEMO
:o(

2 Johnmen:
Получилось настроить работу с dbExpress тока после того как с ихнего  сайта скачал новые драйвера!

ВСЕМ СПАСИБО!!!! (что перешел на dbExpress!!!)
:о)


 
raferty   (2006-01-20 16:28) [8]

Stealth, откуда драйвера качал? Это была библиотека dbexpmysql.dll?



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2006.03.12;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.012 c
15-1139943369
-Dfcz-
2006-02-14 21:56
2006.03.12
Delphi 2006


15-1139819794
msguns
2006-02-13 11:36
2006.03.12
Веб-дизайн. Инструмент.


1-1139316542
hgd
2006-02-07 15:49
2006.03.12
Подскажите с нажатием кнопки


2-1140570136
Bogdan1024
2006-02-22 04:02
2006.03.12
Скомандовать виндовс открыть файл.


2-1140669848
Silver__Dragon
2006-02-23 07:44
2006.03.12
Выделение цветом в TLIstBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский