一、创建数据表

语法:

create table student (
studentNo int(4) primary key,
name char(10)
);



二、字段约束性和属性


设置注释和字符编码:


三、创建学生表


Dos命令默认gbk编码,数据库是utf-8编码,为了不出现乱码,需要输入 set names gbk;
具体实现:


四、查看数据表结构

(1)查看表是否存在
Use myschool;
Show tables;

(2)查看表定义
Describe 表名;或desc 表名;

(3)删除表
语法:drop table if exists student;

五、实战演练----------数据表的基本操作


创建数据库company,按照上图在数据库中创建两个数据表offices和employees,按照操作过程完成对数据表的基本操作。

(1) 创建数据库company
(2) 创建表offices
(3) 创建表employees
(4) 将表employees的mobile字段修改到officeCode字段后面
(5) 将表employees的birth字段改名为employee_birth
(6) 修改sex字段,设置数据类型为char(1),非空约束
(7) 删除字段note
(8) 增加字段名favoriate_activity,数据类型为VARCHAR(100)
(9) 删除表offices
(10) 修改表employees存储引擎为MyISAM
(11) 将表employees名称修改为employees_info

实现代码:

#(1)创建数据库company
CREATE DATABASE company;

USE company;

#(2)创建表offices
CREATE TABLE offices
(
officeCode INT(10) NOT NULL UNIQUE,
city VARCHAR(50) NOT NULL,
address VARCHAR(50) NOT NULL,
country VARCHAR(50) NOT NULL,
postalCode VARCHAR(15) NOT NULL,
PRIMARY KEY (officeCode)
);

#(3)创建表employees
CREATE TABLE employees
(
employeesNumber INT(11) NOT NULL PRIMARY KEY AUTO_INCREMENT,
lastName VARCHAR(50) NOT NULL,
firstName VARCHAR(50) NOT NULL,
mobile VARCHAR(25) NOT NULL,
officeCode INT(10) NOT NULL,
jobTitle VARCHAR(50) NOT NULL,
birth DATETIME,
note VARCHAR(255),
sex VARCHAR(5),
CONSTRAINT office_fk FOREIGN KEY(officeCode) REFERENCES offices(officeCode)
);

#(4)将表employees的mobile字段修改到officeCode字段后面(本表内)
ALTER TABLE employees MODIFY mobile VARCHAR(25) AFTER officeCode;

#(5)将表employees的birth字段改名为employee_birth
ALTER TABLE employees CHANGE birth employee_birth DATETIME;

#(6)修改sex字段,设置数据类型为char(1),非空约束
ALTER TABLE employees MODIFY sex CHAR(1) NOT NULL;

#(7)删除字段note
ALTER TABLE employees DROP note;

#(8)增加字段名favoriate_activity,数据类型为VARCHAR(100)
ALTER TABLE employees ADD favoriate_activity VARCHAR(100);

#(9)删除表offices(先删外键约束)
ALTER TABLE employees DROP FOREIGN KEY office_fk;
DROP TABLE offices;

#(10)修改表employees存储引擎为MyISAM
ALTER TABLE employees ENGINE=MYISAM;

#(11)将表employees名称修改为employees_info
ALTER TABLE employees RENAME employees_info;