当表已经创建了,数据也有了怎么修改?
修改表
-
改字段名,字段类型可以改也可以不改,其 SQL 语法如下:
ALTER TABLE table CHANGE oldcolname newcolname type; -
不改字段名而只修改字段类型,其 SQL 语法如下:
ALTER TABLE tableName MODIFY colname newtype; -
添加字段语法如下:
ALTER TABLE tableName ADD colname type; -
删除字段语法如下:
ALTER TABLE tableName DROP colname;
删除表
DROP TABLE不仅仅删除表的内容、而且会删除表的结构并释放空间。通俗的讲就是整个表以及表中数据全部删除,想再次操作这张表已经不可能,只有重新去创建一个。DELETE FROM table删除的是表中的数据,就是清空表,表结构本身不变。系统需要一行一行的去删除数据,效率低下。 截断表的作用和DELETE FROM语句类似,删除表中所有的数据。截断表使用的语句是TRUNCATE TABLE。它和DELETE FROM区别在于,TRUNCATE TABLE语句是数据定义语句,提交后不会产生回滚信息,所以它的速度更快。
其语法如下:
TRUNCATE TABLE tablename;
添加约束
非空
ALTER TABLE 表名 CHANGE COLUMN 字段名 字段名 属性 NOT NULL; # 添加非空约束
主键
ALTER TABLE 表名 MODIFY 字段名 字段类型 PRIMARY KEY;
默认值
ALTER TABLE 表名 MODIFY 字段名 类型 DEFAULT '默认值';
唯一值
ALTER TABLE 表名 ADD CONSTRAINT UNIQUE(字段名);
外键
ALTER TABLE 表名 ADD FOREIGN KEY (字段名) REFERENCES 另外一个表(另外一个表的字段名)
修改数据
其基本语法形式如下:
UPDATE table SET column1 = value1, column2 = value2 [WHERE子句]
UPDATE 和 SET 是该语法的固定关键字。其中 table 表示的是表名,column1、column2 表示的是要修改的字段名,value1、value2 表示的是修改后的值。
添加
INSERT 语句用于向表中插入新的记录。其基本语法形式如下:
INSERT INTO table[(column1, column2…)] VALUES (value1, value2…)
其中 table 是表名;column1, column2… 是表中的字段名列表,用 , 隔开;value1, value2… 是字段对应的值列表。
删除
DELETE FROM table [WHERE…]
其中 table 表示表名,如果 DELETE 语句中不写 WHERE 子句,那么删除的将会是表中的所有数据。