AltME: Databases


Seems as good as any to me.

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
You have the link to the newest version 4 messages above:

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
-               ]
+               ; ]

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
Hi Doc, is the mysql protocol R3 compatible ?
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.

@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.

Shixin has a Rebol 3 version:

Wow !

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! :
REBOL/Core (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...
Hmm, I use mysql-protocol a lot, and I've never seen that type of error before.

Never seen that error before. Might be caused by a change in the protocol, so that pl/capabilities is not decoded properly anymore.
Same with a probe of the binary data readed form the mysql server at handshake :

Last message posted 183 weeks ago.