Perl DBI - Bind Parameters Problem


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Perl DBI - Bind Parameters Problem
# 1  
Old 12-22-2005
Perl DBI - Bind Parameters Problem

I have a SQL statement that includes a UNION that I can't get to work when I bind the parameters. (I am binding the parameters to prevent SQL injection.)
Does anybody have any suggestion on how I can use a SQL statement that includes a UNION and bind the params?

Code would be something like this:
$sql=" SELECT DISTINCT cp.model_code, p.product_code, cp.model_desc, cp.eur_na, '2005' calendar_year, cp.volume, \
FROM calendar_product cp, product p
WHERE cp.calendar_year = '$calYear' AND cp.eur_na = '$region' AND cp.model_code = '$modelCode'
AND p.product_code = cp.product_code
UNION SELECT cp.model_code, '' product_code, cp.model_desc, cp.eur_na, '2005' calendar_year,
FROM calendar_product cp, model m
WHERE cp.model_code = m.model_code AND cp.calendar_year(+) = '$calYear' AND cp.eur_na = '$region' AND cp.model_code = '$modelCode'
AND cp.product_code = 'VEHL' ";

$sth = $dbh->prepare($sql);
$sth->bind_param( 1, $calYear );
$sth->bind_param( 2, $region );
$sth->bind_param( 3, $modelCode );
$sth->execute;
# 2  
Old 12-22-2005
I see that you have directly assigned variables in the statement, now you have complete statement, i guess there is no need to bind again...

Just do a print statment after sql statement assign, you can see that the values were already assigned...

If you want to bind, i guess in the statement you need to give it as "?" and then you need to use bind function to associate the "?" with the corresponding variables...
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Perl Oracle DBI through Apache problem

Experts, I've been struggling with making a Perl Oracle DBI script to work through my Apache webserver. Mysql DBI scripts work fine, but I'm having issue's with Oracle. The oracle script works on command line, but I'm getting an "Internal Server Error" with apache Sourcing the oracle... (0 Replies)
Discussion started by: timj123
0 Replies

2. Shell Programming and Scripting

Perl DBI error

Hi All, I installed DBI module in a non INC location and using it in my script via "use lib". But it throw the below error at the "use DBI" step. Please help Usage: DBI::_install_method(dbi_class, meth_name, file, attribs=Nullsv) at /xx/xxx/xxxxx/xxxxx/oracle/lib/DBI.pm/oracle/lib/DBI.pm line... (2 Replies)
Discussion started by: prasperl
2 Replies

3. Shell Programming and Scripting

perl: help with DBI

Hi there, I have a bit of code similar to below (which ive actually got from perldoc, but mine is similar enough) $sth = $dbh->prepare(q{ SELECT region, sales FROM sales_by_region }); $sth->execute; my ($region, $sales); # Bind Perl variables to columns: $rv =... (4 Replies)
Discussion started by: hcclnoodles
4 Replies

4. UNIX for Advanced & Expert Users

Perl's DBI Module on OS X - uninstallable?

i've been struggling with installing the Perl DBI & DBD modules all weekend, and I'm getting close, but no cigar as of yet. When I run the perl script db.pl I get the following mismatch error: Mon Apr 19 09:43:29 EDT 2010 /Library/Perl/DBD-mysql-4.011 -> peterv@MBP17.local<515>$: db.pl | tee... (0 Replies)
Discussion started by: peterv6
0 Replies

5. Shell Programming and Scripting

connect to MySQL from Perl using DBI

Hi, I want to connect perl with the mysql to select and so on but the connection don't work code #!/usr/bin/perl BEGIN { # PERL MODULES WE WILL BE USING use DBI; $dbh = DBI->connect('DBI:mysql:C:\Program Files\MySQL\MySQL Server 5.0\data\db1','','pass') or die $DBI::errstr;} #... (1 Reply)
Discussion started by: eng_shimaa
1 Replies

6. Shell Programming and Scripting

perl DBI inserting date\time

hi there, my mysql database has a date/time field using the standard mysql date|time format of 2009-08-31 00:16:44 when inserting into this field using perl DBI, is there is an easy way to insert the current date/time in without having to preformat the date/time string in perl before... (3 Replies)
Discussion started by: hcclnoodles
3 Replies

7. Shell Programming and Scripting

Installing Perl DBI and DBD

Hi, i have some queries on installing the Perl DBI and the DBD Oracle. I know that i have to install the DBI first. I have the source files in a folder in my home directory.The commands to install arecd /home/DBI Perl Makefile.PL make make installI would like to know, after executing these... (4 Replies)
Discussion started by: new2ss
4 Replies

8. Programming

perl dbi to oracle getting disconnect_all for oracle dbi help

hi i am trying to connect to an oracle database using dbi and i get this :: Driver has not implemented the disconnect_all method. at /opt/perl/lib/site_perl/5.8.0/sun4-solaris/DBI.pm line 575 END failed--call queue aborted. for all i know, the script was working earlier, but has... (1 Reply)
Discussion started by: poggendroff
1 Replies

9. Shell Programming and Scripting

perl DBI/DBD Module -in cygwin

Hi all, I am trying to install the DBI module in perl using perl -MCPAN -e shell install 'DBI' --It is installing into the nuild directory properly but when it try to make it is saying NOT OK -I tried to copy the module manually to the /lib/perl5/vendor_perl ... (3 Replies)
Discussion started by: jambesh
3 Replies

10. Shell Programming and Scripting

PERL DBI module install

We ran into an issue trying to install DBI and DB2 modules for perl for AIX from the link http://www-306.ibm.com/software/data/db2/perl/ We tried to install the DBI module using bash# perl -MCPAN -e 'install DBI' command. However we ended up with the following error. Stop. ... (3 Replies)
Discussion started by: jerardfjay
3 Replies
Login or Register to Ask a Question