众所周知,MySQL是一个数据库管理系统,但其实数据库也分多种类型,MySQL是其中一种,叫作关系型数据库。mysql
关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的行和列被称为表,一组表组成了数据库。 sql
关系链是: 服务器(Server) -> 数据库(例如MySQL) -> 表格(Table) -> 行(Row) -> 列(Column)shell
表格里面还包含了多行与多列(图片没有展现)。数据库
那么咱们怎么在数据库里建立表格呢?bash
建立数据库很简单,首先建立一个后缀名是.sql的文件,而后书写下段代码:服务器
CREATE DATABASE test;
复制代码
create是建立的意思,database是数据库的意思,由于是关键词,全部是大写(书写规范),test是你给数据库取的一个名字, 固然你也能够叫lili、mary之类的。学习
是的,就是这么简单,一句话你就建立了一个数据库。 如今能够打开MySQL服务器,而后在shell里查看你建立的数据了。ui
打开shell,输入spa
mysql -uroot
#回车
SHOW DATABASES;
复制代码
你的服务中全部的数据库会展现出来,而且你会看到,多了一个名叫 test 的数据库。code
可是,若是你从新执行上段操做,会发现报错,缘由是该服务器已经有了一个叫 test 的数据库了,因此不能再建立一个同名的数据库。
因此你须要在建立数据库的时候,加上这样一段代码:
DROP DATABASE IF EXISTS test;
CREATE DATABASE test;
复制代码
新增的代码意思是:若是服务器中已经有了名叫 test 的数据库,那么删除它。
这样就万无一失啦,再查看多少次服务器都不会出错了。
首先在建立表格以前,咱们要先调用该数据库,以避免计算机不知道咱们要在哪建立。
USE test;
CREATE TABLE myTable(
列名称: 列类型,
列名称: 列类型,
...
);
复制代码
使用 USE test 连调用该数据库,而后建立表格,不难发现,表格里填了一些内容,这些内容规定了表格的表头,即:你的表格都有哪些列。
列名称不是很难理解,通常都是你本身取的名字,好比你作一个学生班级的表格,表格里包含了学生的编号、姓名、性别、分数等等。
USE test;
CREATE TABLE student(
id: TINYINT,
name: VARCHAR(6),
...
);
复制代码
可是用什么值来表示它们,规定这些列的类型,就比较重要了,由于这些是规定好的,你得记住别写错了。
要建立表格,那么咱们必定要知道它包含的列都有哪些类型的。
上面只是建立了一个表格,写了它的第一行,里面包含了全部列的分类,那么下面就要往表格里填内容了,即它以后的行。
INSERT INTO test VALUES(1,'Jack',...);
复制代码
值1对应列头的第一个,值2对应列头的第二个,以此类推。
你也能够对内容进行修改:
UPDATE student SET name = 'Mike' WHERE id = 1;
复制代码
或者删除:
DELETE FROM student WHERE id = 1;
复制代码
一个简单的表格就已经建立好了,那么怎么查看呢? 两种方式:
mysql -uroot
#回车
USE test;
#回车
SELECT * FROM student;
#回车便可查看
复制代码
SELECT * FROM student;
复制代码
而后在shell里执行:
mysql -uroot < 你的sql文件的位置
#回车查看
复制代码
可是通常脚本语言不用于查看,而是用交互模式查看。
须要注意的是,上面的写法,若是列表里填的值有中文,会显示出乱码,全部咱们须要设置一下。 在建立表格的时候,设定语言范围是UTF-8,因为mysql对于‘-’号会理解成减号,全部写的时候省去了‘-’号。
SET NAMES UTF8;
DROP DATABASE IF EXISTS test;
CREATE DATABASE test CHARSET = UTF8;
复制代码
这样在值为中文的时候就不会显示乱码了(用交互模式查看,若是是脚本模式仍是看不懂的~)。
你学会了吗?
以上是本身的一点学习记录,若有不对还请指正,谢谢!