SQL基础篇?修改表内的数据
作者:SimonLiang 发布时间:[ 2016/8/26 11:10:34 ] 推荐标签:数据库 SQL
知识点1----ALTER
下列代码意义:向已存在的表my_foods中新增自动排列的列 作为主键
ALTER TABLE my_contacts --表名称
ADD COLUMN id INT NOT NULL AUTO_INCREMENT FIRST, --新的 列 id,自动排列,该列于第一位
ADD PRIMARY KEY (id); --要求新命名的id列作为主键
如果不需要作为主键,则去掉 PRIMARY KEY 即可!
排序关键字:
FIRST - --把 列id 安置于所有其他列的前面
LAST -- 把列 id 安置于其他列的后面
SECOND -- 把列 id 安置为 第二个列
AFTER(column1) -- 将列 id 放在 column1 后面
BEFORE(column2) -- 将列 id 放在 column2 前面
功能关键字:
ADD --- 在当前表中增加一列——可自选类型(见始端)
CHANGE--- 可以同时改变现有的列名称和数据类型
ALTER TABLE my_contacts
CHANGE COLUMN breakfast morning_foods VARCHAR(20); -- 旧名称breakfast改为 morning_foods ,新的类型为 VARCHAR(20)
MODIFY ---修改现有列的数据类型或者位置
ALTER TABLE my_contacts
MODIFY COLUMN morning_foods AFTER id;
DROP -- 从表中删除某列
ALTER TABLE my_foods
DROP COLUMN morning_foods;
RENAME TO ----给表重新命名
ALTER TABLE my_contacts
RENAME TO contacts;
知识点2
DELETE----删除单一行或者所有行的值
DELETE FROM my_foods --my_foods是要删除的行所在的表
WHERE breakfast = 'bread';
DELETE 与 SELECT 区别:DELETE不需要指定删除的对象,因为他很残忍,会把整行的所有列都删除。
所以,DELETE不能单一删除某一列中值或者某一列的所有值;但是可以删除一行或者多行(根据WHERE语句来定)。WHERE子句中的搭配关键字,类似SELECT的使用方法,如LIKE、IN、BETWEEN,都可以在此处使用,而且所有条件都能更准确地要求RDBMS删除特定行。
要是想修改某一行的某一列值,可以使用DELETE和INSERT配合来完成:先确定需要改变的值是你真正需要的值(因为删除掉的难以恢复),然后插入数据,删除原来的数据
SELECT *FROM my_foods
WHERE breakfast = 'milk';
INSERT INTO my_foods
VALUES('bread+milk');
DELETE FROM my_foods
WHERE breakfast = 'milk';
这样做的缺点是:需要把全部的行的相同数据重新输入一次,效率降低!UPDATE可以化简这个问题!
知识点3
UPDATE---改变单一列或者所有列的值(不加上WHERE会把那一列的所有数据都修改为新的值)
UPDATE my_foods
SET breakfast = 'bread'
要是需要更新单一行或者多行,一切都需要交给WHERE来决定
UPDATE my_foods ---选择更新的表
SET breakfast = 'bread' --设置列 的值为什么
WHERE breakfast = 'milk'; --定位
...
当然,SET 不但可以对各种数据类型赋值,也可以套用一些基础的运算,函数等等。
UPDATE my_foods
SET foods_num = foods_num +1
WHERE breakfast IN ('bread','milk');
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11