MySQL入门

1.什么是数据库?

       通其意,数据库数据的集合,但是,在计算机编程之中,数据库的定义和生活中有一定的区别。计算机中的数据库是“按照数据结构来组织、存储和管理数据的仓库”

            1.数据库中的数据它都是有一定规律结构,相同类型的数据放在一起,不同类型的数据之间相互隔离

            2.数据库由统一的规则来读写,它有专门的SQL语言用来对数据库中的数据进行增加,修改,删除及查询操作。

每个数据库中储存着许多的表,每一个表里面的数据的结构它都是一样的,这非常类似我们常用的Excel表格,但是数据库的本质就是文件系统

 


2.什么是MySQL?

         MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。

        关系数据库它是将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。由于MySQL是开放源码软件,对于一般的个人使用者和中小型企业来说,MySQL提供的功能绰绰有余,可以大大降低开发成本。

  • SQL

           SQL全称Structured Query Language,简称SQL,中文叫结构化查询语言。

  • SQL语句分类

      数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等

      数据操作语言:简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。关键字:insert,delete,update等

      数据控制语言:简称DCL(Data Control Language),用来定义数据库的访问权限和安全级别,及创建用户;关键字:grant等

      数据查询语言:简称DQL(Data Query Language),用来查询数据库中表的记录。关键字:select,from,where等

  • 关于SQL语句的使用

         1.针对库操作

              1.1.创建数据库:create database 数据库名;

              1.2.查看数据库:show create database 数据库名

          2.针对表操作

              2.1查看表

                     查看数据库中的所有表:show tables;

 

                     查看表结构:desc 表名;

 

             2.2删除表

 

                    drop table 表名;

 

             2.3修改表

 

                   alter table 表名 add 列名 类型(长度) 约束; --修改表添加列.

 

                   alter table 表名 modify 列名 类型(长度) 约束; --修改表修改列的类型长度及约束.

 

                   alter table 表名 change 旧列名 新列名 类型(长度) 约束; --修改表修改列名.

 

                   alter table 表名 drop 列名; --修改表删除列.

 

                  rename table 表名 to 新表名; --修改表名

 

                 alter table 表名 character set 字符集; --修改表的字符集

 

           2.4新增表数据

 

                 insert into 表 (列名1,列名2,列名3..) values  (值1,值2,值3..); -- 向表中插入某些列

 

                 insert into 表 values (值1,值2,值3..); --向表中插入所有列

 

                 insert into 表 (列名1,列名2,列名3..) values select (列名1,列名2,列名3..) from 表

 

                 insert into 表 values select * from 表

 

            2.5修改表数据

 

                 update 表名 set 字段名=值,字段名=值;

 

                update 表名 set 字段名=值,字段名=值 where 条件;

 

            2.6删除表数据

 

               delete from 表名 [where 条件];(删除表数据)

  • cmd乱码

                 修改my.ini文件,然后重启mysql服务器即可

              

 

  • SQL执行顺序

              示例:SELECT * FROM user LEFT JOIN order ON user.id = order.uid WHERE order.price > 1000 GROUP BY user.name HAVING count(1) > 5 ORDER BY user.name LIMIT 0,10

           1.  FROM(将最近的两张表,进行笛卡尔积)---VT1

           2.ON(将VT1按照它的条件进行过滤)---VT2

           3.  LEFT JOIN(保留左表的记录)---VT3

           4.   WHERE(过滤VT3中的记录)--VT4…VTn

           5.  GROUP BY(对VT4的记录进行分组)---VT5

           6.  HAVING(对VT5中的记录进行过滤)---VT6

           7. SELECT(对VT6中的记录,选取指定的列)--VT7

           8.ORDER BY(对VT7的记录进行排序)--游标

           9. LIMIT(对排序之后的值进行分页)

 在我们写带有WHERE条件的SQL语句时,优先级高的部分要去编写过滤力度最大的条件语句。

 

  • 表与表之间存在的关系

 

               一对一关系 (例如:一个身份证只对应这一个人)

               一对多关系(例如:一个年级中有多名学生)

               多对多关系(同一个商品对应多个订单,一个订单对应多个商品)

 

 

posted @ 2019-12-25 16:44  网海精华  阅读(120)  评论(0)    收藏  举报