《MySQL基础教程》笔记1

Web  2023年11月23日 am8:08发布11个月前更新 91es.com站长
80 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、 本站名称: 91易搜
2、 本站网址: 91es.com3xcn.com
3、 本站内容: 部分来源于网络,仅供学习和参考,若侵权请留言
3、 本站申明: 个人流水账日记,内容并不保证有效

暂无评论

暂无评论...

随机推荐

Android NDK之FirstJNI

工欲善其事必先利其器本文设计软件信息如下:一、工具简介操作系统     :Windows 7Eclipse 版本:Luna Service Release 2 (4.4.2)NDK   版本:android-ndk-r12b-windows-x86_64 (Native Developme...

BiuTextView替代TextView

前言Android 高版本后,TextView走马灯耗CPU。使用BiuTextView替代TextView来实现跑马灯。注意,下面测试还要其他应用使用surfaceflinger,所以很高,我们只是对比同一环境下,BiuTextView和TextView跑马灯的情况。正文说明:D...

XXXX: unexpected operator

最近在用.sh脚本时,明明可以运行的语句,但报错了比如“[: -ne: unexpected operator”因此查询到《解决Linux下编译.sh文件报错 “[: XXXX: unexpected operator”》这篇文章,觉得不错,摘抄于此。使用粗体字语句就可以搞定。3q然后我就表...

戴望舒:雨巷

撑着油纸伞,独自彷徨在悠长、悠长又寂寥的雨巷我希望逢着一个丁香一样地结着愁怨的姑娘 她是有丁香一样的颜色丁香一样的芬芳丁香一样的忧愁在雨中哀怨哀怨又彷徨 她彷徨在这寂寥的雨巷撑着油纸伞像我一样像我一样地默默行着寒漠、凄清,又惆怅 ...

换肤库BinSkin1的使用

前言之前介上线了Android的动态换肤库(BiuSkin1PA和BiuSkin1PNA),但没有写demo,因此这次抽空更新一下如何使用这些换肤库。也可以直接看对应动态换肤库的介绍:《动态换肤库:BiuSkin1PA》和《动态换肤库:BiuSkin1PNA》正文动态换肤就是常说的外置换肤...

余秀华 : 栀子花开

白成一场浩劫,芬芳成一种灾难那些隐匿的声音一层层推出来,一层层堆积,再散开是的,无话可说了白,不是一种色彩。而是一种姿态 每一年,如期而至的突兀:存在即为表达反正是绚烂,反正是到来反正是背负慢慢凋残的孤独:耀眼的孤独义无反顾的孤独 那些喷薄的力从何而来?它...