数据表基本操作

注意点:

1、数据表中已经有数据时,轻易修改数据类型,有可能因为不同的数据类型的数据在机器

中存储的方式及长度并不相同,修改数据类型可能会影响到数据表中已有的数据类型。

2.  数据表名不区分大小写,不能使用sql语言中的关键字,如drop,alter,insert。

3.  数据表中的每一个列(字段)的名称和数据类型,如果多个列,要用逗号分开。                                                     

4.  字段(属性,列)例:编号、姓名、性别、职业、年龄

   记录(行)例:10、11

例:

编号

姓名

性别

职业

年龄

10

林峰

f

会计

45

11

李款

m

兽医

60

 

一、基础操作

1、创建数据表(二维表)

附:在创建表之前必须先转到指定数据库,即use加数据库名字

mysql> create table zixue(数据名)
-> (                   (附:括号必须打)
-> name    varchar(25),(附:必须加英文逗号,不加和加中文逗号都无效,血的教训)
-> id      int(11),     注意如果格式为ID int字段值代表可以为空值
->salary  float        (注意最后一个数据无逗号)
-> );

2、显示数据表

语法:show tables

实例:mysql>Show tables;

3、删除数据表

(1)删除没有关联的表

格式:drop table [IF EXISTS]表1,表2…表n;

实例:

【例1】删除一个表:

mysql>droptable zixue;

【例2】删除多个表:

mysql> droptable a,b;

【例3】删除多个表且有表不存在:

mysql> droptable a,b,c;
ERROR 1051(42S02): Unknown table 'zixi.a,zixi.b'
mysql> showtables;
+----------------+
| Tables_in_zixi|
+----------------+
| d              |
+----------------+

结果:照样删除存在的数据表

【例4】使用参数删除多个数据表:

mysql> droptable if exists a,b;
Query OK, 0 rows affected, 2 warnings (0.00 sec)

结果:虽然报错有那几个数据表不存在。但是依然删除

 

附:

 

  • 表n表示要删除的表的名称,后面可以同时删除多个表,只需将要删除的表名称依次写在后面,相互之间用逗号隔开。
  • 参数不区分大小写
  • 参数‘IF EXISTS’用于在删除前判断删除的表是否存在,加上该参数后,再删除表的时候,如果表不存在,如果表不存在,sql语句可以顺利执行,但是会发出警告。

 

(2)删除被其他表关联的主表

方法1:先删除子表,再删除父表。(直接删除父表显示错误的原因,直接删除父表将破坏表的参照完整性)
方法2:先去除外键约束条件,再删父表
注意点:

  • 主键,又称主码,是表中一列或者多列的组合。
  • 主键约束要求主键列的数据唯一,并且不允许为空。
  • 主键分两类:单字段主键和多字段联合主键
  • 当主键表和外键表相连时,显示无法删除,实际是外键表已经删除