1

PHPMyAdminによって生成されたMySQLCREATETABLEスクリプトがあります。直接および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でのクエリには、mysql_query1つのステートメントしか含めることができません。一度に複数を実行しようとしています。

ステートメントを分離して実行します。それで動作します。

于 2012-10-28T11:25:26.390 に答える