一,操作表属性
1,创建数据表
Creat table 表名(name1 属性 是否空等,primary key(name),foreign key(name)referrnces 父表(name))
如:CREATE TABLE test_supplements(id INT NOT NULL auto_increment,test_id INT NOT NULL ,customer_id INT,constract_id INT,PRIMARY KEY(id) ,FOREIGN KEY(test_id)REFERENCES test(test_id))
2,查询表的字段信息
desc 表名称
3,对数据表属性增加或删除
Alter table 表明 add 字段名 类型
Alter table 表明 drop字段名
为某个属性增加主键
Alter table test_supplements primary(id);
删除主键
Alter table test_supplements drop primary key;
4,修改属性 modify或是change
为某一属性加入自增增加(修改)
Alter table test_supplements modify id int auto_increment;
或者
alter table test_supplements change id id int AUTO_INCREMENT;
删除自动递增
Alter table test_supplements modify id int;
将属性名constract_id修改为contract_id
alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空];
alter table test_supplements CHANGE constract_id contract_id INT;
5,删除数据表
Drop table 表名
6,备注信息
查看注释的方法(所有属性)
show full columns from test_supplements;
查看生成语句
show create table test_supplements;
创建表时添加备注
CREATE TABLE test_supplements(id INT NOT NULL PRIMARY KEY auto_increment,assets_id INT NOT NULL COMMENT '**id' ,customer_id INT COMMENT '** id',contract_id INT COMMENT' UUid',FOREIGN KEY(test_id)REFERENCES as_assets(test_id)) COMMENT '**补充表'
为已创建的表添加备注
alter table `test_supplements` comment '**补充表';
为表中属性添加备注
alter table `test` modify COLUMN id INT not null auto_increment comment '**id';
二,操作表数据
1,删除数据
delete from 表名;
truncate table 表名;
不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以清空mysql表中所有内容。
效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。
delete的效果有点像将mysql表中所有记录一条一条删除到删完,
而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。
2,插入数据(从一个表中将某些属性记录到另外一个表中)
INSERT INTO 目标表 (字段1, 字段2, ...) SELECT 字段1, 字段2, ... FROM 来源表;(这里的话字段必须保持一致)
insert into insertTest2(id) select id from insertTest2;
INSERT INTO address_v1(city_id, address,short_address,comment) SELECT city, address,short_address,comment FROM resource GROUP BY city,address;
更新address_id
Update resource ahr,address ahd set ahr.address_id=ahd.id where ahr.address=ahd.address;
最后删除以下属性(同时删除多个)
Alter table resource drop address,drop short_address,drop city,drop contact_person