DML语句主要有以下三个功能:插入新数据(insert into),修改已有数据(update), 删除数据(delete from),接下来所有操作对此表进行
//主表,两个字段,id(主键自增)和name(非空) create table tml ( tml_id int auto_increament, tml_name varchar(255) not null, primary key(tml_id) ); //从表,3个字段,id(主键自增)和name以及java_tml(参考主表name的外键) creat table student ( stu_id int auto_increment primary key, stu_name varchar(255), #指定java_tml 参照到tml_id列 java_tml int , constraint student_tml_fk foreign key (java_tml) references tml_table (tml_id) //为外键约束指定名称 ); 对此表进行操作
插入新数据insert into
插入新数据的标准语法为:
INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN );
插入语句的一些示例如下:
#只有建立数据表才可插入数据,仍然以tml表为依据进行操作 insert into tml_table (tml_name) values ('xyz'); //在tml表中的tml_name字段添加一个值为xyz的数据 # 若不指定列,则需要为所有列指定值,若某列值不确定,则需要分配一个null值 insert into tml_table values(null,'abc'); #若主表中有记录,则可以在从表中添加纪录 insert into student_table values(null,'abc',2); #同时插入多组值 insert into tml_table values(null,‘yeeku’),(null,'tttt'); #使用子查询语句插入 insert into student_table(student_name) select tml_name from tml_table; //一次插入多条记录,只要求一列对应一列和数据类型匹配
update
更新语句的标准语法为:
UPDATE table_name SET field1=new-value1, field2=new-value2 [WHERE Clause]
更新语句的一些示例如下:
#只修改tml_id>1的记录 update tml_table set tml_name='猪八戒' where tml_id>1 //若无where关键字,所有记录都将被更改
delete from
删除语句的标准语法为:
DELETE FROM table_name [WHERE Clause]
删除语句的一些示例如下:
使用该语句不需要指定列名,因为通常该语句是整行删除数据记录 delete from tml_table where tml_id>2; //如果没有where条件,则删除整个表的数据,如同truncate一样