java基础专栏—DB(1)
2017-10-20 00:00
183 查看
摘要: 摘要: 摘要: 摘要: 笔者在java学习的这条道路上也是断断续续走了一年多了,视频啊,数据啊什么的也看了好几遍了,真的是java从入门到放弃啊,哈哈,看的多了一渐渐的明白了一点东西,笔者整理了一些自己的学习笔记,在此与大家分享,不喜勿喷,多多指教,万分感谢。
create database 数据库名;
create database 数据库名 character set 字符集;
show databases;查看Mysql服务器中所有的数据库
show create database 数据库名;查看某个数据库的定义的信息
drop database 数据库名称;删除数据库
use 数据库名;
select database();查看正在使用数据库
create table 表名(
字段名 数据类型 约束,
字段名 数据类型 约束,
字段名 数据类型 约束
);
show tables;
desc 表名;
drop table 表名
rename table 表名 to 新名;
not null;不为空约束
primary key;主键约束,保证主键是唯一的,并且不为空
auto_increment;自增长
alter table 表名 add 列名 数据类型 约束; 添加一个字段
alter table 表名 modify 列名 数据类型 约束;修改lie名,数据类型和约束
alter table 表名 change 旧列名 新列名;修改列名
alter table 表名 drop 列名;删除列
insert into 表名{列名 1,列名 2} values (值1,值2)
对应问题
表名列名问题
insert into 表名 (列名) values (值)添加数据格式,不考虑主键
insert into 表名 values (全列值)
insert into 表名 (列名1,列名2 ,列名3) values (值),(值),(值);
update 表名 set 列1 = 值1,列2 = 值2 while 条件
如果不加条件,所有的数据都将被修改
update 表名 set 列名 = 值 while 条件
delete from 表名 where 条件
select * from 表名;
select distinct 字段 form 表名;去掉重复的记录
select 字段 form 表名as 别名字段
select * from 表名 where 字段 like %xxx% 匹配中间含有xxx的
select * from 表名 where 字段 like ______匹配五个字符的
order by 列名 [desc] ,[asc]
select * from 表名 order by 字段 顺序
set names 'GBK'
count 统计不为空的行数
select count(*) from 表名
sum 指定列的数值和,如果不是数值就是0
select sun(*) form 表名 where 条件
max 返回最大值,如果是字符串就用排序运算
min 返回最小值,如果是字符串就用排序运算
avg 计算平均值,如果不是数值,返回0
group by 被分组的列名
select sum(xxx) form 表名 group by 字段
having 条件;分组之后再次查询语句
==查询中允许直接运算==
DB
数据库是存储数据的仓库,其本质是文件管理系统,数据按照特定格式将数据存储起立,用户可以对数据库中的数据操作。数据库本身就是一个服务器,用户面对的是管理数据库的操作系统。
表与类的关系
java中的类与数据库中的表是对应的,java的成员变量对应于数据库中的字段,每一条表格数据对应一个java对象。将java开发与DB对应,当用户使用的时候就要对应产生对象。并且数据库的连接要保持安全,必须使用TCP/IP协议,使用UTF-8的编码格式。Sql语句
SQL结构化查询语言,用于存储查询数据
类型 | 描述 |
---|---|
INT | 整型 |
DOUBLE | 浮点型 |
VARCHAR | 字符串类型 |
DATE | 日期类型,年月日 |
库操作
create database 数据库名;
create database 数据库名 character set 字符集;
show databases;查看Mysql服务器中所有的数据库
show create database 数据库名;查看某个数据库的定义的信息
drop database 数据库名称;删除数据库
use 数据库名;
select database();查看正在使用数据库
表操作
create table 表名(
字段名 数据类型 约束,
字段名 数据类型 约束,
字段名 数据类型 约束
);
show tables;
desc 表名;
drop table 表名
rename table 表名 to 新名;
约束
not null;不为空约束
primary key;主键约束,保证主键是唯一的,并且不为空
auto_increment;自增长
改表操作
alter table 表名 add 列名 数据类型 约束; 添加一个字段
alter table 表名 modify 列名 数据类型 约束;修改lie名,数据类型和约束
alter table 表名 change 旧列名 新列名;修改列名
alter table 表名 drop 列名;删除列
添加数据
insert into 表名{列名 1,列名 2} values (值1,值2)
对应问题
表名列名问题
insert into 表名 (列名) values (值)添加数据格式,不考虑主键
insert into 表名 values (全列值)
批量写入
insert into 表名 (列名1,列名2 ,列名3) values (值),(值),(值);
数据的跟新操作
update 表名 set 列1 = 值1,列2 = 值2 while 条件
如果不加条件,所有的数据都将被修改
update 表名 set 列名 = 值 while 条件
delete from 表名 where 条件
查询数据
select * from 表名;
select distinct 字段 form 表名;去掉重复的记录
select 字段 form 表名as 别名字段
条件写法
<>不等于
and
or
not与或非
in(set)包含
like
%用来匹配多个字符,
/匹配一个字符
模糊查询
select * from 表名 where 字段 like %xxx% 匹配中间含有xxx的
select * from 表名 where 字段 like ______匹配五个字符的
is null判空
between and组合期间查询
排序
order by 列名 [desc] ,[asc]
select * from 表名 order by 字段 顺序
乱码问题
set names 'GBK'
聚合函数
纵向查询,聚合,对一列进行计算然后返回单一的一个值,聚合函数会忽略空值
count 统计不为空的行数
select count(*) from 表名
sum 指定列的数值和,如果不是数值就是0
select sun(*) form 表名 where 条件
max 返回最大值,如果是字符串就用排序运算
min 返回最小值,如果是字符串就用排序运算
avg 计算平均值,如果不是数值,返回0
分组查询
对重复数据单独分组:必须和聚合函数一起使用
group by 被分组的列名
select sum(xxx) form 表名 group by 字段
having 条件;分组之后再次查询语句
==查询中允许直接运算==
相关文章推荐
- java基础专栏—JDBC
- java基础专栏—ArrayFrame(1)
- JAVA基础--db14_java基本类型包装类_集合框架
- java基础专栏—java网络编程
- JAVA基础--db15_java集合框架
- JAVA基础--db10_java多态-内部类
- JAVA基础--db16_java泛型_map集合
- JAVA基础_db03_java运算符-语句
- JAVA基础--db20_java转换流_file对象&GUI
- JAVA基础--db05_java数组常见功能-查表法
- JAVA基础--db18_javaSystem&Math&Date&IO流
- 面试专栏:算法与数据结构,虚拟机,Java基础,JavaWeb
- JAVA基础--db17_javaMap集合_集合框架工具类
- java基础专栏—DBUtils(2)
- java基础专栏—Exception
- JAVA基础--db01_入门-软件安装-环境变量
- java基础专栏—IOUtils(4)
- JAVA基础--db12_java包机制
- java基础专栏—IO转换(3)
- java基础专栏—IOBuffer(2)