Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MySQL > Mysql и проблем при выполнение скрипта в FreeBSD


Автор: tcg2 27.6.2007, 22:40
Помогите пож. разобратся с данного скрипта:

#!/usr/local/bin/perl -w
use Mysql;
$dbh = Mysql->connect(undef, "TREN", "tran", "trenpass");
$queryh = $dbh->query("SELECT Name FROM Users WHERE ID='1'");

При выполнение пишет вот такое:

Name "main::queryh" used only once: possible typo at ./simple line 6.
Use of uninitialized value in concatenation (.) or string at /usr/local/lib/perl5/site_perl/5.8.8/mach/Mysq.pm line 70.

Я не совсем силен, но с помощью разобратся смогу! Спасибо!

Автор: nitr 27.6.2007, 23:40
tcg2, вам не с MySQL разбираться, а с перл - так что как перенесут топик на http://forum.vingrad.ru/Perl-forum.html, тогда и помогут...

;)

да и лучше использовать DBI... читайте доку по нему...
Код

...
use DBI; 
...
my $dbh = DBI->connect("DBI:mysql:database=DATABASE_NAME;host=localhost;port=3306", "USER", "PASS") or die "$DBI::errstr \n"; 
my $result = $dbh->selectrow_arrayref("SELECT `Name` FROM `Users` WHERE ID=1");
print $result->[0] if $result;

писал прям в форум, но думаю работает, что-то в этом духе...
По вашему модулу (т.е. что вы используете) надо почитать доку perldoc Mysql, там всё написано. Если ошибка будет снова (когда исправите по примерам из документации), то стоит подумать о переустановке ;)
Код

#!/usr/bin/perl -w
use Mysql;

my $dbh = Mysql->connect(undef, 'DATABASE', 'USER', 'PASS');
my $sth = $dbh->query("SELECT `Name` FROM `Users` WHERE ID=1");
print join("\t", $sth->fetchrow) if $sth;

;)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)