【MySQL】细节操作

准备工作

首先打开cmd命令窗口,并使用root用户登录:

#使用 root用户登录,并输入密码
mysql -h localhost -u root -p

一、新建数据库

首先,我们创建一个数据库,给它一个名字,比如 mysql_zxl
语句格式为 CREATE DATABASE <数据库名字>;,(注意不要漏掉分号 ;),前面的 CREATE DATABASE 也可以使用小写,具体命令为:

CREATE DATABASE mysql_zxl;

创建成功后输入命令 show databases; (注意不要漏掉;)检查一下:
在这里插入图片描述
在大多数系统中,SQL 语句都是不区分大小写的,因此以下语句都是合法的:

CREATE DATABASE name1;
create database name2;
CREATE database name3;
create DAtabaSE name4;

但是出于严谨,而且便于区分保留字和变量名,通常把保留字大写,把变量和数据小写。

二、连接数据库

接下来的操作,就在刚才创建的 mysql_zxl中进行,由于一个系统中可能会有多个数据库,要确定当前是对哪一个数据库操作,使用语句 use <数据库名字>

use mysql_zxl;

如图显示,则连接成功:
在这里插入图片描述
输入命令 show tables; 可以查看当前数据库里有几张表,现在mysql_zxl 里还是空的:
在这里插入图片描述

三、新建数据表

数据表(table)简称表,它是数据库最重要的组成部分之一。数据库只是一个框架,表才是实质内容。
而一个数据库中一般会有多张表,这些各自独立的表通过建立关系被联接起来,才成为可以交叉查阅、一目了然的数据库。

在数据库中新建一张表的语句格式为:

CREATE TABLE 表的名字
(
列名a 数据类型(数据长度),
列名b 数据类型(数据长度),
列名c 数据类型(数据长度)
);

我们尝试在 mysql_zxl 中新建一张表 employee,包含姓名,ID 和电话信息,所以语句为:

CREATE TABLE employee (id int,name char(16),phone char(11));

如图即为创建成功:
在这里插入图片描述
然后再创建一张表 department,包含名称和电话信息,想让命令看起来更整洁,可以这样输入命令:在这里插入图片描述
这时候再 show tables; 一下,可以看到刚才添加的两张表:
在这里插入图片描述

四、数据类型

MySQL 的数据类型和其他编程语言大同小异,下表是一些 MySQL 常用数据类型:

数据类型大小(字节)用途格式
INT4整数
FLOAT4单精度浮点数
DOUBLE8双精度浮点数
ENUM单选,比如性别ENUM(‘a’,‘b’,‘c’)
SET多选SET(‘1’,‘2’,‘3’)
DATE3日期YYYY-MM-DD
TIME3时间HH:MM:SS
YEAR1年分值YYYY
CHAR0~255定长字符串
VARCHAR0~255变长字符串
TEXT0~65535长文本数据

CHAR 和 VARCHAR 的区别: CHAR 的长度是固定的,而 VARCHAR 的长度是可以变化的,比如,存储字符串 “abc",对于 CHAR(10),表示存储的字符将占 10 个字节(包括 7 个空字符),而同样的 VARCHAR(12) 则只占用4个字节的长度,增加一个额外字节来存储字符串本身的长度,12 只是最大值,当你存储的字符小于 12 时,按实际长度存储。

五、插入数据

通过 INSERT 语句向表中插入数据,语句格式为:

INSERT INTO 表的名字(列名a,列名b,列名c) VALUES(值1,值2,值3);

现在向 employee 中加入 Zhang、Li 和 Wang:

INSERT INTO employee(id,name,phone) VALUES(01,'Wang',188188188);

INSERT INTO employee VALUES(02,'Li',166166166);

INSERT INTO employee(id,name) VALUES(03,'Zhang');

这里需要注意:
有的数据需要用单引号括起来,比如 Wang、Li、Zhang 的名字,这是由于它们的数据类型是 CHAR 型。此外 VARCHAR,TEXT,DATE,TIME,ENUM 等类型的数据也需要单引号修饰,而 INT,FLOAT,DOUBLE 等则不需要。

第一条语句比第二条语句多了一部分:(id,name,phone) 这个括号里列出的,是将要添加的数据 (01,'Wang',188188188) 其中每个值在表中对应的列。而第三条语句只添加了 (id,name) 两列的数据,所以在表中Li的phone为NULL。
现在我们再次使用语句 SELECT * FROM employee; 查看 employee 表,可见 Zhang 和 Li 的相关数据已经保存在其中了:
在这里插入图片描述

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值