ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL入门

2019-08-15 20:03:21  阅读:129  来源: 互联网

标签:入门 删除 数据库 表名 mysql MySQL table


MySQL入门

1、MySQL的基本介绍

    数据库(database),数据库是存储数据的仓库,本质是一个系统文件,我们可以对这个文件(数据库)数据进行增删改查操作(crud)。

    数据是直接存在数据库中还是数据表中?存在数据表中。

    数据表结构及原理:

        数据表:由行和列组成。

            列:字段

            行:记录

 

2、MySQL数据库的安装与卸载

    安装:

        在网上可以找到安装教程,按着安装就行,安装之前必须保证之前没有安装过mysql或已经卸载干净了。

    卸载:

        注意:如果MySQL卸载不干净,会导致再次安装的不成功。

        1、首先找到控制面板,就程序给卸载

        2、找到mysql的安装目录将其删除,

        3、再去c盘将C:\ProgramData\目录下的MySQL文件夹给删除,

        4、删除mysql的注册表,快捷键window+R搜索regedit进入注册表         

            路径1:\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\eventlog\Application\MySQL

            路径2:\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\services\eventlog\Application\MySQL

            删除整个MySQL文件夹即可

      SQLYog(图形化界面)

 

3、数据库的基本操作

    1、通过dos直接访问MySQL

        使用基本到dos命令登录系统 : mysql -hIP地址 -u用户名 -p密码

            例如:mysql -hlocalhost  -uroot  -proot

              如果是本地登录,可以省略掉-h,  如 :mysql -u用户名  -p密码

    2、mysql服务的开启与关闭命令

        通过视图找到MySQL的服务

          我的电脑--右键管理--服务与应用--服务--MySQL。

        如果通过命令方式开启和关闭服务:

          关闭服务:net stop mysql

          开启服务:net start mysql.

3、SQL语言及分类

    sql:结构化查询语言。可以用它来对数据进行增删改查(crud)

    分为四大类:

        DDL(Data Definition Language)数据库定义语言,用来定义数据库对象:数据库,表,列等,关键字:create,alter,drop等,结构上的操作

        DML(Data Manipulation Language)数据库操纵语言,用来对表中的数据的增删改,关键字:insert、delete、update等,数据上的操作

        DQL数据查询语言:关键字:select、from、where等 结构不会发生变化,数据也不会变化,就是单纯的去查询。

        DCL数据控制语言,用来定义数据库的访问权限和安全级别,及创建用户(了解)。

 

 

  sql通用语法

     sql语句可以单行或多行书写,以分号结尾。

     可使用空格和缩进来增强语句的可读性。

     MySQL数据库的sql语句不区分大小写,关键字建议使用大写

          例如:SELECT * FROM user.

     同样可以使用/**/的方式完成多行注释

    mysql中的数据类型:

      int   整型

      double  浮点型

      varchar(长度)  字符串型

      date  日期类型

  DDL-操作数据库结构

      创建数据库  

  

命令

说明

create database 数据库名;

在当前服务器下创建指定名称的数据库。

配置数据库时我们指定了utf8,那么数据库默认字符集就是utf8

 

create database 数据库名 character set 字符集;

在当前服务器下创建指定名称的数据库,并且指定数据库的字符集(很少使用)

 

    

    代码准备:

      #创建数据库day01_1 数据库中数据的编码采用的是安装数据库时指定的默认编码 utf8

      #创建数据库day01_2 并指定数据库中数据的编码为gbk

    查看数据库

       use  数据库名       :切换数据库

      show  databases;     查看MySQL服务器中有哪些数据库

    删除数据库

      

命令

说明

drop database 数据库名称;

从MySQL服务器中永久删除某个数据库

 

 DDL-操作数据表结构

格式

    create table 表名 (字段1 类型  【约束】)

    注意:多个字段之间要用逗号隔开   

    查看表

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

      desc 表名    :查看某张数据表的表结构

 

    删除表:

      drop  table  表名   :从当前数据库中永久的删除某张表

    修改表结构格式:(了解)

    

命令

说明

alter table 表名 关键字….

修改某张表的某些字段

 

     

一般修改表结构最多进行字段的添加操作

    l alter table 表名 add 列名 类型(长度) [约束];

    作用:修改表添加列.

      例如:

    #1,为分类表添加一个新的字段为 分类描述 cdesc varchar(20)

      ALTER TABLE category ADD cdesc VARCHAR(20);

 

    l alter table 表名 modify 列名 类型(长度) 约束;

    作用:修改表修改列的类型长度及约束.

        例如:

     #2, 为分类表的描述字段进行修改,类型varchar(50)

      ALTER TABLE category MODIFY cdesc VARCHAR(50);

 

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

      作用:修改表修改列名.

      例如:

    #3, 为分类表的分类名称字段进行更换 更换为 description varchar(30)

    ALTER TABLE category CHANGE cdesc description VARCHAR(30);

 

    alter table 表名 drop 列名;

    作用:修改表删除列.

    例如:

      #4, 删除分类表中description这列

      ALTER TABLE category DROP description;

 

      rename table 表名 to 新表名;

      用:修改表名

      例如:

      #5, 为分类表category 改名成 category2

       RENAME TABLE category TO category2;

 

       alter table 表名 character set 字符集(了解);

      作用:修改表的字符集

      例如:

      #6, 为分类表 category 的编码表进行修改,修改成 gbk

        ALTER TABLE category CHARACTER SET gbk;

 DML-更新表记录(增删改)

    插入表记录:insert into

    注意:

      值于字段必须对应,个数相同,类型相同

      值的数据大小必须在字段的长度范围内

      除了数值类型,其它的值必须要使用单引号、双引号引起

      如果要插入空值,可以忽略不写字段,或者插入null。

更改表记录:update

    

删除表记录:delete from

delete from 和truncate的区别:

    1、delete from:删除表中所有记录,但是不删除表

    2、truncate:将整张表删除,然后重新创建一个一模一样的表结构

DQL-查询数据(重点)

----查询并展示表中所有记录

    select * from 表名

---查询并展示表中符合要求的记录

    select * from 表名 where 条件

 

 条件查询--where

比较运算符

>  <  <=   >=   =  <> !=

大于、小于、大于(小于)等于、不等于

 

 

BETWEEN  ...AND...

显示在某一区间的值

相当于     price >=1000  && price <=2000

 

IN(set)

显示在in列表中的值

bookName  in (“西游记”,”红楼梦”)

 

LIKE ‘张pattern’

模糊查询,Like语句中,

% 代表零个或多个任意字符

_ 代表一个字符

 

IS NULL

判断是否为空

逻辑运算符

and

多个条件同时成立

 

or

多个条件任一成立

 

not

不成立,取反。

单表操作

   排序:

    order by 字段(需要放置在select语句的最后)  asc/desc   默认是升序

    两种  

      升序:asc

      降序:desc

聚合函数

    聚合函数会忽略null空值

    今天我们学习如下五个聚合函数:

        count(字段):统计指定列不为NULL的记录行数;、

        sum(字段):计算指定列的数值和

        max(字段):计算指定列的最大值

        min(字段):计算指定列的最小值

        avg(字段):计算指定列的平均值

分组函数

格式 :

    select 字段1,字段2. from 表名 group by 分组字段

    select 字段1,字段2. from 表名 group by 分组字段 Having 分组条件;

    分组操作中的having子语句,是用于在分组后对数据进行过滤的,作用类似于where条件

    where 和having的区别:

        1、where是在分组前进行过滤,having是在分组后进行过滤

        2、聚合函数可以跟在having后面,聚合函数不可以跟在where后面。

select总结

书写顺序(重点):

    select 字段 from 表名 where 条件 group by 字段 having条件 order by 字段

    

  执行顺序:(了解)

  1. From 表名
  2. Where  条件
  3. Group by 字段   字段值相同的数据会划分成一组
  4. Having 条件     对每一组分别进行一次运算
  5. Select 字段      把每组中第一条数据取出来。合并成一张新伪表展示这个新伪表上的部分字段

   6.   order by 字段    对新伪表进行最后排序

 

标签:入门,删除,数据库,表名,mysql,MySQL,table
来源: https://www.cnblogs.com/anlin981121/p/11360174.html

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

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

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

ICode9版权所有