一般说到无限级分类、菜单之类的东西,大家 (我) 的数据表设计一般是这样的 id parent_id title 更多字段… 1 0 衣物 2 1 上衣 3 1 裤子 4 3 西裤 5 4 长西裤 6 4 短西裤 7 2 衬衫 其中,parent_id表示父分类的id。由此可知,衣物分类下有上衣和裤子两个二级分类;而裤子还有西裤这个三级分类……以此类推 这种设计比较常见 (就我所知),
标签: MySql
Mysql中where条件自动类型转换的坑
我有张表,其主键id字段为varchar(5),内容是5位随机不重复字符串 表的内容大概是这样的 id name s8bk2 admin 9f0ps username 在一个方法中我查询了这张表,代码大概是这样的 function get($id = 0){ $q = query(‘select * from user where id=’.$id); // 如果$q内有记录时则显示出来,无记录时
PHP开发中涉及到emoji表情的几种处理方法
最近几个月做微信开发比较多,存储微信昵称必不可少 可这万恶的微信支持emoji表情做昵称,这就有点蛋疼了 一般Mysql表设计时,都是用UTF8字符集的。把带有emoji的昵称字段往里面insert一下就没了,整个字段变成了空字符串。这是怎么回事呢? 原来是因为Mysql的utf8字符集是3字节的,而emoji是4字节,这样整个昵称就无法存储了。这要怎么办呢?我来介绍几种方法 1、使用utf8mb
关于localhost会影响网站效率的一个坑
最近发现本地环境是越来越卡了,甚至随便打开一个不大的网站的任意一个页面都要好几秒。但静态资源、页面则一切正常,怀疑是数据库的原因,但不明所以,将就着用 今天上午实在是忍不了,经过一番百度终于查明原因: win7及以上的系统默认是支持IPV6的,在链接数据库的时候,PHP 5.3及以上在面对数据库配置信息中的“localhost”会首先确认这是IPv6还是IPv4,因此在此环节耗时过多,从而影响运行
MySQL建议列属性尽量为NOT NULL
除非你有一个很特别的原因去使用 NULL 值,你应该总是让你的字段保持 NOT NULL。这看起来好像有点争议,请往下看。 首先,我们要搞清楚“空值” 和 “NULL” 的概念: 1、空值是不占用空间的 2、MySQL中的NULL其实是占用空间的 所谓的NULL就是什么都没有,连\0都没有,\0在字符串中是结束符,但是在物理内存是占空间的,等于一个字节,而NULL就是连这一个字节都没有。在数据库里