Forum Webscript.Ru
Программирование => Perl => Тема начата: DartSidius от 05 Декабря 2006, 05:36:26
-
Не работает почему-то...т.е. создание таблицы и внесение записи в ещё одну таблицу..по отдельности команды работают
do("CREATE TABLE `ddd_mod` (
`id` int(255) NOT NULL auto_increment,
`name` text NOT NULL,
`title` text NOT NULL,
`time` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM;
INSERT INTO `modules_patterns` ( `id` , `module_id` , `pattern_name` , `pattern_text` , `pattern_default` )
VALUES (
\'398528\', \'ddd.mod\', \'default\', \'\', \'1\'
);")
пишет вот что:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near \';
INSERT INTO `modules_patterns` ( `id` , `module_id` , `patter at ../data/modules/Mysql.pm line 47.
наверное Do просто не поддерживает такой формат?
-
"`" перл использует по-своему.
-
э...и как енто понять :)?
-
это стоит понимать как то, что не стоит использовать в запросе обратную кавычку, так как перл под INSERT INTO `modules_patterns` понимает выполнить системную команду modules_patterns. Используйте обычную кавычку.
-
не...это странно...отдельно ж через DO работают команды...а если на \' например заменить, то та же ошибка
-
DBI->do {Prepare and execute a single statement.} (http://search.cpan.org/~timb/DBI-1.53/DBI.pm)
-
а оно умеет две команды в одном запросе?