MySQL'CREATE TABLE'查询直接通过PHPMyAdmin工作,但不通过PHP

时间:2012-10-28 11:24:32

标签: php mysql phpmyadmin create-table

我有一个由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;

1 个答案:

答案 0 :(得分:5)

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

分隔语句并执行。它会工作。