数据库原理

常用网站:

http://c.biancheng.net/view/2618.html

1。为什么要有数据库 ?

(1)数据“持久化”。
(2)有组织/有结构的方式来存储我们的数据,更方便增、删、改、查...

2、什么是数据库
DB:Database,数据库->数据仓库,存储数据用的,并有结构的存储。
DBMS:Database Management System 数据库管理系统,是管理多个DB,如:
mysql,oracle,sql server, access, redis,mango db...
SQL:Structured Query Language 结构化查询语言

3、使用命令行客户端
(1)确定环境变量正确
可以使用mysql命令
(2)mysql命令的格式:
mysql -h localhost -P 3306 -u root -p
Enter password:密码

说明:
(1)-h,-P,-u后面可以有空格也可以没有空格,但是最后-p后面不要加空格
(2)如果你是默认连接本机localhost,那么可以省略-h localhost
(3)如果你是默认用3306端口号,那么可以省略-P 3306

4. mysql是系统库重要 ,存用户,密码等 。其它 两个存索引等 。

5.mysql属于关系型数据库

二维(行,列)表格形式

 MYSQL的DBMS系统中会有很多库 DB

但一个DB数据库中又会有很多张表格table

每一个表格中会有很多的列column和行record.

access是桌面型关系型数据库:

 关系型数据库使用的模型叫做关系模型,一个关系表就是一张二维的表格,每一行称为一条记录 

主键,是在一个表中唯一标识一行记录。主键只在一个表中表示唯一就可以了。

表和表之间可以用关系模型关联起来:

最常见的是一对多关系:如下面一对多关系通过在多的一方创建一个 class_id字段,引用class表的id

class_id这个列就叫外键 ,它的作用是关联到 某个表的主键,实现一对多的关系

多对多的关系:实际上就是多个一对多的关系组合起来

 查看系统变量:

基本操作:

(1)查看当前的DBMS系统中都有哪些数据库?
show databases;

(2)查看某个数据库中都有什么表格?
show tables;

mysql> show tables;
ERROR 1046 (3D000): No database selected

方式有两种:
方式一:show tables from 数据库名;
mysql> show tables from test;
Empty set (0.00 sec)

方式二:
use 数据库名;
show tables;

(3)查看某张表的数据
方式一:
select * from mysql.user;
方式二:
use 数据库名;
select * from user;

(4)创建一个表格
create table test.stu(
id int,
name varchar(20),
age int
);

(5)添加记录
insert into test.stu values(1,'张三',23);

mysql> insert into test.stu values(1,'张三',23);
ERROR 1366 (HY000): Incorrect string value: 'xD5xC5xC8xFD' for column 'name' at row 1

因为客户端是GBK,而服务器端认为我当前的客户端是UTF-8。
可以通过如下的语句,告知服务器当前的客户端是GBK。
set names gbk;

原文地址:https://www.cnblogs.com/hongfeng2019/p/11746156.html