Autor Téma: delphi myslq  (Přečteno 2633 krát)

dracekvo

  • Host
delphi myslq
« kdy: 29-07-2010, 15:33:00 »
Ahoj, mám tu další problém. je poněkud podivný.

Používám Delphi 7 a MySQL: 5.1.49-community

Zde je můj kód

Kód: [Vybrat]
Connection := TSQLConnection.Create(nil);
    Connection.DriverName := 'dbxmysql';
    Connection.GetDriverFunc := 'getSQLDriverMYSQL50';
    Connection.LibraryName := 'dbxopenmysql50.dll';
    Connection.VendorLib := 'libmysql.dll';
    Connection.Params.Append('Database=' + sqldatabase);
    Connection.Params.Append('User_Name=' + sqluser);
    Connection.Params.Append('Password=' + sqlpass);
    Connection.Params.Append('HostName=' + sqlhost);
    SQLQuery1.SQLConnection:= Connection;

    connection.Open;

    sqlQuery1.SQL.Text:= 'select id, eod, closed from barak';
    sqlQuery1.Open;

a tabulka
Kód: [Vybrat]
+--------------+-----------------------+------+-----+---------+-------+
| Field        | Type                  | Null | Key | Default | Extra |
+--------------+-----------------------+------+-----+---------+-------+
| id           | mediumint(8) unsigned | NO   | PRI | NULL    |       |
| site_country | varchar(1)            | NO   |     | NULL    |       |
| eod          | tinyint(1) unsigned   | NO   |     | NULL    |       |
| closed       | tinyint(1) unsigned   | NO   |     | 0       |       |
+--------------+-----------------------+------+-----+---------+-------+

teď, pokud dám select id, tak vše funguje v pohodě.
když select id, site_country napíše to "Invalid field size"
pokud tam dám třeba select id, eod tak vše taky v pořádku
a select *, nebo select id, eod, closed skončí chybou "Access violation at address 003444EF in module 'dbxopenmysql50.dll'. Read of address 00000001"

dracekvo

  • Host
delphi myslq
« Odpověď #1 kdy: 29-07-2010, 15:36:00 »
jo a malá ukázka dat
Kód: [Vybrat]
+----+--------------+-----+--------+
| id | site_country | eod | closed |
+----+--------------+-----+--------+
|  1 | 1            |   1 |      0 |
|  2 | 1            |   1 |      0 |
|  3 | 1            |   1 |      0 |
|  4 | 1            |   1 |      0 |
|  5 | 1            |   1 |      0 |
|  6 | 1            |   1 |      0 |
|  7 | 1            |   1 |      0 |
|  8 | 1            |   1 |      0 |
|  9 | 1            |   1 |      0 |
| 10 | 1            |   1 |      0 |
+----+--------------+-----+--------+

dracekvo

  • Host
delphi myslq
« Odpověď #2 kdy: 29-07-2010, 16:21:00 »
Tak jsem zjistil, že na PC, kde je win 2003 server a 5.1.28-rc-community to funguje. Mě na ntb s Win7 ne.
Zkusím nainstalovat starší MySQL. Zatím to berte jako vyřešené.

dracekvo

  • Host
delphi myslq
« Odpověď #3 kdy: 22-09-2010, 13:10:59 »
Tak jsem zjistil, že je to verzí mysql serveru. Na MySQL 5.1.50 to hází exception v knihově dbxopenmysql.dll už pri jednoduchém dotazu select * from tabulka.
Teď jsem nainstaloval nějaký 5.0.45 a tam to jde bez problému.

Napadá někoho proč se tak děje?

xyz3

  • Host
delphi myslq
« Odpověď #4 kdy: 22-09-2010, 13:28:00 »
"Read of address 00000001" znamená, že nějaký soudruh udělal chybu. U opensource konektorů do databáze běžný jev.

dracekvo

  • Host
delphi myslq
« Odpověď #5 kdy: 22-09-2010, 13:39:59 »
A nějaké doporučení jak se nakonektit k mysql?
Mě se nedaří najít ani kdo to napsal, jestli třeba nemám nějakou starou verzi a na stránkách nemá novější.

xyz3

  • Host
delphi myslq
« Odpověď #6 kdy: 22-09-2010, 14:11:00 »
Rovnou se na to vykašli. Pokud tvoříš nový projekt, tak MySQL stejně není ta správná volba.

dracekvo

  • Host
delphi myslq
« Odpověď #7 kdy: 22-09-2010, 14:33:00 »
To tvořím, ale potřebuju něco, s čím bude jednoduše komunikovat i php.

xyz3

  • Host
delphi myslq
« Odpověď #8 kdy: 22-09-2010, 14:46:00 »
A PHP umí jenom MySQL ? ;D
Ale každý svého štěstí strojvůdce, já nikoho přesvědčovat nebudu.

pf1957

  • Host
delphi myslq
« Odpověď #9 kdy: 22-09-2010, 14:52:00 »
dracekvo Napsal:

> To tvořím, ale potřebuju něco, s čím bude
> jednoduše komunikovat i php.

Ja bych tedy taky doporucoval si MySQL, kdyz to neni nutne, nic nezacinat :)

My jsme se k ni pred lety pripojovali pres ZEOS komponenty a nebyly s tim problemy. Akorat ze ZOES komponenty maji unikodifikaci ve stadiu alfa...


dracekvo

  • Host
delphi myslq
« Odpověď #10 kdy: 22-09-2010, 15:31:59 »
S čím jsem ještě dělal i v php tak bylo MsSQL, ale to je placený, ne?

Samozřejmě vím, že php dokáže dělat i s ostatníma databázema, ale nemám s nima žádné zkušenosti takže nemůžu posoudit co je nejvhodnější. Abych nedopadl ještě hůře, než s MySQL.

z_o_o_m

  • Host
delphi myslq
« Odpověď #11 kdy: 22-09-2010, 16:42:59 »
MySQL rulez, nikdy sem s tim nemel problemy :) ale jen s PHP ...

pokud neznas HeidiSQL, je to open-source Delphi projekt, treba v tom neco vyctes  8)

Mi.Chal

  • Host
delphi myslq
« Odpověď #12 kdy: 22-09-2010, 21:07:00 »
dracekvo Napsal:
-------------------------------------------------------
> S čím jsem ještě dělal i v php tak bylo MsSQL, ale
> to je placený, ne?

ma i free variantu, ktera ma urcita omezeni



Mi.Chal

  • Host
delphi myslq
« Odpověď #13 kdy: 22-09-2010, 21:08:00 »
z_o_o_m Napsal:
-------------------------------------------------------
> MySQL rulez

pokud mas na mysli nejakou soutez o nejblbejsi softwary, tak tam by se umistila na prednich pozicich

vinca

  • Host
delphi myslq
« Odpověď #14 kdy: 26-09-2010, 17:30:59 »
A. Co je špatného na driveru pro MySQL, který je součástí D7 ?
B. Mohli by páni experti zmínit vhodné databáze pro nové projekty, když je ten MySQL takový hnůj ?
V.