Java数据库语法总结:
没错,我在还没有总结IO流的时候就先总结了数据库的语法。昨天花了一个晚上完成了这个学期的第一个程序,学到了apache的HSSF的基本用法,即对.xls文件的基本的读入写出和风格设置,这些东西明天抽时间再进行总结。
PS:(最近很忙,所以这些笔记也许会有不完善的地方,未来继续学习的过程中如果有新的领悟,我会及时更新这个文档)。
数据库的概述
概念
- 数据库(DataBase)的概念:
- 数据库就是存储数据的仓库,其本质是一个文件系统,数据库按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。
- 数据库管理系统( DataBase Management System,DBMS )的概念:
- 数据库管理系统:指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。
- 用户通过数据库管理系统访问数据库中表内的数据。
- 常见的数据库管理系统
- MySQL(开源的小型的数据库,6.x版本前是免费的,已被Oralce公司收购);
- Oracle(收费的大型数据库,Oracle公司拳头产品);
- DB2(IBM公司的收费的数据库产品,常用于银行系统中);
- SQLServer(微软公司的收费的中型数据库,C#、.net等语言常用);
- SQLite(嵌入的小型数据库, 常用语移动端)
- Java中常用的数据库是MySQL、Oralce;
- 数据库表
- 数据库中以数据表的形式存储数据
- 数据表的每个字段都有自己的对应的数据类型
- 表数据
- 根据表字段所规定的数据类型,我们可以向其中填入一条条的数据,而表中的每条数据类似类的实例对象。表中的一行一行的信息我们称之为记录。
- 数据库中关系可以与Java程序进行类比,有如下关系
- 类 —— 表
- 类中属性 —— 表中属性
- 对象 —— 记录
- 数据库和管理系统的关系
- 大小关系为
服务器 > 数据库 > 数据表
SQL语句
SQL语句分类
数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等
数据操作语言:简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。关键字:insert,delete,update等
数据控制语言:简称DCL(Data Control Language),用来定义数据库的访问权限和安全级别,及创建用户。
数据查询语言:简称DQL(Data Query Language),用来查询数据库中表的记录。关键字:select,from,where等
SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾;
- 可使用空格和缩进来增强语句的可读性;
- MySQL数据库的SQL语句不区分大小写,建议使用大写,例如:SELECT * FROM user。
- 同样可以使用/**/的方式完成注释;
- MySQL中的我们常使用的数据类型如下
| 数据类型 |
符号 |
| 整型 |
int |
| 浮点型 |
double |
| 字符串型 |
varchar |
| 日期类型 |
date |
数据库操作(增删改查)
-
创建数据库:
- 创建数据库时,默认编码是你设置数据库时设置的默认编码,建议配置默认编码为UTF_8;
| 格式 |
作用 |
备注 |
| create databases <数据库名>; |
用默认字符集创建新数据库 |
注意creat**e**,database**s** |
| create databases <数据库名> character set <字符集>; |
用指定字符集创建新数据库 |
|
| 格式 |
作用 |
备注 |
| drop database <数据库名>; |
删除指定数据库
|
数据库建立时有四个默认数据库,那四个数据库最好不要动 |
| drop database if exists <数据库名>; |
删除指定的不确定是否存在的数据库
|
优点是不会报错 |
| 格式 |
作用 |
备注 |
| show databases; |
查看服务器中所有的数据库 |
注意database**s** |
| show createdatabase <数据库名>; |
查看指定数据库的信息 |
|
| select database(); |
查看正在使用的数据库 |
|
| 格式 |
作用 |
备注 |
| use <数据库名>; |
连接数据库 |
|
| select version(); |
显示MySQL的版本 |
|
| select now(); |
显示当前时间 |
|
数据表操作
-
创建表 (create)
create table 表名(
字段名 类型(长度) 约束,
字段名 类型(长度) 约束
);
查看表 (show, desc, select, from)
| 格式 |
作用 |
备注 |
| show tables; |
查看数据库中的所有表
|
|
| desc <表名>; |
查看数据表的结构
|
|
| select * from <表名>; |
查看数据表中所有记录
|
查看记录在查询数据表中详细介绍 |
| 格式 |
作用 |
备注 |
| drop table <表名>; |
删除指定数据表 |
|
| truncate table <表名>; |
重建指定数据表 |
重建之后表中数据全部清空 |
-
修改数据表结构 (rename, alter, modify, change, set)
| 格式 |
作用 |
备注 |
| rename table <表名> to <新表名>; |
修改指定表的表名
|
|
| alter table <表名> add <数据类型> <约束>; |
给指定表添加一个新字段 |
|
| alter table <表名> modify <字段名> <类型> <约束>; |
修改指定表的指定列的类型长度和约束
|
|
| alter table <表名> change <字段名> <新列名> <类型> <约束>; |
修改指定表的列名
|
|
| alter table <表名> drop <字段名>; |
修改指定表删除指定列
|
|
| alter table <表名> character set <字符集>; |
修改指定表的字符集
|
|
对数据表中数据操作
- 向表中插入新记录 (insert, into, values)
| 格式 |
作用 |
备注 |
| insert into <表名> <字段1, 字段2> values <值1,值2>; |
向表中插入一条某些列存在数据的记录 |
其他列数据为null
|
| insert into <表名> values <值1, 值2>; |
向表中插入一条数据 |
所有值全给出 |
| insert into <表名> <字段1,字段2> values <值1,值2>,<值1,值2> |
批量写入数据 |
; |
| 格式 |
作用 |
备注 |
| update <表名> set <字段名>=<值>,<字段名>=<值>; |
修改字段中所有数据的值 |
慎重 |
| update 表名 set 字段名=值,字段名=值 where 条件; |
修改符合条件的数据的值 |
用于修改某个或一类数据 |
| 格式 |
作用 |
备注 |
| delete from <表名> where <条件>; |
根据条件删除记录 |
|
| delete from <表名>; |
删除表中所有数据 |
一条一条删除, **不清空**auto_increment记录数 |
| truncate table <表名> |
删除表中所有数据
|
重新建表,**清空**auto_increment记录数 |
| 格式 |
作用 |
备注 |
| select <字段1,字段2> from <表名>; |
查询表中指定字段的信息 |
|
| select * from <表名>; |
查询表中所有字段的信息 |
* 是通配符 |
| select distinct <字段名> from <表名>; |
查询所有字段并根据指定字段去重
|
|
| select <字段名> as <别名> from <表名>; |
查询记录并将指定字段设置别名
|
|
| select * from 表名 as 别名; |
查询所有字段并将表设置别名
|
|
| select <字段名+digit> from <表名>; |
查询时可以对字段直接进行数值运算 |
|
| 格式 |
作用 |
备注 |
| select <字段1,字段2> from <表名> where <条件>; |
根据条件查询表中记录 |
条件通常使用运算符 |

| 格式 |
作用 |
备注 |
| select <字段1,字段2> from <表名> order by <字段名> <排序方式>; |
根据指定字段按照指定排序方式将指定字段按照排序后的样式显示出来 |
[desc]表示降序 [asc]表示升序 升序可以省略不写,默认升序 不支持对汉字的排序 |
| 格式 |
作用 |
备注 |
| select count(<字段名>) from <表名>; |
查询表中指定字段不为空的记录共有多少条 |
|
| select sum(<字段名>) from <表名>; |
查询表并将指定字段数据求和 |
结果显示在“结果中” 只能对数值进行运算 |
| select max(<字段名>) from <表名>; |
获取指定字段的最大值
|
|
| select min(<字段名>) from <表名>; |
获取指定字段的最小值
|
|
| select avg(<字段名>) from <表名>; |
计算一个列所有数据的平均值
|
|
| 格式 |
作用 |
备注 |
| select <字段1,字段2> from <表名> group by <字段名> |
根据指定字段用指定字段筛选 |
|
相关文章: