数据库定义

【数据库】

 永久保存数据的仓库

 本质:文件系统加服务器

 和保存在内存的数据(java中定义一个变量)相比,断电不会丢失,无法线程共享

 常见数据库产品:

 oracle:mysql,oracle

 微软:sql server

 sqlite

 db2

 库 - 文件夹 , 存放的是表

 表 - 文件, 存放的是真正的数据

【名次解释】

 数据库:管理数据的仓库

 关系型数据库:以表为单位来保存和管理数据

 关系:一张二维表,每个关系必须有关系名

 字段/属性:二维表中的一列

  记录/元祖:二维表中的一行

  超键:在关系中能唯一标识元祖的属性集

  候选键:不含有冗余属性的超键

  主键:用户选作作为记录唯一标识的候选键

  外键:用于关键两个表的属性

  范式:符合某一种级别的关系模式的集合,构造数据库表必须遵循一定的范式


【三大范式】

 1. 第一范式(1NF):
 数据库表中的每一列都是不可分割的数据项,
 一列中不允许有多个值

 2. 第二范式(2NF):
 满足1NF的基础上,
 每一条记录都有唯一标识,
 非主关键字要完全依赖于主关键字

 完全依赖 <-> 部分依赖


 3. 第三范式(3NF)
 满足2NF的基础上,
 每个表中不能出现其他表中已出现的非主关键字字段。

 

【安装mysql】

1.常规方式

https://download.csdn.net/download/qq_36194262/10735565

2.安装wampserver(模拟mysql运行环境)

【SQL】

 结构化查询语言

 相当于数据库中的“普通话”

 每种数据库可能会有自己特殊的命令 - "方言"

 1. DDL: 数据定义语言, 建表建库

 2. DML: 数据操纵语言, 增删改,

      - DQL 查

 3. DCL: 数据控制语言, 新增用户 赋予权限

 

【操作】

桌面运行mysql方法

修改环境变量,path的值后面加’;’(分隔符)加mysql.exe的父目录

用户环境变量和系统环境变量的区别:一个对当前用户有效,另一个对所有用户有效

桌面shift+右键在当前界面运行cmd,或者进入安装目录的bin文件夹(存放可执行文件)打开mysql.exe

帮助文档:http://tool.oschina.net/apidocs/apidoc?api=mysql-5.5-en

文档查看教学:建库

大括号"{ }"表示不能改,带“|”表示或,中括号表示"[ ]"可以不写,黑体表示抽象名,写的时候要写具体

 1. 进入

 mysql -u root -p

 Password:

 

 2. 查看库

 show databases;

 

 3. 建库

 create database bwf;

 

 4. 使用库

 use bwf;

 

 5. 查看库中的表

 show tables;

 

 6. 建表

  学生表

表名:student

字段名:id name age

 

create table student(

id INT PRIMARY KEY AUTO_INCREMENT,

name varchar(20) NOT NULL,

age INT NOT NULL DEFAULT 18);

 

 

 

3大范式:

第一范式(1NF):数据表中的每一列(每个字段)必须是不可拆分的最小单元,也就是确保每一列的原子性;

第二范式(2NF):满足1NF后,要求表中的所有列,都必须依赖于主键,而不能有任何一列与主键没有关系,也就是说一个表只描述一件事情

第三范式(3NF):必须先满足第二范式(2NF),要求:表中的每一列只与主键直接相关而不是间接相关,(表中的每一列只能依赖于主键)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值