Yii从应用程序创建表

时间:2013-11-15 07:49:03

标签: yii

在我的yii应用程序中,我们需要创建动态表。 所以我使用如下:

Yii::app()->db->createCommand("CREATE TABLE {$tokenid}( `column1` INT(11) NOT NULL AUTO_INCREMENT, `column2` VARCHAR(255) NOT NULL, PRIMARY KEY (`column1`) ); ");

但它不起作用。任何建议

2 个答案:

答案 0 :(得分:4)

您应该使用createTable()docs

中的一个示例
// CREATE TABLE `tbl_user` (
//     `id` int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
//     `username` varchar(255) NOT NULL,
//     `location` point
// ) ENGINE=InnoDB
createTable('tbl_user', array(
    'id' => 'pk',
    'username' => 'string NOT NULL',
    'location' => 'point',
), 'ENGINE=InnoDB')

答案 1 :(得分:1)

您需要执行命令

Yii::app()->db->createCommand("CREATE TABLE {$tokenid}( column1 INT(11) NOT NULL AUTO_INCREMENT, column2 VARCHAR(255) NOT NULL, PRIMARY KEY (column1) ); ")->execute();

或查看create table function http://www.yiiframework.com/doc/api/1.1/CDbCommand#createTable-detail