加入收藏 | 设为首页 | 会员中心 | 我要投稿 我爱制作网_池州站长网 (https://www.0566zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL 查询数据 day02:MySQL基础(超系统的JavaWEB全套教程)

发布时间:2022-10-31 11:30:14 所属栏目:MySql教程 来源:
导读:  今日内容

  1.数据库的基本概念

  2.MySQL数据库软件

  (1)安装

  (2)卸载

  (3)配置

  3.SQL

  数据库的基本概念

  1.数据库的英文单词:

  DataBase 简
  今日内容
 
  1.数据库的基本概念
 
  2.MySQL数据库软件
 
  (1)安装
 
  (2)卸载
 
  (3)配置
 
  3.SQL
 
  数据库的基本概念
 
  1.数据库的英文单词:
 
  DataBase 简称 : DB
 
  2.什么数据库?
 
  用于存储和管理数据的仓库
 
  3.数据库的特点:
 
  (1)持久化存储数据的。其实数据库就是一个文件系统
 
  (2)方便存储和管理数据
 
  (3)使用了统一的方式操作数据库 -- SQL
 
  4.常见的数据库软件
 
  参见MySQL文档
 
  MySQL数据库软件
 
  1.安装
 
  参见MySQL文档
 
  2.卸载
 
  (1)去mysql的安装目录找到my.ini文件
 
  复制 datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
 
  (2)卸载MySQL
 
  (3)删除C:/ProgramData目录下的MySQL文件夹。
 
  3.配置
 
  (1)MySQL服务启动
 
  A:手动
 
  B:cmd--> services.msc 打开服务的窗口
 
  C:使用管理员打开cmd
 
  a:net start mysql
 
  启动mysql的服务
 
  b:net stop mysql
 
  关闭mysql服务
 
  (2)MySQL登录
 
  A:mysql -uroot -p密码
 
  B:mysql -hip -uroot -p连接目标的密码
 
  C:mysql --host=ip --user=root --password=连接目标的密码
 
  (3)MySQL退出
 
  A:exit
 
  B:quit
 
  (4)MySQL目录结构
 
  A:MySQL安装目录:basedir="D:/develop/MySQL/"
 
  配置文件 my.ini
 
  B:MySQL数据目录:datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
 
  a:几个概念
 
  数据库:文件夹
 
  表:文件
 
  数据:数据
 
  SQL
 
  1.什么是SQL?
 
  Structured Query Language:结构化查询语言
 
  其实就是定义了操作所有关系型数据库的规则。每一种数据库操作的方式存在不一样的地方,称为“方言”。
 
  2.SQL通用语法
 
  (1)SQL 语句可以单行或多行书写,以分号结尾。
 
  (2)可使用空格和缩进来增强语句的可读性。
 
  (3)MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。
 
  (4)3种注释
 
  A:单行注释: -- 注释内容 或 # 注释内容(mysql 特有)
 
  B:多行注释: /* 注释 */
 
  3.SQL分类
 
  (1)DDL(Data Definition Language)数据定义语言
 
  用来定义数据库对象:数据库,表,列等。关键字:create, drop,alter 等
 
  (2)DML(Data Manipulation Language)数据操作语言
 
  用来对数据库中表的数据进行增删改。关键字:insert, delete, update 等
 
  (3)DQL(Data Query Language)数据查询语言
 
  用来查询数据库中表的记录(数据)。关键字:select, where 等
 
  (4)DCL(Data Control Language)数据控制语言(了解)
 
  用来定义数据库的访问权限和安全级别,及创建用户。关键字:GRANTMySQL 查询数据, REVOKE等
 
  DDL:操作数据库、表
 
  1.操作数据库:CRUD
 
  (1)C(Create):创建
 
  A:创建数据库:
 
  create database 数据库名称;
 
  B:创建数据库,判断不存在,再创建:
 
  create database if not exists 数据库名称;
 
  C:创建数据库,并指定字符集
 
  create database 数据库名称 character set 字符集名;
 
  D:练习:
 
  创建db4数据库,判断是否存在,并制定字符集为gbk
 
  create database if not exists db4 character set gbk;
 
  (2)R(Retrieve):查询
 
  A:查询所有数据库的名称:
 
  show databases;
 
  B:查询某个数据库的字符集:查询某个数据库的创建语句
 
  show create database 数据库名称;
 
  (3)U(Update):修改
 
  A:修改数据库的字符集
 
  alter database 数据库名称 character set 字符集名称;
 
  (4)D(Delete):删除
 
  A:删除数据库
 
  drop database 数据库名称;
 
  B:判断数据库存在,存在再删除
 
  drop database if exists 数据库名称;
 
  (5)使用数据库
 
  A:查询当前正在使用的数据库名称
 
  select database();
 
  B:使用数据库
 
  use 数据库名称;
 
  操作表
 
  1:C(Create):创建
 
  (1)语法:
 
  create table 表名(
 
  列名1 数据类型1,
 
  列名2 数据类型2,
 
  ....
 
  列名n 数据类型n
 
  );
 
  A:注意:最后一列,不需要加逗号(,)
 
  B:数据库类型:
 
  a:int:整数类型
 
  age int,
 
  b:double:小数类型
 
  score double(5,2)
 
  c:date:日期,只包含年月日,yyyy-MM-dd
 
  datetime:日期,包含年月日时分秒 yyyy-MM-dd HH:mm:ss
 
  d:timestamp:时间错类型包含年月日时分秒 yyyy-MM-dd HH:mm:ss
 
  如果将来不给这个字段赋值,或赋值为null,则默认使用当前的系统时间,来自动赋值
 
  e:varchar:字符串
 
  name varchar(20):姓名最大20个字符
 
  zhangsan 8个字符 张三 2个字符
 
  C:创建表
 
  create table student(
 
  id int,
 
  name varchar(32),
 
  age int ,
 
  score double(4,1),
 
  birthday date,
 
  insert_time timestamp
 
  );
 
  D:复制表:
 
  create table 表名 like 被复制的表名;
 
  (2)R(Retrieve):查询
 
  A:查询某个数据库中所有的表名称
 
  show tables;
 
  B:查询表结构
 
  desc 表名;
 
  (3)U(Update):修改
 
  A:修改表名
 
  alter table 表名 rename to 新的表名;
 
  B:修改表的字符集
 
  alter table 表名 character set 字符集名称;
 
  C:添加一列
 
  alter table 表名 add 列名 数据类型;
 
  D:修改列名称 类型
 
  alter table 表名 change 列名 新列别 新数据类型;
 
  alter table 表名 modify 列名 新数据类型;
 
  E:删除列
 
  alter table 表名 drop 列名;
 
  (4)D(Delete):删除
 
  A:drop table 表名;
 
  B:drop table if exists 表名 ;
 
  客户端图形化工具:SQLYog
 
  mysql查询时间段内数据_mysql查询4到10条数据_MySQL 查询数据
 
  DML:增删改表中数据
 
  1.添加数据:
 
  (1)语法:
 
  insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);
 
  (2)注意:
 
  A:列名和值要一一对应。
 
  B:如果表名后,不定义列名,则默认给所有列添加值
 
  insert into 表名 values(值1,值2,...值n);
 
  C:除了数字类型,其他类型需要使用引号(单双都可以)引起来
 
  2.删除数据:
 
  (1)语法:
 
  delete from 表名 [where 条件]
 
  (2)注意:
 
  A:如果不加条件,则删除表中所有记录。
 
  B:如果要删除所有记录
 
  a:delete from 表名; -- 不推荐使用。有多少条记录就会执行多少次删除操作
 
  b:TRUNCATE TABLE 表名; -- 推荐使用,效率更高 先删除表,然后再创建一张一样的表。
 
  3.修改数据:
 
  (1)语法:
 
  update 表名 set 列名1 = 值1, 列名2 = 值2,... [where 条件];
 
  (2)注意:
 
  如果不加任何条件,则会将表中所有记录全部修改。
 
  DQL:查询表中的记录
 
  select * from 表名;
 
  1:语法:
 
  select
 
  字段列表
 
  from
 
  表名列表
 
  where
 
  条件列表
 
  group by
 
  分组字段
 
  having
 
  分组之后的条件
 
  order by
 
  排序
 
  limit
 
  分页限定
 
  2. 基础查询
 
  (1)多个字段的查询
 
  select 字段名1,字段名2... from 表名;
 
  注意:如果查询所有字段,则可以使用*来替代字段列表。
 
  (2)去除重复:
 
  distinct
 
  (3)计算列
 
  A:一般可以使用四则运算计算一些列的值。(一般只会进行数值型的计算)
 
  B:ifnull(表达式1,表达式2):null参与的运算,计算结果都为null
 
  a:表达式1:哪个字段需要判断是否为null
 
  b:如果该字段为null后的替换值。
 
  (4)起别名:
 
  as:as也可以省略
 
  3.条件查询
 
  (1)where子句后跟条件
 
  (2)运算符
 
  A:> 、< 、= 、= 、
 
  B:BETWEEN...AND
 
  C:IN( 集合)
 
  D:LIKE:模糊查询
 
  占位符:
 
  _:单个任意字符
 
  %:多个任意字符
 
  E:IS NULL
 
  F:and 或 &&
 
  G:or 或 ||
 
  H:not 或 !
 
  (3)案例
 
  -- 查询年龄大于20岁
 
  SELECT * FROM student WHERE age > 20;
 
  SELECT * FROM student WHERE age >= 20;
 
  -- 查询年龄等于20岁
 
  SELECT * FROM student WHERE age = 20;
 
  -- 查询年龄不等于20岁
 
  SELECT * FROM student WHERE age != 20;
 
  SELECT * FROM student WHERE age 20;
 
  -- 查询年龄大于等于20 小于等于30
 
  SELECT * FROM student WHERE age >= 20 && age = 20 AND age
 

(编辑:我爱制作网_池州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!