00:00
那咱们就接着看这个主键这块的东西啊,那上节课呢,咱们说到这个主键约束,说我们怎么给字段添加约束呢,我们在字段后面加一个这个primary key啊,然后呢,我们这个再往下呢,说了一下什么呢,我们主件啊,它不能重复啊,也不能为空,这个事儿呢,大家要死记了,主键值呢,它这个是这一行记录的一个唯一标识,是这一行记录的一个身份证号啊,这个你要理解。主键约束,主键字段和主键值这三个术语呢,其实就相当于我们主键约束其实就是primary key啊,添加有primary key一个主件约束的字段叫主键字段,在主键这个ID字段上出现的值,我们叫做什么呀?主键值,那主键的分类呢,它根据这个诶我们字段数量划分的话,分单一组件和复合组件。根据主件的这个性质划分的,划分自然主件和业务组件,但复合主件我们不推荐用的啊,业务主件也不推荐用的,我们推荐使用单一组件的自然主件。
01:09
就单一组件、自然组件这种方式。另外,一张表的主键约束只能有一个。上面呢,我们所学的这个呢,是列级约束,我们看表级约束怎么定。行吧,就使用什么表及约束方式定义什么逐见来drop table if,如果这张表要存在的话,把这张表创建出来,这张表当中有IDID呢,我们采用int,然后再往下呢,我们有一个什么呀,叫做username username,然后我把唱二五。接下来呢,Primary key。组建谁啊,ID啊。这就这就是什么运输啊。表级约束啊。
02:03
表级约束这样写,Insert into t下去,User这张表当中的这个ID呀,User name啊是吧?哎,VALUES1张三啊,拿过来。234。过来。没问题吧?但如果说您这块呢,再来一个这个,那肯定就不行了。拿过来。重了。是不是不行?所以这个列级,呃,列级呢,其实就是在字段后面直接加就行,表级呢,就是相当于你还是跟我们上面讲的那个叫做唯一性约束的一种写法是差不多的,在这个位置写一个PK括号呢,就直接写就行了。
03:15
是不是很简单,那如果说连这个复合,复合组件怎么加。以下内容是演示一下什么呀,复合主键啊,不需要掌握啊,不需要掌握来复合主件,你比如说我要给给谁。ID nameme,然后再加一个password啊,马上比如说是2255吧,然后接下来逗号加上primary key是ID u nameme,就相当于我给ID和username加一个联合组件嘛,叫复合组件啊,这就是复合组件ID和user nameme2字的联合加码。就这两个字的联合起来,不能重复,也不能为空。
04:06
Inser句被演示了各位啊,不演示你你自己想看看你就演示一下啊,不想看看不想看这个东西算就算了啊,以后复合组件我用不着用不着啊,就主要用这个单一主件的啊,还有这个叫这个自然主件啊这块。来我们来看一看这个主键值,它既然是自然主键啊,我们这个自然主键能不能这个自动生成。注意听啊,能不能自动生成,各位注意看了。MYSQL提供的什么主键值自增?Drop table很方便,很简单,这个东西呢,以后我们就省劲了,ID key out toment在后边加一个auto toment就可以了,各位啊,USERNAME255吧,假如说iner to t user这张表,然后接下来呢,我们这个IA这个地方,我们直接是username直接写上啊,直接只给username超值,比如说这个呢,我们叫做A拿过来。
05:41
把这块代码复制一下,直接粘贴过来。能看懂吗?就是说我这张表建好之后,我给这个ID字段,它是主键后边加了个auto什么意思啊,ID字段怎么着,自动维护一个自增的什么数字,从几开始,一开始一几递增,以一递增以一递增啊。
06:13
那接下来直接插入U内ID不给时,它默认怎么自增啊,默认是自增啊。主键值是不是只要起到一个什么作用就行。标识的作用就行了。明白,哎,就是你这个是我这行记录的身份证号标识就完事了,他不需要有任何含义,他不要有不要有任何含义,他要跟业务挂钩的话,业务改变会影响主件,业务改变会影响主键值啊是这样的。好了,这个内容非常重要,非常重要啊,关于自增这个事儿,后面加out to increment。NAV k这块呢,你这个叫新建表是吧。
07:19
Ad。主见。逐渐。应该有一个自增啊,可以选自增的地方。有,我记得有啊,应该有,现在找不着了,在哪来着。有一个。在添加蓝呗ID。哎,我刚才点的对不对。
08:00
点那个新建表啊。嗯。ID是吧,类型就采用int吧。小数点这这不用管啊,允许为空,这是主键呗,啊在这这这这有这有自增,对自我记得这有啊,自动递增,就你打上这个对勾之后,它将来那个它这一列就会自动添加哪个就是这个凹凸什么increment明白啊,就这意思,但是我觉得咱们得掌握,就是说自己不使用工具的方式,这块你要知道一个auto toment啊,自增啊。那这个组件自动维护有什么好处啊?说的太直接了啊,可以少写一个值吗?对不对,大家都知道这个用户呢,他有一个过程叫注册对吧。
09:00
注册呢,应该是写上用户什么什么信息都写上,是不是点注册需要在这写主件吗。完了那写主件给个框让用户填,填完之后一保存啊,告诉你主键不能重复,然后客户呢,又又改成别的主建还不能重复封了是吧,主建不应该用户提供主建这个值应该系统自动生成。就说我们下边这些信息可以插入到我们的用户表里边。这个是需要用户提供的,你手机号是多少,我不能生成吧,对吧,你的密码是多少,我也不能给你生成,用户名是什么,你想个名字呗,对吧,你写一个名字,你看太常用了,你看此用户名太受欢迎,请更换迎他应该是什么呢?应该是重复了,就是这个东西应该是重复了。对不对,ABC也应该是重复了吧,应该你看。重复了他连数据库了吗,现在。光标在这,只要光标一失去光标,它底层会发一个请求过去给服务器,服务器会检测底层数据库有没有。ABC什么意思?Select形容from to where,条件是name等于什么?ABC你懂吗?他查出一个结果,通过这条语句查询出有结果,听懂了吗?有结果,于是乎向前端给你打印出来一个这么错误信息。
10:19
听懂了吗?就这样子以后你们,你们就是会把所有的东西全部联合在一起的。啊,会把所有东西全部联系在一起。放心啊,你们现在所学的东西都是零零碎碎,可能就是今天学IO,明天学的,跟IO没有半毛钱关系,对吧,再学两天跟多线程没有半毛钱关系,但是再过一段时间,你做项目的时候,你就会发现IO流你会用上,反射机制你会用上,多线程你会用上,集合就用上,全都用上。你总有一天会穿起来的,你不会说一直是这样,很很零散啊,很零散,所以你得等啊,你有耐心呐,是不是啊,你不说天天看不到头啊,天天怎么今天就讲点这个,明天就讲点这个是吧,哎,快了四阶段。
11:09
快了啊,你们现在不是二阶段吗?二阶段啊,四阶段就。看到希望了啊,看到希望了对,你就能写些东西了,你就你就可以开发属于你自己的系统吧。啊,开发属于你自己的一个系统。比如说你可以给自己开发个系统什么的,呃,你可以开发个系统维护一下你本本月。本年的一个收入与支出投入,没有收入支出是吧?行,那你可以统计一下啊,对吧,你你整一个系统出来,你今天花了多少钱,你录进去。啊,那那是游戏,你可以你需要学界面啊,我说刚才这个支出收入支出这个系统大家可以做,可以做你每天,你比如说今天吃饭花了多少钱是吧?你记录一下到一个月30天之后一点,诶饼状图一成现你煎饼果子花了多少钱,对呃,你吃早餐花了多少钱,午饭花了多少钱,对吧?啊可以统计出来的,你的这个生活消这个消费,比如说买买别的方面呢啊,你花了多少钱,这都可以统计出来,那接下来下个月你就会身上身上有多少钱,你可以规划一下,我身上有这么多钱,对吧,然后呢,我百分之多少拿出来干什么,百分之多少拿来干什么,百分之多少这就是数据啊,对吧,我们生活以数据说话对不对,你不能说到时候钱花没了。
12:39
结果还没学完呢。对吧,你来到这肯定跟家里要钱了,家里肯定给你钱了,对吧,你你来到这儿,你肯定这个钱是固定的,你也不好意思说没学完就要就又要钱。对吧,你可以规划规划就类似的啊,类似的你可以做一个别的系统,比如说高考成绩管理系统,就现在刚刚高考完,对吧?哎,你这个系统好开发吗?不是那么简单啊,是不是得有学生得有科目吧。
13:10
得有所属学校吧?这个系统好开发吗?不好开发啊,不是那么简单的,你好像听啊,高考学生成绩管理系统好像好像没啥,但是你一想一细想就妥了。每一个学生的每一科的成绩,你都得都得都能都得维护出来,甚至如如果说你可以的话,你可以把这个学生是属属于哪所学校的。对。你你都可以给他维护出来,这个学生每道题的得分你可以维护出来。对吧,而且你的高考试卷是不是也维护起来,高考的试卷你是不是得录到系统里面。对吧,张三考历史,历史第三个选择题。错了。多少分对吧,问答题简答题多少分,这个都可以维护起来,这个系统其实还是比较复杂的,比较复杂的,你要能维护起来的话。
14:06
比较厉害,行,那这块呢,咱们就讲点别的啊,聊一聊,唠唠嗑啊,所以你一直听课呢,就感觉也挺乏味的啊out to表示自记住了吗?这个单词你会写什么意思啊,自动自啊来各位我提示一下啊,Oracle当也有一种自增啊,Oracle当中也提供了一个自增机制,叫做序列sequence。序列啊,有时间你可以了解一下,没有时间就算了啊,这是我们关于主见这块的一些内容啊,行了,这个咱们就说完了。
我来说两句