讀古今文學網 > 微信公眾平台開發:從零基礎到ThinkPHP5高性能框架實踐 > 25.2.2 數據庫設計 >

25.2.2 數據庫設計

本系統中使用了兩個數據表,分別是101_admin和101_user,前者用於管理員登錄,後者用於存儲微信用戶信息。

101_admin表的詳細信息如表25-1所示。

表25-1 管理員表說明

建表及初始化數據的SQL語句如下。


DROP TABLE IF EXISTS '101_admin';
CREATE TABLE IF NOT EXISTS '101_admin' (
    'id' int(6) NOT NULL AUTO_INCREMENT,
    'username' varchar(10) CHARACTER SET utf8 NOT NULL,
    'password' varchar (32) CHARACTER SET utf8 NOT NULL,
    PRIMARY KEY ('id')
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=2 ;


INSERT INTO '101_admin' ('id', 'username', 'password') VALUES
(1, 'admin', '21232f297a57a5a743894a0e4a801fc3');
  

101_user表的詳細信息如表25-2所示。

表25-2 微信用戶表說明

建表及初始化數據的SQL語句如下。


DROP TABLE IF EXISTS '101_user';
CREATE TABLE IF NOT EXISTS '101_user' (
    'id' int(7) NOT NULL AUTO_INCREMENT COMMENT '序號',
    'openid' varchar(30) NOT NULL COMMENT '微信id',
    'nickname' varchar(20) CHARACTER SET utf8mb4 NOT NULL COMMENT '暱稱',
    'remark' varchar(20) NOT NULL COMMENT '備註',
    'sex' varchar(4) NOT NULL COMMENT '性別',
    'country' varchar(10) NOT NULL COMMENT '國家',
    'province' varchar(16) NOT NULL COMMENT '省份',
    'city' varchar(16) NOT NULL COMMENT '城市',
    'district' varchar(16) NOT NULL COMMENT '區',
    'latitude' decimal(10,7) NOT NULL COMMENT '緯度',
    'longitude' decimal(10,7) NOT NULL COMMENT '經度',
    'address' varchar(100) NOT NULL COMMENT '位置',
    'headimgurl' varchar(200) NOT NULL COMMENT '頭像',
    'heartbeat' bitint(16) NOT NULL COMMENT '最後心跳',
    'scene' varchar(7) NOT NULL DEFAULT '0' COMMENT '場景',
    'score' int(9) NOT NULL DEFAULT '0' COMMENT '積分',
    'subscribe' bitint(16) NOT NULL COMMENT '關注時間',
    'tagid' varchar(10) NOT NULL COMMENT '標籤ID',
    PRIMARY KEY ('id'),
    UNIQUE KEY 'openid' ('openid')
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=33036 ;