Я использую фреймворк Codeigniter 3 для своего приложения, и я использую библиотеку миграции. Я пишу объект, который создает таблицу user_type и вставляет в три строки.Codeigniter 3 migrate sql
Вот код:
private $tableName = 'user_type';
public function up() {
$sql = "CREATE TABLE `$this->tableName` (
`id` TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`name` CHAR(120) NOT NULL
) ENGINE = InnoDB;";
$sql .= "INSERT INTO `$this->tableName` (`id`, `name`) VALUES
(1, 'user'), (2, 'provider'), (3, 'admin');";
$this->db->query($sql);
}
Если я хочу использовать миграцию, это падение сообщение об ошибке с этим текстом: Ошибка базы данных Происходило
Номер ошибки: 1064
У вас возникла ошибка в синтаксисе SQL; в руководстве, соответствует версии сервера MySQL для правильного синтаксиса, чтобы использовать вблизи 'INSERT INTO
user_type
(id
,name
) VALUES (1, 'пользователь'), (2, 'поставщик')' в строке 4CREATE TABLE
user_type
(id
TINYINT UNSIGNED NOT NULL AUTO_INCREMENT первичный ключ,name
СИМ (120) NOT NULL) ДВИГАТЕЛЬ = ЬшоВВ; INSERT INTOuser_type
(id
,name
) VALUES (1, 'пользователь'), (2, «поставщик»), (3, 'admin');Имя файла: C: /xampp/htdocs/rentacar/application/migrations/20151211113200_usertype_table_data.php
Порядковый номер: 18
Интересная часть этого, если я эхо $ SQL переменной и запустить его в phpmyadmin, он работает хорошо.
https: // GitHub. com/AimalAzmi/codeigniter-migrations Попробуйте это, я написал для этого библиотеку, которую можно легко использовать через CLI. Его можно использовать для создания файлов миграции и запуска миграции назад или вперед. –