1

我有一个由 PHPMyAdmin 生成的 MySQL CREATE TABLE 脚本。它直接通过 PHPMyAdmin 工作得很好,但我无法通过我的 PHP 脚本工作。

我得到的错误是:

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 
'CREATE TABLE IF NOT EXISTS `vc5_users` (`id` int(12) NOT NULL AUTO' at line 14

这是查询:

INSERT INTO `users` (fname, lname, email, username, password, books_available, users_available, signup_date)
VALUES (
  'John',
  'Doe',
  'jdoe@gmail.com',
  'jdoe',
  'foobar',
  '250',
  '25',
  '123456' 
);

CREATE TABLE IF NOT EXISTS `jdoe_users` (
  `id` int(12) NOT NULL AUTO_INCREMENT,
  `fname` varchar(128) COLLATE utf8_bin NOT NULL,
  `created_at` varchar(32) COLLATE utf8_bin NOT NULL,
   PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;

CREATE TABLE IF NOT EXISTS `jdoe_books` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `isbn` varchar(13) NOT NULL,
  `title` varchar(256) NOT NULL,
  `author` varchar(256) NOT NULL,
  `publisher` varchar(128) NOT NULL,
  `status` varchar(32) NOT NULL,
  `last_loan` date NOT NULL,
  `last_return` date NOT NULL,
  `bookholder` varchar(64) NOT NULL,
  `due_back` date NOT NULL,
  `quantity` int(11) NOT NULL DEFAULT '1',
  `thumnail_url` varchar(128) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
4

1 回答 1

5

PHP using 中的查询mysql_query只能有 1 条语句。您正在尝试一次执行多个。

分离语句并执行。届时它将起作用。

于 2012-10-28T11:25:26.390 回答