没有设置数据库字段ID属性为UNSIGNED的代价

原创 2017年01月03日 22:31:08

         今天下载了一个网易云课堂的源码,糊里糊涂的自己建立了数据库表,忘记了设置ID为UNSIGNED。结果导致命名登录正常,但是页面反复的跳回登录页面,检查了半天依然没有得到答案,最终在数据表

的创建上找到了答案。原来管理员ID应该是正整数,在没有设置UNSIGNED属性的情况下,则默认的管理员ID成了零,

这个时候我们再去登录判断session的时候遇到了下面的语句:

 if(!session('id')){
            $this->error('请先登录系统!',U('Login/index'));
        }
命名登录正常,因为ID记录为0(本来现在应该为非零,正好逻辑非则不会执行下边语句),刚好满足了条件,导致了账号

马上就跳出了。

       也算一个深刻教训,基础的东西要掌握牢固,要养成良好习惯,不然出现未知逻辑错误后,要发现BUG很辛苦啊。




相关文章推荐

SQL编程--类型属性unsigned

1. 数据类型选择的重要性 数据类型在数据库中扮演着基础但很重要的角色,对数据类型的选择会影响与数据库交互的应用程序的性能,如果在数据库建表时选择了错误的类型,在后期维护中成本可能非常大,用户需要花...

Hibernate 实体类注解 Entity方式5、@Basic(fetch=FetchType,optional=true) 可选 @Basic表示一个简单的属性到数据库表的字段的映射,对于没有

Hibernate注解 1。@Entity(name="EntityName") 必须,name为可选,对应数据库中一的个表 2、@Table(name="",catalog...

SQL 数据库 学习 007 通过一个示例简单介绍什么是字段、属性、列、元组、记录、表、主键、外键

我们来介绍一下:数据库是如何存储数据的。数据库是如何存储数据的来看一个小例子现在,假如我们现在想存储 员工的信息。也就是说:我们来通过这个例子来看看 字段、记录、表 是一个什么东西。我们下面通过存储一...

关于自定义代码生成器(续)---SQL2008查询数据库字段主键,外键,唯一键等相关属性

2. 查询字段名,表名,架构名,序号,是否主键,是否外键,是否唯一键,是否为空,是否自动增长,默认值,字段类型,大小,长度,小数位数,相关属性select a.*,isnull(b.rtable,'0...
  • nlx0201
  • nlx0201
  • 2013年01月24日 14:05
  • 1498

MySQL数据库的字段属性(复习3)

主键主键: primary key,主要的键. 一张表只能有一个字段可以使用对应的键, 用来唯一的约束该字段里面的数据, 不能重复: 这种称之为主键.增加主键:方案1: 在创建表的时候,直接在字段之后...

Mybatis 当实体属性与数据库字段不一致时的解决方案

使用Mybatis的时候,Mybatis根据数据库的字段找到对应实体类的属性,通过set方法对属性进行注入。 我们可以对实体类的set方法进行测试,测试如下: 执行结果如下: 说明:My...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:没有设置数据库字段ID属性为UNSIGNED的代价
举报原因:
原因补充:

(最多只允许输入30个字)