mysql数据库deptno_MySQL数据库基本命令-1

第一章:数据库概述

1.数据(data)数据库(DB)数据库管理系统(DBMS)数据库系统(DBS)

2.数据库管理系统提供的功能:

(1)数据定义语言:DDL

(2)数据操作语言:DML基本的数据操作有两类:检索(查询)和更新(插入,删除,更新)

查-插-删-更

(3)数据控制语言(DCL):数据完整性控制,数据安全性控制和数据库的恢复

第二章:MySql安装与配置

第三章.MySQL数据库基本操作

系统数据库和用户数据库

系统数据库:information_schema,performance_schema,mysql,test

数据库对象:表,视图,存储过程,函数,触发器和事件

1.创建数据库

CREATE DATABASE databasetest;

2.查看和选择数据库

查看:SHOW DATABASES;

选择:USE databasetest;

3.删除数据库

DROP DATABASE databasetest1;

第四章.MySQL数据库中存储引擎和数据类型

1.SHOW ENGINES \G显示存储引擎

MySQL5.5支持9种存储引擎:分别为:FEDERATED,MRG_MYISAM,MyISAM,BLACKHOLE,CSVmMEMORY,ARCHIVE,InnoDB和PERFORMANCE_SCHEMA

P53:存储引擎应用场合建议

2.数据类型:整数类型,浮点数类型,定点数类型和位类型,日期和时间类型,字符串类型

(1)整数类型:TINYINT,SMALLINT,MEDIUMINT,INT和INTEGER,BIGINT

(2)浮点类型:FLOAT,DOUBLE

定点数类型:DEC(M,D)和DECIMAL(M,D)

(3)位类型:BIT(M)

(4)日期和实践类型:DATE,DATETIME,TIMESTAMP,TIME,YEAR

(5)字符串类型:CHAR(M),VARCHAR(M)

第五章.表的操作

表的基本概念:表中数据库对象包含列,索引和触发器

1.创建表

(CREATE DATABASE company;)

(USE company;)

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20),

loc VARCHAR(40)

);

2.查看表结构

(USE company;)

DESCRIBE t_dept; DESCRIBE语句查看表定义describe:描述

(USE company;)

SHOW CREATE TABLE t_dept \G SHOW CREATE TABLE 语句查看表详细定义

3.删除表

(USE company;)

DROP TABLE t_dept;

(DESCRIBE t_dept;)

4.修改表

(1)修改表名

ALTER TABLE t_dept RENAME tab_dept;

(2)增加字段

(USE company;)

(DESC t_dept;)

ALTER TABLE t_dept ADD descri VARCHAR(20);

(DESC t_dept;)

(USE company;DESC t_dept;)

ALTER TABLE t_dept ADD descri VARCHAR(20) FIRST;

(DESCRIBE t_dept;)

(USE company;DESC t_dept;)

ALTER TABLE t_dept ADD descri VARCHAR(20) AFTER deptno;

(3)删除字段

(USE company;DESC t_dept;)

ALTER TABLE t_dept DROP deptno;

(DESCRIBE t_dept;)

(4)修改字段

1.修改字段的数据类型

(USE company;DESC t_dept;)

ALTER TABLE t_dept MODIFY deptno VARCHAR(20);

(DESC t_dept;)

2.修改字段的名字

ALTER TABLE t_dept CHANGE loc location VARCHAR(40);

3.同时修改字段的名字和属性

ALTER TABLE t_dept CHANGE loc location VARCHAR(20);

4.修改字段的顺序

ALTER TABLE t_dept MODIFY loc VARCHAR(40) FIRST;

ALTER TABLE t_dept MODIFY deptno INT(11) AFTER dname;

5.操作表的约束:在具体使用MySQL软件时,如果想针对表中的数据做一些完整性检查操作,可以通过表的约束来完成

(1)完整性约束:

NOT NUL (NK)

DEFAULT

UNIQUE KEY (UK)

PRIMARY KEY (PK)

AUTO_INCREMENT

FOREIGN KEY (FK)

(1)设置非空约束(NOT NULL ,NK)

(CREATE DATABASE company; USE company;)

CREATE TABLE t_dept(

deptno INT(20) NOT NULL,

dname VARCHAR(20),

loc VARCHAR(40)

);

(DESC t_dept;)

(2)设置字段的默认值(DEFAULT)

(CREATE DATABASE company; USE company;)

CREATE TABLE t_dept(

deptno INT NOT NULL,

dname VARCHAR(20) DEFAULT 'cjgong',

loc VARCHAR(40)

);

(DESC t_dept;)

(3)设置唯一约束(UNIQUE, UK)

...

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20) UNIQUE,

loc VARCHAR(40)

);

...

如果想给字段dname上的UK约束设置一个名字,可以执行sql语句CONSTRAINT,创建表t_deptconstraint:约束;限制;强制

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20),

loc VARCHAR(40),

CONSTRAINT uk_dname UNIQUE(dname)

);

(4)设置主键约束(PRIMARY KEY, PK)

单字段主键

(CREATE DATABASE company; USE company;)

CREATE TABLE t_dept(

deptno INT PRIMARY KEY,

dname VARCHAR(20),

loc VARCHAR(40)

);设置主键后默认NOT NULL

(DESC t_dept;)

给PK约束设置一个名字:CONSTRAINT

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20),

loc VARCHAR(40),

CONSTRAINT pk_dname PRIMARY KEY(dname)

);

多字段主键

...

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20),

loc VARCHAR(40),

CONSTRAINT pk_dname_deptno PRIMARY KEY(deptno, dname)

);

...

(5)设置字段值自动增加(AUTO_INCREMENT)

...

CREATE TABLE t_dept(

deptno INT PRIMARY KEY AUTO_INCREMENT,

dname VARCHAR(20),

loc VARCHAR(40)

);

...

(6)设置外键约束(FOREIGN KEY, FK)

...

CREATE TABLE t_dept(

deptno INT PRIMARY KEY,

dname VARCHAR(20),

loc VARCHAR(40)

);

CREATE TABLE t_employee(

empno INT PRIMARY KEY,

ename VARCHAR(20),

job VARCHAR(40),

MGR INT,

Hiredate DATE,

sal DOUBLE(10,2),

comm DOUBLE(10,2),

deptno INT,

CONSTRAINT fk_deptno FOREIGN KEY(deptno)

REFERENCES t_dept(deptno)

);

...

第六章.索引的操作

为什么使用索引:

六种索引:普通索引,唯一索引,全文索引,单列索引,多列索引和空间索引

1.创建和查看索引

三种方式创建索引:创建表时创建索引,在已经存在的表上创建索引和通过SQL语句ALTER TABLE创建索引

(1).创建表时创建普通索引

(USE company;)

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20),

loc VARCHAR(40),

INDEX index_deptno(deptno)

);

(SHOW CREATE TABLE t_dept \G)

(2).在已经存在的表上创建普通索引

...

CREATE INDEX index_deptno

ON t_dept (deptno);

...

(2).通过SQL语句ALTER TABLE创建普通索引

ALTER TABLE t_dept ADD INDEX index_deptno(deptno);

2.创建和查看唯一索引

(1).创建表时创建唯一索引

...

CREATE TABLE t_dept(

deptno INT UNIQUE,

dname VARCHAR(20),

loc VARCHAR(40),

UNIQUE INDEX index_deptno(deptno)

);

(SHOW CREATE TABLE t_dept \G; EXPLAIN SELECT * FROM t_dept WHERE deptno=10 \G)

(2).在已经存在的表上创建唯一索引

CREATE UNIQUE INDEX index_deptno ON t_dept (deptno);

(3).通过SQL语句ALTER TABLE创建唯一索引

ALTER TABLE t_dept ADD UNIQUE INDEX index_deptno(deptno);

3.创建和查看全文索引

(1).创建表时创建全文索引

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20),

loc VARCHAR(40),

FULLTEXT INDEX index_loc(loc)

) ENGINE=MyISAM;

(2).在已经存在的表上创建全文索引

CREATE FULLTEXT INDEX index_loc ON t_dept (loc);

(3).通过SQL语句ALTER TABLE创建全文索引

ALTER TABLE t_dept ADD FULLTEXT INDEX index_loc(loc);

4.创建和查看多列索引

(1).创建表时创建多列索引

CREATE TABLE t_dept(

deptno INT,

dname VARCHAR(20),

loc VARCHAR(40),

KEY index_dname_loc(dname,loc)

);

(SHOW CREATE TABLE t_dept \G)

(2)在已经存在的表上创建多列索引

CREATE INDEX index_dname_loc ON t_dept (dname,loc);

(3).通过SQL语句ALTER TABLE创建多列索引

ALTER TABLE t_dept ADD INDEX index_dname_loc(dname,loc);

5.删除索引

(USE company; SHOW CREATE TABLE t_dept \G; EXPLAIN SELECT * FROM t_dept WHERE dname='cjgong' \G)

DROP INDEX index_dname_loc ON t_dept;

(SHOW CREATE TABLE t_dept \G)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值