Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Русские буквы в FB


Vasis ©   (2004-09-21 16:10:00) 

Можно ли в FB сделать запрос типа:
select CODE as Код, NAME as Имя
?


Рамиль   (2004-09-22 16:41:00) [1]

Vasis   (21.09.04 17:48) [9]
Ага, а если полей штук 30... Все TField'ы перебирать?

Трудно что ли?

procedure TfmSelect.SetCaptionsAndShow(Captions: array of string;
 aWidth: array of integer);
var
 i: integer;
begin
 dsSelect.Active := false;
 try
   dsSelect.DisableControls;
   dsSelect.SelectSQL.Text := SelectSQL;
   if DefSortfield <> '' then
     dsSelect.SelectSQL.Text := dsSelect.SelectSQL.Text + ' order by ' + DefSortfield;
   dsSelect.Open;
   for i := 1 to dsSelect.Fields.Count - 1 do //первое поле ключ
     with DBGridEh.Columns.Add do
     begin
       FieldName := dsSelect.Fields[i].FieldName;
       if Captions[i-1] <> '' then Title.Caption := Captions[i-1];
       if aWidth[i-1] <> 0 then Width := aWidth[i-1];
     end;
 finally
   dsSelect.EnableControls;
 end;
end;


Val   (2004-09-22 13:37:00) [2]

кто ищет..


Sergey13   (2004-09-22 13:03:00) [3]

ИМХО. Автор упорно себе гемороя ищет. И кажется нашел. 8-)


Val   (2004-09-22 12:46:00) [4]

[12] }|{yk ©   (21.09.04 18:30)
чтобы по стандарту было.


Ильш   (2004-09-22 06:43:00) [5]

названы то они у тебя русским тока в запросе
тут уж звиняйте в модифицирующих запросах надо писать так как в базе в таблицах поля обозваны


Vasis   (2004-09-21 18:38:00) [6]

Блин, рано обрадовался... После того, как поля названы русскими буквами, почему-то не срабатывают транзакции... Открываю таблицу, вывожу в DBGrid, изменяю, нажимаю ОК, пытаюсь сохранить:

Tr.StartTransaction;
try
Query.Post;
Tr.Commit;
except
Tr.Rollback;
end;

Коммит происходит, перечитываю запрос, как было - так и остается... хоть добавляю, хоть изменяю, хоть удаляю...


}|{yk   (2004-09-21 18:30:00) [7]

А as зачем? И без этого работает
select a.phones_number "Номер телефона" from phones a


Johnmen   (2004-09-21 18:04:00) [8]

По кр.мере в 1 диалекте FB1.5 под IBConsole это sniknik ©   (21.09.04 17:35) [7] не работает.


Vasis   (2004-09-21 17:51:00) [9]


> sniknik ©   (21.09.04 17:35) [7]
> > Не получается...
>
> > Запрос: select name as "Город" from cities
>
> а так?
> select a."name" as "Город" from cities a
> (tested on yaffil)

Во! получилось!

> Johnmen ©   (21.09.04 17:25) [6]
> Это работает в 3 диалекте.

Ну пока не написал [7], то и в 3 диалекте ошибки выдавались...

Все! Всем большое спасибо!!!!


Vasis   (2004-09-21 17:48:00) [10]


> -SeM-   (21.09.04 17:20) [5]
> Подозрение, что здесь пишешь двойные кавычки, а в проге
> (експерте) одинарные

неа, везде двойные...


> Роман Снегирев   (21.09.04 17:37) [8]
> А как хотя бы выводить? Как дать знать пользователю какое
> поле есть что... Или выдавать "Zapiska", "Kod", "Imya" ?
>
> да есть вообще то объекты типа TField, у которых всякие
> там свойства типа DisplayLabel и пр.

Ага, а если полей штук 30... Все TField'ы перебирать?


Роман Снегирев   (2004-09-21 17:37:00) [11]

А как хотя бы выводить? Как дать знать пользователю какое поле есть что... Или выдавать "Zapiska", "Kod", "Imya" ?

да есть вообще то объекты типа TField, у которых всякие там свойства типа DisplayLabel и пр.


sniknik   (2004-09-21 17:35:00) [12]

> Не получается...

> Запрос: select name as "Город" from cities

а так?
select a."name" as "Город" from cities a
(tested on yaffil)


Johnmen   (2004-09-21 17:25:00) [13]

Это работает в 3 диалекте.


-SeM-   (2004-09-21 17:20:00) [14]

Подозрение, что здесь пишешь двойные кавычки, а в проге (експерте) одинарные


Vasis   (2004-09-21 17:12:00) [15]


> -SeM-   (21.09.04 16:15) [1]
> Можно
> select CODE as "Код", NAME as "Имя"

Не получается...

Запрос: select name as "Город" from cities

Получаю сообщение (как из программы, так и из IBExpert'a):

Invalid token.
Dynamic SQL Error.
SQL error code = -104.
Token unknown - line 1, char 16.
"Город".


> Роман Снегирев   (21.09.04 16:16) [2]
> можно ...as "Имя", да только вот зачем?

А как хотя бы выводить? Как дать знать пользователю какое поле есть что... Или выдавать "Zapiska", "Kod", "Imya" ?


Val   (2004-09-21 16:31:00) [16]

>[2] Роман Снегирев   (21.09.04 16:16)
Например, не нужно создавать статических полей  - в сетке - русские заголовки.


Роман Снегирев   (2004-09-21 16:16:00) [17]

можно ...as "Имя", да только вот зачем?


-SeM-   (2004-09-21 16:15:00) [18]

Можно
select CODE as "Код", NAME as "Имя"


Наверх

Титульная страница Поиск, карта сайта Написать письмо