CREATE TABLE IF NOT EXISTS `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text DEFAULT '' NOT NULL,
PRIMARY KEY (session_id)
);
现在,我有几个问题:笨奇怪的会话表
每个SESSION_ID为32个字符的长度,但在表中,我们有VARCHAR(40)。为什么varchar(40)而不是char(32)?
像182.111.112.113一样的ip_address长度为15个字符,但在表中我们有varchar(16)。为什么varchar(16)而不是varchar(15)?
每个user_agent的长度为50个字符,但在表中我们有varchar(50)。为什么varchar(50)而不是char(50)?
有人能回答我这个问题吗?请!
注意:我的默认存储引擎是InnoDB。
代替改变的标题将其标记为[已解决],请单击其左侧的刻度以接受下面的答案之一。 – 2011-04-19 09:10:13