MySQL 是最常用的数据库,在数据库操作中,基本都是增删改查操作,简称CRUD。

在这之前,需要先安装好 MySQL ,然后创建好数据库、数据表、操作用户。

一、数据库操作语言

数据库在操作时,需要使用专门的数据库操作规则和语法,这个语法就是 SQL(Structured Query Language) 结构化查询语言。

SQL 的主要功能是和数据库建立连接,进行增删改查的操作。SQL是关系型数据库管理系统的标准语言。

SQL 语言的作用:

1. 数据定义语言 DDL(Data Definition Language) 。用于创建数据库,数据表。

2. 数据操作语言 DML(Data Manipulation Language) 。用于从数据表中插入、修改、删除数据。

3. 数据查询语言 DQL(Data Query Language) 。用于从数据表中查询数据。

4. 数据控制语言 DCL(Data Control Language) 。用来设置或修改数据库用户或角色的权限。

使用 SQL 操作数据库时,所有的 SQL 语句都以分号结束。(切换数据库时可以不用分号)

在 SQL 语句中,不区分大小写,编写 SQL 语句时可以根据情况用大小写的区别来增加可读性。

二、创建数据库

1. 连接 MySQL

输入 mysql -u root -p 命令,回车,然后输入 MySQL 的密码(不要忘记了密码),再回车,就连接上 MySQL 了。

mysql -u root -p

最初,都是使用 root 用户登录,工作中如果一直用 root 用户登录,因为权限太大,风险是很大的,所以等创建好权限适合的用户后,就不要经常登录 root 用户了。

2. 查看当前的数据库

使用 show databases; 查看当前安装的 MySQL 中有哪些数据库。

show databases;

刚安装 MySQL 时,默认有四个数据库,information_schema,mysql,perfomance_schema,sys 。通常情况下,我们不会直接使用这四个数据库,但千万不要把这四个数据库删了,否则会带来很多不必要的麻烦。如果不小心删了,建议是重新安装 MySQL ,在重装之前把自己的数据迁移出来备份好,或者从其他服务器上迁移一个相同的数据库过来。

3. 创建数据库

使用 create database 数据库名; 创建数据库。

create database MyDB_one;

创建数据库成功后,数据库的数量变成了5个,多了刚才创建的 MyDB_one 。

4. 创建数据库时设置字符编码

使用 create database 数据库名 character set utf8; 创建数据库并设置数据库的字符编码。

create database MyDB_two character set utf8;

直接创建的数据库,数据库的编码方式是 MySQL 默认的编码方式 latin1 (单字节编码) ,通常我们会在数据库中存放中文数据,所以最好把数据库的编码方式设置成 utf-8 ,这样中文才能正常显示。

create database MyDB_three charset utf8;

character set 可以缩写成 charset ,效果是一样的。

5. 查看和显示数据库的编码方式

使用 show create database 数据库名; 显示数据库的创建信息。

show create database MyDB_one;
show create database MyDB_two;

如果不知道一个数据库的编码方式是什么,可以使用 show create database 数据库名 来查看数据库的编码方式。可以看到刚才创建的 MyDB_one 的编码方式是 MySQL 的默认编码 latin1 ,MyDB_two 的编码方式是 utf-8 。

当然,这种方式不能在创建的同时显示,只能查看一个已经存在的数据库的编码方式。

6. 使用 alter database 数据库名 character set utf8; 修改数据库编码

alter database MyDB_one character set utf8;

如果一个数据库的编码方式不符合使用需求,可以进行修改。刚才创建的 MyDB_one 经过修改后,编码方式也变成了 utf-8 。

7. 进入或切换数据库

使用 use 数据库名 进入或切换数据库。

use MyDB_one
use MyDB_two;

刚连接上 MySQL 时,没有处于任何一个数据库中,如果要使用某一个数据库,就需要进入到这个数据库中。

use 数据库名 这个命令后面的分号可以省略,这是 SQL 语句中唯一可以省略分号的语句。

8. 显示当前数据库 select database();

select database();

进入数据库中,可以使用 select database(); 来查看当前处于哪个数据库中。长时间操作数据库时,在很多数据库中来回切换后,查看当前的数据库,避免操作错了数据库。

三、创建数据表

1. 查看当前数据库中的表

使用 show tables;查看当前数据库中有哪些表。

show tables;

在刚才创建的数据库 MyDB_one 中,还没有创建任何表,所以当前是空的。

2. 创建表

使用 create table 表名(字段1 字段类型,字段2 字段类型,字段3 字段类型,…); 来创建一张表。

create table Phone_table(pid INT, name CHAR(20), price INT);

在 MyDB_one 中创建了一个叫 Phone_table 的数据表,这张表有三个字段 pid,name,price 。为了增加 SQL 的可读性,字段名我用的是小写,字段类型用大写。

3. 显示表信息

用 show create table 表名; 来显示已创建的表的信息。

show create table Phone_table;

使用 show create table 表名;  可以显示表的字段信息, MySQL 的引擎,和默认的字符编码等信息。与显示数据库信息一样,show 只能显示已经创建了的数据表的信息,不能在创建的同时显示信息。

如果想更好地展示表的字段信息,可以使用 desc 表名; 来显示表的字段信息。

4. 给表增加字段

使用 alter table 表名 add 字段名 数据类型; 为已存在的表添加一个新字段。

alter table Phone_table add color CHAR(20);

添加后,刚才的表中多了一个字段,新增成功。

5. 删除表的字段

使用 alter table 表名 drop 字段名; 删除一个表中已存在的字段。

alter table Phone_table drop price;

删除字段后,表中不再有该字段。

6. 修改字段的数据类型

使用 alter table 表名 modify 字段名 数据类型; 修改表中现有字段的数据类型。

alter table Phone_table modify name VARCHAR(12);

修改之后,该字段的数据类型发生改变。

修改表名:

alter table wlyx2001 rename TO student;

修改后表名发生改变

7. 修改字段的数据类型并且改名

使用 alter table 表名 change 原字段名 新字段名 数据类型; 修改表中现有字段的字段名和类型。

alter table Phone_table change name pname CHAR(18);

现在,将表的 name 改成了 pname ,同时修改了 pname 的数据类型。

四、MySQL 常用字段类型

一个数据表是由若干个字段组成的,一个表十几个字段也很正常,每个字段表示不同的信息,需要使用不同类型的数据。

所以在创建表的时候,要为每个字段指定适合的数据类型。

MySQL 中常用的字段类型有以下这些:

1. 整数类型

数据类型  数据范围
TINYINT   -128 -- 127
SMALLINT -32768 -- 32767
MEDIUMINT -2^23 -- 2^23-1
INT     -2^31 -- 2^31-1
BIGINT -2^63 -- 2^63-1

2. 字符串类型

数据类型 字节范围 用途
CHAR(n) 0 -- 255字节 定长字符串
VARCHAR(n) 0 -- 65535字节 变长字符串
TEXT 0 -- 65535字节 长文本数据
LONGTEXT 0 -- 2^32-1字节 极大文本数据
BLOB 0 -- 65535字节 二进制长文本数据
LONGBLOB  0 -- 2^32-1字节 二进制极大文本数据

3. 小数类型

m 表示浮点数的总长度,n 表示小数点后有效位数。

数据类型 数据用法 数据范围
Float Float(m,n) 7位有效数
Double Double(m,n) 15位有效数
Decimal  Decimal(m,n)  28位有效数

4. 时间类型

数据类型  格式 用途
DATE YYYY-MM-DD 日期
TIME HH:MM:SS 时间
YEAR YYYY 年份
DATETIME  YYYY-MM-DD HH:MM:SS 日期和时间
TIMESTAMP 10位或13位整数(秒数) 时间戳

5. 枚举类型

enum(枚举值1,枚举值2,...)

枚举类型只能在列出的值中选择一个,如性别。
————————————————
版权声明:本文为CSDN博主「Python碎片」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43790276/article/details/102655786

MySQL 创建数据库和创建数据表相关推荐

  1. 在MySql数据库中创建数据库dbjava,数据表book,字段包括bno,bname,price,count(编号、书名、单价、数量)。 利用JDBC连接数据库dbjava,实现数据表的增删 改查

    题目 1.在MySql数据库中创建数据库dbjava,数据表book,字段包括bno,bname,price,count(编号.书名.单价.数量). 2.利用JDBC连接数据库dbjava,实现数据表 ...

  2. mysql创建数据库及中英文数据表--插入数据

    目录 一.创建数据库及数据表 二.插入数据 三.中文数据表创建 一.创建数据库及数据表 1.用create database 创建school数据库: 2.进入school数据库,创建info数据表: ...

  3. scrapy通过item类直接创建数据库中的数据表

    思路如下: 首先在item中写入需要构造的item 将item的key得到,构造dataframe 借助dataframe构造数据表 最后使用sql构造可以在数据库中自增长的主键 完整代码 # Def ...

  4. mysql之创建数据库,创建数据表

    写在前面 项目中用到mysql数据库,之前也没用过mysql,今天就学下mysql的常用的语法,发现跟sql server的语法极其相似.用起来还是蛮简单的. 一个例子 1.创建一个名为School的 ...

  5. MySQL创建数据库、创建数据表

    MySQL创建数据库.创建数据表 创建 MySQL 数据库时指定字符集和校对规则 mysql> CREATE DATABASE IF NOT EXISTS test_db_char DEFAUL ...

  6. MySQL之数据表(数据库的创建与删除、数据表的创建与删除)

    MySQL之数据表 创建数据库 删除数据库 认识数据表 创建数据表 删除数据表 创建数据库   在创建表之前,一定要先创建用来存储表的数据库.数据库中包含数据表.视图.索引.查询.规则.默认值等数据库 ...

  7. MySQL笔记(一)创建数据库、创建表、修改表、删除表,以及建立约束

    这是我在学习Mysql之路上做的笔记,今天将它粘出来.这一篇比较基础主要是创建数据库.创建表.修改表.删除表,以及建立约束:非空约束.主键约束.外键约束.唯一值约束.有错误的欢迎大家指出... -- ...

  8. Mysql数据库中插入记录的命令_MySQL创建数据库并插入数据命令

    简介: 学习mysql环境为ubantu,下面记录一些基本的创建数据库和插入数据的口令 学习资源来自实验楼:https://www.shiyanlou.com/courses/9 打开MySQL 服务 ...

  9. MySQL操作(1)创建数据库并插入数据

    文章目录 简介 数据库和SQL MySQL 介绍 数据库使用 准备 新建数据库 连接数据库 新建数据表 插入数据 简介 数据库和SQL 数据库(Database)是按照数据结构来组织.存储和管理数据的 ...

最新文章

  1. jquery操作select option使用小结
  2. Windows 服务全攻略(2)
  3. 大数据实战之环境搭建(八)
  4. resultType 与resultMap 的区别
  5. Windows Server 2008 R2之十一Windows Server Backup
  6. Java中关于枚举的7种用法
  7. YII2集成GOAOP,实现面向方面编程!
  8. switch注意事项
  9. 研究表明:喝酒“上脸”是基因突变,不仅容易老年痴呆,还容易得胃癌
  10. 安卓手机卡顿怎么解决_手机卡顿怎么办? 几招教你轻松解决!
  11. ASP.NET事件顺序
  12. Bootstrap 分页导航中的翻页组件
  13. 今天被BSE指摘了2个问题,感觉很典型
  14. CodeForces 551E(平方分割
  15. windows10中安装anaconda和pytorch
  16. 申音:被人为割裂的中国互联网
  17. 如何搜c语言考题答案,C语言考题答案.doc
  18. Java显示smart3d数据_[转][smart3d]Smart3D之手动配置 S3C 索引加载全部的OSGB瓦片数据...
  19. 链接Linux工具(SecureCRT)
  20. vba msgbox html 标签,VBA更改MsgBox中的文本颜色

热门文章

  1. 1166. 推荐结果打散
  2. c# 网络编程之http
  3. 用redis解决消息队列重复消费问题
  4. Spring-boot整合MybatisPlus自定义枚举转换器及各种CRUD扩展的简单使用
  5. mysql连接字符串_MySQL连接字符串中的几个重要步骤
  6. **记录自己遇到的问题:** 百度地图自动生成器
  7. GPT-3后的Codex模型和自训练应用
  8. 我理解的单反,单电和微单间的区别
  9. EMNLP 2023 征稿通知
  10. C++ 拷贝(复制)构造函数