PDA

View Full Version : newbie asking MySql tutorial for Perl



findftp
July 5th, 2001, 05:43
Hello,

I made my own meta searchengine but I don't know how to communicate with a MySql database. Can somebody give me a link to a simple tutorial how to start with MySql?
I just want to put data into a MySql and after that read from that database.

I've already looked on MySql.com for a tutorial but they way too complicated for me at this moment.

I just want something like learning perl:

#!usr/bin/perl
print "Hello world!";


Thanks for any help

Ted S
July 5th, 2001, 06:00
Make sure you change all the variables, create an sql table and so forth:



# start of script #

my $driver = "mysql";
require DBI;
$dbh = DBI -> connect("DBI:$driver:$config{'database'}:$config{'server'}", "$config{'usd'}", "$config{'pwd'}") || &error("Can not connect to sql server. Reason: $DBI::errstr");

my $1_q= $dbh->quote($1);
my $2_q = $dbh->quote($2);
my $3_q = $dbh->quote($3);

my $query = qq!
INSERT INTO TABLE_NAME_HERE(FIELD1-FIELD2,FIELD3)
VALUES ($1_q,$2_q,$3_q)
!;
$dbh -> do($query) or error("Can't execute query: $query. Reason: $DBI::errstr");

# end of script #



Thats all it takes to connect to yoru db and insert data....

Ted S
July 5th, 2001, 06:03
To get results you'll need something a bit more tricky:




# start script

# connect to db
my $driver = "mysql";
require DBI;
$dbh = DBI -> connect("DBI:$driver:$config{'database'}:$config{'server'}", "$config{'usd'}", "$config{'pwd'}") || &error("Can not connect to sql server. Reason: $DBI::errstr");
# run prog

my $user= $dbh->quote($INPUT{'user'}); #do this to make the variable 'safe'

# get user number
my $query = qq!
SELECT number
FROM users
WHERE username =$user
!;
my $sth = $dbh -> prepare ($query) or error ("Query syntax error: $DBI::errstr. Query $query");

$sth -> execute() or error ("Can't execute query: $query. Reason: $DBI::errstr");

my ($number) = $sth->fetchrow_array;
# gets mult vars but only 1 table row..
# to get mult-rows, do while loop

#end script

findftp
July 6th, 2001, 04:53
Thank you very very much,
I'll try to understand the script.