数据库类型

什么是数据库
DB的全称是data base,即数据库的意思。DBA
数据库(Database)是按照数据结构来组织、存储和管理数据的仓库
数据库实际上就是一个文件集合,是一个存储数据的仓库,本质就是一个文件系统;
数据库是按照特定的格式把数据存储起来,用户可以对存储的数据进行增删改查操作;查询操作占所有操作的百分之八十
常见数据库的介绍
Oracle 甲骨文公司,专门数据库厂商 收购SUN、MySQL ------- 收费 大型数据库 ,用于任何系统任何平台 ,市场排名第二
MySQL 早期开源免费数据库产品,LAMP组合 Linux + Apache + MySQL + PHP 完全开源免费 ,自从mysql被oracle收购后,从6.0开始出现收费版本,市场排名第一
DB2 IBM数据库产品 大型收费数据库 websphere服务器一起使用
SYBASE 中等规模数据库 收费 PowerDesigner 数据库建模工具
SQL Server 微软公司数据库产品 收费中等规模数据库 ,操作系统要求是windows 结合.net 一起使用 ,市场排名第三
Java开发者主要使用 MySQL 、Oracle
数据库的分类
关系型数据库: 可以保存现实生活中的各种关系数据, 数据库中存储数据以表为单位;以上介绍的都是关系型数据库。
非关系型数据库:通常用来解决某些特定的需求如:数据缓存,高并发访问。 存储数据的形式有多种,举例:Redis数据库:通过键值对的形式存储数据;
Nosql - not only sql - redis(k-v) - 缓存使用
MySQL数据库
mysql是现流行的开源、免费的关系型数据库
免费、开源数据库 
小巧、功能齐全
使用便捷
可运行于Windows或Linux操作系统
可适用于中小型甚至大型网站应用

安装与卸载
可视化工具的安装
Navicat 是一套快速、可靠并价格相宜的数据库管理工具,专为简化数据库的管理及降低系统管理成本而设。它的设计符合数据库管理员、开发人员及大中小企业的需要;
它可以用来对本机或远程的 MySQL、SQL Server、SQLite、Oracle 及 PostgreSQL 数据库进行管理及开发。
Navicat适用于三种平台 - Microsoft Windows、Mac OS X 及Linux。它可以让用户连接到任何本机或远程服务器、提供一些实用的数据库工具如数据模型、数据传输、数据同步、结构同步、导入、导出、备份、还原、报表创建工具及计划以协助管理数据
mysql存储结构说明
数据库内部存储结构说明

数据库存储数据的结构说明 

 mysql数据库服务器可以创建多个数据库 database每个database 都是独立的
每一个数据库可以创建多张数据表 table  开发中一般是一个工程对应一个数据库
每张数据表 用来保存 数据记录 表示数据库的基本单元 表 对应 java 对象
SQL语句 (简称: 结构化查询语句 )
特点:一条SQL语句一个执行结果  
为了使用SQL 编写复杂程序,各个数据库厂商对SQL 进行增强
SQL语句学习流程 :
库---> 表----> 表中记录/数据
SQL操作
SQL全称是“结构化查询语言(Structured Query Language)”
SQL是一种数据库查询和程式设计语言,用于存取以及查询、更新和管理关联式数据库系统。
Sql对数据库操作可以分为一下几种

 

Mysql: 不区分大小写
 

DDL对数据库操作
一条SQL语句一个执行结果,sql语句的结束使用分号 ;
注意:每一条sql语句结束,一定要加 ;
查看所有数据库:show databases;
新建数据库: create database dbname;
使用某一个库:use dbname;
查看当前使用的库 : select database();
切换使用库:use dbname;
删除数据库:drop database dbname;
对表操作
建表语法:create table 表名(列名 类型(长度),列名 类型(长度)... );
一个数据表可以存在很多列,每列具有类型和长度
注意:创建表之前 必须使用use db 语法指定操作数据库
MySQL 常用数据类型:
java 中 String char----- mysql 中字符串型 char varchar 
Username char(10) - 字符串   lili --- 不管给出的值是长多,都会为其分配10个字符的长度
Username varchar(10) - 字符串 lili -- 根据实际的内容的长度去进行分配空间,赋值4个字符,为他分配4个字符
面试题:在mysql中char 和 varchar 有什么区别?
* char是定长 varchar是变长
例如:char(8) 保存 lisi,因为lisi 只有四个字符,所有会补充四个空格,成为8个字符存入 char(8)中 ,如果有 varchar(8) lisi 自动根据存放内容改变长度
java 中 byte short int long float double ----- mysql 中数值类型 TINYINT 、SMALLINT、INT、BIGINT、FLOAT、DOUBLE
java 中 boolean ---- mysql 逻辑性 bit 存放一位数值 0 或者1
java 中 Date ----- mysql 日期类型 date (只有日期2022-2-2) time(只有时间 22:22:22) datetime(日期时间都有 2022-2-2 22:22:22)
说明:创建数据表时,只有字符串类型必须写长度,而其他类型都有默认长度 
Java中的一个对象会对应数据库中的一条记录
注意:一般表的主键都是int类型,并且是自增
查询表: show tables;
表结构修改
修改表名 rename table 旧表名 to 新表名
新增列 alter table 表名 add 列名 类型(长度)
修改列 alter table 表名 change 旧列名 新列名 类型(长度)
删除列 alter table 表名 drop 列名
查看表结构:desc tableName;
mysql数据类型及列类型说明
列类型:规定数据库中该列存放的数据类型
数值类型
字符串类型
日期和时间型数值类型
NULL值
数值类型

字符串类型 

日期类型和时间型数值类型

 

 

字段属性和限制(约束)
在创建表的时候,表中字段可以拥有一些属性修饰
主键约束: 每一张表都需要有一个主键,和表的内容没有之间的关联,主要是用来提高查询的效率,确保数据的唯一性,方便数据统计
主键一定是非空的,一般是整数类型,一般都是数据库自己去维护,一般都是自增的
唯一约束:一般用在列上,添加一条数据时,要确保这一列的唯一性
外键约束 : 多表关联时
非空约束

 

数据表的存储位置
MySQL数据表以文件方式存放在磁盘中包括表文件、数据文件以及数据库的选项文件
位置:MySQL安装目录\data下存放数据表。目录名对应数据库名,该目录下文件名对应数据表
约束
主键约束 : - 必须的
每一张表都要有一个主键,一般的主键都是整数类型,而且是自增的, 一般主键和表都是没有关系的,主要是用来确认唯一性的、建立表与表之间的关系的,
学号:
部门编号:
订单号:
非空约束: - 不是必须的
用于具体的某一列,表示新增数据的时候,这个列一定要有值,不能为空
外键约束: - 不是必须的
用来维护表与表之间的关系的
员工表和部门表
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值