达梦(禁用|启动)constraint

2024-05-29 20:32

本文主要是介绍达梦(禁用|启动)constraint,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


### Code Reference
  • URL:p133 DM8系统管理员手册
  • DESC:达梦(禁用|启动)constraint(和oracle的语法有些差异)
  • Last Update:2020-7-2 15:54
    • 四种状态
      • disable novalidate 既不会约束新增数据也不会验证已有数据,等同于disable
      • enable novalidate 约束新增数据但不会验证已有数据
      • disable validate 约束新增数据但不会验证已有数据,启用后禁止DML
      • enable validate 约束新增数据并验证已有数据,等同于enable
    • 设置 constraint 状态
        select * from SYS.DBA_CONSTRAINTS T where T.TABLE_NAME = 'WhichCanEncrypt';alter table test."WhichCanEncrypt" enable|disable constraint "CK_6_1";
      

### Code Reference
  • DESC:dameng 修改check constraint 状态过程
  • Last Update:2020-7-2 16:56
    • 接口(pi_mode 为0是置check constraint 为disable,其他为置为enable)

      call “TEST”.“disposeCheckConstraint”(‘TEST’,‘WhichCanEncrypt’,1);
    • 授权

      grant execute on test.“disposeCheckConstraint” to PUBLIC;

      grant select on SYS.DBA_CONSTRAINTS to public;
    • 实现
        create or replace procedure test."disposeCheckConstraint"("pv_schemaName" varchar2(100),"pv_tableName"  varchar2(100),"pi_mode"       number(1)) asdeclare  type L_cursortyp is ref cursor;L_cursor       L_cursortyp;Lv_sql         varchar2(200);Lv_disposeMode varchar2(200):=0;beginif "pi_mode" = 0 thenLv_disposeMode := '" DISABLE CONSTRAINT "';elseLv_disposeMode := '" ENABLE CONSTRAINT "';end if;open L_cursor forselect 'ALTER TABLE "' || "OWNER" || '"."' || "TABLE_NAME" ||Lv_disposeMode || "CONSTRAINT_NAME" || '"'from SYS.DBA_CONSTRAINTS Twhere 1 = 1and T.OWNER = "pv_schemaName"and T.TABLE_NAME = "pv_tableName"and T.CONSTRAINT_TYPE = 'C';loopfetch L_cursorinto Lv_sql;exit when L_cursor%notfound;beginexecute IMMEDIATE Lv_sql;print Lv_sql;exceptionwhen others thennull;end;end loop;close L_cursor;end;
      

这篇关于达梦(禁用|启动)constraint的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1014565

相关文章

Redis在windows环境下如何启动

《Redis在windows环境下如何启动》:本文主要介绍Redis在windows环境下如何启动的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Redis在Windows环境下启动1.在redis的安装目录下2.输入·redis-server.exe

解决SpringBoot启动报错:Failed to load property source from location 'classpath:/application.yml'

《解决SpringBoot启动报错:Failedtoloadpropertysourcefromlocationclasspath:/application.yml问题》这篇文章主要介绍... 目录在启动SpringBoot项目时报如下错误原因可能是1.yml中语法错误2.yml文件格式是GBK总结在启动S

SpringBoot启动报错的11个高频问题排查与解决终极指南

《SpringBoot启动报错的11个高频问题排查与解决终极指南》这篇文章主要为大家详细介绍了SpringBoot启动报错的11个高频问题的排查与解决,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一... 目录1. 依赖冲突:NoSuchMethodError 的终极解法2. Bean注入失败:No qu

一文带你了解SpringBoot中启动参数的各种用法

《一文带你了解SpringBoot中启动参数的各种用法》在使用SpringBoot开发应用时,我们通常需要根据不同的环境或特定需求调整启动参数,那么,SpringBoot提供了哪些方式来配置这些启动参... 目录一、启动参数的常见传递方式二、通过命令行参数传递启动参数三、使用 application.pro

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

IDEA连接达梦数据库的详细配置指南

《IDEA连接达梦数据库的详细配置指南》达梦数据库(DMDatabase)作为国产关系型数据库的代表,广泛应用于企业级系统开发,本文将详细介绍如何在IntelliJIDEA中配置并连接达梦数据库,助力... 目录准备工作1. 下载达梦JDBC驱动配置步骤1. 将驱动添加到IDEA2. 创建数据库连接连接参数

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Windows环境下安装达梦数据库的完整步骤

《Windows环境下安装达梦数据库的完整步骤》达梦数据库的安装大致分为Windows和Linux版本,本文将以dm8企业版Windows_64位环境为例,为大家介绍一下达梦数据库的具体安装步骤吧... 目录环境介绍1 下载解压安装包2 根据安装手册安装2.1 选择语言 时区2.2 安装向导2.3 接受协议

Nginx启动失败:端口80被占用问题的解决方案

《Nginx启动失败:端口80被占用问题的解决方案》在Linux服务器上部署Nginx时,可能会遇到Nginx启动失败的情况,尤其是错误提示bind()to0.0.0.0:80failed,这种问题通... 目录引言问题描述问题分析解决方案1. 检查占用端口 80 的进程使用 netstat 命令使用 ss

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干