本文记录一些数据库操作的SQL语法。
1、创建表:->CREATE TABLE <table_name>
(
<colunm_name_1> <type_1>,
<column_name_2> <type_2>,
<column_name_3> <type_3>,
....
);
2、插入记录
->INSERT INTO <table_name> VALUES ([null], [''], [123], ['abced']);
->INSERT INTO <table_name> (列名...) VALUES (列值..)
MySQL还有另外一种方式:
->INSERT INTO <table_name> SET column_name_1='', column_name_2=123...;
3、修改表的名称:
->ALTER TABLE <table_old> RENAME <table_new>;
4、修改表的属性名称和类型:
# 如果只修改列属性,可以用modify
->ALTER TABLE <table_name> MODIFY <column_name> <type>;
# 如果需要同时修改列名,使用change
->ALTER TABLE <table_name> CHANGE <column_name_old> <colunm_name_new> <type>;
5、修改表的属性类型:
6、添加/删除属性:
->ALTER TABLE <table_name> ADD COLUMN <column_name>; ->ALTER TABLE <table_name> DROP COLUMN <column_name>;
7、添加/删除主键约束:
->ALTER TABLE <table_name> ADD CONSTRAINT PRIMARY KEY(<attribute>); ->ALTER TABLE <table_name> DROP PRIMARY KEY;
8、添加主键自增,设置自增起始值
->ALTER TABLE <table_name> ADD COLUMN <column_name> <type> auto_increment PRIMARY KEY; ->ALTER TABLE <table_name> auto_increment=100
指定了主键自增以后,插入记录时就可以将主键值设为null,数据库会自动自增
9、删除表
#删除内容和定义,并释放空间 ->DROP TABLE <table_name>; #删除内容保留定义,并释放空间,速度快,不可回滚 ->TRUNCATE TABLE <table_name>; #删除内容保留定义,不释放空间,一条条记录删除,可以回滚 ->DELETE FROM <table_name> ->DELETE FROM <table_name> where [条件]
10、其他常用语句:
->show databases; #显示所有的数据库 ->use <database_name>; #选择某个数据库 ->show tables; #显示当前选择的数据库下所有的表 ->describe <table_name>;#显示该表定义:所有字段(属性)及其类型