AltME: Databases

Messages

Endo
Cannot connect to MySQL 5x with Rebol/Command's official MySQL driver?
I get "Client does not support authentication protocol" even I use
"update user set Password=OLD_PASSWORD('password') WHERE User='username'; "
which should work.
So the only way is to use http://softinnov.org/tmp/mysql-protocol-41.r  ?

DocKimbel
IIRC, the statically linked libmysql in the SDK is a 3.x version. You can use that MySQL driver version or you can write a binding to a newer libmysql client library...as you wish. ;-)

GiuseppeC
Hi,
  is this the place to talk about R3 ODBC ?
Gregg
Seems as good as any to me.

sqlab
Is there a newer version than 1.2.1 of the mysql-driver of Softinnov available? I tried to connect to MariaDB and got an error message
>> read mysql://localhost/mysql/test
** User Error: ERROR 1251 : Client does not support authentication protocol requested by server; consider upgrading MariaDB client
** Near: read mysql://localhost/mysql/test
DocKimbel
You have the link to the newest version 4 messages above:
http://softinnov.org/tmp/mysql-protocol-41.r
sqlab
Thanks

Will
I've got two changes on mysql-protocol-41.r
the first one is a variable leakage:
-   read-packet: func [port [port!] /local packet-len pl status][
+   read-packet: func [port [port!] /local packet-len pl status tmp][
the second one I really don't remember what it does.. :
-               either find port/locals/capabilities 'protocol-41 [
-                   insert-query port data
-               ][
+               ; either find port/locals/capabilities 'protocol-41 [
+               ;   insert-query port data
+               ; ][
                    insert-all-queries port data
-               ]
+               ; ]

Endo
Is there any way to insert a NULL using parametrized query?
mysql: first open odbc://mydns
insert mysql "create temporary table t (a int)"
insert mysql "insert into t values (NULL)"  ; this works
insert mysql ["insert into t values (?)" none]  ; this doesn't
** Script Error: ODBC error: [Microsoft][ODBC Driver Manager] Invalid string or buffer length
GiuseppeC
Hi Doc, is the mysql protocol R3 compatible ?
Endo
Protocol source is very clear, it looks like it might compatible with R3 or at least it can be with a little effort.
I'll get his to-sql function from the protocol source and use it to generate SQL of my parametrized query.

DocKimbel
@Giuseppe I never tried, usually low-level port-related code is AFAIK, not compatible between Rebol2 and 3.
That said, I guess it could be ported without much efforts by someone knowledgeable in R3's port coding.

Chris
Shixin has a Rebol 3 version: https://github.com/zsx/mysql-r3

GiuseppeC
Wow !

DideC
I need help with %mysql-protocol.r v1.3.0.
I use it nicely with a mysql 5.5.49.
But I tried to use it with a mysql 5.5.53 server (on a different machine), and I get an error at the opening of the port! :
DideC
REBOL/Core 2.7.8.4.10 (23-Jan-2016)
Copyright 2016 REBOL Technologies
REBOL is a Trademark of REBOL Technologies
All rights reserved.
Finger protocol loaded
Whois protocol loaded
Daytime protocol loaded
SMTP protocol loaded
ESMTP protocol loaded
POP protocol loaded
IMAP protocol loaded
HTTP protocol loaded
FTP protocol loaded
NNTP protocol loaded
>>
>> do %mysql-protocol.r
Script: "MySQL Protocol" (3-Dec-2008)
MySQL protocol loaded
>> trace/net on
>> open mysql://user:1Cuqb!40@localhost/adgo-cmde
URL Parse: user 1Cuqb!40 localhost none none adgo-cmde
Net-log: ["Opening" "tcp" "for" "MySQL"]
connecting to: localhost
Net-log: "low level read of 4 bytes"
Net-log: "low level read of 66 bytes"
** Script Error: find expected series argument of type: series object port bitset
** Where: read-packet
** Near: parse/all next pl/buffer case [
    find pl/capabilities 'protocol-41 [
        [
            read-int (pl/error-code: i...
>>

Last message posted 348 weeks ago.