Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Delphi Элементарный вывод поля из MqSQL (Mapkus) 29/10/2015 - 22:45:15
      Re: Delphi Элементарный вывод поля из MqSQL (Akina) 30/10/2015 - 09:40:26
      Re: Delphi Элементарный вывод поля из MqSQL (Mapkus) 30/10/2015 - 16:13:52
      Re: Delphi Элементарный вывод поля из MqSQL (Akina) 30/10/2015 - 22:20:05



From: Mapkus - 29/10/2015 - 22:45:15
Subject:Delphi Элементарный вывод поля из MqSQL
-----------------
Доброго вечера!..

Пытаюсь работать в Delphi 10 c MySQL с использованием dbExpress.
Поставил MySQL 5.5.23, настроил кодировку cp1251

mysql> \status
--------------
C:\Program Files (x86)\MySQL\MySQL Server 5.5\bin\mysql.exe Ver 14.14 Distrib 5
.5.23, for Win32 (x86)

Connection id: 1
Current database: test
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.5.23 MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Insert id: 3
Server characterset: cp1251
Db characterset: cp1251
Client characterset: cp1251
Conn. characterset: cp1251
TCP port: 3306
Uptime: 2 hours 14 min 51 sec

Threads: 1 Questions: 46 Slow queries: 0 Opens: 36 Flush tables: 1 Open tab
les: 0 Queries per second avg: 0.005
--------------

Создал табличку

create table test (
ID int unsigned not null auto_increment,
NAME varchar(15) not null,
primary key (ID) ) ;

insert into test (name) values ('Test name');
insert into test (name) values ('Second name');
insert into test (name) values ('Русский');

select * from test;

Вывод корректный

+----+-------------+
| ID | NAME |
+----+-------------+
| 1 | Test name |
| 2 | Second name |
| 3 | Русский |
+----+-------------+
3 rows in set (0.00 sec)

Набросал простенький вывод поля таблички

type
TForm1 = class(TForm)
SQLConnection1: TSQLConnection;
RichEdit1: TRichEdit;
SQLQuery1: TSQLQuery;
procedure PutText(Str:string);
procedure FormActivate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.PutText(Str:string);
begin
RichEdit1.Lines.Add(Str)
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
PutText('Hello!..');
with SQLConnection1 do
begin
Open;
if Connected then PutText('Connect OK..') else PutText('Connect Bad..')
end;
with SQLQuery1 do
begin
Open;
First;
while not Eof do
begin
PutText(FieldByName('NAME').AsString);
Next;
end;

end;

end;

В SQLQuery запрос

SELECT NAME FROM test

Вывод меня очень удивил

Hello!..
Connect OK..
0
0
0

Если поставить SQL

SELECT ID FROM test

вывод корректный

Hello!..
Connect OK..
1
2
3

Не могу взять в толк почему на текстовые поля выходят нули..
На работе такая конструкция вывода полей работает на ура... Правда СУБД там DB2 и Oracle...

Подскажите плиз что я делаю не так...


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
43401



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |