ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL学习笔记:创建和操作表

2020-03-14 15:37:16  阅读:269  来源: 互联网

标签:创建 笔记 名称 INCREMENT MySQL TABLE tempy NULL ALTER


本文为本人学习书籍《MySQL必知必会》笔记系列,欢迎持续关注,有问题随时留言评论,一起探讨学习~

21创建和操作表

21.1创建表CREATE TABLE

使用交互式工具创建,例如Navicat Premium
使用MySQL语句创建

21.1.1SQL语句创建表

CREATE TABLE product.school
(
id      int       NOT NULL  AUTO_INCREMENT,#自动增量
number  char(50)  NOT NULL,
name    char(50)  NOT NULL,
sex     char(3)   NOT NULL,  
age     int       NULL,
class   char(50)  NULL,
school  char(50)  NOT NULL  DEFAULT 1,#默认值为1
PRIMARY KEY(id) #设置主键
)EMGINE=InnoDB;#引擎类型

一般情况下,使用默认值而不是NULL值(NOT NULL),便于后续数据处理
每个表只允许一个AUTO_INCREMENT列,且它必须被索引
使用自动增量AUTO_INCREMENT生成主键的缺点是不知道id值有哪些。
如何在使用AUTO_INCREMENT列时获取生成的id值呢?
可使用last_insert_id()获取。如下:

SELECT LAST_INSERT_ID()

该语句返回最后一个AUTO_INCREMENT值,然后可以将它用于后续SQL语句。

21.2更新表ALTER TABLE

21.2.1给表custnew增加列cust_tempy,必须明确cust_tempy的数据类型

ALTER TABLE custnew
ADD cust_tempy CHAR(20);

21.2.2删除刚添加的列cust_tempy

ALTER TABLE custnew
DROP COLUMN cust_tempy;

21.2.3定义外键

ALTER TABLE的一种常见用途是定义外键,语句结构如下:

ALTER TABLE 表1名称
ADD CONSTRAINT fk_表1名称_表2名称
FOREIGN KEY(表1的主键列名) REFERENCES 表2名(表2的主键列名);

21.3删除表

DROP TABLE 表1名称;

这条语句删除表1。删除没有确认也不能撤销,永久删除。不能撤销,永久删除!不能撤销,永久删除!

21.4重命名表

RENAME TABLE 表1名称 TO 修改后的表1名称,
             表2名称 TO 修改后的表2名称,
						 表3名称 TO 修改后的表3名称;

标签:创建,笔记,名称,INCREMENT,MySQL,TABLE,tempy,NULL,ALTER
来源: https://blog.csdn.net/weixin_43412569/article/details/104860982

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有