• Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r4wp

[Databases] group to discuss various database issues and drivers

Endo
17-May-2012
[175]
such as, R2 doesn't support new SQL Server datatypes. You should 
CAST & CONVERT your values in your SQL to be able to get those values 
into R2 app.
BrianH
18-May-2012
[176x2]
I don't know about the datatype support when connecting to Access 
2007 databases; what Endo said was related to SQL Server. However, 
I have Access 2010 here and 2007 at home so I can run some tests 
later today if you like.
R2 is more ambitious about datatype conversion than the R3 extension, 
which only handles SQL datatypes that are directly compatible with 
64bit or smaller R3 datatypes. However, R2 doesn't handle floating-point 
datatypes, and R3 does.
Endo
18-May-2012
[178]
I've used Access 2007 with R2, I didn't see a problem. Not sure about 
the supported datatype. I usually use old/standard/simple SQLs.
BrianH
18-May-2012
[179x4]
Weirdly enough, the datatypes that R2 doesn't support in newer SQL 
Server versions are the ones that were added to make SQL Server *more* 
standard. It supports the old, non-standard ones just fine.
I get tripped up by missing datatype support with the R3 extension 
a lot more than with R2. Converting from numeric to float is one 
thing - iffy, but at least you can do it; converting from varchar(max) 
or text to varchar is often impossible without data loss.
Had to do more than one project with scripts that call themselves 
in R2 to do data extraction from text fields, then call themselves 
in R3 to do processing.
Good thing the R3 extension is open-source. Given time to work on 
it, we can improve its datatype support :)
Pekr
21-Jul-2012
[183x3]
After some time, I gave a try to the Sqlite DB. It kind of improved 
in some areas, even locking, so it is even more useable in concurrent 
environment. However - it still uses per file lock, and although 
it uses just milliseconds to lock the file, I have a problem with 
one aproach I am trying to take, and hence maybe the Sqlite is not 
right DB for my purpose, or my aproach is not correct. The reason 
why I wanted to use sqlite DB is, that it is easily movable to other 
target, and its performance is fine for even semi heavy solutions. 
I don't want to be dependant upon the some kind of "server", which 
stores its files who knows where, and to which I don't have proper 
access in cgi environment, unless I am a DB admin or server admin 
...
Simply put - millisecond lock time is enough fine grained for my 
purposes, but - let's assume you have several ppl working on some 
customer list, where each customer has some orders. Those ppl do 
select particular customer, and work with orders. What I want is 
- when some user selects particular customer, I need its record being 
locked. The trouble is, that when I use BEGIN transaction for sqlite, 
it locks all the file, and does not allow other process to do write 
to the DB.


I wonder, if I can somehow obey it, not really having per record 
locking. I would have to implement my own lock mechanism (not locking 
in fact), not allowing others select/enter customer record, when 
some other person is working on it?
Or simply I have to use more powerfull SQL solution, but heck, I 
don't like all the heave SQL servers for some simple few tables solution 
....
Endo
28-Aug-2012
[186]
It's interesting when I try to connect using a port scheme I cannot 
get error msg:

>> con: open [scheme: 'odbc target: "..."] ;try with wrong password 
for example
** Script Error: ODBC error:

>> con: open odbc://sa:[qwe1234-:-mydsn]

** Script Error: ODBC error: [Microsoft][SQL Server Native Client 
10.0][SQL Server]Login failed for user 'sa'.  <<< now I got error 
msg.

Any idea how to get "real" error message?
ChristianE
29-Aug-2012
[187]
Shouldn't that rather be HOST instead of TARGET?
>> con: [scheme: 'odbc host: "mydsn"]
BrianH
29-Aug-2012
[188x3]
Only if the target is a DSN with no other settings specified. Otherwise, 
use target.
con: [scheme: 'odbc target: "dsn=mydsn"]
For instance, this is a common connection I use at work (server name 
changed):

conn: [scheme: 'odbc target: "driver=SQL Server Native Client 10.0;server=SERVER1;database=db1;Trusted_Connection=Yes;"]
ChristianE
5-Sep-2012
[191]
I've just updated the R3 ODBC Extension to work with more SQL types 
and, with the support of BrianH, fixed and improved the boot code 
OPEN and COPY actors.


The extension is available over at Github in both source form as 
well as a DLL compiled for windows, see https://github.com/gurzgri/r3-odbc
GrahamC
5-Sep-2012
[192]
dll compiled means use from R2?
Kaj
5-Sep-2012
[193]
It's an R3 extension. You could load it in R2, but you'd have to 
program the interface to the extension yourself
Gregg
8-Sep-2012
[194x3]
Is anyone using Doc's MySql protocol (v4.1 1.3.0) with MySql 5.5.24-cll, 
protocol v10? 


I have a client migrating to a new host. We've been using 1.2.1 against 
mysql 5.0.95, but 5.5 triggers the client auth error. Moving to Doc's 
4.1 version solved that, but a simple test query returns an empty 
block. 


Can't rule out a data migration error yet, as things just moved and 
getting connected was the frist step. Just curious if someone is 
known to have this combo working.
Nevermind. I was able to test another query which works, so all is 
well there. Thanks Doc, once again!
The failing query was a data migration issue, just FYI.
Janko
9-Sep-2012
[197x2]
I just upgraded local ubutu and I made the rebol work with ia32-libs 
again, now rebol mysql client is givin me auth error
Gregg: what did you say you did to make it work? what did you move 
to 4.1 the mysql server or something else?
DocKimbel
9-Sep-2012
[199]
Janko: if you're using a newer MySQL version, you need my 4.1 driver.
Janko
9-Sep-2012
[200x2]
aha, I hoped he meant that :) , but I only found 1.2.1 on your website
I am looking at this page http://softinnov.org/rebol/mysql.shtml
(google doesn't find me any ohter, I think)
DocKimbel
9-Sep-2012
[202x2]
It's not an official release yet...I wish I had time to finish it...:-/
IIRC, it was missing some minor feature support from the protocol 
and good new test cases...
Janko
9-Sep-2012
[204]
well if it works for what I need it it's ok with me (I just use mysql 
for user db so it's rather simple). I found mention of it here now 
http://rebolweek.blogspot.com/2008_12_01_archive.htmlis this the 
latest version you have?
DocKimbel
9-Sep-2012
[205x2]
http://softinnov.org/tmp/mysql-protocol-41.r
Yes, the link from the blog entry is the right one too.
Janko
9-Sep-2012
[207]
thanks! I will try it ... otherwise I will reinstall mysq 5.1
DocKimbel
9-Sep-2012
[208]
Ah right (reading the blog article reminded me a few things), the 
multiple results reading + stored proc needed more tests.
james_nak
9-Sep-2012
[209]
I've been relying on 4.1 for a long time now. No problems so far. 
Thanks Doc.
DocKimbel
9-Sep-2012
[210]
You're welcome.
Gabriele
10-Sep-2012
[211]
I've also been using it for a very long time. Sadly, not a lot testing 
with multiple result sets as we don't use this on production, so 
i can't use multiple result sets. :( it did work correctly with simple 
tests.
Chris
25-Sep-2012
[212x3]
Thought I'd share this in case anyone found it useful (or had any 
suggestions/criticisms).  First part is a description in REBOL of 
a database schema (sample here: http://reb4.me/r/schema-sample), 
second part is a function that generates the MySQL code to create 
the database/tables. I'd like to add functions to analyse database 
schemas against my REBOL schema and create 'ALTER' statements as 
necessary.  All in good time...
do http://reb4.me/r/schema
do http://reb4.me/r/mysql-schema
print schema-create load-schema http://reb4.me/r/schema-sample
Definitely a work in progress, but has saved me some time.
Kaj
25-Sep-2012
[215]
Did you port WITH from Red/System? ;-)
Chris
25-Sep-2012
[216]
No, just an old QM function : )
Kaj
25-Sep-2012
[217]
Ah, I remember now
Chris
25-Sep-2012
[218]
Erk, fixed a couple other dependencies, d'oh!
Endo
26-Sep-2012
[219]
Very nice work Chris.  It would be nice to have that for MS-SQL too.
Chris
26-Sep-2012
[220]
By the looks of it (I've not used MS SQL) it wouldn't be too different. 
Same for Sqlite. Just a matter of hacking http://reb4.me/r/mysql-schema
to include the most appropriate datatypes.


Of course, that's only for the 'create statement. I imagine detecting 
differences in schemas between SQL dialects might be more nuanced. 
But then I haven't got that far with any dialect of SQL, so...
afsanehsamim
9-Nov-2012
[221x2]
guys , i have one project (crossword )which uses mysql database! 
i want use mysql driver ,i know how  we can create table and make 
connectivity with database !  crossword should show on web page ,and 
when user put characters in each field ,then press button ,it will 
chek with database and if it is correct ,user can continue otherwise 
shows error message ....i created crossword table with cgi and is 
working on web ,i have created database as well,now my problem is 
i do not know how can i fetch data and comparing with database? is 
there anybody for helping my mini project????
i need only simple example of that ...plz help me if you can ... 
i do not have time :( ...i am very begginer in rebol
Arnold
9-Nov-2012
[223]
Show what you have got so far, may be you are close.
afsanehsamim
9-Nov-2012
[224]
my understanding of work steps is : i have two files *.cgi and *.r 
 ,in cgi file i created crossword that shows on web page ... in data.r 
 i have made connectivity with database and create table ... and 
my codes are as following : in cgi file: