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

World: r4wp

[Databases] group to discuss various database issues and drivers

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
[224x9]
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:
#! "C:/wamp/bin/apache/Apache2.2.11/cgi-bin/rebol-core-278-3-1.exe" 
-cs
REBOL [Title: "Table"]
print "content-type: text/html^/"
print [<HTML><BODY><TABLE  bgcolor="black" border="1">
{
<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="one-one" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="one-two" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="one-three" type="text" 
size="1"></td>
</tr>
<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="two-one" type="text" 
size="1"></td>
<td style="background:black; width:30px; heigth:30px;" ></td>

<td style="width:30px; height:30px;"><input name="two-three" type="text" 
size="1"></td>
</tr>
<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="three-one" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="three-two" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="three-three" type="text" 
size="1"></td>
</tr>
}
]
print [</TABLE></BODY></HTML>]
and my data.r codes :
#! "C:/wamp/bin/apache/Apache2.2.11/cgi-bin/rebol-core-278-3-1.exe" 
-cs
REBOL [Title: "Table"]
print "content-type: text/html^/"
print [<HTML><BODY><TABLE  bgcolor="black" border="1">
{
<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="one-one" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="one-two" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="one-three" type="text" 
size="1"></td>
</tr>
<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="two-one" type="text" 
size="1"></td>
<td style="background:black; width:30px; heigth:30px;" ></td>

<td style="width:30px; height:30px;"><input name="two-three" type="text" 
size="1"></td>
</tr>
<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="three-one" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="three-two" type="text" 
size="1"></td>

<td style="width:30px; height:30px;"><input name="three-three" type="text" 
size="1"></td>
</tr>
}
]
print [</TABLE></BODY></HTML>]
sorryyyy
this codes:
REBOL []
do %mysql-protocol.r 
db: open mysql://[root-:-localhost]/test
insert db {create table data (
    name            varchar(100),
    address         text
  )} 
insert db {INSERT into data VALUES 
    ('raj', 'pune'),
    ('ekta', 'delhi'),
    ('ankur', 'mumbai')
    
}
insert db "SELECT * from data"
results: copy db
probe results
close db
the second file is only exaple of connectivity
table is differenet
Arnold
9-Nov-2012
[233]
what did the probe results show?
afsanehsamim
9-Nov-2012
[234x5]
in rebol interpreter only created table
i mean when i run data.r it creats table
i do not know how should i mix cgi file with database file
the results is like this:
do %data.r
Script: "Untitled" (none)
Script: "MySQL Protocol" (12-Jul-2008)
MySQL protocol loaded
connecting to: localhost
[
    ["raj" "pune"]
    ["ekta" "delhi"]
    ["ankur" "mumbai"]
]
Arnold
9-Nov-2012
[239]
you have to mix them something like  

#! "C:/wamp/bin/apache/Apache2.2.11/cgi-bin/rebol-core-278-3-1.exe" 
-cs
REBOL [Title: "Table"]
do %mysql-protocol.r 
db: open mysql://[root-:-localhost]/test
insert db {create table data (
    name            varchar(100),
    address         text
  )} 
insert db {INSERT into data VALUES 
    ('raj', 'pune'),
    ('ekta', 'delhi'),
    ('ankur', 'mumbai')
    
}
insert db "SELECT * from data"
results: copy db
print "content-type: text/html^/"
print [<HTML><BODY><TABLE  bgcolor="black" border="1">
{
<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="one-one" type="text" 
size="1">} 
print results/name 
print {</td>}


etc
afsanehsamim
9-Nov-2012
[240]
and what extension should i use ? .r ???/
Arnold
9-Nov-2012
[241]
learning comes with a lot of try and err even for a 'simple' language 
as REBOL


Probably yes and have your apache server set up right for .r files
afsanehsamim
9-Nov-2012
[242]
you're right,i configured  my apache server  for  cgi ... i think 
i should configure again
TomBon
9-Nov-2012
[243]
just rename it to .cgi

you have the correct shebang at the top. apache should recognize 
it automatically.
don't forget to chmod your cgi to grant execution permission.
afsanehsamim
9-Nov-2012
[244x2]
but my OS is windows 7
i am not using linux
BrianH
9-Nov-2012
[246]
Then you don't have to chmod, you just have to put it in the right 
directory.
TomBon
9-Nov-2012
[247]
correct
afsanehsamim
10-Nov-2012
[248x4]
thank you Arnold.... i van fetch data from database :) ...i am working 
on compare two values (value that is entered by user and value that 
is correct )...
do you know for comparing which aommand should i use?
command for comparing values in mysql database ????
hey guys... do you know how  we can check values of two tables in 
mysql?????!!!!
Arnold
10-Nov-2012
[252]
select * from table where answer = useranswer
select * form table1, table2 where table1.field = table2.field

Do you have google? Any MySQL tutorial out there holds the answer 
to your question.

Or want to compare from wihin your REBOL script? It is either [ left 
= right][do-something][do-else-thing].
afsanehsamim
10-Nov-2012
[253]
i exactly meant that how we can use Mysql queries(checking two values 
in two different table) in Rebol script !!!!!
Arnold
10-Nov-2012
[254]
so you have put the users answer also in a mySQL table?

read both tablerows from the tables into different variables and 
compare the subfields of the returned rows result1/fielda result2/fielda
afsanehsamim
11-Nov-2012
[255x5]
if  user wants insert values to table and it should save in database 
,what is the command for that ???
this command is correct ???  :  insert db ["insert into data1 values 
(?)" myfields name]
guys ,i want insert data into database ,i wrote the following codes 
but no value save !!...  :(
#! "C:/wamp/bin/apache/Apache2.2.11/cgi-bin/rebol-core-278-3-1.exe" 
-cs
REBOL [Title: "Table"]
do %mysql-protocol.r 
db: open mysql://[root-:-localhost]/test
insert db { DROP TABLE IF EXISTS data1;
create table data1 (
    oneone        varchar(1),
    onetwo        varchar(1),  
    onethree      varchar(1),       
    twoone        varchar(1),
    twothree      varchar(1),
    threeone      varchar(1),
    threetwo      varchar(1),
    threethree    varchar(1)
  )} 

print "content-type: text/html^/"
print [<HTML><BODY>]
print [<form><input type="submit" value=" submit !" />]
print [<TABLE  bgcolor="black" border="1">]
print {<tr bgcolor="white">

<td style="width:30px; height:30px;"><input name="oneone" type="text" 
size="1">}
insert db ["insert into data1 (oneone) values (?)" ]
results: copy db
print {</td>}
i do not know what  i should write for values(?)... plz help
Pekr
11-Nov-2012
[260]
http://www.rebol.com/docs/database.html#section-18