MySQL数据库基础(一)

MySQL数据库基础(一)

一、建立数据库

CREATE DATABASE &&;
&&为用户自己定义的数据库名

二、建表

CREATE TABLE &&(
数据名 数据类型 后缀,
数据名 数据类型 后缀
);
&&为用户自己定义的表名
数据类型包括int、varchar()、char()……
其中varchar和char括号里的内容为一个阿拉伯数字,如果将阿拉伯数字传进去则代表不同的意思:
1.对varchar来说,传入的阿拉伯数字为字符串最长的长度
2.对char来说,传入的阿拉伯数字为字符串默认的长度,如果长度不够,则会默认补全(用空字符补全)
char在查询时效率比varchar高
后缀在本文接下来的部分会总结,总结的标记为^()包含的文字

三、完整性约束

存在的意义:是为了检查数据是否符合某个要求
1.主键
主键相当于每个数据的一个身份证号,是唯一不可重复的
定义单个主键的关键字为^(PRIMARY KEY)
定义多个主键的关键字为^(CONSTRAINT &&1 PRIMARY KEY (&&2,&&3,……))
&&1为自己定义的主键的名称
&&2为主键包含的数据名
2.非空
非空的含义为此数据不为空,若是用户没有输入数据(数据值为null时),MySQL会自动补全
定义非空的关键字为^(NOT NULL)
3.默认值
默认值的含义为如果用户没有给此数据赋值,那么MySQL会自动化给这个数据赋一个值,这个东西和NOT NULL很像,但区别就是你可以自己设置值
关键字为^(DEFAULT “&&”),&&为用户设置的默认值
4.唯一约束
唯一约束的含义为此列数据中一个数据值只能出现一次
关键字为^(unique)
5.检查约束
检查约束存在的意义不明,据某位资深开发者猜测可能是MySQL为了以后预留出的东西,和SQLServer的语法格式很像
关键字为^(CHECK(&&>10 AND &&<10))
6.外键
外键约束实现的是,约束用户添加数据时的数据值,让此数据值在数据库中某一个或多个数据值中变动。
关键词为^(FOREIGN KEY(&&1) REFERENCES &&2(&&3))
&&1为当前表中数据名称
&&2为外键存在的表的名称
&&3为外键名
7.自增
实现一个数据的自己增加,主要用于主键,它可以让用户的操作变得更方便

CREATE TABLE classes(
    id INT UNIQUE CHECK(id<100 AND id>0),
    name VARCHAR(10) DEFAULT "asdasd" 
)DEFAULT CHARSET=utf8 ENGINE=innodb;

INSERT INTO classes(id) VALUE(1);
INSERT INTO classes(id) VALUE(2);
INSERT INTO classes(id) VALUE(3);
INSERT INTO classes(id) VALUE(4);

CREATE TABLE student(
    student_id INT PRIMARY KEY,
    student_name VARCHAR(10),
    FOREIGN KEY(student_id) REFERENCES classes(id)
)DEFAULT CHARSET=utf8 ENGINE=innodb;

CREATE TABLE classes(
    id INT UNIQUE auto_increment,
    name VARCHAR(10) DEFAULT "asdasd" 
)DEFAULT CHARSET=utf8 ENGINE=innodb;

DEFAULT CAHRSET=UTF8是为了实现MySQL中输入中文不报错
ENGINE=INNODB是为了实现外键,所以使用了另一个数据库引擎

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值