У меня есть две таблицы в базе данных mysql: CUSTOMER и GROUP
Таблица ЗАКАЗЧИКОВ:
NAME |PHONE
A |222
B |333
C |777
D |888
E |111
F |555
и т. Д.
Таблица GROUP имеет только 3 значения:
GN | NUM
NEW |807
OLD |455
INT |504
Я бы хотел получить следующий результат:
A, NEW, 807
B, OLD, 455
C, INT, 504
D, NEW, 807
E, OLD, 455
F, INT, 504
и т. Д.
Таблица GROUP должна повторяться до конца таблицы CUSTOMER.
Вот мой код:
#!/usr/bin/perl
# PERL MODULES
use DBI;
use strict;
use warnings;
# MYSQL CONFIG VARIABLES
my $dsn = 'DBI:mysql:test:127.0.0.1';
my $tablename = "CUSTOMER";
my $user = "root";
my $pw = "xxxx";
# DEFINE A MySQL QUERY
my $myquery1 = "SELECT NAME FROM $tablename";
# PERL CONNECT()
my $dbh = DBI->connect($dsn, $user, $pw);
# EXECUTE THE QUERY
my $getname = $dbh->prepare($myquery1);
$getnum->execute();
my $getlogin = $dbh->prepare("select * from GROUP");
$getlogin->execute();
my($login, $password);
# FETCHROW ARRAY
while (my $name = $getname->fetchrow_array()) {
while (my @row = $getlogin->fetchrow_array()) {
my ($gn,$num) = @row;
$login=$gn;
$password=$num;
print "$name\t\t $login \t\t $password \n";
}
}
Когда я выполняю свой код, я получаю:
A NEW 807
B OLD 455
C INT 504
DBD::mysql::st fetchrow_array failed: fetch() without execute() at ./main.pl line 29.
Как я могу это сделать?
Любая помощь будет оценена.