Update of /cvsroot/monetdb/clients/src/perl/Tests
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv14987/src/perl/Tests
Added Files:
Makefile.ag malsample.pl.in milsample.pl.in sqlsample.pl.in
Removed Files:
milsample.pl
Log Message:
propagated changes of Wednesday Oct 17 2007 - Monday Oct 22 2007
from the Clients_1-20 branch to the development trunk
--- NEW FILE: Makefile.ag ---
# The contents of this file are subject to the MonetDB Public License
# Version 1.1 (the "License"); you may not use this file except in
# compliance with the License. You may obtain a copy of the License at
# http://monetdb.cwi.nl/Legal/MonetDBLicense-1.1.html
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
# License for the specific language governing rights and limitations
# under the License.
#
# The Original Code is the MonetDB Database System.
#
# The Initial Developer of the Original Code is CWI.
# Portions created by CWI are Copyright (C) 1997-2007 CWI.
# All Rights Reserved.
MTSAFE
scripts_pl = {
DIR = libdir/MonetDB/Tests
SOURCES = sqlsample.pl.in milsample.pl.in malsample.pl.in
}
EXTRA_DIST = client.pl smack00.pl smack01.pl
--- NEW FILE: milsample.pl.in ---
[EMAIL PROTECTED]@
# The contents of this file are subject to the MonetDB Public License
# Version 1.1 (the "License"); you may not use this file except in
# compliance with the License. You may obtain a copy of the License at
# http://monetdb.cwi.nl/Legal/MonetDBLicense-1.1.html
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
# License for the specific language governing rights and limitations
# under the License.
#
# The Original Code is the MonetDB Database System.
#
# The Initial Developer of the Original Code is CWI.
# Portions created by CWI are Copyright (C) 1997-2007 CWI.
# All Rights Reserved.
use strict;
use warnings;
use DBI();
print "\nStart a simple Monet MIL interaction\n\n";
# determine the data sources:
my @ds = DBI->data_sources('monetdb');
print "data sources: @ds\n";
# connect to the database:
my $dsn =
"dbi:monetdb:database=$ARGV[1];host=localhost;port=$ARGV[0];language=mil";
my $dbh = DBI->connect( $dsn,
undef, undef, # no authentication in MIL
{ PrintError => 0, RaiseError => 1 } # turn on exception handling
);
{
# simple MIL statement:
my $sth = $dbh->prepare('print(2);');
$sth->execute;
my @row = $sth->fetchrow_array;
print "field[0]: $row[0], last index: $#row\n";
}
{
my $sth = $dbh->prepare('print(3);');
$sth->execute;
my @row = $sth->fetchrow_array;
print "field[0]: $row[0], last index: $#row\n";
}
{
# deliberately executing a wrong MIL statement:
my $sth = $dbh->prepare('( xyz 1);');
eval { $sth->execute }; print "ERROR REPORTED: $@" if $@;
}
$dbh->do('var b:=new(int,str);');
$dbh->do('insert(b,3,"three");');
{
# variable binding stuff:
my $sth = $dbh->prepare('insert(b,?,?);');
$sth->bind_param( 1, 7 , DBI::SQL_INTEGER() );
$sth->bind_param( 2,'seven' );
$sth->execute;
}
{
my $sth = $dbh->prepare('print(b);');
# get all rows one at a time:
$sth->execute;
while ( my $row = $sth->fetch ) {
print "bun: $row->[0], $row->[1]\n";
}
# get all rows at once:
$sth->execute;
my $t = $sth->fetchall_arrayref;
my $r = @$t; # row count
my $f = @{$t->[0]}; # field count
print "rows: $r, fields: $f\n";
for my $i ( 0 .. $r-1 ) {
for my $j ( 0 .. $f-1 ) {
print "field[$i,$j]: $t->[$i][$j]\n";
}
}
}
{
# get values of the first column from each row:
my $row = $dbh->selectcol_arrayref('print(b);');
print "head[$_]: $row->[$_]\n" for 0 .. 1;
}
{
my @row = $dbh->selectrow_array('print(b);');
print "field[0]: $row[0]\n";
print "field[1]: $row[1]\n";
}
{
my $row = $dbh->selectrow_arrayref('print(b);');
print "field[0]: $row->[0]\n";
print "field[1]: $row->[1]\n";
}
$dbh->disconnect;
print "\nFinished\n";
--- NEW FILE: sqlsample.pl.in ---
[EMAIL PROTECTED]@
# The contents of this file are subject to the MonetDB Public License
# Version 1.1 (the "License"); you may not use this file except in
# compliance with the License. You may obtain a copy of the License at
# http://monetdb.cwi.nl/Legal/MonetDBLicense-1.1.html
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
# License for the specific language governing rights and limitations
# under the License.
#
# The Original Code is the MonetDB Database System.
#
# The Initial Developer of the Original Code is CWI.
# Portions created by CWI are Copyright (C) 1997-2007 CWI.
# All Rights Reserved.
use strict;
use warnings;
use DBI();
print "\nStart a simple Monet SQL interaction\n\n";
# determine the data sources:
my @ds = DBI->data_sources('monetdb');
print "data sources: @ds\n";
# connect to the database:
my $dsn =
"dbi:monetdb:database=$ARGV[1];host=localhost;port=$ARGV[0];language=sql";
my $dbh = DBI->connect( $dsn,
undef, undef, # no authentication in SQL
{ PrintError => 0, RaiseError => 1 } # turn on exception handling
);
{
# simple SQL statement:
my $sth = $dbh->prepare('select 2;');
$sth->execute;
my @row = $sth->fetchrow_array;
print "field[0]: $row[0], last index: $#row\n";
}
{
my $sth = $dbh->prepare('select 3;');
$sth->execute;
my @row = $sth->fetchrow_array;
print "field[0]: $row[0], last index: $#row\n";
}
{
# deliberately executing a wrong SQL statement:
my $sth = $dbh->prepare('( xyz 1);');
eval { $sth->execute }; print "ERROR REPORTED: $@" if $@;
}
$dbh->do('create table perl_table (i smallint,s string);');
$dbh->do('insert into perl_table values ( 3, \'three\');');
{
# variable binding stuff:
my $sth = $dbh->prepare('insert into perl_table values(?,?);');
$sth->bind_param( 1, 7 , DBI::SQL_INTEGER() );
$sth->bind_param( 2,'seven' );
$sth->execute;
}
{
my $sth = $dbh->prepare('select * from perl_table;');
# get all rows one at a time:
$sth->execute;
while ( my $row = $sth->fetch ) {
print "bun: $row->[0], $row->[1]\n";
}
# get all rows at once:
$sth->execute;
my $t = $sth->fetchall_arrayref;
my $r = @$t; # row count
my $f = @{$t->[0]}; # field count
print "rows: $r, fields: $f\n";
for my $i ( 0 .. $r-1 ) {
for my $j ( 0 .. $f-1 ) {
print "field[$i,$j]: $t->[$i][$j]\n";
}
}
}
{
# get values of the first column from each row:
my $row = $dbh->selectcol_arrayref('select * from perl_table;');
print "head[$_]: $row->[$_]\n" for 0 .. 1;
}
{
my @row = $dbh->selectrow_array('select * from perl_table;');
print "field[0]: $row[0]\n";
print "field[1]: $row[1]\n";
}
{
my $row = $dbh->selectrow_arrayref('select * from perl_table;');
print "field[0]: $row->[0]\n";
print "field[1]: $row->[1]\n";
}
$dbh->disconnect;
print "\nFinished\n";
--- NEW FILE: malsample.pl.in ---
[EMAIL PROTECTED]@
# The contents of this file are subject to the MonetDB Public License
# Version 1.1 (the "License"); you may not use this file except in
# compliance with the License. You may obtain a copy of the License at
# http://monetdb.cwi.nl/Legal/MonetDBLicense-1.1.html
#
# Software distributed under the License is distributed on an "AS IS"
# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
# License for the specific language governing rights and limitations
# under the License.
#
# The Original Code is the MonetDB Database System.
#
# The Initial Developer of the Original Code is CWI.
# Portions created by CWI are Copyright (C) 1997-2007 CWI.
# All Rights Reserved.
use strict;
use warnings;
use DBI();
print "\nStart a simple Monet MAL interaction\n\n";
# determine the data sources:
my @ds = DBI->data_sources('monetdb');
print "data sources: @ds\n";
# connect to the database:
my $dsn =
"dbi:monetdb:database=$ARGV[1];host=localhost;port=$ARGV[0];language=mal";
my $dbh = DBI->connect( $dsn,
undef, undef, # no authentication in MAL
{ PrintError => 0, RaiseError => 1 } # turn on exception handling
);
{
# simple MAL statement:
my $sth = $dbh->prepare('io.print(2);');
$sth->execute;
my @row = $sth->fetchrow_array;
print "field[0]: $row[0], last index: $#row\n";
}
{
my $sth = $dbh->prepare('io.print(3);');
$sth->execute;
my @row = $sth->fetchrow_array;
print "field[0]: $row[0], last index: $#row\n";
}
{
# deliberately executing a wrong MAL statement:
my $sth = $dbh->prepare('( xyz 1);');
eval { $sth->execute }; print "ERROR REPORTED: $@" if $@;
}
$dbh->do('b:=bat.new(:int,:str);');
$dbh->do('bat.insert(b,3,"three");');
{
# variable binding stuff:
my $sth = $dbh->prepare('bat.insert(b,?,?);');
$sth->bind_param( 1, 7 , DBI::SQL_INTEGER() );
$sth->bind_param( 2,'seven' );
$sth->execute;
}
{
my $sth = $dbh->prepare('io.print(b);');
# get all rows one at a time:
$sth->execute;
while ( my $row = $sth->fetch ) {
print "bun: $row->[0], $row->[1]\n";
}
# get all rows at once:
$sth->execute;
my $t = $sth->fetchall_arrayref;
my $r = @$t; # row count
my $f = @{$t->[0]}; # field count
print "rows: $r, fields: $f\n";
for my $i ( 0 .. $r-1 ) {
for my $j ( 0 .. $f-1 ) {
print "field[$i,$j]: $t->[$i][$j]\n";
}
}
}
{
# get values of the first column from each row:
my $row = $dbh->selectcol_arrayref('io.print(b);');
print "head[$_]: $row->[$_]\n" for 0 .. 1;
}
{
my @row = $dbh->selectrow_array('io.print(b);');
print "field[0]: $row[0]\n";
print "field[1]: $row[1]\n";
}
{
my $row = $dbh->selectrow_arrayref('io.print(b);');
print "field[0]: $row->[0]\n";
print "field[1]: $row->[1]\n";
}
$dbh->disconnect;
print "\nFinished\n";
--- milsample.pl DELETED ---
-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems? Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins