MySQL简介及常用命令

MySql数据库

概念:存放数据的仓库,就是数据库。 特点:持久化存储。本质就是一个文件系统。

按特定格式(数据存储在一张张表中,就形成了特定的形式)进行存储,用户可对数据进行增删改查

数据库管理系统(DBMS,database management system)

是一种用来管理维护、维护、建立数据库的软件。数据存在于数据库中。但是用户需要用DBMS来管理数据。

数据库命令

show databases;显示数据

在cmd中

mysql -uroot -h10.10.34.114 -p000000远程登录 -h表示host后接IP地址

SQL语句

structed query language结构化的查询语言

  • DDL数据库定义语言create、alter、drop
  • DML数据库操作语言insert、delete、update
  • DCL数据库控制语言。用来定义数据库的访问权限和安全级别,以及创建用户
  • DQL数据库查询语言select,where,from、group by

书写规范

  • 可单行,可多行书写,以分号;结尾
  • 可以使用空格缩进来增强代码可读性
  • 语句对大小写不敏感,但是==自定义内容应区分大小写==
  • 注释多行 /**/ 单行注释 # --
  • SQLyog中语句默认大写,自定义字符小写。执行SQL语句,快捷键F9

DDL

关于数据库的操作:

  • show databases;显示数据库
  • create database 名字;创建数据库
  • select version();查看数据库版本号
  • use 数据库名;切换使用数据库
  • show tables;查看数据库中所有的表
  • show tables from 数据库名;查看其他数据库的表
  • select database();查看正在使用的数据库
  • show create database 数据库;查看数据部的建表语句
  • create database db2 default charset gbk;在创建数据库时指定数据库的编码集为gbk
  • drop database db2;删除数据库

关于表的操作:

  • create table 表名(

    字段名1 字段类型 约束,

    字段名2 字段类型 约束 ,

    ……

    字段名n 字段类型 约束 //最后一个不需要加逗号

    );创建表

  • 创建表之前先检查是否存在,不存在才创建

    create table if not exists name(

    ……

    );

  • 查看标的结构,就是表的字段以及类型和约束等 desc 表名;

  • 查看建表语句 show create table 表名;

  • 删除表 drop table 表名;

  • 添加一个字段,实际上就是修改了表的结构,所以用alter

    alter table 表名 add 字段 字段类型 约束;

  • 修改现有字段的字段类型/约束

    alter table 表名 modify 新的字段类型 新约束;

  • 修改现有字段的名称

    alter table 表名 change 旧列名 新列名 字段类型;

  • 删除现有字段

    alter table 表名 drop 列名;

  • 修改表的名称

    rename table 旧名称 to 新名称;

    (只可以修改标的名称,不可以修改数据库名称)

  • 修改表编码集

    alter table 表名 charset gbk;

SQL常用数据类型

整数 int

字符 varchar(字符长度)

小数double

日期date

DML 数据操作语言

对数据库中的表进行操作,可对表数据的增加、删除、修改

  • 在表中插入数据

    insert into 表名 (字段) value==s==(字段值);

    注意事项:1.传值时,传入的值得顺序要和字段的顺序一致

    2.传值时,传入数据类型要和字段定义一致

    3.传值时,除了数值类型以外,其他类型都要用引号“”包裹。

    4.传空值时,可以不写该字段。或者给字段传入null

    5.插入一条数据用values,插入多条用value

  • 一次传入多条数据insert into 表名(字段)value(字段值),(字段值),(字段值);

  • 修改表中数据

    updata 表名 set 字段=’新值‘ where 约束 or 约束;

    如果不加约束,则整列都会被修改

  • 删除数据

    删除一条记录 delete from 表名 where 约束;

    删除多条记录 deleter from 表名 where 约束 or 约束;

    不加约束则删除表中所有数据

  • 删除数据方法2

    truncate table 表名; 删除所有数据

    与delete区别:delete删除数据时,逐条删除。truncate直接删除整个表,相当于drop table,然后新建一个空表。如果数据量大,则truncate速率较高。

DQL数据库查询语言

  • 从数据库中的表查找记录

select 字段 from 表名

select * from 表名 查找所有字段

select * from 表名 where 约束

  • 查询时,起别名 用 as

select 字段 as 别名 from 表名; 查询出的表是临时视图,而不是真实存在的表。as可以省略但是要加一个空格。

  • 查询时去除重复数据 distinct

    select distinct 要去重的字段 from 表名;

    对多个字段去重 效果是多个字段拼接后的结果 distinct要写在所有字段的前面

    select distinct 字段1,字段2 from 表名;

  • 在SQL中,数值+数值可以正常运算,数值+字符串,如果字符可以转化为数值,可以正常运算,若不可以,结果为原数值

  • ifnull

    如果为空,始终指定数值替换

    select 原始值+ifnull(comm,100) 字段 from 表名 若为空全部替换为100.

  • 拼接字符串

    select concat(“字符串”,字段1,“字符串”,字段1)from 表名;

  • 使用限定的逻辑表达式

    与 and 英文表示between and 相当于<= >=

    或 or 表示为in(数据1,数据2,数据3,……)

    非 not 表示为<>

    <=> 表示等于,用于和null作比较

  • 模糊查询

    查找出所有姓张的员工

    select * from 表名 where name like “张%”; %表示任意个数

    查找出所有姓张且名字为两个字的员工

    select * from 表名 where name like “张_”;

    找所有名字中带“一”的员工

    select * from 表名 where name like“%一%”;

数据库删除

1.先停止数据库服务

计算机右键——管理——服务——找到MySQL——右键停止

任务管理器——服务——找到MySQL——右键停止

2.卸载

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容