黑马程序员技术交流社区

标题: 关于数据库的基本知识 [打印本页]

作者: wangsongyu2010    时间: 2018-3-26 18:45
标题: 关于数据库的基本知识

第一次发帖,请多关照;
今天我总结打内容是关于数据库的基本知识。

一:
数据库:就是一个文件系统,这个文件必须通过标准的SQL访问.关系型的数据库存放的都是实体之间的关系.
MySQL        :免费的小型的数据库,现在被Oracle收购.
Oracle        :Oracle公司收费的大型的数据库.
SQLServer:微软公司收费中型的数据库.
DB2        :IBM公司收费的大型的数据库.
SyBase        :SyBase公司收费的数据库.已经被淘汰.PowerDesigner数据建模的工具.
SQLite        :小型的嵌入式的数据库.
而我们目前所使用的数据库是MySQL,以后可能会用到Oracle。

数据库和java中的对应关系:
数据表                类
字段                成员变量
一行数据        一个对象

二:
数据库说完了,使用SQL语句才能访问数据库,且一条语句就会有一个运行的结果,SQL语句是结构化的查询语言,其大致分为四大类:
包括:
DDL:数据定义语言 create,alter,drop...
DML:数据操纵语言 update,insert,delete
DCL:数据控制语言 grant,if..
DQL:数据查询语言 select

三:
数据库的CRUD的操作:

数据类型
int
double
varchar        String
date        String
       

创建数据库
create database 数据库名称 [character set 字符集 collate 字符集校对];

查看数据库
查看数据库服务器中所有的数据库:show databases;
查看某个数据库的定义信息.: show create database 数据库名;
查看当前正在使用的数据库信息:select database();

删除数据库
drop database 数据库名;

修改数据库
修改数据库修改的是的数据库的字符集和校对规则:
alter database 数据库名 character set 新字符集 collate 校对规则;

切换数据库:use 数据库名;

四:
创建数据表
create table 表名 (
    字段名 类型(长度) 约束,
    字段名 类型(长度) 约束,
    字段名 类型(长度) 约束
);
约束:
主键约束 primary key
非空约束 not null
唯一约束 unique

比较运算符       
>  <  <=   >=   =   <> 不等于

添加数据
insert into 表明(列名1,列名2...)values(值1,值2...),(值1,值2...),(值1,值2...)...;

删除数据
delete from 表名;删除表的记录:一条一条进行删除. delete属于DML。可以找回.
truncate table 表名;删除表的记录:将整个表删除掉,重新创建一个新的表.truncate属于DDL.

删除指定数据
delete from 表名 where 条件;

更改数据
update 表明 set 列名=值,列名2=值2,...;

查询数据
select *from 表名;

查询指定数据
select *from 表名 where 条件;

条件补充:
BETWEEN  ...AND... 显示在某一区间的值(含头含尾)

IN(set) 显示在in列表中的值,例:in(100,200)

LIKE 通配符 模糊查询,
Like语句中有两个通配符:
% 用来匹配多个字符;例first_name like '%a%’;
空格用来匹配一个字符。例first_name like ‘a_’;

IS NULL 判断是否为空
is null; 判断为空
is not null; 判断不为空

逻辑运算符       
and        多个条件同时成立
or        多个条件任一成立
not        不成立,例:where not(salary>100);

其他实用
排序:                 order by    asc升序,desc降序
分组:                 group by
分组后筛选:        having
聚合函数:        sum,avg,count,max,min

以上就是有关数据库的基础知识,欢迎大家指出错误。
作者: Yin灬Yan    时间: 2018-3-27 17:32
我来占层楼啊   




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2