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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.06.2011, 14:12   #11
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Разобрался
Вот и молодец )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.06.2011, 14:37   #12
dukales
Пользователь
 
Регистрация: 26.06.2011
Сообщений: 58
По умолчанию

Возникла друга проблема:
Код:
//чистим старые данные   
ChoiceGame.SimpleDataSet.EmptyDataSet;
kol:=0;
ChoiceGame.SimpleDataSet.First;
  while not ChoiceGame.SimpleDataSet.Eof do
      begin
        ChoiceGame.SimpleDataSet.DataSet.CommandText := 'select state' +
                 ' from games where game = "k";';
        st := ChoiceGame.SimpleDataSet.FieldByName('state').Asstring;
        if st = '1' then
           begin
             kol:=kol+1;
           end;
        ChoiceGame.SimpleDataSet.Next;
      end;
ладно, предположим что у нас вообще ещё нет данных, но и такой код не работает:
Код:
ChoiceGame.SimpleDataSet.EmptyDataSet;
kol:=0;
ChoiceGame.SimpleDataSet.First;
  repeat
      begin
        ChoiceGame.SimpleDataSet.DataSet.CommandText := 'select state' +
                 ' from games where game = "k";';
        st := ChoiceGame.SimpleDataSet.FieldByName('state').Asstring;
        if st = '1' then
           begin
             kol:=kol+1;
           end;
        ChoiceGame.SimpleDataSet.Next;
      end;
 until not ChoiceGame.SimpleDataSet.Eof;
Выкидывает ошибку, что поля state нет в датасете. но как его не может быть, если я сделал выборку????
p.s. может лучше какую-нибудь другую связку компонентов для удачной работы моей игры с базой использовать? посоветуйте, пожалуйста!

Последний раз редактировалось dukales; 27.06.2011 в 14:45.
dukales вне форума Ответить с цитированием
Старый 27.06.2011, 15:13   #13
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

С этими компонентами не работал, так, предположительно. Возможно, если в CommandText помещается другой SELECT, то до этого фиелды нужно удалить?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.06.2011, 15:15   #14
dukales
Пользователь
 
Регистрация: 26.06.2011
Сообщений: 58
По умолчанию

Ну смотри. Я сначала сделал селект из таблицы users для авторизации пользователей. Очистил датасет. Теперь мне нужно сделать запрос в базу games с текущими играми, чтобы на форме выбора игры показать сколько человек где играют.
dukales вне форума Ответить с цитированием
Старый 27.06.2011, 15:21   #15
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Я имел ввиду выполнить ChoiceGame.SimpleDataSet.DataSet.Fi elds.Clear после очистки DataSet и перед новым запросом
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.06.2011, 15:30   #16
dukales
Пользователь
 
Регистрация: 26.06.2011
Сообщений: 58
По умолчанию

Код:
function searchin(name: string; state:integer):integer;
var st: string;
    kol: integer;
begin
kol:=0;
//чистим старые данные
ChoiceGame.SimpleDataSet.EmptyDataSet;
ChoiceGame.SimpleDataSet.DataSet.Fields.Clear;

ChoiceGame.SimpleDataSet.First;
  repeat
      begin
        ChoiceGame.Label11.Caption:='ты лошара!';
        ChoiceGame.SimpleDataSet.DataSet.CommandText := 'select state' +
                 ' from games where game = "k";';
        st := ChoiceGame.SimpleDataSet.FieldByName('state').Asstring;
        if st = '1' then
           begin
             kol:=kol+1;
           end;
        ChoiceGame.SimpleDataSet.Next;
      end;
 until not ChoiceGame.SimpleDataSet.Eof;
searchin:=kol;
end;
В цикл заходит, в Label11 выводится надпись, но всё равно вылетает ошибка, мол не знает компилятор что такое state
dukales вне форума Ответить с цитированием
Старый 27.06.2011, 15:37   #17
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А в этом DataSet свойство Active есть? Если есть, то может с ним поиграться?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 27.06.2011, 15:39   #18
dukales
Пользователь
 
Регистрация: 26.06.2011
Сообщений: 58
По умолчанию

Уже игрался, бесполезно.
dukales вне форума Ответить с цитированием
Старый 28.06.2011, 13:23   #19
dukales
Пользователь
 
Регистрация: 26.06.2011
Сообщений: 58
По умолчанию

так какого решение проблемки то?
dukales вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подойдет ли MySQL для организации базы данных Аватар Софт 1 18.04.2011 03:17
Проблема при организации поиска в БД. Arcanorum БД в Delphi 5 17.09.2010 20:40
Организации базы данных (PHP) dr.Chas Общие вопросы по программированию, компьютерный форум 32 29.08.2010 09:55
Delphi 7 выбор организации базы данных Streamline БД в Delphi 3 16.08.2010 14:39
Проблема при организации формы загрузки... Oleg Romanchuk Общие вопросы Delphi 3 23.03.2009 10:48