Java基础知识回顾 -SQL

1、什么是SQL

SQL是指结构化组织语言(Structured Query Language),可以实现对数据库进行【增删改查】的操作。
【CRUD】
create:创建 read:检索 update:更新 delete:删除

2、SQL方言

SQL是一套标准,所有的数据库厂商都实现了此标准;也就都可以实现CRUD操作。
只不过各自厂商在此标准上增加了特有的语句,这部分内容我们称为方言。
如:mysql:注释 # 是其特有的

3、书写规范

  1. sql语句,可以单行或多行书写,最后以分号结尾

  2. 在windows环境下,mysql不区分大小写,将关键字大写,普通字段小写,多个单词之间以下划线分割==【字段USER_ID这样?】==

  3. 注释
    单行
    – sql标准注释
    # mysql特有的注释
    多行
    /* 多行注释 */

4、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)数据控制语言
    用来定义数据库的访问权限和安全级别,及创建用户。关键字:grant,revoke等

  5. TCL(Transaction Control Language) 事务控制语言
    用于控制数据库的事务操作,关键字; commit,savepoint,rollback等

4.1 DDL对数据库

C:创建

  1. 直接创建
    语法:
    create database 数据库名;

  2. 先判断,若不存在创建数据库
    语法:
    create database if not exists 数据库名;

  3. 创建数据库并指定字符集
    语法:
    create database 数据库名 character set 编码;

R:查询

  1. 查询所有数据库
    语法:
    show databases;

  2. 查看建库语句
    语法:
    show create database 数据库名;

U:修改

  1. 修改数据库字符集
    语法:
    alter database 数据库名 character set 编码;

D:删除

  1. 直接删除数据库
    语法:
    drop database 数据库名;

  2. 先判断,若存在就去删除
    语法:
    drop database if exists 数据库名;

进入指定的数据库内

  1. 查看当前所在库的位置
    语法:
    select database();

  2. 进入到指定库内
    语法:
    use 数据库;

4.2 DDL对表

C:创建

  1. 创建表
    语法:
    create table 表名(
    列名(字段名) 数据类型,
    列名(字段名) 数据类型,

    );

  2. 常见数据类型
    整型: int bigint
    浮点型:float double
    字符串:varchar(长度) 1~65535
    text longtext
    日期:date datetime

  3. 快速创建表结构(复制表)
    语法:
    create table 新表 like 旧表;

R:查询

  1. 查询所有表
    语法:
    show tables;

  2. 查看建表语句
    语法:
    show create table 表名;

  3. 查看表结构
    语法:
    desc 表名;

U:修改

  1. 新增一列(字段)
    语法:
    alter table 表名 add 字段名 数据类型;

  2. 修改字段类型
    语法:
    alter table 表名 modify 字段名 新数据类型;

  3. 修改字段名
    语法:
    alter table 表名 change 旧字段名 新字段名 新数据类型;

  4. 删除列(字段)
    语法:
    alter table 表名 drop 字段名;

  5. 修改表的字符集
    语法:
    alter table 表名 charset=编码;

  6. 修改表名
    语法:
    rename table 旧表名 to 新表名;

D:删除

  1. 直接删除
    语法:
    drop table 表名;

  2. 先判断,若存在删除
    语法:
    drop table if exists 表名;

4.3 DML对表记录增删改

增加记录

  1. 语法:
    insert into 表名(字段1,字段2,…) values(值1,值2,…);
  2. 注意:
    1)字段名与值的类型要求一一对应
    2)字符串类型,可以使用单双引,推荐使用单引号
    3)字符串类型可以插入一切数据,数据库底层实现了隐式转换
    4)如果插入所有字段,我们可以省略字段

修改记录

  1. 语法:
    update 表名 set 字段1=值1,字段2=值2… [where 条件];
  2. 注意:
    1)[] 表示内容可以省略

删除记录

  1. 语法:
    delete from 表名 [where 条件];

  2. 注意:
    1)[] 表示内容可以省略
    2)一般删除都是根据id

  3. 补充删除命令
    truncate table 表名; 摧毁表,构建表。

4.3 DML对表记录查询

  1. 实现简单查询
    语法:
    select * from 表名;
    select 字段1,字段2,… from 表名;
    去重关键字:
    select distinct 字段1,字段2,… from 表名;
    如果多个字段去重,所有字段内容需要完全一样
    我们在查询时,进行数学运算,不会改变表中原有的记录。
    NULL值与其他数值进行运算,结果都为NULL。
    ifnull高级函数
    IFNULL(字段名,指定默认值) 如果字段有值就直接返回,如果为null那么返回指定的默认值
    别名
    select 列名 [as] 列别名,列名 [as] 列别名,… from 表名 [as] 表别名
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值