Автор Тема: Помогите с MySQL  (Прочитано 3751 раз)

0 Пользователей и 1 Гость просматривают эту тему.

  • Гость
Помогите с MySQL
« : 31 Мая 2001, 12:01:00 »
Неудобно даже писать, но помогите написать программу на perl, которая вернула бы значение столбца crontime из запроса

SELECT id,crontime FROM autosend where id = 1

На PHP я написал бы минуты за 3, но на perl ?

Заранее Списибо.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Помогите с MySQL
« Ответ #1 : 31 Мая 2001, 14:08:35 »
Цитировать
Microname (31-05-2001 12:01):
Неудобно даже писать, но помогите написать программу на perl, которая вернула бы значение столбца crontime из запроса

SELECT id,crontime FROM autosend where id = 1

На PHP я написал бы минуты за 3, но на perl ?

Заранее Списибо.
Например, так:
#!/usr/bin/perl
use DBI;
use strict;

my $db_host = "localhost";
my $db_name = "database";
my $db_user = "user";
my $db_pass = "password";

my $dbh = DBI-> connect("DBI:mysql:database=$db_name;host=$db_host",$db_user,$db_pass,{RaiseError=>1}) || die($DBI::errstr);

my $cmd = "select id,crontime from autosend where id = ?";

my $sth = $dbh->prepare($cmd) || die($DBI::errstr);
$sth->execute(\'1\') || die($DBI::errstr);

if (my $hp = $sth -> fetchrow_hashref())
{
print $$hp{\'id\'},$$hp{\'crontime\'};
}

$sth->finish();
$dbh->disconnect();
2B OR NOT 2B = FF

Оффлайн tankisti

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.ufa-studio.com
Помогите с MySQL
« Ответ #2 : 26 Апреля 2004, 08:01:37 »
Объясните, плз. конструкцию $$hp. В книжках не встречалась...

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Помогите с MySQL
« Ответ #3 : 26 Апреля 2004, 11:19:23 »
Читать в направлении ссылок
$test = "123";
$test_ref = \\$test;
print $$test_ref;
> 123
The documentations is your friend

Оффлайн tankisti

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 52
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.ufa-studio.com
Помогите с MySQL
« Ответ #4 : 26 Апреля 2004, 11:23:46 »
О! Есть пища для ума! Ща полазию!
сеньк!

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
Помогите с MySQL
« Ответ #5 : 26 Апреля 2004, 17:38:16 »
а лучше так:
------------------------------------------------------------
#!/usr/bin/perl -w
use strict;
use SQLayer;
my $D=SQLayer->new(database=>\'DBI:mysql:database=phorum;host=localhost;port=3306\',user =>\'user\',passowrd =>\'somepass\');
my $Data=$D->row_hash("SELECT id, crontime FROM autosend where id = 1");
my $NI=0;
while ($Data->[$NI])
{
print "".$Data->[$NI]{\'id\'}.",".$Data->[$NI]{\'crontime\'}."";
$NI++
}
------------------------------------------------------------
на много элегантнее... :)
And no religion too...

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Помогите с MySQL
« Ответ #6 : 26 Апреля 2004, 17:52:34 »
Цитировать
на много элегантнее...

На вкус и цвет....:)))
2B OR NOT 2B = FF

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
Помогите с MySQL
« Ответ #7 : 26 Апреля 2004, 17:55:11 »
ой... в конец код ещё дисконнект надо добавить... :
undef $D;
And no religion too...

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28