1.单表的删除
对于mysql数据库中的单表数据删除操作,直接借助于orm自带的Delete方法本身来完成就可以。只是要注意删除的时候记得指定一个筛选条件,这就好比sql语句当中的【delete from 表名 where xxx】当中的where条件一样。
o := orm.NewOrm()
var tempStuInfo models.StuInfo
tempStuInfo.Id = id_GetFromFont
_,err = o.Delete(&tempStuInfo)
2.级联关系表的删除
级联关系表有的时候也会被叫做一对多关系表,它指的是两个数据表之间的对应关系。例如表1和表2是级联关系表结构,那么一个表1中的数据可以同时对应多个表2中的数据,而一个表2中的数据却只能对应一个表1中的数据。
在图中表1中的StuInfo字段就级联了表2的信息数据。这个时候如果还是按照orm的Delete()指令去进行删除,那么orm仅仅能够将表1中的数据删除(也就是把某年某班...等的信息删除),但是和表1对应的表2数据(某年某班内对应的学生们)信息则不会消失。这种操作就会使得数据库中存在很多【拥有外键数据,但是外键却无法正确链接到另外数据表】的数据信息(毕竟班级都没了,学生还归属这个班级,这不乱了么?),