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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2012, 16:32   #1
Dexes
Пользователь
 
Регистрация: 27.12.2011
Сообщений: 86
По умолчанию missing data provider or data packet

При исполнении кода
Код:
      SDS.Active:=false;
      SDS.DataSet.CommandText:='select posts_id from posts where name="'+ComboBox2.Text+'";';
      SDS.Active:=true;
      SDS.DataSet.Open;
      S:=SDS.DataSet.FieldByName('posts_id').AsString;
      SDS.DataSet.Close;
      SDS.Active:=false;
      SDS.DataSet.CommandText:='insert into user (name,password,moder,posts_id) values ("'+Edit1.Text+'","'+Edit2.Text+'",1,'+s+')';
      SDS.Execute;
Выползает ошибка
"SDS: missing data provider or data packet"
SDS - TSimpleDataSet
SQL-запрос в самом MySQL выполняется нормально (проверил)
Из-за чего может возникать данная ошибка?
Dexes вне форума Ответить с цитированием
Старый 06.01.2012, 11:35   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Dexes, сомневаюсь что по работе с TSimpleDataSet здесь вам помогут. Еще не встречал вопросов с ним связанных. Наверно очень редко используемый компонент. Если интуитивно, то могу предположить, что либо какая-то проблема с настройкой соединения с базой данннных, либо свойства компонента не правильно настроены. Рекомендовал бы вам перейти на компоненты ADO, по ним гораздо больше инфы, да и помощь получить проще
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 06.01.2012 в 11:41.
Аватар вне форума Ответить с цитированием
Старый 06.01.2012, 11:47   #3
Dexes
Пользователь
 
Регистрация: 27.12.2011
Сообщений: 86
По умолчанию

В выполняемой задаче к сожалению уже не могу использовать ADO.
Эту проблему решил так: кинул второй SDS на форму, один используется для select (выполняется через .Active:=true), второй использую для Insert, Update, Delete (выполняется через св-во .Execute). Как ни странно, но при таком разграничении оба SimpleDataSet работают без ошибок.
Dexes вне форума Ответить с цитированием
Старый 06.01.2012, 11:58   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Имею предположение, что мешают ранее созданные при работе с SELECT фиелды, которые остаются после деактивации. Возможно если их все почистить, то и удастся этим же компонентом воспользоваться. Но это так, мысли вслух.

ADD

Кстати, если в компоненте редктировать инфу (методы Edit, Delete, Append), то пользуясь AppleUpdate можно изменения загонять в базу без явных команд Insert, Update, Delete
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 06.01.2012 в 12:14.
Аватар вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Конструкция TTreeNode.Data Reqq Общие вопросы Delphi 7 24.09.2011 20:56
Data Modul SERG1980 БД в Delphi 2 11.11.2010 15:24
Data Validation HTR Microsoft Office Excel 2 28.03.2009 18:17
Data Explorer gotex БД в Delphi 12 05.05.2008 22:04
Data neas Помощь студентам 1 03.03.2008 16:26