现在有四张表:student(学生表).blogs(博客表).comment(评论表).reply(回复表) 现在说一下这四张表: student(学生表):学生的信息记录表 blogs(博客表):学生发表的博客表 comment(评论表):学生评论博客文章的表 reply(回复表):学生回复评论的表 现在的问题是:如果学生删除了自己的发表的博客文章,对应的blogs(博客表).comment(评论表).reply(回复表)中有关的信息记录都会被删除,这就需要在设计表格的时候引用表格之间的外健…
注:本文来源于<oracle查询某张表的外键(最终解决办法)> 一:几个查询表外键的脚本 select b.table_name, b.column_name from user_constraints a inner join user_cons_columns b on a.constraint_name = b.constraint_name where a.r_constraint_name in ( select e.constraint_name from user_constra…
一.ContentType 在django中,有一个记录了项目中所有model元数据的表,就是ContentType,表中一条记录对应着一个存在的model,所以可以通过一个ContentType表的id和一个具体表中的id找到任何记录,及先通过ContenType表的id可以得到某个model,再通过model的id得到具体的对象. class ContentType(models.Model): app_label = models.CharField(max_length=100) mod…
AOP在大多数的情况下的应用场景是:日志和验证.至于AOP的理论知识我就不做赘述.而AOP的通知类型有好几种,今天的例子我只选一个有代表意义的“环绕通知”来演示. 一.AOP入门 修改“pom.xml”文件 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=&quo…
缘由 因为在某个复(bian)杂(tai)需求中用到了170+张表进行查询,而且表中的数据过多,查起来缓慢.只能给这些表添加索引.但是,连表名也是无法确定的(无力吐槽). 解决方法 使用游标遍历查询出来的符合条件的表名,通过拼接sql语句进行建立索引. 代码如下: --声明变量DECLARE     @tableName AS VARCHAR(50) = '',    @SqlStr AS VARCHAR(MAX) = ''; --声明游标DECLARE C_TableName CURSOR F…
两张通过外键联系的表,如何在一张表上根据另一张表上的属性查找满足条件的对象集? 平常查找表中数据的条件是python中已有的数据类型,通过名字可以直接查找.如果条件是表中外键列所对应表的某一列,该如何查询数据? 表1是新闻表,是回复表中某一外键指向的表,表2是回复表. 问题1:根据表1的某些条件来查找表2的对象集. class News(models.Model): title = models.CharField(max_length=50); summary = models.TextFie…
PS:这里是给自己做个备忘,下次遇到同类问题的时候,方便查找: 客户在有主外键关系的2张表进行页面删除时报错已有子记录,运维后台处理的时候应该找出相应的数据,先删除子记录,在删主表记录:但客户要的急,就执行了错误的操作,删除了外键约束,在执行的删除,但在通过alter语句进行添加外键的时候,报错未找到父项关键字: 网上搜索了下,说未找到父项关键字的原因是2张表的数据不统一,后通过minus关键字查询2张表的差值,确实存在: 在google之后发现了2种方法可以解决: 1.删除多余的数据,保持2张…
一.前言 在某些情况下,由于网速慢,用户操作有误(连续点击两下提交按钮),页面卡顿等原因,可能会出现表单数据重复提交造成数据库保存多条重复数据. 存在如上问题可以交给前端解决,判断多长时间内不能再次点击保存按钮,当然,如果存在聪明的用户能够绕过前端验证,后端更应该去进行拦截处理,下面小编将基于 SpringBoot 2.1.8.RELEASE 环境通过 AOP切面 + 自定义校验注解 + Redis缓存 来解决这一问题. 二.Spring Boot 校验表单重复提交操作 1.pom.xml 中引…
模型: //表->posts class Post extends Model { //关联用户: public function user(){ //belongsTo,第一个参数:外键表,第二个:当前表的外键,第三个:外渐表的主键. //如果第二个是名词+id,第三个是:id.后面的两个参数可以省略: // return $this->belongsTo('App\User'); return $this->belongsTo('App\User','user_id','id');…
Spring Boot加载配置文件,默认会从几个固定位置搜索一下看看有没有配置文件 ——application.properties或者bootstrap.properties(如果你使用了spring cloud 相关jar包的话)存在. 这几个位置分别是: classpath:/,classpath:/config/,file:./,file:./config/ 他们定义在: 看到这个地方你应该明白了: 后边两个带“file:”的目录是相对目录,相对的不是你的jar包的存放位置,而是你执行j…