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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2010, 22:59   #11
Daur
Пользователь
 
Регистрация: 23.11.2008
Сообщений: 47
По умолчанию

Цитата:
Сообщение от vovk Посмотреть сообщение
Код:
'SELECT pole1, pole2, poleN , IIF( zachislen = true,'+QuotedStr('идти не оглядыватся')+ ', '+QuotedStr('стоять боятся')+') as zachislen  FROM имя_таблицы '
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
with  TADOQuery.Create(self) do
try
Connection:=ADOConnection1;
SQL.Text:=
'SELECT bal_matem, Bal_rus, Itog , IIF( zachis = true,'+QuotedStr('ДА')+ ', '+QuotedStr('Нет')+') as zachis  FROM Аттестационныеданные ';
ExecSQL;
finally
free;
adotable1.close;
adotable1.open;
end; end;
"..."
Daur вне форума Ответить с цитированием
Старый 30.05.2010, 23:14   #12
vovk
!=
Участник клуба
 
Аватар для vovk
 
Регистрация: 08.09.2008
Сообщений: 1,751
По умолчанию

божиш.. этот запрос не меняет данные в таблице, этот запрос создаёт набор данных, просто содержимое поля zachis будет по другому отображено. Ваше поле zachis логического типа, то есть позволяет содержать данные логическое нет (false) или да (true), кк это значение содержится в поле зависит от СУБД, но никак не возможно заметить данные логического типа на произвольные строковые данные. Может вам стоит просто изменить тип поля на текстовое? И тогда храните там хоть да/нет, хоть угу/неа, и проблем с отображением не будет

сделайте так у вас же есть на форме ADODataset, подсоедините его к гриду через datasource, напишите в обработчике какогонибудь события (на клик про кнопке чтоли)
ADODataset.CommandText:='SELECT bal_matem, Bal_rus, Itog , IIF( zachis = true,'+QuotedStr('ДА')+ ', '+QuotedStr('Нет')+') as zachis FROM Аттестационныеданные '; ADODataset.open;
и увидите в гриде желаемое (кстати в access логическое поле имеет 2 значения -1 (true) и 0 (false))

Последний раз редактировалось vovk; 30.05.2010 в 23:27.
vovk вне форума Ответить с цитированием
Старый 30.05.2010, 23:47   #13
Daur
Пользователь
 
Регистрация: 23.11.2008
Сообщений: 47
По умолчанию

Цитата:
Сообщение от vovk Посмотреть сообщение
божиш.. этот запрос не меняет данные в таблице, этот запрос создаёт набор данных, просто содержимое поля zachis будет по другому отображено. Ваше поле zachis логического типа, то есть позволяет содержать данные логическое нет (false) или да (true), кк это значение содержится в поле зависит от СУБД, но никак не возможно заметить данные логического типа на произвольные строковые данные. Может вам стоит просто изменить тип поля на текстовое? И тогда храните там хоть да/нет, хоть угу/неа, и проблем с отображением не будет

сделайте так у вас же есть на форме ADODataset, подсоедините его к гриду через datasource, напишите в обработчике какогонибудь события (на клик про кнопке чтоли)
ADODataset.CommandText:='SELECT bal_matem, Bal_rus, Itog , IIF( zachis = true,'+QuotedStr('ДА')+ ', '+QuotedStr('Нет')+') as zachis FROM Аттестационныеданные '; ADODataset.open;
и увидите в гриде желаемое (кстати в access логическое поле имеет 2 значения -1 (true) и 0 (false))

Так я с самого начала делал "Текстовое поле" а потом в БДгриде в (PickList) сохранял Да\Нет...и потом выбирал Да или Нет....а препод сказал сделать типа набрал больше 30 баллов и поле должно стать ДА или Зачислен....не набрал 30...поле должно стать Нет\не зачислен...из за этого вся проблема...я и подумал нужно брать логическое поле...
"..."
Daur вне форума Ответить с цитированием
Старый 30.05.2010, 23:51   #14
Daur
Пользователь
 
Регистрация: 23.11.2008
Сообщений: 47
По умолчанию

Цитата:
Сообщение от vovk Посмотреть сообщение
сделайте так у вас же есть на форме ADODataset, подсоедините его к гриду через datasource, напишите в обработчике какогонибудь события (на клик про кнопке чтоли)
ADODataset.CommandText:='SELECT bal_matem, Bal_rus, Itog , IIF( zachis = true,'+QuotedStr('ДА')+ ', '+QuotedStr('Нет')+') as zachis FROM Аттестационныеданные '; ADODataset.open;
и увидите в гриде желаемое (кстати в access логическое поле имеет 2 значения -1 (true) и 0 (false))
так вот вы мне помогли как это сделать...а я знаю завтра он скажет что бы (True и False) были на русском языке...вроде Да\Нет...
вот...ии это возможно..?
"..."
Daur вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
dataset и progressbar asimpsons БД в Delphi 14 29.07.2009 10:53
dataset sergei64_89 Общие вопросы .NET 1 19.09.2008 20:14
DataSet nimf БД в Delphi 3 28.01.2008 23:03
доступ к DataSet EdNovice БД в Delphi 0 11.05.2007 07:01