《MySQL基础教程》笔记1

Web  2023年11月23日 am8:08发布1年前 (2023)更新 城堡大人
120 0 0

前言

学习一下MySQL,之前一直没有系统的学习一下。最近有空,看了《MySQL基础教程-西泽梦路》,简单的做一下笔记。

记录于此,方便自己回忆。

正文

我这以Window版的phpstudy软件验证。

需要进入这个目录,才可以使用mysql命令

D:\phpstudy_pro\Extensions\MySQL5.7.26\bin

修改字符串编码

这里是win7上的cmd测试

chcp 65001

设置为UTF-8

登入

不带密码登入
mysql -u 用户

例子

mysql -u root

然后提示输入密码

带密码登入
mysql -u 用户 -p密码

例子

mysql -u root -prootroot

-u和用户之间的空格可以不需要,但-p和密码之间不能有空格。

如果登入成功会有如下界面

>mysql -uroot -prootroot
//略
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

退出

exit

quit

查看mysql字符串编码

这个是要在上面登入后查阅,输入status

mysql> status
--------------
mysql  Ver 14.14 Distrib 5.7.26, for Win64 (x86_64)
//略
//服务端和客户端的字符编码
Server characterset:    utf8 
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8
TCP port:               3306
Uptime:                 22 min 15 sec
//略
--------------

创建新用户

创建新用户
create user 新用户名 identified by '密码';

例子

create user test@localhost identified by '123123';
设置用户权限
grant 权限 on 数据库名.表名 to 用户;

例子

grant all on mysql.* to test@localhost;

退出后,就可以用test+123123进行登入

mysql -u test -p123123

创建数据库

create database 数据库名;

例子

create database db1;

显示数据库

show databases;
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| db1                |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

指定数据库

use 数据库名
mysql> use mysql
Database changed

成功创建数据库后,我们试着在数据库中创建表。在My SQL中,并不是启动后就能立即使用数据库,还需要显式地声明使用什么数据库。不过,即使不指定使用的数据库,也可以启动My SQL监视器。一些RDBMS要求在启动My SQL监视器的同时指定数据库,但My SQL并没有对此提出要求。

也可以用\u替代use

mysql> \u mysql
Database changed

显示当前使用的数据库

select database();
mysql> select database();
+------------+
| database() |
+------------+
| mysql      |
+------------+
1 row in set (0.00 sec)

书上,等如mysql时就可以指定选择数据

mysql 数据库名 -u 用户 -p密码
#例子
mysql mysql -u root -prootroot

列和字段

在创建表时,需要事先指定输入数据的类型是什么、列名是什么等。数据库中也有分开使用术语的情况,比如构成表的项目称为字段(field),构成记录的各项目的数据称为列。

数据类型

列中保存的数据的种类称为数据类型。

这部分暂时缺失,后面补上。

INT

整数数据

VARCHAR

存储字符数据

创建表

create table 表名(列名1 数据类型1 , 列名2 数据类型2 ....);

例子

create table tb1 (empid varchar(10) , name varchar(10) , age int );

可以指定编码

create table tb1 (empid varchar(10) , name varchar(10) , age int ) charset=utf-8;

显示表

show tables;
mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| tb1           |
+---------------+
1 row in set (0.00 sec)

显示表结构

用于显示表的列结构的命令是DESC或者DESCRIBE

desc 表名;
mysql> desc tb1;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| empid | varchar(10) | YES  |     | NULL    |       |
| name  | varchar(10) | YES  |     | NULL    |       |
| age   | int(11)     | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

插入数据

方式一
insert into 表名 values(数据1,数据2...);

以上面tb1表为例,也就是插入empid,name,age对应的值。

insert into tb1 values(empid,name,age);

例子

insert into tb1 values("A101","zuoteng", 40);

可以通过下面命令查询插入的数据情况。

// select 查询条件 from 表;
// * 表示查询所有
select * from tb1;
方式二

上面是按照表中列顺序进行插入,只不过是省略了写出列而已,是下面的缩写

insert into 表名 (列名1,列名2,列名3...) values(数据1,数据2,数据3...);

但你不想这么做时,那就可以指定顺序,也就是

insert into 表名 (列名3,列名2,列名1...) values(数据3,数据2,数据1...);
insert into tb1 (age, name, empid) values(22,"dubian", "A104");
方式三
insert into 表名 (列名1,列名2,列名3...) values(数据11,数据12,数据13...),(数据21,数据22,数据23...);

上面只展示插入2条,后面接着逗号,可以继续插入多条。

例子

insert into tb1 (empid,name,age) values("A102","gaoqiao", 28), ("A103","zhongchuan", 20);

参考文章

  1. 《MySQL基础教程-西泽梦路》

 历史上的今天

  1. 2019: 史铁生:有关庙的回忆(0条评论)
  2. 2018: 删除开机动画bootanimation(0条评论)
版权声明 1、 本站名称: 笔友城堡
2、 本站网址: https://www.biumall.com/
3、 本站部分文章来源于网络,仅供学习与参考,如有侵权,请留言

暂无评论

暂无评论...

随机推荐

ACTION_USER_UNLOCKED发送分析

前言记录一下Android开机时ACTION_USER_UNLOCKED和ACTION_BOOT_COMPLETED啥时候发送的过程记录,主要是方便自己回顾。Android P分析为例。正文本文跟《Android开机动画关闭源码分析》存在大量重复,这就简单过一下。ResumeActi...

梁实秋 :把快乐种在心里

天下最快乐的事大概莫过于做皇帝。“首出庶物,万国咸宁”。至不济可以生杀予夺,为所欲为。至于后宫粉黛三千,御膳八珍罗列,更是不在话下。清乾隆皇帝,“称八旬之觞,镌十全之宝”,三下江南,附庸风雅。那副志得意满的神情,真是不能不令人兴起“大丈夫当如是也”的感喟。在穷措大眼里,九五之尊,乐不可支。但是试...

周国平:孤独

夜是一个巨大的黑色漩涡那像灯影一样在记忆的粼粼水面上旋转着的是我凄清的魂魄 爱沉默了一个凿不透的厚实的沉默我走进一个长长的寂寞 在这世界上谁渴望爱谁注定要孤独地生活

Kotlin字符串

前言简单记录一下Kotlin字符串。主要是方便自己查阅。正文字符串一个字符串可以包含一个或者多个字符,也可以不包含任何字符,即长度为0。var mString: String = "谷歌一下"var mString2 = "百度一下"遍历字符串遍历也是很多种,下面列举验证过的遍历...

MediaPlayer源码介绍2

前言之前介绍MediaPlayer ,接上文《MediaPlayer JNI层介绍》(看做《MediaPlayer源码介绍1》)介绍到mediaplayer.cpp,这也是一个代理,真正处理的并不是这个。今天以setDataSource()为例继续分析。涉及代码frameworks\av\...

拜伦 · 韦恩的10条人生经验

紧密联的人际网络。运气在生活中扮演着重要的角色,没有比认识尽可能多的人更好的增加运气的方法了。 通过向人们发送文章、书籍和电子邮件来培养你的人际关系网,以表明你在思考这些问题。 为主要出版物撰写专栏和思想文章。 组织讨论小组,把你有想法的朋友聚集在一起。 当你遇到一个新的人时,把他当作朋友。 ...