1. 程式人生 > >think PHP建立資料庫表,資料庫表更名

think PHP建立資料庫表,資料庫表更名

引用

use think\Db;

建立表方法

public function createTable($tableName)
    {
        $sql = "CREATE TABLE IF NOT EXISTS `$tableName` (
        `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
        `role_name` varchar(20) NOT NULL COMMENT '對話人物名稱',
        `bust` varchar(64) DEFAULT NULL COMMENT '人物半身像(為空則不顯示)',
        `bust_position` int(11) NOT NULL COMMENT '半身像位置(1-左,2-右,3-中間)',
        `dialogue` text NOT NULL COMMENT '對話',
        `font_size` int(11) DEFAULT 24 COMMENT '字型大小',
        `font_color` varchar(16) DEFAULT '0x000000' COMMENT '字型顏色',
        `font_speed` int(11) DEFAULT 10 COMMENT '文字播放速度',
        `dialog_resources` varchar(64) DEFAULT NULL COMMENT '對話方塊資源(空是跟隨組對話方塊)',
        `dialog_ani` int(11) DEFAULT 1 COMMENT '對話方塊效果(1-無效果,2-抖動)',
        `dialog_position` int(11) DEFAULT 0 COMMENT '對話方塊位置(0-跟隨組對話方塊位置,1-上,2-中,3-下)',
        `dialog_display` int(11) DEFAULT 1 COMMENT '對話方塊顯示與否(1-顯示,2-不顯示)',
        `plot_group` int(11) NOT NULL COMMENT '屬於哪個劇情組id(觸發劇情節點前為一組對話)',
        `plot_group_group` int(11) NOT NULL COMMENT '該劇情組中的哪一小組對話(自動儲存進度的點)',
        `scene_switch` varchar(64) DEFAULT NULL COMMENT '場景切換,為空的話不切換,有圖片地址才切換',
        `bgm` varchar(64) DEFAULT NULL COMMENT '背景音樂(為空的話跟隨組背景音樂,不為空的話改變後續背景音樂)',
        `sound_effect` varchar(64) DEFAULT NULL COMMENT '該段對話觸發的音效,為空則沒有音效',
        `reward_picture` varchar(64) DEFAULT NULL COMMENT '過完上一段劇情或對話得到的獎勵圖片,為空則沒有獎勵圖片(得到的圖片要記錄到資料庫)',
        PRIMARY KEY (`id`)
        )
        ENGINE=InnoDB
        DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
        CHECKSUM=0
        ROW_FORMAT=DYNAMIC
        DELAY_KEY_WRITE=0";

        Db::execute($sql);
    }

資料庫表更名

public function modifyTable($tableName01, $tableName02)
    {
        $sql = "ALTER TABLE `$tableName01` RENAME `$tableName02`";

        Db::execute($sql);
    }