Программирование > Perl
SQl запрос в базу MySQL
Timofey:
pole1 pole2
q 1
w 2
e 3
r 4
как узнать какой букве какая цифра соответствует
use DBI;
$dbdriver = "mysql";
$hostname = "localhost";
$port = "3306";
$username = "qqqq";
$passwordb = "qqqq";
$basename = "Worktime";
$tablename = "www";
print "Content-type: text/html
";
$dbh =
DBI->connect("dbi:$dbdriver:$basename:$hostname:$port","$username","$passwordb");
$sqlstatement = "SELECT pole1,pole2 FROM $tablename" WHERE pole1=\'w\';
$sth = $dbh->prepare($sqlstatement);
$sth->execute || die "Невозможно выполнить SQL-запрос.";
while (@row=$sth->fetchrow_array) {print @row
;}
print "
";
при таком запросе не работает,хотя другие запросы работают,типа $sqlstatement =
"SELECT pole1,pole2 FROM $tablename"; и т.д. в чем беда?
Chs:
--- Цитировать ---Timofey (03-05-2001 11:06):
$sqlstatement = "SELECT pole1,pole2 FROM $tablename" WHERE pole1=\'w\';
$sth = $dbh->prepare($sqlstatement);
--- Конец цитаты ---
С кавычками поаккуратнее.:))
$sqlstatement = "SELECT pole1,pole2 FROM $tablename WHERE pole1=?";
$sth = $dbh->prepare($sqlstatement);
$sth -> execute(\'w\');
Далее по тексту.:))
vlad:
--- Цитировать ---Timofey (03-05-2001 11:06):
pole1 pole2
q 1
w 2
e 3
r 4
как узнать какой букве какая цифра соответствует
use DBI;
$dbdriver = "mysql";
$hostname = "localhost";
$port = "3306";
$username = "qqqq";
$passwordb = "qqqq";
$basename = "Worktime";
$tablename = "www";
print "Content-type: text/html
";
$dbh =
DBI->connect("dbi:$dbdriver:$basename:$hostname:$port","$username","$passwordb");
$sqlstatement = "SELECT pole1,pole2 FROM $tablename" WHERE pole1=\'w\';
$sth = $dbh->prepare($sqlstatement);
$sth->execute || die "Невозможно выполнить SQL-запрос.";
while (@row=$sth->fetchrow_array) {print @row
;}
print "
";
при таком запросе не работает,хотя другие запросы работают,типа $sqlstatement =
"SELECT pole1,pole2 FROM $tablename"; и т.д. в чем беда?
--- Конец цитаты ---
A куда ты вставил выражение Where. ?
должно быть :
$sqlstatement = "SELECT pole1,pole2 FROM $tablename WHERE pole1=\'w\'";
Для справки скачай мою книгу по SQL, PL/SQL ( справочник ) :
http://www.deltacom.co.il/rus/document/oracle_ref.htm
cj:
--- Цитировать ---vlad (03-05-2001 16:03):
--- Цитировать ---Timofey (03-05-2001 11:06):
pole1 pole2
q 1
w 2
e 3
r 4
как узнать какой букве какая цифра соответствует
use DBI;
$dbdriver = "mysql";
$hostname = "localhost";
$port = "3306";
$username = "qqqq";
$passwordb = "qqqq";
$basename = "Worktime";
$tablename = "www";
print "Content-type: text/html
";
$dbh =
DBI->connect("dbi:$dbdriver:$basename:$hostname:$port","$username","$passwordb");
$sqlstatement = "SELECT pole1,pole2 FROM $tablename" WHERE pole1=\'w\';
$sth = $dbh->prepare($sqlstatement);
$sth->execute || die "Невозможно выполнить SQL-запрос.";
while (@row=$sth->fetchrow_array) {print @row
;}
print "
";
при таком запросе не работает,хотя другие запросы работают,типа $sqlstatement =
"SELECT pole1,pole2 FROM $tablename"; и т.д. в чем беда?
--- Конец цитаты ---
A куда ты вставил выражение Where. ?
должно быть :
$sqlstatement = "SELECT pole1,pole2 FROM $tablename WHERE pole1=\'w\'";
Для справки скачай мою книгу по SQL, PL/SQL ( справочник ) :
http://www.deltacom.co.il/rus/document/oracle_ref.htm
--- Конец цитаты ---
Извини за выражение, но ты ламернул :-)
Это называется прибиндить параметр.
2Chs: это делается так
$sth->bind_param(1, \'w\');
$sth->execute();
:-)
Chs:
--- Цитировать ---cj (04-05-2001 09:20):
Извини за выражение, но ты ламернул :-)
Это называется прибиндить параметр.
2Chs: это делается так
$sth->bind_param(1, \'w\');
$sth->execute();
:-)
--- Конец цитаты ---
Это не я ламернул, а ты лажанулся.:)
Доки надо внимательнее читать, и по execute в частности.
--- Код: ---If any arguments are given, then execute will effectively call
bind_param for each value before executing the statement.
Values bound in this way are usually treated as SQL_VARCHAR types
unless the driver can determine the correct type (which is rare), or unless
bind_param (or bind_param_inout) has already been used to specify the type.
--- Конец кода ---
P.S.: Не наезжай если не уверен.:)
Навигация
Перейти к полной версии