我爲我的應用程序使用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, '供應商')' 在第4行CREATE TABLE
user_type
(id
TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,name
CHAR(120)NOT NULL)ENGINE = InnoDB的; 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使用。它可以用來創建遷移文件並向後或向前運行遷移。 –