Database design CodeIgniter表
现在,我有几个问题:Database design CodeIgniter表,database-design,session,codeigniter,database-schema,Database Design,Session,Codeigniter,Database Schema,现在,我有几个问题: 每个会话id的长度为32个字符,但表中有varchar(40)。为什么是varchar(40)而不是char(32) 像182.111.112.113这样的ip_地址的长度为15个字符,但在表中我们有varchar(16)。为什么是varchar(16)而不是varchar(15) 每个user_代理的长度为50个字符,但表中有varchar(50)。为什么是varchar(50)而不是char(50) 有人能回答我这个问题吗?求你了 注意:我的默认存储引擎是InnoDB
致以最诚挚的问候你根本不必为此担心。查看MySQL文档中的数据类型: 总之,varchar扩展到所需的范围,直到达到指定的限制。因此,如果只使用50个字符,那么数据库中只需要50个字符,而不是60个字符。因此,可能只是开发人员希望得到相当的偶数
你不应该选择正确的答案吗?我知道要求将答案标记为正确是不礼貌的,但我认为如果你觉得你的答案被问到了,你应该选择我们的答案之一。与其将标题改为标记为[已解决],不如点击左边的勾号,接受下面的答案之一。
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)
);