创建及修改数据库

SQL(Structured Query Language):结构化查询语言

一、连接数据库

1、使用MySQL自带的客户端工具:

mysql -u root -p

注:刚下载安装好的数据库,密码为空,直接回车即可
2、若提示“未知命令或程序”
解决办法:

cd D:\SQL\mysql-5.6.45-winx64\bin

注:若无法进入该指定路径,先在cmd里输入 d:,回车
在这里插入图片描述

二、创建数据库

1、查看当前服务器上有哪些数据库
命令:

show databases;

2、创建自己的数据库

create database name1;
show databases;

3、打开(使用)指定数据库

use name1;

4、删除数据库

drop database name1;

补充知识点

存储引擎

数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以 获得特定的功能。现在许多不同的数据库管理系统都支持多种不同的数据引擎。MySql的核心就是存储引擎。
存储引擎查看
MySQL给开发者提供了查询存储引擎的功能,我这里使用的是MySQL5.1,可以使用:
SHOW ENGINES

卸载数据库

卸载数据库

三、实战

3.1 创建员工信息表

在这里插入图片描述
varchar(20):字符串类型,数据类型长度可变。若输入的数据过长,将会截掉其超出部分;若输入数据的字符数小于20 ,则系统不会在其后添加空格来填满设定好的空间。
char(1):字符串类型,数据类型长度固定
float(10,2):浮点数据类型,10位,小数点后保留两位
一般情况下,由于CHAR 数据类型长度固定,因此它比VARCHAR 类型的处理速度快。
代码:

create table employees(
	empid int,
	empname varchar(20),
	gender char(1),
	salary float(10,2),
	age int,
	hiredate datetime
);

查看当前数据库中的表:

show tables ;

查看某个数据表的表结构:

desc name;

3.2 创建部门信息表

伪代码:

  创建部门信息表departments:
  	部门id		int
  	部门名称 	varchar(30)
  	所在地 		varchar(100)

代码:

create table departments(
	deptid int,
	deptname varchar(30),
	deptlocation varchar(100)
	);

删除表:

drop table name;

3.3 使用约束:

3.3.1 主键约束

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

3.3.2 外键约束:(略抽象)

在这里插入图片描述

3.3.3 非空约束

在这里插入图片描述

3.3.4 唯一约束

在这里插入图片描述
主键:唯一不能为空
unique:唯一允许为空

3.3.5 使用默认约束

在这里插入图片描述
现在加上约束
部门ID为主键;部门名称不允许为空。

有约束的部门信息表如下:

create table departments(
	deptid int primary key,
	deptname varchar(30) not null,
	deptlocation varchar(100)
	);

给员工信息加上约束并加上新字段:
员工ID为主键约束;员工姓名不为空;
假设该工厂男性居多,性别默认为男。

有约束的员工信息表:

create table employees(
	empid int primary key,
	empname varchar(20) not null,
	gender char(1) default 'M',
	salary float(10,2),
	age int,
	hiredate datetime,
	deptid int
);

查看表结构:
在这里插入图片描述
现在来给两张建立外键约束:
即加上代码 foreign key(deptid) references departments(deptid)

员工信息表:

create table employees(
	empid int primary key,
	empname varchar(20) not null,
	gender char(1) default 'M',
	salary float(10,2),
	age int,
	hiredate datetime,
	deptid int,
	foreign key(deptid) references departments(deptid)
);

注:先创建主表(departments表),再创建从表(employees表)。
再次查看表结构:
部门信息表:
在这里插入图片描述
员工信息表:
在这里插入图片描述
创建表总结:
1、考虑表的结构,即表由哪些字段构成
2、考虑字段的类型,int,varchar,char …
3、表的约束,一般主键必须要有

四、修改数据表的结构

例如:当由于业务增加等情况需要增加或减少表的字段,对于无数据表,直接删除再创建即可;当数据表已经存在数据了,如何增加字段呢?

4.1修改字段名称、数据类型

renamemodify
修改表的结构

4.2 修改字段名称及其数据类型

change
在这里插入图片描述

4.3 添加字段

add
添加字段

4.4 删除约束

4.4.1 删除主键约束

在这里插入图片描述

4.4.2 删除外键约束

在这里插入图片描述

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值