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

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

db component and ACSII


Страницы:   1 2

bit ©   (2009-01-04 23:58:00) 

Проблема при исполнении консольной программы возникает ошибка.
Возможно неправильная декларация  TADOQuery.
Это правильная инициализация/декларация :
q1: TADOQuery;
q1:= nil;
?

Цель фоновый процесс который работает с db(mysql) через MySQL connector v3.xx.

Как "заставить" TListViev отображать ACSII кодировку?

program ConsoleClient;

{$APPTYPE CONSOLE}

uses
 Windows,
 Messages,
 SysUtils,
...

var
q1: TADOQuery;
SendMailString, sdate, Delimiter, mfname, TmpString: string;
TStringList1, tmpStrList: TStringList;
tmpVal, Str: WideString;
DelimPos: LongInt;
mf1: TextFile;


begin
 try
   { TODO -oUser -cConsole Main : Insert code here }

TStringList1:= nil;
q1:= nil;
q1.close;
q1.SQL.Text:='SELECT * FROM mytempdb WHERE Field_1 REGEXP '''+somevar+''+'.'+''';';
q1.ExecSQL;
q1.Open;

if q1.FieldCount>9 then
begin
 while not q1.Eof do
begin
SendMailString:= SendMailString+  (q1.fieldbyname('Field1').text) ;
SendMailString:= SendMailString+  (q1.fieldbyname('Field2').text) ;
SendMailString:= SendMailString+  (q1.fieldbyname('Field3').text) ;
...
q1.Next;
 end;

end;

 except
   on E:Exception do
     Writeln(E.Classname, ': ', E.Message);
 end;
end.


bit   (2009-01-06 09:32:00) [1]

@27 solved


bit   (2009-01-05 21:40:00) [2]

пробовал настроить mysql connector->Character set на ASCII но

"can't initialize character set ascii (path: C:\folder\MYSQLfolder)"


bit   (2009-01-05 21:26:00) [3]


> System.Utf8ToAnsi()

это если уверен что mysql connector возвращает utf-8
в данном случае нет. может koi ili unicode...???


Сергей М.   (2009-01-05 21:10:00) [4]

см. System.Utf8ToAnsi()


bit   (2009-01-05 21:07:00) [5]

1. navicat portable (здесь все норм отобр)
2. mysql

+ mysql connector v3 (может он "односторонний"? только utf-8 пропускает?)


Сергей М.   (2009-01-05 20:51:00) [6]


> в настройках db и исходной таблицы стоит ACSII


Какими средствами и где ты это увидел ?
СУБД какая ?


bit   (2009-01-05 20:30:00) [7]

>ACSII это из vcl
procedure TForm1.BitBtn1Click(Sender: TObject); //
var
li:tlistitem; // !!!!!
query: string;
begin

 q1.SQL.Text:=memsql.lines.text;
 //q1.SQL.Text:='select * from mytable';
q1.Open;
query:='';
while not q1.Eof do
begin
li:=lv.Items.Add;
li.Caption:=q1.fieldbyname('First_Name').Value;
li.SubItems.Add(q1.fieldbyname('First_Name').text);
li.SubItems.Add(q1.fieldbyname('Last_Name').text);
li.SubItems.Add(q1.fieldbyname('-2-').text);
li.SubItems.Add(q1.fieldbyname('-3-').AsString);
li.SubItems.Add(q1.fieldbyname('-4-').AsString);
li.SubItems.Add(q1.fieldbyname('-5-').AsString);
li.SubItems.Add(q1.fieldbyname('-6-').AsString);
li.SubItems.Add(q1.fieldbyname('-7-').AsString)  ;
li.SubItems.Add(q1.fieldbyname('-8-').AsString)  ;
q1.Next;
end;

end;


в настройках db и исходной таблицы стоит ACSII.
а listview отображает некорректно


Anatoly Podgoretsky   (2009-01-05 20:27:00) [8]


> Сначала ответь "по конкретнее" на вопрос, какое отношение
> вышеприведенный тобой код имеет к TListView

Слово красивое.


Плохиш   (2009-01-05 20:23:00) [9]

Хм, так многа букав появилось в ветке, а результат всё тот же, что и в [2]...


Сергей М.   (2009-01-05 20:17:00) [10]


> Почему тогда ругается когда пишешь type q1: TADOQuery; .
> etc  после uses и до var? Тожесамое разрешено в VCL


Не трынди, не разрешено.
Правила Паскаля единыдля любогоПаскаль-приложения, будь оно хоть VCLное, хоть консольное, хоть на Луне.


> как свою иконку назначить в console?


Какие тебе "иконки", если у тебя проблемы со знанием азоввыбранного тобой языка программирования ?


> по конкретнее?


Сначала ответь "по конкретнее" на вопрос, какое отношение вышеприведенный тобой код имеет к TListView


bit   (2009-01-05 20:11:00) [11]


> Нет там никаких ограничений, не трынди.


Почему тогда ругается когда пишешь type q1: TADOQuery; .etc  после uses и до var? Тожесамое разрешено в VCL. А как свою иконку назначить в console? (в vcl в project->pref->etc)

> Может.

А по конкретнее? свойства ,,,


Сергей М.   (2009-01-05 19:59:00) [12]


> ограничениями в Colsole


Нет там никаких ограничений, не трынди.


> TListView может отображать ACSII кодировку?


Может.


bit   (2009-01-05 19:56:00) [13]

Сергей М- спасибо, не думал но твой nil спас ситуацию

а есть еще альтернативы? (nil = brute force)


Amoeba   (2009-01-05 19:53:00) [14]


> bit   (05.01.09 19:51) [14]
>
>
> > до полного просветления.
>
> LOL
>
> кажется жизнь легче с VCL чем с ограничениями в Colsole
>
> >> так TListView может отображать ACSII кодировку? если
> да то как поменять ее?


LMD!


bit   (2009-01-05 19:51:00) [15]


> до полного просветления.

LOL

кажется жизнь легче с VCL чем с ограничениями в Colsole

>> так TListView может отображать ACSIIкодировку? если да то как поменять ее?


Amoeba   (2009-01-05 19:42:00) [16]


> bit   (05.01.09 19:37) [11]
>
>
> > Давай уже садись и читай учебники.
>
> OK,

Плохо читал. Читай еще и так до полного просветления.


Сергей М.   (2009-01-05 19:40:00) [17]

Вместо TComponent укажи nil.
Тебя эта затычка, конечно, не спасет, но E2010 на этой строчке исчезнет.


bit   (2009-01-05 19:37:00) [18]


> Давай уже садись и читай учебники.

OK,

>>q1 := TADOQuery.Create(не важно кто);

q1 := TADOQuery.Create(TComponent ); //????

error: [DCC Error] ConsoleClient.dpr(74): E2010 Incompatible types: 'TComponent' and 'Class reference'


Сергей М.   (2009-01-05 18:50:00) [19]


> как его  создавать?


q1 := TADOQuery.Create(не важно кто);


> отличие от VCL что в Console app не проходит TYPE


Ты сам-то понял что сказал ?
Давай уже садись и читай учебники.


bit   (2009-01-05 18:45:00) [20]


> Объект TADOQuery кто за тебя будет создавать, Пушкин ?

если так правильно то,
q1.Create(TOwner: Лермонтов или кому(TComponent) его назначить)

или как его  создавать?

>>отличие от VCL что в Console app не проходит TYPE


Страницы:   1 2

Наверх

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