本日我们的任务主线,便是完成创建该表:
表:
何为表:
表,Table也。
我在这里只是简单谈谈:
数据库的对象之一:数据库的对象有四大类,表是其中最根本的存在对象。其特点就是,物理存在。何为物理存在,就是存在硬盘某个特定的磁道上。四个字:物理存在,两个字——实在。
创建表:
我们要创建出上图这张表,抛开代船埠脑,什么关键字啥的。我们以常识来看,要完成这个任务,无外乎下面这几步:
前两步都统一,但是第三步说得宽泛,难免会有分歧,我们仔细看:
两行属性,deptid有一横排都是它的;deptname亦是如此;你会选择一列一列去添加,照旧添加完了deptid这一排,再去添加deptname这一排?
MySQL选择的是后者,我猜是因为写着省事又得劲,接下来你就知道了。
1.创建空表 + 表名
关键字CREATE
格式: CREATE TABLE 表名()
咱们直接上了:
快是快,报错也确实在。
- Error Code: 1046. No database selected Select the default DB to be used by double-clicking its name in the SCHEMAS list in the sidebar.
复制代码 这关键是哪? No database selected。
哦,忘说了(其实是故意的):数据库,都能叫库了,可见这个库可存不少数据。但是就让这些都散着,东一个,西一个嘛? 好的,计算机不让。(没想到,这计算机照旧个J人)
以是,现在有了表了。数据库里面,你所看到的数据,会存进表里。最后,数据装进表里,形成一张张表,表就放在库里,外貌就不会散落着可疑数据,达到管理构造数据的目标(突然想起来,上次说这话的,照旧数据布局)。
其实,数据库是表的容器,一装表的库——世界大千,库也无穷,更别说里面千万万万张表了。
我们在创建表的时候,就要决定好,这张表最后进哪个库,用哪个库的数据。——其实,到这儿,我们也能合理猜测,不同的库肯定根据需求装不同的数据,好比这个库装A市的,谁人库装W市的(博主现在才疏学浅,猜测哈,但应该合理)
创建数据库:
数据库并非系统给你配好,我们要吃就要吃现成的:
- #创建数据库
- CREATE DATABASE testdb;
- #还是CREATE关键字 + DATABASE + 数据库名
复制代码 温馨tips:会写注释的豹子应该已经看到,MySQL的单行注释就是#.....
从上面创建表,到这里创建数据库可以看到,无论是创建数据库对象,照旧数据库,都使用CREATE关键字。
(深夜赶文哈哈哈)
我们再看SCHEMAS有我们刚刚创建出来的testdb没:
毫无动静,解决:右键 + Refesh All
(千呼万唤始出来)
那创建空表的代码也有所依了:
- CREATE TABLE testdb.dept();
- # testdb.dept 一个点足以解释他们的从属关系
复制代码 我们在Java里也聊过,C里面也学过,C++似乎也说过: . 后面接成员变量大概方法(函数)
我们前面说:表是数据库的对象,现在有了. 更加证明表是数据库的成员。
2.添加字段
这里的字段:就是下面的deptid 和deptname
字段:标记实体属性的命名单位称为字段,也称为数据项。
(确实,一句话看完我都想申请中译中)
举个例子:如学生,有姓名,学号等字段。这句话可以合理推测,字段应该就是属性的意思:此处学院有两个属性:编号和名称。
MySQL给字段名字还不敷,还有数据类型,这里一个给CHAR,一个给VARCHAR,多少个char也有限制(即长度)
主键:
最后一列,deptid有个主键,我们猜测大概是个功能吧。
主键:PRIMARY KEY约束
PRIMARY KEY 约束用于定义基本表的主码,起到唯一标识作用,包管数据表中记载的唯一性。
一张表只能有一个PRIMARY KEY约束,可以作用于一个字段,......(后面这句我先省略)
可以分析上面这段话:一个被PRIMARY KEY约束的字段,添加该属性的数据是不答应重复的,好比:Stuid加上主键约束,我们插入数据,先插入一个学号007,再插入一个学号007,这时候主键就不干了,不会让你再加一个重复的学号。
NOT NULL:
最后一列,deptname有个NOT NULL,估计又是个约束。
NOT NULL约束:
NOT NULL约束可以确保这些字段总是包罗有用值,not null就是不空,名字即功能。
添加字段的代码:
字段名 类型(长度)空/不空 COMMENT '中文备注' ,
活学活用:
好比就写这里的deptid
- deptid CHAR(4) COMMENT '学院编号',
- # 没说NOT NULL我也就不管它空不空了
复制代码 这些添加字段的语句我们放在哪里呢?
看到括号了吗,没错就是括号内
以是这张表的创建代码也就完成7788了:
- # 创建表
- CREATE TABLE testdb.dept
- (
- deptid CHAR(4) COMMENT '学院编号',
- deptname VARCHAR(100) NOT NULL COMMENT '学院名称',
- #主键约束放哪,单写一句,放最后
- PRIMARY KEY(deptid)
- );
复制代码 仔细的同学发现了,添加字段语句中末尾一句不需要逗号(不是因为是增加主键约束)
运行:
创建乐成了,但是文字始终没有图来得直接:
推荐一句:
DESC 关键字
这里你会怎么写?我们的表叫什么来着,dept。
不对,testdb.dept。
是不是更好看,更直观? 快Get这个关键字吧
咱们的表就创建好了,任务也完成了,明天再见吧
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |