向表中添加数据

        在表中添加数据时,插入不同数据类型数据的格式不同,因此应严格遵守它们各自的要求,添加的数据按输入顺序保存,条数不限,只受存储空间的显示 

INSERT INTO <表名> [ <列名1> [ , … <列名n>] ]
VALUES (值1) [… , (值n) ];

语法说明如下。

<表名>:指定被操作的表名。
<列名>:指定需要插入数据的列名。若向表中的所有列插入数据,则全部的列名均可以省略,直接采用 INSERT<表名>VALUES(…) 
VALUES 或 VALUE 子句:该子句包含要插入的数据清单。数据清单中数据的顺序要和列的顺序相对应。

例如,要插入一条数据

INSERT INTO student
(id,name,grade,info)
VALUES(1,'tony',1,'计算机应用');

复制表 

在MySQL中,可以使用SQL语句将表结构及数据复制到新表中

create table 新表名 select * from 旧表名;

例如,将student表复制到studbak表中

create table studbak select * from student;

如果只将表结构复制到新表

create table 新表名 select * from 旧表名 where 1=0; //使where 条件不成立

删除表

在MySQL中可以使用drop table 语句删除表

drop table [if exists] 表名1,表名2

在MySQL当中,使用drop table 可以一次删除一个或者多个没有被其他表关联的数据表

参数if exists 用于删除前判断删除的表是否存在,加上该参数后,即使删除的表不存在,SQL语句也可以顺利进行,不会发出警告

例如,删除学生成绩表sc

drop table sc;

思考

MySQL的数据文件有几种?扩展名分别是什么?

答:数据文件有  .frm  .myd .myi  3种 其中 .frm是描述表结构的文件, .myd是表数据文件,  .myis 是表数据文件的索引

MySQL中有哪几种整形类型?它们占用数据空间分别多少?取值范围分别是什么?

答:

int  4个字节 有符号:-2 31次方 ——2 31次方-1    无符号:0——2 32次方

integer 4个字节 有符号:-2 31次方 ——2 31次方-1    无符号:0——2 32次方

smallint 2个字节 有符号:-2 15次方 ——2 15次方-1    无符号:0——2 16次方

mediumint 3个字节 有符号:-2 23次方 ——2 23次方-1    无符号:0——2 24次方-1

bigint 8个字节 有符号:-2 63次方 ——2 63次方-1    无符号:0——2 64次方

tinyint 1个字节 有符号:-2 7次方 ——2 7次方-1    无符号:0——2 8次方

在定义基本语句时,not null参数的作用是什么?

答:指定的字段不允许为空,如果没有约束条件,则默认为null

主码可以建立在"值可以为null"的列上码?为什么?

答:不能,因为主码不能为空