|
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,
версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
43401
|
|