MySQL【一】

第一章SQL基本知识

1.开启关闭mysql服务命令

开启:net start mysql 
关闭:net stop mysql 

2.登录别人

mysql -hIP,-u账号 -p密码 

3.SQL分类

A.DDL操作数据库和表 
B.DML增,删,改,数据库当中的表记录 
C.DQL查询数据库当中表记录 
D.DCL客户端授权数据库操作

第二章MySQL基本指令

DDL操作数据库和表

一、数据库

1.新建

A.基本创建
    CREATE DATABASE 数据库名称;
B.判断并指定字符集
    CREATE DATABASE IF NOT EXISTS 数据库名称 CHARACTER SET 具体编码;

2.查询

A.显示所有数据库
    SHOW DATABASES;
B.查询指定数据库(显示编码集)
    SHOW CREATE DATABASE 数据库名称;

3.修改 A.修改数据库的字符集 ALTER DATABASE 数据库名称 CHARACTER SET 具体的编码; 4.删除

A.基本删除
    DROP DATABASE 数据库名称;
B.判断是否存在,在则删
    DROP DATABASE IF EXISTS 数据库名称;

5.使用(没做此操作不能就不能使用)

A.使用数据库
    USE 数据库名称;
B.查询正在使用的数据库
    SELECT DATABASE();

二、表

1.查询

A.查询所有表
    SHOW TABLES
B.查询指定表详细信息
    DESC 表名称;

2.创建

A.基本创建
    CREATE TABLE 表名称(列名1 类型1,列名2 类型2,...列名n 类型n)
B.复制
    CREATE TABLE 新表名称LIKE原始表
C.常用数据类型
    a.整数类型 int
            b.小数类型 double(4,1)   4表示有4个数字,1表示精确小数点后1位
            c.字符串类型 varchar(24) 24表示最大容纳24个字符
            d.日期类型 date         需要手动的插入数据到数据库当中
            e.时间戳类型 timestamp   可以自动添加当前的系统时间  

3.删除

A.基本删除
    DROP TABLE 表名称;
B.判断是否存在,再则删
    DROP TABLE IF EXISTS 表名称;

4.修改

A.修改表名称
    ALTER TABLE 原始表名称 RENAME TO 新表名
B.修改字符集
    ALTER TABLE 表名称 CHARACTER SET 字符集编码;
C.修改列名
    ALTER TABLE 表名称 CHANGE 旧列名称 新列名称 新列数据类型;
    ALTER TABLE 表名称 MODIFY 要修改的列名 新的数据类型;
D.增加一列
    ALTER TABLE 表名称 ADD 列名称 数据类型;
E.删除一列
  ALTER TABLE 表名称 DROP 列名称;

DML操作【表记录】,增删改

1.表记录增加语句

A.添加指定列的数据
    INSERT INTO 表名称(列名1,列名2,列名3) VALUES (值1,值2,值3);【需一一对应】
B.添加所有列的数据
    INSERT INTO 表名称VALUES(值1,值2,值3,值4,值5);

2.表记录的删除语句

A.删除指定的某些条记录
    DELETE FROM 表名称 WHERE 条件;  例如 条件:id=1
B.删除整个表的操作
    a.DELETE FROM 表名称; -- 删除整个表(逐行删除)效率低
    b.TRUNCATE TABLE 表名称; --删除整个表(先删表,再建表)效率高

3.表记录的修改语句

A.常见修改语句的操作(带有条件)
    UPDATE 表名称 SET 列表1=值1,列名2=值2 WHERE 条件;
B.不常见修改语句操作
    UPDATE 表名称 SET 列名1=值1,列名2=值2;

MySQL的DQL(表记录的查询操作)

1.基础查询

A.多个字段的查询操作
    a.通用写法
        SELECT*FROM 表名称;
    b.指定列写法
    SELECT 列名1,列名2,列名1,列名2,列名3 FROM 表名称;
B.去掉重复的查询操作
            SELECT DISTINCT 列名 FROM 表名称;
    C.四则运算计算列的操作
            SELECT IF NULL (列名1,0) + 列名2  FROM 表名称;
               如果有空值,使用IF NULL,把空值列括起来
    D.给查询结果起别名的操作
             SELECT 列名1 AS 别名1,列名2 别名2 FROM 表名称; 

2、条件查询 WHERE 后面的格式写法

    A.与 && (理解)
        a.写法1:  SELECT * FROM 表名称 WHERE age>20 && age<30;
        b.写法2:  SELECT * FROM 表名称 WHERE age>20 AND age<30;    
        c.写法3:  SELECT * FROM 表名称 WHERE age BETWEEN 20 AND 30;
    B.或 || (理解)
        a.写法1:  SELECT * FROM 表名称 WHERE age=20 || age=30;
        b.写法2:  SELECT * FROM 表名称 WHERE age=20 OR age=30;
        c.写法3:  SELECT * FROM 表名称 WHERE age IN(20,30);   -- 年龄是20或者30的才可以
    C.非 !  (理解)
        a.写法1:  SELECT * FROM 表名称 WHERE address IS NULL;  -- 居住地是Null
        b.写法2:  SELECT * FROM 表名称 WHERE address IS NOT NULL;  -- 居住地不是Null

3、模糊查询 WHERE LIKE

    A.两个占位符
        a. '_' 下划线,表示1个字符
        b. '%' 百分号,表示0个或多个字符
    B.案例
        a. 查询姓'武'
            SELECT * FROM hero WHERE name LIKE '武%'; 
        b. 查询姓'武'只有两个字
            SELECT * FROM hero WHERE name LIKE '武_';
        c. 查询第二个字是'文'的
            SELECT * FROM hero WHERE name LIKE '_文%';
        d. 查询只要带有'李'字的
            SELECT * FROM hero WHERE name LIKE '%李%';

扩展: UPDATE TEST SET salary=salary+1000 WHERE id=3;【 salary=salary+1000】

猜你喜欢

转载自blog.csdn.net/bianh9527/article/details/82290091