微信开发第十四章 公司通讯录开发(二)
紧接着14期的内容,在基本规划做好以后咱们先把数据库建好。昨天有人建议我按照QQ企业邮箱的来做,这个可能太复杂了,怕大家更加迷茫,我做案例更多是希望朋友们通过案例举一反三,从简单的产品推导出复杂的应用。
二、公司通讯录数据库建立
数据库里目前没有任何数据表,所以我们先来建立第一张数据表“员工表”,取名为“roster”,员工表我调整了下结构增加了几项,最后的项目为:序号、姓名、工号、照片、性别、生日、手机、电话、部门、邮箱、微信号、微信OPENID、员工状态、入职日期、添加时间、更新时间、记录状态。
在建表之前其实还要设定每个字段项的属性,我这里简单写一下,后面在解释建表的时候大家可以参照看:
字段名 | 类型 | 长度 | 其他 |
---|---|---|---|
序号 | 数字 | 5 | 自增、主键 |
姓名 | 字符 | 10 | |
头衔 | 字符 | 20 | |
工号 | 字符 | 10 | |
照片 | 字符 | 50 | |
性别 | 数字 | 1 | 0为女,1为男 |
生日 | 日期 | ||
手机 | 字符 | 15 | |
电话 | 字符 | 15 | |
部门 | 数字 | 4 | |
邮箱 | 字符 | 50 | |
微信 | 字符 | 30 | |
openid | 字符 | 50 | |
员工状态 | 数字 | 1 | 1为在岗,-1为离职,2为休假 |
入职 | 日期 | ||
添加 | 时间 | ||
更新 | 时间 | ||
记录状态 | 数字 | 1 | 1为正常,0为删除 |
字段数根据上面的规划应该是18个字段,所以应该填写18,但我这里填写3是为了后面切图片和讲解的方便,大家如果填写18看到的样式会不同,没有关系,另外建立过程中还可以增加字段数的。
在上图中每一列就是一个字段,如果大家前面填写字段数超过5的则视图中每一行就是一个字段,但不管如何显示,每个字段都有下面这些属性:
- 字段名称,用来描述字段的名称,它可以用中文、英文字母、数字等字符来描述。但是建议不用中文或者纯数字,命名最好使用表名+下划线+该字段的英文名或者拼音缩写。
字段类型,用来限定数据格式,同一字段的数据类型都是一样的。点击类型的选项菜单会出来一大堆,不用怕很多我们是不太会用的,常用到的类型如下:
TINYINT:一个很小的整数。有符号的范围是-128到127,无符号的范围是0到255。
SMALLINT:一个小整数。有符号的范围是-32768到32767,无符号的范围是0到65535。
MEDIUMINT:一个中等大小整数。有符号的范围是-8388608到8388607,无符号的范围是0到16777215。
INT:一个正常大小整数。有符号的范围是-2147483648到2147483647,无符号的范围是0到4294967295。这个经常用来保存UNIX时间戳。
CHAR:一个定长字符串,当存储的字符长度小于设定长度时总是是用空格填满右边到指定的长度,超过则自动截断。最多存放255个字母或者汉字,也就是不超过255个字符的都可以设成CHAR类型。这里不推荐用VARCHAR,因为处理速度不给力,对于存储空间不敏感的可以忽略。
TEXT:最多可存放65535个字符,一般用于保存文章等。该字段无需填写长度。
DATETIME:一个日期和时间组合。支持的范围是'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。MySQL以'YYYY-MM-DD HH:MM:SS'格式来显示DATETIME值。该字段无需填写长度。
DATE:一个日期。支持的范围是'1000-01-01'到'9999-12-31'。MySQL以'YYYY-MM-DD'格式来显示DATE值。该字段无需填写长度。字段长度,每一个字段需要存放的数据可能最大位数,比如序号是用来做数据条数计数的,员工一般也就几万人了,所以这里设了5;姓名的话一般最多4、5个汉字,但是为了避免有奇葩的名字所以设了10位,其实如果考虑老外名字的话建议设定为30。
字段默认值,指如果这个字段在添加一条新的数据时没有获得赋值时将会保存成字段默认值。
字段语言格式,点击这个选项卡就可以看到一大串各种语言格式,不用管他,我们可以总的设定一个就可以了。除非是有特殊需求。
字段属性,这个主要是针对数字型字符的,前面介绍的几个数字类型里有写无符号和有符号,就是在这里设定。
字段是否可为空,打钩标示可以为空,一般不打钩,因为含有空值的列很难进行查询优化。
字段索引,这个很重要,索引将影响数据库查询的效率,一般会将常用的几个搜索关键字段或者排序字段建立索引。不推荐字符串字段做索引,另外主索引只能有一个,自动增长的字段会被默认作为主索引。
自增属性,在数据库应用,我们经常要用到唯一编号,以标识记录,最好的办法就是将其中一个字段设为自增属性,每新增一条数据记录是都会自动加一,其计数顺序不受数据删除影响,如果有10条数据,删除其中一条后再新增一条,这条数据的序号不是10,而是11。
字段注释,方便日后了解该字段的作用。
数据表注释,方便日后了解该数据表。
存储引擎,常用的有三种分别是MyISAM、MEMORY和InnoDB,其中MyISAM是管理非事务表。它提供高速存储和检索,以及全文搜索能力,是默认的存储引擎,一般选这个就成。
数据表语言格式,前面字段里也有语言格式设置,其实只要这里设一个,所有的字符串字段就都默认用这个语言格式了,我们这里选择utf8_general_ci,就是UTF-8的语言格式。
点击选项卡的SQL,然后在输入框中写入以上的代码就直接完成表的建立,当然我知道大家这个代码是写不错来的,所以这节课的课件里有……输入“微信代码”就可以下载。
关于数据表的建立基本就到这里了,昨天写的规划是4张表,但后来考虑了下觉得第一个案例没必要搞的那么复杂,所以管理员和日志表先去掉了,就留员工表和部门表,并做了适当的调整。
部门表我给大家列下属性,大家可以先尝试自己建一下,当然我也提供了代码供下载。
部门表:
字段名 | 类型 | 长度 | 其他 |
---|---|---|---|
序号 | 数字 | 5 | 自增、主键 |
部门名 | 字符 | 20 | |
成员数 | 数字 | 5 | |
上级序号 | 数字 | 5 | |
添加 | 时间 | ||
更新 | 时间 | ||
记录状态 | 数字 | 1 | 1为正常0为删除 |
今天就先到这里,回复“微信代码”查看今天的源码,请注意,要把数据库名称app_weixincourse替换成你自己的数据库名称,不然无法新建!如果打开有乱码的请修改网页编码为utf-8!有不清楚的请留言,明天讲后台的录入及数据库操作。
相关文章
- 微信开发第一章 微信公众号的注册、设置与登陆
- 微信开发第二章 公众平台后台介绍
- 微信开发第三章 公众平台群发消息
- 微信开发第四章 公众平台编辑模式(上)
- 微信开发第五章 公众平台编辑模式(下)
- 微信开发第六章 公众账号自动回复
- 微信开发第七章 公众平台开发模式
- 微信开发第八章 新浪云计算平台注册和使用
- 微信开发第九章 用微信开发模式做欢迎词
- 微信开发第十章 公众账号发送欢迎图文消息
- 微信开发第十一章 公众账号自定义回复功能
- 微信开发第十二章 公众账号接收非文字消息
- 微信开发第十三章 公众账号接收非文字消息
- 微信开发第十四章 公司通讯录开发(一)
- 微信开发第十四章 公司通讯录开发(二)
- 微信开发第十四章 公司通讯录开发(三)
- 微信开发第十四章 公司通讯录开发(四)
- 微信开发教程 微信问答系统
- 微信开发第十五章 自定义菜单开发
- 微信开发第十六章 微信音乐播放器(一)
- 微信开发第十六章 微信音乐播放器(二)
- 微信开发第十六章 微信音乐播放器(三)