Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / fpc-pascal / 2007-10

Re:The Interface to MySQL has changed on version by version Andi Purwito

3 messages · 3 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

L
Show quoted text 14 lines
mysqlku.pas(16,18) Error: Identifier not found "TMYSQL" mysqlku.pas(16,18) Error: Error in type definition mysqlku.pas(18,22) Error: Identifier not found "TMYSQL_ROW" mysqlku.pas(18,22) Error: Error in type definition mysqlku.pas(74,17) Error: Operator is not overloaded mysqlku.pas(76,32) Error: Illegal qualifier mysqlku.pas(76,35) Error: Illegal expression mysqlku.pas(77,35) Error: Illegal qualifier mysqlku.pas(77,38) Error: Illegal expression mysqlku.pas(78,37) Error: Illegal qualifier mysqlku.pas(78,44) Error: Illegal expression It's look that the interface has changed. But where can we get and follow its change?

Instead of using 'TMYSQL_ROW' try 'MYSQL_ROW' (omit the T). That way, you can compile the code with both versions of Mysql since the old units have the type definitions without the 'T' also.

To Michael or whoever knows:
Did the C header files use 'T' back then but not now?

Michael Van Canneyt
to L
Show quoted text 21 lines
> mysqlku.pas(16,18) Error: Identifier not found "TMYSQL" > mysqlku.pas(16,18) Error: Error in type definition > mysqlku.pas(18,22) Error: Identifier not found "TMYSQL_ROW" > mysqlku.pas(18,22) Error: Error in type definition > mysqlku.pas(74,17) Error: Operator is not overloaded > mysqlku.pas(76,32) Error: Illegal qualifier > mysqlku.pas(76,35) Error: Illegal expression > mysqlku.pas(77,35) Error: Illegal qualifier > mysqlku.pas(77,38) Error: Illegal expression > mysqlku.pas(78,37) Error: Illegal qualifier > mysqlku.pas(78,44) Error: Illegal expression > > It's look that the interface has changed. But where can we get and follow its > change? Instead of using 'TMYSQL_ROW' try 'MYSQL_ROW' (omit the T). That way, you can compile the code with both versions of Mysql since the old units have the type definitions without the 'T' also. To Michael or whoever knows: Did the C header files use 'T' back then but not now?

That's one of the changes, yes. The first versions of the mysql headers were done manually, if I remember correctly. Only later, a switch was made to h2pas.

Michael.

Joost van der Sluis
to L: Instead of using 'TMYSQL_ROW' try 'MYSQL_ROW' (omit the T). That way, you can compile the…

Op dinsdag 09-10-2007 om 22:36 uur [tijdzone -0700], schreef L:

Show quoted text 21 lines
> mysqlku.pas(16,18) Error: Identifier not found "TMYSQL" > mysqlku.pas(16,18) Error: Error in type definition > mysqlku.pas(18,22) Error: Identifier not found "TMYSQL_ROW" > mysqlku.pas(18,22) Error: Error in type definition > mysqlku.pas(74,17) Error: Operator is not overloaded > mysqlku.pas(76,32) Error: Illegal qualifier > mysqlku.pas(76,35) Error: Illegal expression > mysqlku.pas(77,35) Error: Illegal qualifier > mysqlku.pas(77,38) Error: Illegal expression > mysqlku.pas(78,37) Error: Illegal qualifier > mysqlku.pas(78,44) Error: Illegal expression > > It's look that the interface has changed. But where can we get and follow its > change? Instead of using 'TMYSQL_ROW' try 'MYSQL_ROW' (omit the T). That way, you can compile the code with both versions of Mysql since the old units have the type definitions without the 'T' also. To Michael or whoever knows: Did the C header files use 'T' back then but not now?

The mysql4 unit is very, very old, and does only exist for backwards-compatibility. The mysql40, mysql41 and mysql51 units could be used. They are as much as possible compatible to each other.

Joost.