MySQL(一)

一、数据库

        常用的有Oracle、MySQL、SQL Server、Sybase、informix、DB2等等。

        数据库:DataBase (DB) 是按照数据结构组织、存储和管理数据的仓库。使用关系型数据库管理系统(RDBMS) 来存储和管理数据。

RDBMS 数据库管理系统 :

  • 数据以表的形式出现;
  • 每行为各种记录的名称;
  • 每列为记录 名称所对应的数据域;
  • 许多的行和列 组成了一张表单;
  • 若干张表组成了数据库 database。

RDBMS:

  • 数据库 :一些表的联合
  • 列:一例,包含了相同类型的数据
  • 行:一行,是一组相关的数据
  • 冗余:存储两倍的数据,降低性能但是提高了数据的安全性
  • 主键:主键是唯一的,一个表只能包含一个主键
  • 外键:用于关联两个表

SQL的分类

1) 数据查询语言(DQL)

        用于查询数据库数据;代表关键字:select

2) 数据库操作语言(DML)

        用于操作数据库对象中所包含的数据;代表关键字:insert、delete 、update 增、删、改表中的数据

3) 数据库定义语言(DDL)

        定义和管理数据对象,如数据库,数据表等;代表关键字:create、drop、alter 创建、删除、修改表的结构

4) 事务控制语言(TCL)

        简称:TCL,Trasactional Control Language;代表关键字:commit、rollback

5) 数据控制语言(DCL)

        用来管理数据库的语言,包括管理权限及数据更改;代表关键字:grant、revoke

6) DML不DDL的区别是什么?

        DML是修改数据库表中的数据,而DDL是修改数据中表的结构;

1、创建数据库

CREATE DATABASE 数据库名;

2、删除数据库

DROP DATABASE 数据库名称;

3、查看数据库

SHOW DATABASES;

4、切换需要操作的数据 

USE 表名;

二、表

        是数据库最基本的组成单元,数据库是用来存储数据的,数据库中有很多表,每一个表都是一个独立的单元。

        表也是一个结构化的文件,由行和列组成,行称为数据或记录,列称为字段, 字段又包含:字段名称、字段类型、长度、约束。

1、创建表

CREATE   TABLE [ IF NOT EXISTS ]    `表名`   (
       `字段名1`   列类型 [ 属性 ]  [ 索引 ] [注释] ,
       `字段名2`   列类型 [ 属性 ]  [ 索引 ] [注释] , 
        .......  
       `字段名n`   列类型 [ 属性 ]  [ 索引 ] [注释] 
)  [  表类型 ] [ 表字符集 ] [注释] ;

IF NOT EXISTS 判断表是否存在  

DEFAULT 默认值  

AUTO_INCREMENT 标识列 自动增长 一般和主键列一起使用 

2、删除表

DROP TABLE 表名;

3、查看表结构

DESC 表名;

4、查看表的创建语句

show create table 表名;

5、查看所有表

SHOW TABLES;

6、临时表

        临时表将在连接MySQL期间存在,当连接断开时,MySQL会自动删除表并释放空间,也可以手动删除。

CREATE TEMPORARY TABLE 临时表名(
    `字段名1`    列类型 [ 属性 ]  [ 索引 ] [注释] 
)

三、表的操作

1、 创建一张表,需要有原Student表中的数据

CREATE TABLE newstudent
AS
SELECT studentNo,studentName FROM student WHERE sex = '男';
(数据查询语句)

2、创建一张表,需要有原Student表中的结构,不要数据

CREATE TABLE newstudent
AS
SELECT * FROM student WHERE 1=2;

3、删除一个存在的表

DROP TABLE IF EXISTS 表名;

 4、更改表名

ALTER TABLE 原表名称 RENAME 更新后的表名;
RENAME TABLE 原表名称 TO 更新后的表名;

5、添加列

ALTER TABLE newstudent ADD sex VARCHAR(2) not null;

6、删除列

ALTER TABLE newstudent DROP 列名;

7、更改列名和属性

ALTER TABLE newstudent CHANGE sex age CHAR(4);

8、更改属性

ALTER TABLE newstudent MODIFY age VARCHAR(4);

9、添加主键

ALTER TABLE 表名 ADD PRIMARY KEY(列名);
添加主键 ALTER TABLE 表名 ADD CONSTRAINT 主键约束名称  PRIMARY KEY(列名);

10、删除主键

ALTER TABLE 表名 DROP PRIMARY KEY;

11、添加主外键关系

ALTER TABLE 外键表表名 ADD FOREIGN KEY(外键表外键列) REFERENCES 主表(主键列);
ALTER TABLE 外键表表名 ADD CONSTRAINT `fk_外键约束的约束名` 
        FOREIGN KEY(外键表外键列) REFERENCES 主表(主键列);

12、 删除主外键关系

ALTER TABLE 外键表表名 DROP FOREIGN KEY `外键约束的约束名称`;

13、修改主外键

ALTER TABLE newstudent 
DROP FOREIGN KEY `fk_stu_grade_gradeid` 
ADD CONSTRAINT `fk_student_grade_gradeid` 
FOREIGN KEY (gradeId) 
REFERENCES newgrade(gradeId);

14、添加唯一键

ALTER TABLE newstudent ADD UNIQUE (列名);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值