标签:创建 笔记 名称 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. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。