MYSQL------学习笔记1


MASQL学习笔记
   

    1、MySQL基础介绍
    2、SQL的介绍
    3、MySQL的DDL(操作数据库和表,增删改查,使用)
    4、MySQL的DML(操作表记录,增删改)
    5、MySQL的DQL(操作表记录,查)
    

    
I. MySQL基础介绍
    1、数据库的基本概念
        数据库: DataBase 简称 DB
        作用: 用于永久性存储和管理数据的仓库
    2、常见的数据库
        A.MySQL     简单的免费的数据库  ---> 现在学习
        B.Oracle     大型收费数据库    ---> 后期学习
        C.SQLServer    大学教材 微软的 C# 和 .Net 超市收银机
        D.SQLite    嵌入式数据库 Android系统
    3、MySQL软件的安装和卸载
        A.安装(参考资料按照)注意:路径不要有中文,记住你的密码,推荐密码123
        B.卸载(需要删除隐藏文件夹下面的数据)  C:\ProgramData\MySQL
    4、MySQL启动服务的操作
        A.手动启动
            a.计算机 -> 管理 -> 服务和应用程序 -> 服务
            b.任务管理器 -> 服务
        B.普通CMD小黑窗口
            a.指令: servers.msc   "微软ms控制c"
        C.管理员CMD小黑窗口
            a.开启服务  net start mysql
            b.关闭服务  net stop  mysql
    5、MySQL的登录和退出的操作
        A.登录
            a.登录自己的
                mysql -u root -p 密码
            b.登录别人的(别人在安装的时候,勾选远程访问)
                方式1: mysql -h 127.0.0.1 -u root -p 密码
                方式2: mysql --host=127.0.0.1 --user=root --password==密码
        B.退出
            a. exit
            b. quit
    6、MySQL的重要文件
        A.安装文件
            my.ini 可以修改编码问题(例如:可以解决中文乱码的问题)
        B.数据文件
            文件夹 --------> 数据库
            excel文件 -----> 表
            很多条数据 ----> 表记录
    

II.SQL的介绍
    1、SQL的含义
        SQL是用于操作关系型数据库的语言. (操作某种数据库的规则)
    2、SQL的通用语法
        A.SQL语句以分号结尾(分号:英文分号)
        B.SQL语句不区分大小写(建议大家写关键字的时候,写大写)
        C.注释
            a.单行注释
                方式1:  -- 单行注释,注意中间有空格
                方式2:  #这是注释,MySQL专属的注释
            b.多行注释
                /*这是多行注释,和Java的一样*/
    3、SQL语句的分类
        A. DDL 操作数据库和表
        B. DML 增,删,改 数据库当中表记录
        C. DQL 查询数据库当中表记录
        D. DCL 客户端授权数据库的操作(了解)
        

III .MySQL的DDL(操作数据库和表,增删改查,使用)
    I.数据库的操作:【增,删,改,查,使用】
        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();
    2.表的操作【增,删,改,查】
        1、查询表的操作
            A.查询数据库当中所有的表信息
                SHOW TABLES;
            B.查询某个具体表的结构(每个字段的信息)
                DESC 表名称;
        2、创建表的操作
            A.基本的创建格式
                CREATE TABLE 表名称 (列名1 类型1,列名2 类型2,列名3 类型3);
            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 列名称;
            

VI. MySQL的DML(操作表记录,增删改)
    1、表记录的添加语句
        A.添加指定列的数据
            INSERT INTO 表名称 (列名1,列名2,列名3) VALUES (值1,值2,值3);
        B.添加所有列的数据
            INSERT INTO 表名称  VALUES (值1,值2,值3,值4,值5);
        C.注意事项
            除了数字类型(整数和小数)以外,其他的都要采用引号(单引号双引号都可以)引起来
    2、表记录的删除语句
        A.删除指定的某些条记录
            DELETE FROM 表名称 [WHERE 条件]; 
        B.删除整个表的操作
            a. DELETE FROM 表名称;      -- 删除整个表(逐行删除) 效率低
            b. TRUNCATE TABLE 表名称;    -- 删除整个表(先删表,再建表) 效率高 【推荐使用】
    3、表记录的修改语句
        A.常见修改语句的操作(带有条件)
            UPDATE 表名称 SET 列名1=值1,列名2=值2 [WHERE 条件];
        B.不常见的修改语句操作(修改所有的情况)
            UPDATE 表名称 SET 列名1=值1,列名2=值2;
            
   
V. MySQL的DQL(操作表记录,查)
    1、基础查询
        A.多个字段的查询操作
            a.通用写法
                SELECT * FROM 表名称;
            b.指定列写法
                SELECT 列名1,列名2,列名3  FROM 表名称;
        B.去掉重复的查询操作
                SELECT DISTINCT 列名 FROM 表名称;
        C.四则运算计算列的操作
                SELECT IFNULL (列名1,0) + 列名2  FROM 表名称;
        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 '%李%';

##相关习题1
##创建表的操作


 
    CREATE TABLE employee(
        id INT,
        NAME VARCHAR(20),
        sex VARCHAR(10),
        birthday DATE,
        salary FLOAT,   
        RESUME TEXT
);


##插入数据
        INSERT INTO employee VALUE(1,"zhangsan","male","1980-11-25",2000,"good body");
        INSERT INTO employee VALUES(2,"lisi","male","1980-04-25",1000,"good body");
        INSERT INTO employee VALUES(3,"xiaohong","female","1978-11-25",4000,"good girl");



##完成下面的功能
1.将所有员工薪水修改为5000元。  
2.将姓名为’zhangsan’的员工薪水修改为3000元。  
3.将姓名为’lisi’的员工薪水修改为4000元,sex改为female。  
4.将xiaohong的薪水在原有基础上增加1000元。



1.UPDATE employee set salary=5000;  
2.UPDATE employee set salary=3000 WHERE NAME="zahngsan";  
3.UPDATE employee set salary=4000,sex="female" WHERE NAME="lisi";  
4.UPDATE employee set salary=5000+1000 WHERE NAME="xiaohong";

猜你喜欢

转载自blog.csdn.net/qq_41791705/article/details/82291380