提案されたコードを調べましたが、問題を解決する答えが見つからないため、質問しています。
私はMAMPv2.0.5、MySQL v5.5.9、PHP v5.3.6(MAMP、OS Xによるv5.3.8による)、FuelPHP v1.1を使用しており、チュートリアルを通じて作業しているフレームワークを初めて使用します。チュートリアルの一部では、プロジェクトを更新するための移行を実行するために「oil」を使用する必要があります。テーブルを定義すると、移行によってSQLが適用されてテーブルが生成されます。そうすると、上記のエラーが発生します。生成されたコードを調べても、エラーは見つかりません(おそらく、明らかな何かが欠けています)。私はPDOを使用しておりsql_mode = ''、それが実行することも確認しました。コマンドラインからMySQLクエリを実行すると、phpMyAdminがこれを確認します。これはMySQLエラーであり、FuelPHP/oilの問題ではないと思います。誰か提案はありますか?
生成されたSQL:
CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varhcar(50) NOT NULL,
`password` varchar(255) NOT NULL,
`group` int(11) NOT NULL,
`email` varchar(255) NOT NULL,
`last_login` int(11) NOT NULL,
`login_hash` varchar(255) NOT NULL,
`profile_fields` text NOT NULL,
`created_at` int(11) NOT NULL,
`updated_at` int(11) NOT NULL,
PRIMARY KEY `id` (`id`)
) DEFAULT CHARACTER SET utf8;
エラー:
bash:blog me$ oil refine migrate
Error - SQLSTATE[42000]: Syntax error or access violation: 1064 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 'varhcar(50) NOT NULL,
`password` varchar(255) NOT NULL,
`group` int(11) NOT NU' at line 3 with query: "CREATE TABLE IF NOT EXISTS `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varhcar(50) NOT NULL,
`password` varchar(255) NOT NULL,
`group` int(11) NOT NULL,
`email` varchar(255) NOT NULL,
`last_login` int(11) NOT NULL,
`login_hash` varchar(255) NOT NULL,
`profile_fields` text NOT NULL,
`created_at` int(11) NOT NULL,
`updated_at` int(11) NOT NULL,
PRIMARY KEY `id` (`id`)
) DEFAULT CHARACTER SET utf8;" in COREPATH/classes/database/pdo/connection.php on line 137