MySQL5.5.21学习教程之二(一)

2015-01-21 11:12:23 · 作者: · 浏览: 26

现在来学习一下关于表的基本操作!主要是建立表和基本的约束,之后会继续讲解介绍索引的问题!

#列--也称为属性列,在具体创建表的时候,必须指定列的名字和数据类型
#索引--是指根据指定的数据库列表列建立起来的顺序,提供了快速访问数据的途径
#------可监督表的数据,使其索引所指向的列中的数据不重复
#触发器--是指用户定义的命令的集合,当对一个表中的数据进行插入,更新或者删除时这组命令就会自动
#--------自动执行,可以用来确保数据的完整性和安全性

create database company;
show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| company            |
| mysql              |
| performance_schema |
| test               |
+--------------------+
use company;
create table t_dept(deptno INTEGER,dname VARCHAR(20),loc VARCHAR(40));
describe t_dept;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| deptno | int(11)     | YES  |     | NULL    |       |
| dname  | varchar(20) | YES  |     | NULL    |       |
| loc    | varchar(40) | YES  |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+

show create table t_dept \G
*************************** 1. row ***************************
       Table: t_dept
Create Table: CREATE TABLE `t_dept` (
  `deptno` int(11) DEFAULT NULL,
  `dname` varchar(20) DEFAULT NULL,
  `loc` varchar(40) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8

drop table t_dept;
show tables;
Empty set (0.00 sec)

alter table t_dept rename tab_dept;
show tables;
+-------------------+
| Tables_in_company |
+-------------------+
| tab_dept          |
+-------------------+

alter table tab_dept rename t_dept;
desc t_dept;
+--------+-------------+------+-----+---------+-------+
| Field  | Type
| Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ alter table t_dept add descri VARCHAR(20); #在表的首部添加一个字段 #alter table t_dept add descri VARCHAR(20) first; #在表的某个字段后面添加一个字段 #alter table t_dept add descri VARCHAR(20) after deptno; desc t_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | | descri | varchar(20) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ alter table t_dept drop descri; desc t_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | int(11) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ alter table t_dept modify deptno VARCHAR(20); desc t_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | deptno | varchar(20) | YES | | NULL | | | dname | varchar(20) | YES | | NULL | | | loc | varchar(40) | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ alter table t_dept modify deptno INTEGER; desc t_dept; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Def