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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2011, 14:57   #1
Kudryavtsev
Заблокирован
 
Регистрация: 26.04.2011
Сообщений: 39
Радость Как использовать SimpleDataSet дважды...

Есть база xo с двумя таблицами users и statgame

Код:
(*процедура регистрации пользователя в базе*)
procedure TReg.AddUser;
var temp:string;
    users: integer;
    date: string;
begin
   {добавление пользователя в таблицу пользователей}
   date := FD2SQL(now);
   Game.SimpleDataSet.DataSet.CommandText := 'INSERT INTO users ' +
      '(login,password,rec,ip,dr,le,wins,lesions,draw,ng,state) ' +
           'VALUE ("' + NameEd.Text + '","' + PassEd.Text + '","' +
           RecEd.Text + '","' + GetLocalIP + '","' + date + '","' +
                                            date + '",0,0,0,0,1);';
   Game.SimpleDataSet.Execute;

   Game.SimpleDataSet.FieldDefs.Clear;
   Game.SimpleDataSet.First;
   while not Game.SimpleDataSet.Eof do
       begin
         Game.SimpleDataSet.DataSet.CommandText := 'select * from            statgame' + ' where info = "users";';
         temp := Game.SimpleDataSet.FieldByName('info').Asstring;
         if temp = 'users' then
            begin
              users:=strtoint(temp);
            end;
         Game.SimpleDataSet.Next;
       end;

   {обновление таблицы общей информации по игре}
   inc(users);
   Game.SimpleDataSet.DataSet.CommandText := 'UPDATE statgame SET '+
         'users = "'+users+'";';
    Game.SimpleDataSet.Execute;
end;
Вылетает с ошибкой:
SimpleDataSet: Field:info not found

Хотя таблица на месте и все правильно выставлено:
Поле Тип Сравнение Атрибуты Null По умолчанию Дополнительно Действие
info varchar(255) utf8_bin Нет Нет
stat int(11) Нет Нет

Собственно вопрос, как использовать simpledataset дважды)?
Kudryavtsev вне форума Ответить с цитированием
Старый 03.05.2011, 15:18   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Код:
   Game.SimpleDataSet.Execute;
   Game.SimpleDataSet.FieldDefs.Clear;
   Game.SimpleDataSet.First; //И что здесь можно найти в ЗАКРЫТОМ и ОЧИЩЕННОМ (после Execute и Clear)
  while not Game.SimpleDataSet.Eof do
Цитата:
Собственно вопрос, как использовать simpledataset дважды)?
Для просмотра и обновления ЛУЧШЕ использовать два РАЗНЫХ объекта.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 03.05.2011, 19:34   #3
Kudryavtsev
Заблокирован
 
Регистрация: 26.04.2011
Сообщений: 39
По умолчанию

А если у меня 15 таблиц...кидать 15 компонентов?)
Есть какое-нибудь рациональное решение использовать разные таблицы мускульной базы в делфи?
Kudryavtsev вне форума Ответить с цитированием
Старый 04.05.2011, 08:58   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
А если у меня 15 таблиц...кидать 15 компонентов?)
столько компонент сколько таблиц вы отображаете + столько компонент сколько таблиц одновременно вы хотите обновлять.
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбор строки в SimpleDataSet Lorden БД в Delphi 3 28.11.2010 18:57
mysql и SimpleDataSet onixred БД в Delphi 0 28.07.2010 06:29
SimpleDataSet для Access chekanoff Компоненты Delphi 1 15.09.2009 22:59
Как избежать повторение одного и того же номера дважды CockPuncher Microsoft Office Excel 6 03.09.2009 09:53
Как програмно дважды кликнуть в RichEdit? apromix Общие вопросы Delphi 10 23.05.2008 17:09