Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-21 Thread LacaK via fpc-pascal




https://github.com/fpc/FPCSource/tree/main/packages/mysql

I do not understand. I see a source file for mysql80dyn.pp, but
shouldn't tthere also be a mysql80conn.pp?
It is in 
https://github.com/fpc/FPCSource/tree/main/packages/fcl-db/src/sqldb/mysql

L.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-20 Thread Terry A. Haimann via fpc-pascal
https://github.com/fpc/FPCSource/tree/main/packages/mysql

I do not understand. I see a source file for mysql80dyn.pp, but
shouldn't tthere also be a mysql80conn.pp?

Terry H.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-20 Thread Ralf Quint via fpc-pascal

On 9/20/2021 12:39 AM, antlists via fpc-pascal wrote:

On 20/09/2021 00:12, Ralf Quint via fpc-pascal wrote:

On 9/18/2021 7:33 AM, Terry A. Haimann via fpc-pascal wrote:

I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?

Thank you for your attention,


To me, this question doesn't make any sense...

Either you have MariaDB or you have MySQL. "MariaDB is using MySQL 
8.0" seems utter nonsense.


What he probably meant is "MariaDB is using the MySQL 8.0 connector" 
which DOES make sense. 


Well, then it helps if he would write exactly that.

In general, in programming you need to write exactly what you intend to 
do, neither readers nor compilers/libraries can make wild guesses as to 
what your intentions might be otherwise...


Ralf



--
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-20 Thread antlists via fpc-pascal

On 20/09/2021 00:12, Ralf Quint via fpc-pascal wrote:

On 9/18/2021 7:33 AM, Terry A. Haimann via fpc-pascal wrote:

I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?

Thank you for your attention,


To me, this question doesn't make any sense...

Either you have MariaDB or you have MySQL. "MariaDB is using MySQL 8.0" 
seems utter nonsense.


What he probably meant is "MariaDB is using the MySQL 8.0 connector" 
which DOES make sense.


There's the same issue with LibreOffice which did (maybe still does) use 
the MySQL connector to talk to MariaDB.


Cheers,
Wol
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-19 Thread Ralf Quint via fpc-pascal

On 9/18/2021 7:33 AM, Terry A. Haimann via fpc-pascal wrote:

I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?

Thank you for your attention,


To me, this question doesn't make any sense...

Either you have MariaDB or you have MySQL. "MariaDB is using MySQL 8.0" 
seems utter nonsense.


Beside that MySQL 8 is around for 3 1/2 years now (April 2018)...

Ralf


--
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-19 Thread Terry A. Haimann via fpc-pascal
I hate to sound stupid, but ...

I found the link to fpc.zip, but firefox
can't do anything with it.  If it is a ftp site I need to go to, I need
the address and user/pw/port to get in.

I found a refrence to
fpc.dfmk.hu, but I don't know user/pw/port.

Thank You for your
attention.

Terry H.

On Sat, 18 Sep 2021, Terry A. Haimann via fpc-pascal wrote:

> I just upgraded to a new laptop and see that MariaDB is using MySQL
8.0
> . I also see there is no connector in my Free Pascal install for
MySQL
> 8.0.  I do see that there is an open ticket to create a
connector.  Is
> there an Alpha or Beta version of the connector available that I can
> try?

Trunk contains the mysql 8.0 connector.
You should be able to simply copy the files and use the units with
3.2.x

Michael.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-19 Thread Florian Klämpfl via fpc-pascal


> Am 19.09.2021 um 10:46 schrieb Michael Van Canneyt via fpc-pascal 
> :
> 
> 
> 
> On Sun, 19 Sep 2021, Florian Klämpfl via fpc-pascal wrote:
> 
>> 
>> 
>>> Am 19.09.2021 um 10:16 schrieb Michael Van Canneyt via fpc-pascal 
>>> :
>>> On Sat, 18 Sep 2021, Florian Klämpfl via fpc-pascal wrote:
 Am 18.09.21 um 17:34 schrieb Michael Van Canneyt via fpc-pascal:
> On Sat, 18 Sep 2021, Terry A. Haimann via fpc-pascal wrote:
>> I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
>> . I also see there is no connector in my Free Pascal install for MySQL
>> 8.0.  I do see that there is an open ticket to create a connector.  Is
>> there an Alpha or Beta version of the connector available that I can
>> try?
> Trunk contains the mysql 8.0 connector.
> You should be able to simply copy the files and use the units with 3.2.x
 Shall we merge it to fixes?
>>> Yes, definitely.
>> 
>> Hmm, it is inter winded with fcl-db changes should merge them as well?
> 
> There should be a change in mysql (the library headers) and a change in
> fcl-db (the new connector class) ?
> 

Ah, I see it is already merged. I wondered already why it is not in the 
eligibile.log ...___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-19 Thread Michael Van Canneyt via fpc-pascal



On Sun, 19 Sep 2021, Florian Klämpfl via fpc-pascal wrote:





Am 19.09.2021 um 10:16 schrieb Michael Van Canneyt via fpc-pascal 
:



On Sat, 18 Sep 2021, Florian Klämpfl via fpc-pascal wrote:


Am 18.09.21 um 17:34 schrieb Michael Van Canneyt via fpc-pascal:

On Sat, 18 Sep 2021, Terry A. Haimann via fpc-pascal wrote:

I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?

Trunk contains the mysql 8.0 connector.
You should be able to simply copy the files and use the units with 3.2.x


Shall we merge it to fixes?


Yes, definitely.


Hmm, it is inter winded with fcl-db changes should merge them as well?


There should be a change in mysql (the library headers) and a change in
fcl-db (the new connector class) ?

Michael.___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-19 Thread Florian Klämpfl via fpc-pascal


> Am 19.09.2021 um 10:16 schrieb Michael Van Canneyt via fpc-pascal 
> :
> 
> 
> 
> On Sat, 18 Sep 2021, Florian Klämpfl via fpc-pascal wrote:
> 
>> Am 18.09.21 um 17:34 schrieb Michael Van Canneyt via fpc-pascal:
>>> On Sat, 18 Sep 2021, Terry A. Haimann via fpc-pascal wrote:
 I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
 . I also see there is no connector in my Free Pascal install for MySQL
 8.0.  I do see that there is an open ticket to create a connector.  Is
 there an Alpha or Beta version of the connector available that I can
 try?
>>> Trunk contains the mysql 8.0 connector.
>>> You should be able to simply copy the files and use the units with 3.2.x
>> 
>> Shall we merge it to fixes?
> 
> Yes, definitely.

Hmm, it is inter winded with fcl-db changes should merge them as well?

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-19 Thread Michael Van Canneyt via fpc-pascal



On Sat, 18 Sep 2021, Florian Klämpfl via fpc-pascal wrote:


Am 18.09.21 um 17:34 schrieb Michael Van Canneyt via fpc-pascal:



On Sat, 18 Sep 2021, Terry A. Haimann via fpc-pascal wrote:


I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?


Trunk contains the mysql 8.0 connector.
You should be able to simply copy the files and use the units with 3.2.x



Shall we merge it to fixes?


Yes, definitely.

Michael.___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-18 Thread Florian Klämpfl via fpc-pascal

Am 18.09.21 um 17:34 schrieb Michael Van Canneyt via fpc-pascal:



On Sat, 18 Sep 2021, Terry A. Haimann via fpc-pascal wrote:


I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?


Trunk contains the mysql 8.0 connector.
You should be able to simply copy the files and use the units with 3.2.x



Shall we merge it to fixes?

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL 8.0

2021-09-18 Thread Michael Van Canneyt via fpc-pascal



On Sat, 18 Sep 2021, Terry A. Haimann via fpc-pascal wrote:


I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?


Trunk contains the mysql 8.0 connector.
You should be able to simply copy the files and use the units with 3.2.x

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


[fpc-pascal] FreePascal and MySQL 8.0

2021-09-18 Thread Terry A. Haimann via fpc-pascal
I just upgraded to a new laptop and see that MariaDB is using MySQL 8.0
. I also see there is no connector in my Free Pascal install for MySQL
8.0.  I do see that there is an open ticket to create a connector.  Is
there an Alpha or Beta version of the connector available that I can
try?

Thank you for your attention,

Terry

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL ?

2017-11-20 Thread Michael Van Canneyt



On Mon, 20 Nov 2017, Terry A. Haimann wrote:


Hello,

This is probably a dumb question.  But I have data in a tstringlist that
I want to upload into a MediumText MySQL column.  It looks to me as if
you do something like:

Stream := TMemoryStream.Create;
MySL.SaveToStream(Stream);
Blobfield(BcfQuery.FieldByName('JobMemo')).
LoadFromStream(Stream);

But what I don't understand is how I indicate what row to add the
MediumText field to.


Edits are always on the current row in the dataset.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Re: [fpc-pascal] FreePascal and MySQL ?

2017-11-20 Thread Snorkl e
You don't need to use a stream just do
Dataset.fieldbyname('somecolumn').asstring:=mystringlist.text


On Nov 20, 2017 10:02 AM, "Terry A. Haimann"  wrote:

> Hello,
>
> This is probably a dumb question.  But I have data in a tstringlist that
> I want to upload into a MediumText MySQL column.  It looks to me as if
> you do something like:
>
> Stream := TMemoryStream.Create;
> MySL.SaveToStream(Stream);
> Blobfield(BcfQuery.FieldByName('JobMemo')).
> LoadFromStream(Stream);
>
> But what I don't understand is how I indicate what row to add the
> MediumText field to.  Is there some way to combine this with an insert
> or update statement.  I have done a lot in the past with MySQL and
> FreePascal, but I have mostly or entirely worked with standard columnar
> data, i.e. (Strings, floats and integers).
>
> Thanks in advance,
>
> Terry H.
>
> ___
> fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

[fpc-pascal] FreePascal and MySQL ?

2017-11-20 Thread Terry A. Haimann
Hello,

This is probably a dumb question.  But I have data in a tstringlist that
I want to upload into a MediumText MySQL column.  It looks to me as if
you do something like:

Stream := TMemoryStream.Create;
MySL.SaveToStream(Stream);
Blobfield(BcfQuery.FieldByName('JobMemo')).
LoadFromStream(Stream);

But what I don't understand is how I indicate what row to add the
MediumText field to.  Is there some way to combine this with an insert
or update statement.  I have done a lot in the past with MySQL and
FreePascal, but I have mostly or entirely worked with standard columnar
data, i.e. (Strings, floats and integers).

Thanks in advance,

Terry H.

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Re: [fpc-pascal] FreePascal and MySQL

2015-05-02 Thread Michael Van Canneyt



On Fri, 1 May 2015, Terry A. Haimann wrote:


I was kind of unimpressed with the performance of TSqlQuery compared to
c.


That is logical.

Beside the point raised by Jonas, 
if you use a library which is designed to be general and cross-db-engine, 
it will always be somewhat slower than code which is written specifically 
for one engine. You will most likely be using wholly different techniques.



I wrote two programs that built the same identical table.  A random set
of names with addresses.  I found the user time of the program written
in c was 20% of that which was written in Free Pascal.


Without details of the program, it is difficult to say what causes this.
The use of Random may be one cause. Transaction management may be another.
Who knows what else ?



Is there any chance of someone working on this library to improve
performance?


I doubt there is a lot you can do to improve performance, but you are welcome 
to try.

Specifically for MySQL, there is only one thing left to do: use parameter support 
for mysql version=5.0,
which should significantly improve performance. Currently (since the same code is used for versions of mysql 5.0) 
the parameters are substituted in code in the SQL.


And, as suggested by Adriaan, try to use Postgres or Firebird, which are by far 
better databases.

Michael.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL

2015-05-02 Thread Marco van de Voort
In our previous episode, Terry A. Haimann said:
 I was kind of unimpressed with the performance of TSqlQuery compared to
 c.  
 
 I wrote two programs that built the same identical table.  A random set
 of names with addresses.  I found the user time of the program written
 in c was 20% of that which was written in Free Pascal.

Do not measure user time, measure the time within the program. C and Pascal
have differing library architectures, so that might obscure results.

The TSqlQuery is also fully runtime, the returned dataset is a runtime
typed concept. Did you setup your C code equivalent, e.g. by prompting for the
sql text?

Otherwise you are benchmarking runtime vs compiletime performance. Trying to
use the mysql api directly with compiletime typed result set parsing might
be faster from Pascal too.
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL

2015-05-01 Thread Adriaan van Os

Terry A. Haimann wrote:

I was kind of unimpressed with the performance of TSqlQuery compared to
c.  


To build a table really fast, try Postgres COPY FROM STDIN / TO STDOUT BINARY 
http://www.postgresql.org/docs/9.2/static/sql-copy.html with Postgres libpq 
http://www.postgresql.org/docs/9.2/static/libpq.html. And I have experienced Postgres performning 
(much) better under heavy loads than MySQL.


Regards,

Adriaan van Os
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


Re: [fpc-pascal] FreePascal and MySQL

2015-05-01 Thread Jonas Maebe
On 01/05/15 18:07, Terry A. Haimann wrote:
 I wrote two programs that built the same identical table.  A random set
 of names with addresses.  I found the user time of the program written
 in c was 20% of that which was written in Free Pascal.

How did you generate the random names? FPC uses the Mersenne twister as
random generator, which is quite good but also quite cpu intensive. Most
C standard libraries uses a linear congruential generator, which is very
fast but less good.

I.o.w., you may have been comparing the performance of the random number
generators rather than of the SQL interface.


Jonas
___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal


[fpc-pascal] FreePascal and MySQL

2015-05-01 Thread Terry A. Haimann
I was kind of unimpressed with the performance of TSqlQuery compared to
c.  

I wrote two programs that built the same identical table.  A random set
of names with addresses.  I found the user time of the program written
in c was 20% of that which was written in Free Pascal.

Is there any chance of someone working on this library to improve
performance?

___
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal