第八部分 表的基本操作

1.创建表

使用CREATE TABLE子句创建新表,在创建过程中,要指出新表的名字,以及表列的名字和定义。

示例:创建customers表

SQL语句:CREATE TABLE customers

(

cust_id int NOT NULL AUTO_INCREMENT,

cust_name char(50) NOT NULL,

cust_city char(50) NULL DEFAULT 1,

cust_email char(255) NULL,

PRIMARY KEY(cust_id)

)ENGINE = InnoDB;

AUTO_INCREMENT为自动增量,ENGINE=InnoDB为MySQL具体管理和处理数据的内部引擎,在使用SELECT语句或进行其它数据库处理时,该引擎在内部处理请求。

常见的几种引擎:

  • InnoDB是一个可靠的事务处理引擎,它不支持全文本搜索;
  • MEMORY在功能上等同于MyISAM,但由于数据存储在内存(不是磁盘)中,速度很快(特别适合于临时表);
  • MyISAM是一个性能极高的引擎,它支持全文本搜索,但不支持事务处理。

注意:

  • 允许NULL的列也允许在插入行是不给出该列的值。不允许NULL值的列不接收该列没有值的行,即在插入或更新行时,该列必须有值。
  • 不要把NULL值与空串相混淆。NULL值是没有值,它不是空串。如果指定' ',这在NOT NULL列中是允许的。空串是一个有效的值,它不是无值。NULL值用关键字NULL而不是空串指定。

2.更新表

使用ALTER TABLE更改表结构,必须给出更改的表名(该表必须存在,否则报错)以及要更改的列名。

示例1:给vendors表添加一个列

SQL语句:ALTER TABLE vendors ADD vend_phone CHAR(20);

示例2:删除新增列vend_phone

SQL语句:ALTER TABLE vendors DROP COLUMN vend_phone;

示例3:定义外键

SQL语句:ALTER TABLE orderitems ADD CONSTRAINT fk_orderitems_orders FOREIGN KEY(order_num) REFERENCES orders(order_num);

3.删除表

示例:删除表customers

SQL语句:DROP TABLE customers;

4.重命名表

示例:将表customers命名为customers1,以及对多个表重命名

SQL语句:RENAME TABLE customers TO customers1;

SQL语句:RENAME TABLE customers TO customers1,表A TO 表A1, 表B TO 表B1;

猜你喜欢

转载自www.cnblogs.com/wzw0625/p/12690335.html