数据表的基本操作

1、创建数据表:

employer表:

CREATE TABLE employer(
   id INT(11) PRIMARY KEY AUTO_INCREMENT,
   name VARCHAR(25) UNIQUE NOT NULL,
   createdAt DATETIME, 
   sex CHAR(2) DEFAULT '',
   age INT(11)
)ENGINE=INNODB DEFAULT CHARSET=utf8;

 

emplyee表:

CREATE TABLE employee(
   id INT(11) UNSIGNED PRIMARY KEY AUTO_INCREMENT,  -- 设置无符号整数  主键约束 自增策略
   name VARCHAR(25) UNIQUE NOT NULL, -- 唯一性约束  非空约束
   createdAt DATETIME,
   employer_id INT(11),
   sex CHAR(2) DEFAULT '', -- 默认约束
   age INT(11),
   foreign key(employer_id) references employer(id) -- 外键约束
)ENGINE=INNODB DEFAULT CHARSET=utf8; 

 

2、查看数据表结构:

1. 查看表基本结构语法DESCRIBE

    DESCRIBE 表名;

    DESC 表名;(简写形式)

    例: DESC employer;

 

2. 查看表详细结构语句 SHOW CREATE TABLE

    SHOW CREATE TABLE 表名;

    例:SHOW CREATE TABLE employee;

 

3、修改表结构:

1. 修改表名

    ALTER TABLE <旧表名> RENAME <新表名>

    例:ALTER TABLE employee RENAME by_employee;

 

2. 修改字段数据类型

    ALTER TABLE <表名> MODIFY <字段名>  <数据类型>;

    例:ALTER TABLE employee MODIFY name VARCHAR(30);

 

3. 修改字段名

    ALTER TABLE <表名> CHANGE <旧字段名>  <新字段名>  <新数据类型>;

    例:ALTER TABLE employee CHANGE name na VARCHAR(30);

 

4. 添加字段   

    ALTER TABLE <表名> ADD <字段名>  <数据类型>;

    例:ALTER TABLE employee ADD phone VARCHAR(11);

      

     添加有完整性约束条件字段

     ALTER TABLE employee ADD column1 VARCHAR(11) NOT NULL; 

    

     在表第一列添加一个字段

     ALTER TABLE employee ADD column2 VARCHAR(11) FIRST; 

 

     在表的制定类添加一个字段

     ALTER TABLE employee ADD column3 VARCHAR(11) AFTER name;

 

     修改字段到表的制定字段之后

     ALTER TABLE employee MODIFY sex CHAR(2) AFTER name;

 

     删除字段

     ALTER TABLE <表名> DROP <字段名>;

     例:ALTER TABLE employee DROP column1;

 

     更改表的存储引擎

     ALTER TABLE employee ENGINE=MYISAM;

 

     删除表外键约束

     ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>;

     ALTER TABLE employee DROP FOREIGN KEY employee_ibfk_1;

 

4、删除数据表:

1.  删除没有关联的表:

     DROP TABLE IF EXISTS 表1,表2...表n;

     DROP TABLE IF EXISTS employee;

 

2.  删除被其它表关联的主表:

     数据表之间存在外键关联的情况下,如果直接删除父表,将会报错,原因是直接删除会破坏表的参照完整性。如果必须要删除,

     可以先删除它关联的子表,再删除父表。如果要保留子表,删除父表,只需将子表中关联的外键约束条件取消,然后就可以删除父表。

   

     例:

     ALTER TABLE employee DROP FOREIGN KEY employee_ibfk_1;
     DROP TABLE IF EXISTS employer;

posted @ 2018-06-02 16:32  艾白羊  阅读(260)  评论(0)    收藏  举报