ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

docke

2019-09-01 14:57:01  阅读:426  来源: 互联网

标签:5.1 name xueyuan testdb MariaDB WHERE docke


 表

创建表

  1. 查看创建表时所用的语法

1.1. MariaDB [(none)]> HELP CREATE TABLE;

  1. 创建数据库

2.1. MariaDB [(none)]> CREATE DATABASE testdb;

2.1.1. 切进表

2.1.1.1. MariaDB [(none)]> use testdb;

  1. 在testdb中创建表

3.1. MariaDB [testdb]> CREATE TABLE xueyuan (id int UNSIGNED NOT NULL PRIMARY KEY, name VARCHAR(20) NOT NULL, age tinyint UNSIGNED);

3.1.1. 创建xueyuan这个表

3.1.2. 第一字段id,int为整数型占用4个字节无符号最大值为2147483647有符号最小值为-214783648,UNSIGNED表示使用无符号只能跟在数值类型后面,NOT NULL表示值不能为空,PRIMARY KEY表示id这字段为主键搜索id就可以找到这个字段定义的所有信息。

3.1.3. 第二字段name,VARCHAR(20)表示可变长度定义最大存储20字节,20字节一下的随存储字节大小,NOT NULL不能为空。

3.1.4. 第三字段age,tinyint整数型占用1个字节无符号最大值为127有符号最小值为-128,UNSIGNED表示使用无符号,只能跟在数值类型后面

3.1.4.1. 显示xueyuan表结构,使用DESC

3.1.4.1.1. 

3.2. MariaDB [testdb]> CREATE TABLE xueyuan2 (id int UNSIGNED NOT NULL, name VARCHAR(20) NOT NULL, age tinyint UNSIGNED, PRIMARY KEY(id,name));

3.2.1. 

3.2.2. 创建xueyuan2这个表

3.2.3. 定义字段于xueyuan这个表相同,最后主键约束不同,PRIMARY KEY(id,name)表示将id和name这个两个字段组合起来作为主键

3.2.3.1. 显示xueyuan2表结构,使用DESC

3.2.3.1.1. 

  1. 查看创建表时的命令

4.1. MariaDB [testdb]> SHOW CREATE TABLE xueyuan;

4.1.1. 

  1. 查看表的状态

5.1. MariaDB [testdb]> SHOW TABLE STATUS LIKE 'xueyuan'\G

5.1.1. 

5.1.2. STATUS表示查看表状态

5.1.3. LIKE表示模糊匹配(像)

5.1.4. \G表示已竖状显示

5.1.4.1. Name: xueyuan

5.1.4.1.1. 表名

5.1.4.2. Engine: InnoDB

5.1.4.2.1. 存储引擎类型

5.1.4.3. Version: 10

5.1.4.3.1. 版本

5.1.4.4. Row_format: Compact

5.1.4.4.1. Row_format行格式使用的紧凑Compact

5.1.4.5. Rows: 0

5.1.4.5.1. 现在行里没有一行数据

5.1.4.6.  Avg_row_length: 0

5.1.4.6.1. 平均行长度为0

5.1.4.7. Data_length: 16384

5.1.4.7.1. 数据长度16384

删除表

  1. MariaDB [testdb]> DROP TABLE tal1;

1.1. 

 

修改表

  1. 查看帮助信息

1.1. MariaDB [testdb]> HELP ALTER TABLE;

  1. 添加

2.1. 添加一个字段 ADD

2.1.1. MariaDB [testdb]> ALTER TABLE xueyuan ADD xingbie ENUM('m','f');

2.1.1.1. 

2.1.1.2. 给xueyuan表中添加一个字段xingbie,ENUM('m','f')媒举类型,用于做限定字符,只能使用这两个。

2.2. 修改字段名称 CHANGE

2.2.1. MariaDB [testdb]> ALTER TABLE xueyuan CHANGE id sid int UNSIGNED NOT NULL;

2.2.1.1. 

2.2.1.2. 修改xueyuan这个表,CHANGE修改字段id改为sid将这个字段的属性也要重新添加,主键不用定义

2.3. 修改字段的属性定义 MODDIFY

2.4. 删除字段的默认值(属性)

 

 

创建唯一约束

  1. MariaDB [testdb]> ALTER TABLE xueyuan ADD UNIQUE KEY(name);

1.1. 

1.2. 

 

创建和查看索引

  1. 创建索引

1.1. MariaDB [testdb]> ALTER TABLE xueyuan ADD INDEX(age);

1.1.1. 

  1. 查看一个表中的索引

2.1. MariaDB [testdb]> SHOW INDEXES FROM xueyuan;

2.1.1. 

 

删除索引

  1. MariaDB [testdb]> ALTER TABLE xueyuan DROP age;

1.1. 

 

数据操作语句DML

表中插入数据 INSERT

  1. MariaDB [testdb]> INSERT INTO xueyuan VALUES(1,'yang guo','m'),(2,'guo xiang','f');

1.1. 

  1. MariaDB [testdb]> INSERT INTO xueyuan (sid,name) VALUES (3,'zhang wu ji'),(4,'zhao mi');

3.1. 

 

删除表中数据 DELETE

  1. MariaDB [testdb]> DELETE FROM xueyuan WHERE sid=3;

1.1. 

1.2. 

1.3. 删除xueyuan表中条件sid对于3的

 

更新(修改)表中数据UPDATE

  1. MariaDB [testdb]> UPDATE xueyuan SET xingbie='f' WHERE sid=4;

1.1. 

1.2. 

1.3. 修改xueyuan这个表,SET设置xingbie字段等于f,WHERE条件时sid为4的

 

 

查询表中数据SELECT

  1. MariaDB [testdb]> SELECT * FROM xueyuan;

1.1. 

1.2. 从xueyaun这张表中查询*表示所有字段

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE sid<3;

2.1. 

2.2. 查询xueyuan这张表中,WHERE条件sid小于3的

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE xingbie='m';

3.1. 

3.2. 查询xueyaun这张表中,WHERE条件xingbie为m的,字符串需要引用起来

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE xingbie IS NULL;

4.1. 

4.2. 查询xueyaun这张表中,WHERE条件IS NULL为空

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE xingbie IS NOT NULL;

5.1. 

5.2. 查询xueyaun这张表中,WHERE条件IS NULL非空、

  1. MariaDB [testdb]> SELECT * FROM xueyuan ORDER BY name;

6.1. 

6.2. 查询xueyaun这张表中,基于name字段名字首字母进行升序排序

  1. MariaDB [testdb]> SELECT * FROM xueyuan ORDER BY name DESC;

7.1. 

7.2. 查询xueyaun这张表中,基于name字段名字首字母进行降序排序

  1. MariaDB [testdb]> SELECT * FROM xueyuan ORDER BY name DESC LIMIT 2;

8.1. 

8.2. 查询xueyaun这张表中,基于name字段名字首字母进行降序排序,LIMIT 2表示只显示前两个

8.3. 或

8.4. MariaDB [testdb]> SELECT * FROM xueyuan ORDER BY name DESC LIMIT 1,2;

8.4.1. 

8.5. 查询xueyaun这张表中,基于name字段名字首字母进行降序排序,LIMIT 1,2表示把第一个略过去显示两个

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE sid>=2 and sid<=4;

9.1. 

9.2. 查询xueyaun这张表中,WHERE条件sid大于或等于2,或sid小于AND或等于4的;

9.3. 或

9.4. MariaDB [testdb]> SELECT * FROM xueyuan WHERE sid BETWEEN 2 AND 4;

9.4.1. 查询xueyaun这张表中,WHERE条件sidBETWEEN2AND或4之间

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE name LIKE 'Z%';

10.1. 

10.2. 查询xueyaun这张表中,WHERE条件,name字段,LIKE表示模糊匹配,'Z%';Z开头%表示任意长度的任意字符;

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE name RLIKE '.*u.*';

11.1. 

11.2. 查询xueyaun这张表中,WHERE条件,name字段,RLIKE表示做正则表达式模式匹配'.*u.*',.*表示任意长度的任意字符

  1. MariaDB [testdb]> SELECT * FROM xueyuan WHERE name RLIKE '.*[A-G]u.*';

12.1. 

  1. MariaDB [testdb]> SELECT sid as stuid,name as stuname FROM xueyuan;

13.1. 

13.2. 表示将sid改为别名stuid,将name改为别名stuname FROM从xueyuan这个表中

 

 

用户账号及权限管理

禁止检查主机名

  1. 禁止检查主机名:

1.1. my.cof,[mysqld]

1.1.1. skip_name_resolve = yes

创建用户并指定密码CREATE

  1. 创建用户并指定密码:

2.1. 简单创建用户账号

2.1.1. MariaDB [(none)]> CREATE USER 'wpuser'@'%' IDENTIFIED BY 'wpp@ss';

2.1.1.1. 

2.1.1.2. ‘%’表示所有主机

2.1.1.3. IDENTIFIED BY 表示授权密码

2.2. 创建并授权用户

2.2.1. MariaDB [mysql]> GRANT SELECT,DELETE ON testdb.* TO 'testuser'@'%' IDENTIFIED BY 'testpass';

2.2.1.1. 

2.2.1.2. GRANT表示授权,SELECT(查询),DELETE(删除),testdb这数据路下的所有表,用户testuser所有登陆方式,密码testpass。

2.3. 查看此wpuser用户

2.3.1. MariaDB [mysql]> use mysql;

2.3.2. MariaDB [mysql]> SELECT host,user,password FROM user;

2.3.3. 

3、删除用户DROP

  1. 删除用户

3.1. MariaDB [mysql]> DROP USER 'wpuser'@‘%’;

4、授权GRANT

  1. 1

5. 查看授权SHOW GRANTS FOR

5.1. MariaDB [mysql]> SHOW GRANTS FOR 'root'@'localhost';

5.2. 

5.3. 查看当前用户授权

5.3.1. MariaDB [mysql]> SHOW GRANTS FOR CURRENT_USER;

5.3.2. 

5.3.2.1. CURRENT_USER是函数表示当前用户可以CURRENT_USER()加上括号

5.4. 回收授权

5.4.1. MariaDB [mysql]> REVOKE DELETE ON testdb.* FROM'testuser'@'%';

5.4.1.1. 

5.4.1.2. 回收DELETE删除权限,作用于testdb这个库下的所有表的,用户testuser

标签:5.1,name,xueyuan,testdb,MariaDB,WHERE,docke
来源: https://www.cnblogs.com/hao-ran/p/11442280.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有