Mysql基础一讲解

一、常见的关系型数据库有哪些:

Mysql、SQLServer、OCACLE、DB2、HSQL、SQLite等。

二、MySQL介绍:

MySQL 是一款安全、跨平台、高效的,并与 PHP、Java 等主流编程语言紧密结合的数据库系统。该数据库系统是由瑞典的 MySQL AB 公司开发、发布并支持,由 MySQL 的初始开发人员 David Axmark 和 Michael Monty Widenius 于 1995 年建立的

三、MySQL数据库服务器,数据库和表的关系:

1.所谓的安装数据库服务器,其实是在你的机器(电脑)上装了一个数据库管理程序,这个管理程序可以管理多个数 据库。(一般开发人员会针对每一个应用创建一个数据库。)
2.为了保存应用中,实体的数据。一般会在数据库中创建多个表,以保存程序中实体的数据。
3.数据库服务器,数据库和表的关系如下图
在这里插入图片描述

四、数据在数据库中的存储方式:

在这里插入图片描述

五、SQL语言:

Structured Query Language, 结构化查询语言非过程性语言。
为加强SQL的语言能力,各厂商增强了过程性语言的特征
如Oracle的PL/SQL 过程性处理能力
SQL是用来存取关系数据库的语言,具有查询、操纵、定义和控制关系型数据库的四方面功能。

六、SQL分类:

DDL (数据定义语句)
数据定义语言 - Data Definition Language
用来定义数据库的对象,如数据表、视图、索引等
DML (数据操纵语句)
数据处理语言 - Data Manipulation Language
在数据库表中更新,增加和删除记录
如 update, insert, delete — 增删改
DCL (数据控制语句)
数据控制语言 – Data Control Language
指用于设置用户权限和控制事务语句
如grant,revoke,if…else,while,begin transaction
DQL (数据查询语句)
数据查询语言 – Data Query Language
select

七、如何创建一个数据库

create database if not exists 数据库名 character set utf8;
create database if not exists mydb1 character set utf8;

八、查看所有的数据库

show databases;

九、查看数据库创建语句

show create database 数据库名;
show create database mydb1;

十、删除数据库

drop database 数据库名;
drop database mydb1;

十一、修改数据库字符集编码

alter database 数据库名 character set 字符集编码;
alter database mydb1 character set UTF8;

十二、切换数据库

use 数据库名;
use mydb1;

十三、查看当前正在使用的数据库

select database();

十四、在数据库中创建一张表。(注意在创建表之前记得use 数据库名;)

create table if not exists employee(
id int not null primary key auto_increment, #主键约束、自动增长
name varchar(50) not null, #非空约束
gender char(3),
birthday date,
entry_date date,
job varchar(255),
salary double,
resume text

);

十五、mysql常用的数据类型

1.字符串类型:
	vachar、char
2.大数据类型:
	blob、text
3.数值型:
	tinyint、smallint、int、bigint、float、double
4.逻辑型:
	bit
5.日期型:
	date、time、datetime、timestamp

十六、mysql字段约束

1.非空约束:not null,保证字段的值不能为空。
name varchar(50) not null,
2.默认约束:default,保证字段总会有值,即使在插入记录的时候没有给支值,也会有默认值。
age int default 0,
3.唯一约束:unique,保证数据的唯一性,比如手机号。(和主键约束的区别是,唯一约束可以为null)
phoneNum int unique,
4.主键约束:primary key,同时保证唯一和非空。
id int primary key,
5.外键约束:foreign key,用于限制两个表的关系。
dep_id int references dep(id),

约束的添加,删除

	1) 非空约束
		alter table employee modify name varchar(50) not null; # 添加 
		alter table employee modify name varchar(50);             # 删除 不写约束条件

	2)默认约束
		alter table employee modify salary double default 0; #添加
		alter table employee modify salary double;                      #删除

	3)唯一键约束
		alter table employee modify name varchar(50) unique; #添加
		alter table employee drop index name;                       #删除
		show index from employee;                                  #查看唯一约束

	4)主键约束
		alter table students modify column id int primary key; #添加
		alter table employee drop primary key;                         #删除 约束名称(注意如果主键设置了自动增长是不能删除的)

	5)外键约束
		alter table employee add foreign key(dep_id) references dep(id); #添加
		alter table employee drop foreign key employee_ibfk_1;               #删除 约束名称


	自增长列 auto_increment

		id int primary key auto_increment,

	一个表中有且只能有一个自增长列,自增长列一般和主键搭配

十七、修改mysql表操作

添加一列
	alter table employee add 列名 列类型;
	alter table employee add age int;
修改列的类型
	alter table employee modify 列名 列类型;
	 alter table employee modify gender varchar(25);
删除列
	alter table employee drop 列名;
	alter table employee drop age;

修改表的名称
rename table 旧表名 to 新表名;
rename table employee to stu;

修改列的名称
alter table change 列名 新列名 列类型
alter table employee change gender sex char(3);
修改表的字符集
alter table employee character set 字符集编码;
alter table employee character set GBK;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值