技术学习

MYSQL数据库基础语句

学习原因

MYSQL数据库基础语句

学好数据库是有必要的,一个公司最重要的就是数据,所以有必要进行一个学习!

去年学习开了这门课程,很荣幸今年全部都还给老师了……

层级关系

MySQL=>数据库=>数据表=>存的数据

数据库操作

SHOW DATABAES;    //查询所有数据库
CREATE DATABASE 库名 DEFAULT CHARSET utf8;    //创建数据库并设置编码为uft8
ALTER DATABASE 库名 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;    //修改数据库编码
DROP DATABASE 库名;    //删除数据库
USE 库名;    //使用数据库
SHOW CREATE DATABASE 库名;    //查看数据库的结构

数据表操作

数据表常用类型:INT(整型),CHAR(固定长度字符串),VARCHAR(可变长度字符串),FLOAT(浮点型),DATE(日期时间类型)

数据库常用约束:NOT NULL(非空),PRIMARY(主键),AUTO_INCREMENT(自增,数字自动加1),UNIQUE(唯一性)

SHOW TABLES;    //显示数据库中的表
CREATE TABLE 表名(
    序号    INT PRIMARY KEY AUTO_INCREMENT,
    学号    CHAR(8)    UNIQUE NOT NULL,
    姓名    VARCHAR(30) NOT NULL,
    性别    CHAR(2) NOT NULL
);    //创建数据表
SHOW CREATE TABLE 表名;    //查看数据表构造
DESC 表名;    //查看数据表结构
ALTER TABLE 表名 DROP 字段;    //删除数据表中的字段
ALTER TABLE 表名 MODIFY 字段 VARCHAR(50);    //修改字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新数据类型;
DROP TABLE 表名;    //删除数据表

数据表中的数据操作

INSERT INTO 表名(字段1,字段2)VALUES('值1','值2');    //增加数据
UPDATE 表名 SET 字段名='值' WHERE 字段名 = '值';    //修改数据
DELETE FROM 表名 WHERE 字段名='值';    //删除数据
SELECT * FROM 字段名;    //查找数据

常见的一些条件语句

去重:SELECT DISTINCT 字段 FROM 表名 WHERE 条件;

逻辑条件:AND OR

比较条件:<,<=,>,>=,<>,between value1 and value2;

判断null:is null

判断空字符串:="" / <>""

模糊条件:like

 %:替换任意长度字符

 _:替换单个字符

分页查询,limit 起始行,查询行数

排序:order by 字段 asc/desc

 asc:升序
 desc:降序

分组:group by 字段

创建数据表练习

创建一个名称为grade的数据表,且添加数据约束条件
具体设置:

序号 :整型,主键,其值自动增加

学号 :固定长度字符串,长度为8,具有唯一性,且为非空

姓名 :可度长度字符串,最长30个字符,非空

性别 :固定长度字符串,长度为2,非空字段

JavaScript :为单精度浮点型,缺省为空

PHP编程 :为单精度浮点型,缺省为空

MySQL :为单精度浮点型,缺省为空

网络互联设备配置:为单精度浮点型,缺省为空

服务器安装与配置:为单精度浮点型,缺省为空

CREATE TABLE grade(
     序号 INT PRIMARY KEY AUTO_INCREMENT,
     学号 CHAR(8) UNIQUE NOT NULL,
     姓名 VARCHAR(30) NOT NULL,
     性别 CHAR(2) NOT NULL,
     JavaScript FLOAT NULL,
     PHP编程 FLOAT NULL,
     MySQL FLOAT NULL,
     网络互联设备配置 FLOAT NULL,
     服务器安装与配置 FLOAT NULL
);

数据库增删改查小练习

数据库名为user

字段名有:username,nickname,password,email ,logintime,createtime

查询

1.请查出2019年5月1号到2019年5月10号的登录信息

SELECT * FROM user WHERE logintime BETWEEN '20190501' TO '20190520';

2.查询出username,email,logintime字段的所有信息

SELECT username,email,logintime FROM user;

3.查询出username为root,nickname为root的相关信息

SELECT * FROM user WHERE username='root' AND nickname='root';

修改

将username为root数据的nickname修改为admin

UPDATE user SET nickname='admin' WHERE 'username'='root';

添加

添加一条username为root,password为123456的数据

INSERT user(username,password)VALUES('root','123456')

删除

删除username为root的数据

DELETE FROM user WHERE username='root';

总结一下

WHERE开头的条件语句一般都是在最后面写,数据库的层次结构记清楚,着重记忆对数据的增删改查操作!

GouGe
程志辉 前行的路充满未知,不努力尝试,永远都不知道有多精彩。

发表评论

已有 21 条评论
  1. 从来不记这些,都是复制黏贴了事

  2. 这个需要学习一下啊。

  3. 文章不错支持一下吧

  4. 1梦
    1梦

    整理的很好收藏下来了

  5. 数据表 可以看着改!

    1. 嘿嘿,设计表我也忘记的差不多了,现在基本都是软件图形化生成。不同岗位对数据库需要掌握的内容也不一样。

  6. 有些天没来了,最近的博文都是偏向技术了嘛

    1. 都是伪技术伪技术,小宇哥好久没来催我更新了啊!

      1. 因为我自己都快断更了,我怎么好意思来催你阿哈哈哈

  7. 数据是个好东西

    1. 一个公司的立足之本,啥都能丢,数据不能!

  8. 我连MD基本语法都记不住,记住这个是万万不可能了。

    1. 哈哈,MD常用的语法我也就记住了超链接,调用图片还有标题,不过一篇文章足够了

  9. 幸运
    幸运

    现在是大数据时代,很多事都是靠数据支撑,有数据的时代更具有挑战。

  10. 记是不可能记得的,我反正不记得,随用随查,所以我是菜鸡

    1. 我也是哇.......搜索引擎是个好东西,哈哈哈哈

  11. 学过一阵子MySQL,但都忘了差不多了!

    1. 确实,长时间没用,只能靠Baidu寻回记忆.........

  12. 非技术的路过。

    1. 我不会告诉你,老师抽查,我写错被罚200遍.......