1 主流数据
oralce 数据库
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的 适应高吞吐量的数据库解决方案。
mysql
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件。
MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
由于其社区版的性能卓越,搭配 PHP 和 Apache 可组成良好的开发环境。
DB2
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本。
DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于所有常见的服务器操作系统平台下。 DB2提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL命令。DB2采用了数据分级技术,能够使大型机数据很方便地下载到LAN数据库服务器,使得客户机/服务器用户和基于LAN的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。 DB2以拥有一个非常完备的查询优化器而著称,其外部连接改善了查询性能,并支持多任务并行查询。 DB2具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用
SQLserver数据库
美国Microsoft公司推出的一种关系型数据库系统。SQL Server是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。
SQLite
是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl、C#、PHP、Java等,还有ODBC接口,同样比起Mysql、PostgreSQL这两款开源的世界著名数据库管理系统来讲,它的处理速度比他们都快。SQLite第一个Alpha版本诞生于2000年5月。 至2015年已经有15个年头,SQLite也迎来了一个版本 SQLite 3已经发布。
2 安装mysql数据库(window)
下载地址: https://downloads.mysql.com/archives/installer/
2.1 安装步骤:
https://blog.csdn.net/recky_wiers/article/details/79243804
注意mysql 5.5以上安装之后卸载,再次安装比较麻烦,必须要把原理的文件彻底删除干净,步骤如下:
1. ctrl+shift+esc 打开任务管理器,停掉mysql的进程
2. 运行:service.msc 找到mysql并将其停止
3. 运行:regedit,ctrl+f 或者f3 搜索MySQL,把所有MySQL的文件夹删除
4. 进入c盘,显示隐藏文件夹,把ProgramData里的mysql文件夹删掉
5. 把盘里的所有mysql文件夹删掉
2.2 常见配置
改变mysql手动启动的方式
控制面板-> 管理工具-> 服务 找到对应的mysql 选择右键,启动的方式改成手动
配置mysql的环境变量
找到mysql安装目录 C:\Program Files\MySQL\MySQL Server 5.7\bin ,然后添加系统环境变量中
mysql参数配置
在mysql安装目录下有个C:\Program Files\MySQL\MySQL Server 5.7 my-default.ini 文件 ,文件配置的详见
https://blog.csdn.net/m0_37828590/article/details/70597783
2.3 连接mysql命令
连接MySQL
格式: mysql -h 主机地址 -P端口 -u用户名 -p用户密码
例 1:连接到本机上的 MySQL。
hadoop@ubuntu:~$ mysql -uroot -pmysql;(-h -P 默认是localhost 3306 )
例 2:连接到远程主机上的 MYSQL。
hadoop@ubuntu:~$ mysql -h 127.0.0.1 -P 3306 -uroot -pmysql;
3 数据库的基本操作
显示所有的数据库
mysql> show databases;(注意:最后有个 s)
创建数据库
mysql> create database test;
连接数据库
mysql> use test;
查看当前使用的数据库
mysql> select database();
当前数据库包含的表信息
mysql> show tables; (注意:最后有个 s)
删除数据库
mysql> drop database test;
3.2 表的基本操作
创建表
create table tablename(
字段名 数据类型 约束条件 默认值,
字段名 数据类型 约束条件 默认值,
.....
);
案例
create table runoob_tbl(
runoob_id INT NOT NULL AUTO_INCREMENT,
runoob_title VARCHAR(100) NOT NULL,
runoob_author VARCHAR(40) NOT NULL,
submission_date DATE,
PRIMARY KEY ( runoob_id )
);
实例解析:
如果你不想字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。
AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。
PRIMARY KEY关键字用于定义列为主键。 您可以使用多列来定义主键,列间以逗号分隔。
创建表时有约束添加和主键,自动增长的知识点
查看表
查看表的结构
describe 表名
可以简写成
desc tableName;
查看表创建时的语句
show create table 表名;
修改表
修改表的名字
alter table 旧表名 rename 新表名
如:
alter table test rename user;
修改字段的数据类型
alter table 表名 modify 字段名 数据类型
如:
alter table test modify u_name varchar(30);
修改字段名
alter table 表名 change 旧字段 新字段 新字段的数据类型;
如:
alter table test change u_name user_name varchar(30);
添加字段
alter table 表名 add 新字段名 新字段的数据类型
如:
alter table test add u_address varchar(233);
删除字段
alter table 表名 drop 字段名
alter table test drop u_name;
删除表
-- 删除表
drop table test;
4 数据类型
MySQL中定义数据字段的类型对你数据库的优化是非常重要的。
MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。
数值
日期和时间
字符串
-- varchar(22) char(2) int(22) double(10,2) 之间的区别
-- varchar(2) char(2) 2 代表的是限制字符个数
-- int(10) 10 补零的位数
-- double(10,2) 10 补零的位数 2 代表精确度
-- 不可变 效率高 占空间 char(6) 保存数"a" 实际占 6个字节 存储范围 0-255字节
-- 可变 效率低 节省空间 varchar(6) 保存数据“a” 实际占 1个字节 存储范围 0-65535 字节
-- int(22) 保存数据 1 或者 23323 实际占 4个字节