MySQL经典入门

2023-11-01

MySQL数据库相关知识

数据库的基本概念

  1. 数据库的英文单词 : DataBase 简称 : DB

  2. 什么是数据库?

    1. 用于存储和管理数据的仓库
  3. 数据库的特点

    1. 持久化存储数据的,其实数据库就是一个文件管理系统
    2. 方便存储和管理数据
    3. 使用了统一的方式操作数据库 – SQL
  4. 常见的数据库软件

    1. MySQL : 开源免费的数据库,小型的数据库,已经被Oracle收购了,MySQL6.x版本也开始收费
    2. Oracle : 收费的大型数据库,Oracle公司的产品,Oracle收购SUN公司,收购MySQL.
    3. DB2 : IBM公司的数据库产品,收费的,常用在银行系统中
    4. SQLServer : Microsoft 公司收费的中型的数据库,C#,.net等语言常使用
    5. SyBase : 已经淡出历史舞台,提供了一个非常专业的建模工具PowerDesigner
    6. SQLLite: 嵌入式的小型数据库,应用在手机端.

MySQL数据库软件

  1. MySQL数据库安装

SQL

  1. 什么是SQL?
    概念: Structured Query Language : 结构化查询语言
    其实就是定义了操作所有关系型数据库的规则,每一种数据库操作的方式存在不一样的地方,称为方言.
  2. SQL通用语法
    1. SQL语句可以以单行或者多行书写,以分号结尾.
    2. 可使用空格和缩进来增强语句的可读性.
    3. MySQL 数据库的SQL语句不区分大小写,关键字建议使用大写.
    4. 三种注释
      1. 单行注释 : – 注释内容 或 # 注释内容
      2. 多行注释 : /* 注释内容 */
  3. SQL分类:
    1. DDL(操作数据库,表) : create , drop , alter 等
    2. DML(增删改表中的数据):insert ,delete ,update 等
    3. DQL(查询表中的数据) : select ,where
    4. DCL(授权) : grant , revoke 等

DDL : 操作数据库,表

  1. 操作数据库 : CRUD
    1. C(Create) : 创建
      1. 创建db1数据库,判断是否存在,并指定字符集为gbk/utf-8
        • create db1 if not exists character set gbk/utf-8;
    2. R(Retrieve) : 查询
      1. 查询素有数据库的名称
        • show databases;
      2. 查询某个数据库的字符集 : 查询某个数据库的创建语句
        • show create database 数据库名称.
    3. U(Update) : 修改
      1. 修改数据库的字符集 : alter 数据库 character set utf8/gbk;
    4. D(Delete) : 删除
      1.判断数据库,存在再进行删除 : drop database if exists 数据库名称
    5. 使用数据库
      1. use database 数据库名称.
  2. 操作表 : CRUD
    1. C(Create) : 创建
      1. 语法 :
        create table 表名(
        列名1 数据类型1,
        列名2 数据类型2,

        列名n 数据类型n
        )
        create table tab1 like tab2;
      2. 数据类型
        1. int : 整数类型
        2. double : 小数类型
        3. date : 日期,只包含年月日, yyyy-MM-dd
        4. datetime : 日期,包含年月日时分秒 yyyy-MM-dd HH-mm-ss
        5. timestamp: 包含年月日时分秒 yyyy-MM-dd HH-mm-ss, 如果将来不给这个字段赋值,或者赋值为null,则默认使用当前的系统时间来自动填充.
        6. varchar : 字符串类型(20)
      3. 创建表
        create table student(
        name varchar(20),
        age int,
        gender varchar(10),
        birthday timestamp,
        score double(4,1)
        );
    2. R(Retrieve) : 查询
      • 查询某个数据库中所有的表名称
        • show tables
      • 查询表结构
        • desc 表名
    3. U(Update) : 修改
      1. 修改表名
        alter table 表名 rename to 新的表名
      2. 修改表的字符集
        alter table 表名 character set 字符集名称;
      3. 添加一列
        alter table 表名 add 列名 数据类型
      4. 修改列名称 类型
        alter table 表名 change 列名 新列名 新数据类型
        alter table 表名 modify 列名 新数据类型
      5. 删除列
        alter table 表名 drop 列名
    4. D(Delete) : 删除
      1. drop table 表名
      2. drop table if exists 表名;

DML 增删改表

  1. 添加数据:
    * 语法 : insert into 表名(列名1,列名2,…列名n) values(值1,值2,…值n);
    * 注意 :
    1. 列名和值要–对应.
    2. 如果表名后,不定义列名,则默认给所有列添加值
    insert into 表名 values(值1,值2,…值n)
    3. 除了数字类型,其它类型需要使用引号(单双都可以引起来).
  2. 删除数据
    • 语法 : delete from 表名 []
    • 注意:
      1. 如果不加条件,则删除表中所有记录
      2. 如果要删除所有记录
        1. delete from 表名; – 不推荐使用,有多少条记录就会执行多少次删除操作.
        2. truncate table 表名 – 推荐使用,效率更高,先删除表,然后再创建一张一样的表.
  3. 修改数据
    • update 表名 set 列名1 = 数据 1 ,列名2 = 数据 2 ,…[where 条件]]
    • 注意 : 如果不加条件,则会把所有表中所有数据进行修改.

DQL : 查询表中的记录

  1. 语法 :

     select 
    		字段列表
     from 
     		表名列表 
     where
    	    条件列表 
     group by
      		 分组字段 
     having
       		分组之后的条件 
     order by
      		 排序
     limit
      		 分页限定
    
  2. 基础查询

    1. 多个字段的查询
       select 
      		name,	-- 姓名
      		age		-- 年龄
       from 
       		student; -- 学生表
      
    2. 去除重复
      	select distinct address from student;
      
    3. 计算列
      	select name, math, english, math+ ifnull(english,0) from student;
      
    4. 起别名
      select name, math, english, math+ ifnull(english,0) 总分 from student;
  3. 条件查询

    1. where子语句后跟条件
    2. 运算符
        1. > , < , <= , >= , = <>
        2. between ... and
        3. in (集合)
        4. like
        	1. 占位符 :   _: 单个占位符   % :  多个任意占位符
        5. is null
        6. and 或 &&
        7. or 或 ||
        8. not 或 !
        9. 默认 : sex char(1) default '男';
      
  4. 排序查询

    1. 语法 : order by 子句
      * order by 排序字段1,排序字段2
    2. 排序方式 :
      * ASC : 升序,默认的
      * DESC : 降序
    3. 注意 : 如果有多个排序条件,则当前边的条件值一样时,才会判断第二条件.
  5. 聚合函数 : 将一列数据作为一个整体,进行纵向的计算.

    • count : 计算个数 – select count(id) from student.
    • max ; 计算最大值
    • min : 计算最小值
    • sum : 计算和 – select sum(math) from student.
    • avg : 计算平均值
      • 注意 : 聚合函数得计算,排除null值
      • 解决方案 :
        1. 选择不包含非空的列进行计算
        2. IFNULL函数
  6. 分组查询 :

    1. 语法 : group by 分组字段 ;
      1. 示例 : select sex, avg(math) ,count(id) personNum from student where math > 75 having personNum > 2 ;
    2. 注意 :
      1. 分组之后查询的字段 : 分组字段,聚合函数
      2. where 和 having 的区别?
        1. where 在分组之前进行限定,如果不满足条件,则不参与分组,having在分组之后进行限定,如果不满足结果,则不会被查询出来.
        2. where 后边不能跟聚合函数,having可以进行聚合函数的判断.
  7. 分页查询

    1. 语法 : limit 开始的索引,每页查询的条数
    2. 公式 : 开始的索引 = (当前的页码数 - 1 ) * 每页显示的条数

约束

  1. 概念 : 对表中的数据进行限定,保证数据的正确性,有效性和完整性.
  2. 分类 :
    1. 主键约束 : primary key
      1. 注意
        1. 含义 : 非空且唯一
        2. 一张表只有一个字段为主键
        3. 主键就是表中记录的唯一标识
      2. 创建 : id varchar(10) primary key.
      3. 删除主键 : alter table drop primary key
      4. 自动增长 : auto_increment
      5. 联合主键 : primary key (uid,rid);
    2. 非空约束 : not null
      • 创建时添加约束 : name varchar(20) not null, – name列的值不能为空
      • 创建后添加约束 : alter table stu modify name varchar(20) not null, – name列的值不能为空
      • 删除约束 : alter table stu modify name varchar(20) – 修改name列的值可以为空
    3. 唯一约束 : unique
      • 添加约束: phone varchar(20) unique – 表示手机号不能重复
      • 注意 : null值在手机号码列是可以重复的.
      • 删除约束 : alter table stu drop index phone;
    4. 外键约束 : foreign key
      1. 在创建表时,可以添加外键
        • 语法
          create table 表名(

          外键列
          constraint 外键名称 foreign key (外键列名称) reference 主表名称(主表列名称)
          );
      2. 删除外键 : alter table stu foreign key 外键名称
      3. 添加外键 alter table stu add constraint stu_clas_fk foreign key (clas_id) reference class(id);
      4. 级联操作 :
        • 语法 : 添加外键时 添加级联更新和级联删除
        • alter table stu add constraint stu_clas_fk foreign key (clas_id) reference class(id) on update casecade on delete casecade;

数据库的设计

  1. 多表之间的关系
    1. 分类
      1. 一对一 :
        • 如 : 人和身份证
        • 分析 : 一个人只有一个身份证,一个身份证只能对应一个人
      2. 一对多(多对一) :
        • 如 : 部门和员工
        • 分析 : 一个部们有多个员工,一个员工只能对应一个部门
      3. 多对多
        • 如 : 学生和课程
        • 分析 : 一个学生可以选择很多门课程,一个课程也可以被很多学生选择.
    2. 实现关系 :
      1. 一对多(多对一) :
        • 如 : 部门和员工
        • 实现方式 : 在多的一方建立外键,指向一的一方的主键.
      2. 多对多
        • 如 : 学生和课程
        • 实现方式 : 多对多关系实现需要借助第三张中间表,中间表至少包含两个字段,这两个字段作为第三张表的外键,分别指向两张表的主键.
      3. 一对一
        • 如 : 人和身份证
        • 实现方式 : 一对一关系实现,可以在任意一方添加唯一外键指向另一方的主键.
  2. 数据库设计的范式
    • 概念 : 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称为不同的范式,各种范式呈递次规范,越高的范式数据库冗余越小。
    • 分类 :
      1. 第一范式(1NF).: 每一列都是不可分割的原子数据项
      2. 第二范式(2NF) : 在1NF的基础上,非码属性必须完全依赖于候选码(在1NF基础上消除非主属性对主码的部分函数依赖)
        • 几个概念 :
          • 函数依赖 : A – > B , 如果通过A属性(属性组)的值,可以确定唯一B属性的值,则称B依赖于A.
            例如 : 学号 --> 姓名 (学号,课程名称) --> 分数
          • 完全函数依赖 : A–>B , 如果A是一个属性组,则B属性值确定需要A属性组中的所有属性值.
            例如:(学号,课程名称) --> 分数
          • 部分函数依赖 : 如果A是一个属性组,则B属性值确定需要A属性组中的某一个属性值.
          • 传递函数依赖 : A–>B , B–>C, A属性的值确定B属性的值,B属性的值能确定C属性的值.
            例如 : 学号 --> 系名 --> 系主任
          • 码 : 如果在一张表中,一个属性或属性组,被其它所有属性所完全依赖,则称这个属性(属性组)为该表的码.
            例如 : 表中的码为 : (学号,课程名称)
            • 主属性 : 码属性组中的所有属性
            • 非主属性 : 除过码属性组的属性
      3. 第三范式(3NF) : 在2NF基础上,任何非主属性不依赖于其它非主属性(在2NF基础上消除传递依赖)

数据库的备份和还原

  1. 命令行 :
    • 语法 : mysqldump -u用户名 -p密码 数据库名 > 保存的路径
    • source 保存的路径.

多表查询

  1. 查询语法 :
    select
    	列名列表
    from
    	表名列表
    where ...
    
  2. 笛卡尔积 ;
    • 有两个集合A,B. 取这两个集合的所有组成情况
    • 要完成多表查询,需要消除无用的数据
  3. 多表查询的分类 :
    1. 内连接查询 :
      1. 隐式内连接 : 使用where条件消除无用的数据
        如 : 查询员工表的名称,性别,部门表的名称 
           select 
        		t1.name,		-- 员工表的姓名
        		t1.gender,		-- 员工表的性别
        		t2.name		-- 部门表的名称
        	from
        		emp t1,
        		dept t2
        	where 
        		t1.dept_id = t2.id;
        
      2. 显式内连接
        1. 语法 : select 字段列表 from 表名1 [ inner ] join 表名2 on 条件.
      3. 内连接查询注意事项:
        1. 从哪些表中查询数据
        2. 条件是什么
        3. 查询哪些字段
    2. 外连接查询 :
      1. 左外连接 :
      1. 语法 : select 字段列表 from 表1 left [ outer ] join 表2 on 条件 ;
      2. 查询的是左表所有数据以及其交集部分
      2. 右外连接 :
      1. 语法 : select 字段列表 from 表1 right [ outer ] join 表2 on 条件 ;
      2. 查询的是右表所有数据以及其交集部分
    3. 子查询 :
      • 概念 : 查询中嵌套查询,称嵌套查询为子查询
      • 如 : 查询工资最高的员工信息
        select * from emp where salary = (select max(salary) from emp);
      • 子查询不同情况
        1. 子查询的结果是单行,单列的
          • 子查询可以作为条件,使用运算符去判断. 运算符 : > < =;
        2. 子查询的结果是多行单列的 :
          • 子查询可以作为条件,使用运算符in来判断
        3. 子查询的结果是多行多列的 :
          • 子查询可以作为一张虚拟表参与查询
    4. 编写SQL思路
      1. 首先确定查询的内容在哪个表
      2. 查询的条件
      3. 需要使用哪种查询方式
      4. 编写sql

事务

  1. 事务的基本介绍
    1. 概念 :
      • 如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败
    2. 操作 :
      1. 开启事务 : start transaction;
      2. 回滚 : rollback;
      3. 提交 : commit;
    3. MySQL数据库中事务默认自动提交
      1. 自动提交 :
        • mysql就是自动提交的
        • 一条DML(增删改)语句会自动提交一次事务
      2. 手动提交
        • Oracle 数据库默认是手动提交事务
        • 需要先开启事务,再提交
      3. 修改事务的默认提交方式 :
        • 查看事务的默认提交方式 : select @@autocommit ; – 1 代表自动提交. – 0 代表手动提交
        • 修改默认提交方式 : set @@autocommit = 0 ;
  2. 事务的四大特征 :
    1. 原子性 : 是不可分割的最小操作单位,要么同时成功,要么同时失败.
    2. 持久性 : 当事务提交或回滚后,数据库会持久化保存数据
    3. 隔离性 : 多个事务之间,相互独立
    4. 一致性 : 事务操作前后,数据总量不变
  3. 事务的隔离级别 :
    • 概念 : 多个事务之间隔离的,相互独立的,但是如果多个事务操作同一批数据,则会引发一些问题.
    • 存在问题 :
      1. 脏读 : 一个事务,读取到另一个 事务中没有提交的数据
      2. 不可重复读(虚读) : 在同一个事务中,两次读取到的数据不一样
      3. 幻读 : 一个事务操作(DML)数据表中的所有记录,另一个事务添加了一条数据,则第一个事务查询不到自己的修改
    • 隔离级别 :
      1. read uncommitted : 读未提交
        • 产生的问题 : 脏读,不可重复读,幻读
      2. read commited : 读已提交 (Oracle默认)
        • 产生的问题 : 不可重复读,幻读
      3. repeatable read : 可重复读 (MySQL默认)
        • 产生的问题 : 幻读
      4. serializable : 串行化
        • 可以解决所有的问题
      • 注意 : 隔离级别从小到大安全性越来越高,但是效率越来越低
      • 数据库查询隔离级别 :
        • select @@tx isolation
      • 数据库设置隔离级别 :
        • set global transaction isolation level 级别字符串.

DCL

  1. DCL : 管理用户,授权
    1. 管理用户
      1. 添加用户
        • 语法 : create user ‘用户名’ @‘主机名’ identified by ‘密码’;
      2. 修改用户
        • 语法 : update user set password = passwword(‘新密码’) where user = ‘用户名’;
      3. 删除用户
        • 语法 : drop user ‘用户名’ @‘主机名’;
      4. 查询用户
    2. 权限
      1. 查询权限
        • 语法 : show grants for ‘用户名’@‘主机名’;
      2. 授予权限
        • 语法 : grant 权限列表 on 数据库名.表名 to ‘用户名’@‘主机名’;
        • 授予全部权限,全部表 : grant all on . to ‘用户名’@‘主机名’;
      3. 撤销权限
        • 语法 : revoke 权限列表 on 数据库名.表名 from ‘用户名’@‘主机名’;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL经典入门 的相关文章

  • Java - 将节点添加到列表的末尾?

    这是我所拥有的 public class Node Object data Node next Node Object data Node next this data data this next next public Object g
  • Java JDBC:更改表

    我希望对此表进行以下修改 添加 状态列 varchar 20 日期列 时间戳 我不确定该怎么做 String createTable Create table aircraft aircraftNumber int airLineCompa
  • 如何找到给定字符串的最长重复子串

    我是java新手 我被分配寻找字符串的最长子字符串 我在网上研究 似乎解决这个问题的好方法是实现后缀树 请告诉我如何做到这一点或者您是否有任何其他解决方案 请记住 这应该是在 Java 知识水平较低的情况下完成的 提前致谢 附 测试仪字符串
  • 在 HTTPResponse Android 中跟踪重定向

    我需要遵循 HTTPost 给我的重定向 当我发出 HTTP post 并尝试读取响应时 我得到重定向页面 html 我怎样才能解决这个问题 代码 public void parseDoc final HttpParams params n
  • 在 PHP 字符串中格式化 MySQL 代码

    是否有任何程序 IDE 可以在 PHP 字符串中格式化 MySQL 代码 例如 我使用 PHPStorm IDE 但它无法做到这一点 它对 PHP 和 MYSQL 执行此操作 但不适用于 php 字符串内的 MYSQL 我已准备好使用新的
  • 制作一个交互式Windows服务

    我希望我的 Java 应用程序成为交互式 Windows 服务 用户登录时具有 GUI 的 Windows 服务 我搜索了这个 我发现这样做的方法是有两个程序 第一个是服务 第二个是 GUI 程序并使它们进行通信 服务将从 GUI 程序获取
  • 多个 Maven 配置文件激活多个 Spring 配置文件

    我想在 Maven 中构建一个环境 在其中我想根据哪些 Maven 配置文件处于活动状态来累积激活多个 spring 配置文件 目前我的 pom xml 的相关部分如下所示
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • 列出jshell中所有活动的方法

    是否有任何命令可以打印当前 jshell 会话中所有新创建的方法 类似的东西 list但仅适用于方法 您正在寻找命令 methods all 它会打印所有方法 包括启动 JShell 时添加的方法 以及失败 被覆盖或删除的方法 对于您声明的
  • 操作错误不会显示在 JSP 上

    我尝试在 Action 类中添加操作错误并将其打印在 JSP 页面上 当发生异常时 它将进入 catch 块并在控制台中打印 插入异常时出错 请联系管理员 在 catch 块中 我添加了它addActionError 我尝试在jsp页面中打
  • 十进制到八进制的转换[重复]

    这个问题在这里已经有答案了 可能的重复 十进制转换错误 https stackoverflow com questions 13142977 decimal conversion error 我正在为一个类编写一个程序 并且在计算如何将八进
  • 禁止的软件包名称:java

    我尝试从数据库名称为 jaane 用户名 Hello 和密码 hello 获取数据 错误 java lang SecurityException Prohibited package name java at java lang Class
  • Java TestNG 与跨多个测试的数据驱动测试

    我正在电子商务平台中测试一系列商店 每个商店都有一系列属性 我正在考虑对其进行自动化测试 是否有可能有一个数据提供者在整个测试套件中提供数据 而不仅仅是 TestNG 中的测试 我尝试不使用 testNG xml 文件作为机制 因为这些属性
  • 加密 JBoss 配置中的敏感信息

    JBoss 中的标准数据源配置要求数据库用户的用户名和密码位于 xxx ds xml 文件中 如果我将数据源定义为 c3p0 mbean 我会遇到同样的问题 是否有标准方法来加密用户和密码 保存密钥的好地方是什么 这当然也与 tomcat
  • Java Integer CompareTo() - 为什么使用比较与减法?

    我发现java lang Integer实施compareTo方法如下 public int compareTo Integer anotherInteger int thisVal this value int anotherVal an
  • Java列表的线程安全

    我有一个列表 它将在线程安全上下文或非线程安全上下文中使用 究竟会是哪一个 无法提前确定 在这种特殊情况下 每当列表进入非线程安全上下文时 我都会使用它来包装它 Collections synchronizedList 但如果不进入非线程安
  • 有没有办法为Java的字符集名称添加别名

    我收到一个异常 埋藏在第 3 方库中 消息如下 java io UnsupportedEncodingException BIG 5 我认为发生这种情况是因为 Java 没有定义这个名称java nio charset Charset Ch
  • JGit 检查分支是否已签出

    我正在使用 JGit 开发一个项目 我设法删除了一个分支 但我还想检查该分支是否已签出 我发现了一个变量CheckoutCommand但它是私有的 private boolean isCheckoutIndex return startCo
  • 按日期对 RecyclerView 进行排序

    我正在尝试按日期对 RecyclerView 进行排序 但我尝试了太多的事情 我不知道现在该尝试什么 问题就出在这条线上适配器 notifyDataSetChanged 因为如果我不放 不会显示错误 但也不会更新 recyclerview
  • 使用 xpath 和 vtd-xml 以字符串形式获取元素的子节点和文本

    这是我的 XML 的一部分

随机推荐

  • 查询Windows默认编码格式

    开始 gt cmd gt chcp 然后显示一个数字 如936 则代表是GBK简体中文
  • unity生成透明背景的截图,截图背景图透明,UGUI scrollview滑动的时候不能遮罩3d模型

    转载 Unity3D Unity3D 摄像机带透明截图 静茹 鱼 博客园 using System using UnityEngine using System IO public class CropPicture MonoBehavio
  • Sonarqube安装插件报错An error has occurred. Please contact your administrator

    报错信息 Sonarqube安装插件时提示 An error has occurred Please contact your administrator 解决方法 1 查询报错日志 使用docker logs查询Sonarqube日志 插
  • jpress代码审计分享

    声明 出品 先知社区 ID 1871162774168111 以下内容 来自先知社区的1871162774168111作者原创 由于传播 利用此文所提供的信息而造成的任何直接或间接的后果和损失 均由使用者本人负责 长白山攻防实验室以及文章作
  • 【转载】一些比较好的电子资源网站

    SkyEye Project SkyEye是一个开源软件 opensource software 项目 中文名字是 天目 SkyEye的目标是在通用的Linux和Windows平台实现一个模拟集成开发环境 模拟基于ARM的嵌入式计算机系统
  • 《Linux C++》线程池

    为什么使用线程池 线程池的出现正是着眼于减少线程本身带来的开销 避免 即时创建 即时销毁 线程池应用场合 像大多数网络服务器 包括Web服务器 Email服务器以及数据库服务器处理数目巨大的连接请求 但处理时间却相对较短 并且实时性要求比较
  • 硬见小百科」这些PCB布局布线规则,你了解多少?

    元器件布局的10条规则 遵照 先大后小 先难后易 的布置原则 即重要的单元电路 核心元器件应当优先布局 布局中应参考原理框图 根据单板的主信号流向规律安排主要元器件 元器件的排列要便于调试和维修 亦即小元件周围不能放置大元件 需调试的元 器
  • Java中的sort()

    sort的第一种格式 sort的第二种格式 sort函数中cmp函数的使用方法 自定义排序基本方法 sort的第一种格式 sort函数的基本格式 默认排序为升序排序 Arrays sort 数组名 起始下标 终止下标 例 import ja
  • 【机器学习】机器学习建模调参方法总结

    文章目录 一 前言 1 1 数据来源 1 2 理论简介 二 知识总结 2 1 回归分析 2 2 长尾分布 2 3 欠拟合与过拟合 2 4 正则化 2 5 调参方法 2 5 1 贪心调参 坐标下降 2 5 2 网格调参GridSearchCV
  • JavaScript高手进阶:详解Eval加密

    在JavaScript编程中 涉及到代码加密 在混淆加密时代之前 用的最多的应该是种Eval加密 加密后的特征是以 eval function p a c k e r 为代码开始 相信很多人都见过这种代码 Eval加密效果例程 这是一种非常
  • MFC 解决中文乱码问题

    新的编译工具默认的是unicode编码方式 许多在多字节下面显示中文的方法已经不再适用了按照道理说设置为unicode编码后应该会很好的支持中文 但是实际情况很悲惨 显示的都是乱码 看到网上的很多方法都是把CSTRING转来转去 很头疼 感
  • powershell 删除指定文件夹及文件

    删除指定的文件夹 Get ChildItem C ccccc Recurse Where Object PsIsContainer Where Object FullName like test Remove Item Force Recu
  • SpringBoot配置多数据源

    项目框架 SpringBoot MyBatis Mysql 项目连接两个数据库源 1 application yml配置 使用DruidDataSource 主数据库为primary 副数据库为secondary 名称可以自己定义 只要和后
  • 如何使用Git进行版本控制

    在软件开发过程中 版本控制是一个非常重要的部分 它可以让开发人员更轻松地管理代码 集成代码 以及跟踪代码的变更历史 Git是一个广泛使用的版本控制工具 它的易用性和可扩展性使得它成为了开源社区的首选 在本文中 我们将介绍如何使用Git进行版
  • 转载 -- 按位异或的性质及其妙用

    https www jianshu com p 86a7cf855e51 文章摘要 1 按位异或 可以简单理解成 不进位加法 即 1 1 0 0 0 0 1 0 1 2 任何数和自己异或结果为零 3 按位异或的自反性 两次运算操作 可以将最
  • vs code下载慢的解决方法

    1 在官网Visual Studio Code Code Editing Redefined下载 大概率会出现如下情况 2 复制以上下载的链接地址 把以上截图红框标注的部分换成vscode cdn azure cn 这样会变成采用国内的镜像
  • canvas中的save和restore方法的作用

    save方法可以理解为暂存当前画笔的状态 接下来对画笔的操作都不会被保存下来 直到restore方法被调用 讲得通俗一点 就是说 调用save方法 就是把当前的笔放笔架上 换一支笔 调用restore方法时 再把刚才放到笔架上的笔再拿下来用
  • 使用Python对图像进行不同级别量化QP,使用RLE计算压缩比,并计算对应的PSNR

    写这篇博客源于 博友的提问 1 效果图 原图 VS QP 2 VS QP 4 VS QP 8效果图如下 QP量化是指把原始图像按像素级别划分取值 如QP 2 则 lt 128 取0 gt 128取128 QP 4 则 lt 64取0 lt
  • 无线dhcp服务器静态,wifi的ip设置dhcp和静态的区别

    大家好 我是时间财富网智能客服时间君 上述问题将由我为大家进行解答 以网络为例 wifi的ip设置dhcp和静态的区别如下 1 静态IP地址 又称固定IP地址 是长期分配给一台计算机或网络设备使用的 IP 地址 一般来说 一般是特殊的服务器
  • MySQL经典入门

    MySQL数据库相关知识 数据库的基本概念 数据库的英文单词 DataBase 简称 DB 什么是数据库 用于存储和管理数据的仓库 数据库的特点 持久化存储数据的 其实数据库就是一个文件管理系统 方便存储和管理数据 使用了统一的方式操作数据