MySQL的基础指令

MySQL 指令

show databases;			//show 查看 data 数据 bases 基础,基地  		#查看所有数据库
create database; 数据库名    //create 创造 database 数据库		#创建数据库、
create database if not exists AhYou; //create 创建 database 数据库 if 如果 not 不  exists 存在    #如果AhYou不存在就创建此名称的数据库
create database if not exists AhYou difault charset utf8mb4  //前边翻译同上  difault 默认 charset 字符集  utf8mb4  支持4直接的utf-8
drop database if exists AhYou; drop 删除 database 数据库 if 如果 exists 存在 AhYou 数据库名  #如果AhYou存在就删除此数据库
USE 数据库名; //USE 使用 #使用此数据库
select 数据库名(); //select 选则 database 数据 () 函数  #返回当前数据库的名称
source /sql文件路径/    //source 来源    #在mysql内输入 安装SQL脚本    
help  #帮助(基本SQL指令都在此)
select *from 表名    //select 选则 * 所有 from 来自  表名   #显示表内的内容
show tables  // 显示  表   #展示表
desc 表名  //desc  desc #查看表的结构内容

show create table steden1;  查询表结构
desc studen1;  查询表结构

MySQL 主键

主键

一张表中最多只能有一个主键,而且主键所在的列通常是整数类型。

primary key 用来唯一的约束字段里面数据,不能重复 不能为空。

主键主要的作用是唯一 区分表中的各个行。

MySQL 外键

外键:

外键 是某个表中的一列,它包含在另一个表的主键中。

外键也是索引的已汇总,是通过一张表中的一列指向另一张表中的主键,来对两张表进行关联

一张表可以有一个外键,也可以有多个外键,与多张表进行关联。

外键的作用:

外键的主要作用是保证数据的一致性和完整性,并且减少数据冗余。主要体现在以下两个方面:

阻止执行 其外键值不是主表的主键值便阻止插入

从表修改外键值,新值不是主表的主键便阻止修改

主表删除行,其主键值在从表里存在便阻止删除(要想删除,必须先删除从表的相关行)。

主表修改主键值,旧值在从表里存在便阻止修改(想要修改,必须先删除从表的相关行)。

主表删除行,连带从表的相关行一起删除,

主表修改主键值,连带从表相关的外键值一起修改。

外键创建限制:

父表必须已经存在数据库汇中。或者是当前正在创建的表,如果是后一种情况,则父表与子表是同一个表,这样的 表称为 自参照表,这种结构为自参照完整性。

必须为父表定义主键。

外键中列的数目,必须和附表中的主键中列的数目相同。

两个表必须是InnoDB表,MyISAM表暂时不支持外键。

外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显式建立。
外键关系的两个表的列必须是数据类型相似,也就是可以相互转换类型的列,比如int和tinyint可以,而int和char则不可以;

创建一个学生表:

create table studdent( -- 创建 表 表名
  id int primary key,   创建一个 id 列 int 类型的主键
  name varchar(50),     创建一个 name 列  varchar类型 长度(50)的列
  birthday date         创建一个 birthday 列 date (日期)类型的列
  );
create table studen1(
  id int auto_increment primary key,
  name varchar(20),
  birthday date
  );

往表内添加内容:

insert into student values (1,'zhangsna','2022-1-1',1);
方法1:
insert into studen1 values (null,'zhangsan','20022-1-1')
方法2:
insert into studen1 (name,birthday) values ('zhangsan','20022-1-1');

删除:

delete form stu where id=20;   --删除  可以恢复
chuncate table studen1;   --删除全表数据 (不可恢复)

SQL 分类

分类

全称

说明

DDL

Data Definition Language

数据定义语言,用来定义数据库对象(数据库,表,字段)

DML

Data Manipulation Language

数据操作语言,用来对数据库表中的数据进行增删改

DQL

Data Query Language

数据查询语言,用来查询数据库中表的记录

DCL

Data Control Language

数据操控语言,用来创建数据库用户,控制数据库的访问权限

create database 数据库名   --创建数据库
use 数据库名    --选则数据库
drop database 数据库名; 删除数据
create table sthdent(
  id int auto_increment primary key,
  name varchar(20),
  birthday date
  ); --创建表
insert into 表名 values (表内数据); --添加表数据

update   一般情况下一定要跟条件
update studenti set name='张三' -- 没有条件就会全部更改
update studenti set name='张三' where id=1;--有条件 单独更改

delete from student;  --删除全表数据   (有日志 可以恢复)
truncate table student; --删除全表数据 (不可恢复)
delete form stu where id=20; --删除id=20 的行数据
drop table 表名 删除表

show tables;  --显示数据库结构
show create table 表名;  --查询表结构
desc 表名;  --查询表结构
select * from 表名 --查询表内数据

DCL

数据操控语言,用来创建数据库用户,控制数据库的访问权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值