Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.10.2008, 09:29   #1
shurik12
 
Регистрация: 03.10.2008
Сообщений: 6
По умолчанию ПРОБЛЕМА ДОБАВ ДАННЫХ В ПОЛЯХ ТИПА TEXT NTEXT В MYSQL2000

У меня база созданная MYSQL2000 а юзерское приложение написано на Delphi2006.
Ну так вот в таблице сущест. такое поле VIDIO типом ntext и я не могу добавить туда свой данные из своего приложения

добовляю так-----

form1.ADOTable1.Edit();
*********
form1.ADOTable1Video.AsString:=Memo 2.Lines.Text;
form1.ADOTable1.Post;

выдается ошибка
project baza_dan.exe raised exception class EOleExeception with 'The guery processor could not produre a guery plan from the optimezer because a guery cannot update a text,ntext, or image column and a clustering key at the same time'.
shurik12 вне форума Ответить с цитированием
Старый 06.10.2008, 17:58   #2
KAMENYKA
Пользователь
 
Аватар для KAMENYKA
 
Регистрация: 06.12.2007
Сообщений: 87
По умолчанию

Да ну ты даёш!!! Даже если у тебя это получиться у тебя данные занесуться исключительно в ДатаСет а не в базу!! А вообще советую тебе использовать ADODataSet пользоваться им так:
var s:string;
begin
s:='Select * From Main';
if ADODataSetTree.State<>dsInactive then ADODataSetTree.Close; {Проверяем состояние дата сета если активен то закрваем}
ADODataSetTree.Connection:=ADOConne ction;{Указываем коннект}
ADODataSetTree.CommandText:=s;{прис ваеваем запрос}
ADODataSetTree.Open;{Открываем\Выпо лняем запрос}
ADODataSetTree.Connection:=nil;{Отк онекчиваем ДатаСет}

ЭТО ПРЕМЕР ЗАГРУЗКИ ТАБЛИЦЫ!!
Вот пример записи в ДатаСет:

ADODataSetTree.Edit;
ADODataSetTree.FieldByName('Имя поля').{Value}{ASString}{ASInteger и т.д}:='Что хочеш то и присваевай только смотри чтоб типы совподали!';
ADODataSetTree.Post;

Но это ещё не всё!!этим мы только занесли данные в ДАтаСет но не в базу!!! В базу заносим следующим оброзом:

запрос на вставку
s:='Insert Into {Имя таблицы}({перечисление полей через запятую}) VALUES({Перечисление полей через запятую в томже порядке что и поля}) '
ADOConnection.Execute(s);

А вообще советую тебе почитать чтонибуть про ДатаСет

Ну если это поможет то я не зря сторался
KAMENYKA вне форума Ответить с цитированием
Старый 07.10.2008, 20:31   #3
shurik12
 
Регистрация: 03.10.2008
Сообщений: 6
По умолчанию

Большое спосибо все заработало но как-то не очень стабильно, грубо говоря раз через раз
shurik12 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
передача данных типа Record... Рустам Работа с сетью в Delphi 4 24.01.2010 09:51
Получение типа данных Proof БД в Delphi 2 14.05.2008 20:38
Создание своего типа данных xGroupers Общие вопросы Delphi 4 12.05.2008 13:53
Смена типа данных?? Agrophena Паскаль, Turbo Pascal, PascalABC.NET 4 17.11.2007 16:29