数据库笔记

本文详细介绍了数据库的基础知识,包括SQL语法、数据库的安装与卸载、数据类型的使用、表的操作、查询语句、多表查询、约束、存储过程、触发器以及视图等内容。着重讲解了如何创建、修改和删除数据库对象,以及如何执行DML、DQL、DCL和DDL操作。此外,还探讨了存储过程和触发器的概念及应用,以及视图在数据安全和权限控制中的意义。
摘要由CSDN通过智能技术生成

一.简介

1.概述

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。
每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

2.常见数据库

SQLServer: 微软的中小型关系型数据库
MySQL: 中小型的关系型数据库
Oracle: 大型的关系型数据库
关系型数据库: 具有行和列的这种二维表结构的数据库
非关系型数据(NOSQL): 用键值关系来存储数据类似 json

SQL:

结构化查询语言,用来对关系型数据库进行操作,他是一套规范,关系型数据库,都会遵循此规范,但是允许各家的数据库有差异,这些差异,我们称之为方言

SQL语法

对SQL语句我们习惯分为以下四类
(1): DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等
(2): DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(增、删、改)
(3): DCL(Data Control Language):数据控制语言,用来定义访问权限和安全级别
(4): DQL(Data Query Language):数据查询语言,用来查询记录(数据)

3.数据库的安装与卸载

安装按照提示正常安装即可

安装地址
登录方法:

mysql -h 主机名 -u 用户名 -p

卸载的正确步骤:

1.可以使用第三方的卸载软件来卸载
2.在控制面板里面常规卸载
1.停止后台服务 电脑–右键–管理—服务—mysql–右键停止掉
2.卸载
3.清除残留文件 C:\ProgramData\MySQL 把这个MySQL文件夹删除

二.数据库的用法

1.数据库中常见的列的数据类型

(1): int:整型

例:id int

(2): double:浮点型

例:money double(5,2)表示最多5位,其中必须有2位小数,即最大值为999.99;

(3): char:固定长度字符串类型;

例:name char(10)

(4): varchar:可变长度字符串类型;

例:name varchar(10)

(5): text:字符串类型;

存大格式的文本 比如存个小说但是一般不用

(6): blob:字节类型;

存字节类型的数据 比如电影字节 图片字节 但是一般不会把字节数据存到数据库当中

(7): date:日期类型;

格式为:yyyy-MM-dd;

(8): time:时间类型;

格式为:hh:mm:ss

(9): datetime:日期时间类型

格式为:yyyy-MM-dd hh:mm:ss

(10): timestamp:时间戳类型

格式为:yyyy-MM-dd hh:mm:ss
如果该类型的字段不给赋值,则默认当前时间

2.数据库的创建

(1): 创建数据库:create database 数据库名

例如: create database mydb;

(2): 查询所有库:show databases;
(3): 删除:drop database mydb;
(4): 修改数据库编码:alter database mydb character set=‘gbk’;
(5): 查看建库语句:show create database mydb;

3.对表头的操作

(1): 切换库 : use mydb;
(2): 创建表:create table 表名(列名1 数据类型,列名2 数据类型2(长度), …);

例:create table student(
id int,
name varchar(16),
age int,
sal double(5,2),
birthday timestamp
);
注意
1.创建表时,列名 是要有数据类型的
2.列名的命名的规范:遵循java中的命名规范,记住不要拿MySQL中的关键字来命名

(3): 查看改库下所有的表:show tables;
(4): 查看表结构 desc 表名;

例如: desc student;

(5): 修改表名:alter table 旧表名 rename to 新表名

alter table student rename to stu;

(6): 删除表 drop table 表名

drop table student;

(7): 添加一个列

alter table student add(phone varchar(11));

(8): 删除一个列

alter table student drop phone;

(8): 修改列名

alter table student change name username varchar(20);

(9): 修改列的数据类型

alter table student modify username char(20);

(10): 修改表的名字与数据类型:

alter table student change username username varchar(20);

(11): 查看建表语句

show create table student;

9.复制表

创建一张表会把另一张表中的字段和对应的数据全部复制过去

语法:create table 表名 as select * from 另一张表 where true;


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值