在Oracle SQL开发人员中可以做这样的事情吗

CREATE FUNCTION fnCheckValid(accountidd IN NUMBER)

RETURN NUMBER

IS retval NUMBER(4,0);

BEGIN

SELECT COUNT(accountid_fk)

INTO retval

FROM tbl_AccountAuthentications

WHERE accountid_fk = accountidd;

RETURN(retval);

END;

/

ALTER TABLE tbl_AccountAuthentications

ADD CONSTRAINT chkCheckvalid CHECK(fnCheckValid(accountid_fk) <= 1);

我不断得到的错误是

Error starting at line 999 in command:

ALTER TABLE tbl_AccountAuthentications

ADD CONSTRAINT chkCheckvalid CHECK(fnCheckValid(accountid_fk) <= 1)

Error report:

SQL Error: ORA-00904: "FNCHECKVALID": invalid identifier

00904. 00000 - "%s: invalid identifier"

*Cause:

*Action:

该函数正在创建中,我可以找到它,但是当我尝试调用它时,我不断收到该错误

这就是我想要实现的

AccountID RegularID OpenID

1 5 null

1 null 10

1 null 11

1 6

因此用户不能创建2个普通帐户,但可以拥有任意数量的OpenID帐户

该表设置如下

CREATE TABLE tbl_AccountAuthentications(

newAuthID NUMBER(4,0)

CONSTRAINT naid_pk PRIMARY KEY,

accountid_fk NUMBER(4,0)

CONSTRAINT accid_fk

REFERENCES tbl_UserAccounts(account_id),

regularid_fk NUMBER(4,0)

CONSTRAINT rgid_fk

REFERENCES tbl_StrongRoom(password_id),

openid_fk NUMBER(4,0)

CONSTRAINT opid_fk

REFERENCES tbl_OpenID(openid)

);

oracle检查约束的创建,检查约束调用函数Oracle SQL开发人员相关推荐

  1. oracle数据库怎么调用函数,Oracle 11g调用函数几种常用方法

    1. 该函数接受3个可选参数,返回3个数字的和 CREATE OR REPLACE FUNCTION add_three_numbers ( a NUMBER:=0, b NUMBER:=0, c N ...

  2. c++每调用一次函数+1_每个开发人员都应该知道的一些很棒的现代C ++功能

    c++每调用一次函数+1 As a language, C++ has evolved a lot. 作为一种语言,C ++已经发展了很多. Of course this did not happen ...

  3. oracle 在plsql中创建procedure并调用

    Create  table  create table A ( USERID NUMBER(38), PWD VARCHAR2(30) ) tablespace USERS pctfree 10 in ...

  4. mysql实现类似oracle的序列,mysql 创建[序列],功能类似于oracle的序列

    参考自菜鸟教程 使用函数创建自增序列管理表(批量使用自增表,设置初始值,自增幅度) 第一步:创建Sequence管理表 sequence DROP TABLE IF EXISTS sequence; ...

  5. oracle 所有外键约束,如何在oracle中找到所有外键约束?

    在StackOverflow中,我可以找到有关如何在SQL Server中查找所有外键约束的文章. 我只能在Oralce中找到有关如何查找表的所有外键约束的文章(外键列表和它们引用的表). 我的问题是 ...

  6. 【SQL开发实战技巧】系列(八):聊聊如何插入数据时比约束更灵活的限制数据插入以及怎么一个insert语句同时插入多张表

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  7. oracle 如何预估将要创建的索引的大小

    一.1  oracle 如何预估将要创建的索引的大小 oracle 提供了2种可以预估将要创建的索引大小的办法: ①  利用包 Dbms_space.create_index_cost 直接得到 ②  ...

  8. django html直接调用的方法,如何在Django中使用AJAX从html正确调用函数/url?

    我试图在一个框的顶部显示一个用户名,在这个框中,用户可以在表单中输入他们的员工,而不必刷新页面.在 例如,他们输入他们的#,然后在他们点击/tab到下一个字段后,它会在顶部显示他们的名字,这个名字来自 ...

  9. 在linux中安装oracle中文包,在Linux命令行下安装Oracle 10g

    Oracle 10g支持在命令行下用静默模式(Silent)安装,给那些没有安装图形界面的Linux系统提供了极大的便利. 下面以Fedora Core 6为例,介绍在命令行下安装OracleOrac ...

最新文章

  1. 3a三次方h c语言表达式,希尔伯特曲线——第八届蓝桥杯C语言B组(国赛)第三题...
  2. python爬取电影网站信息并写入文件
  3. Java Web - 服务器中的过滤器和监听器
  4. linux的nvme驱动需要关心的统计项
  5. mysql慢sql增加读写分离_MySQL-Proxy实现MySQL读写分离提高并发负载
  6. 网站架构相关PPT、文章整理(更新于2009-7-15)
  7. 29.Jwt集成(3):token设置过期时间、异常判断
  8. idle运行python_命令行启动python的IDLE
  9. Haskell生成数字的LED字符形式
  10. vs2013 .net连接mysql_Visual Studio C#.NET 轻松连接Mysql数据库之组件mysql-connector-net-网络教程与技术 -亦是美网络...
  11. ArcView,ArcGis,MapObjects,ISRI有什么区别
  12. 文言文编程可以编译成PHP吗,PSTK项目:文言文也能编程?大四学生发明文言文编程语言...
  13. docker mac linux镜像制作,Docker镜像制作方法
  14. 如何通过Spring的ApplicationListener事件注册服务
  15. 查询快递单号物流,筛选从某地发出的单号
  16. LearnOpenGL->立方体贴图
  17. MATLAB 最小二乘法
  18. freescale R10 ipu lib 分析 - ipu_device.c
  19. celery:File /home/hadoop/.virtualenvs/Django01/lib/python3.7/site-packages/fdfs_client/utils.py
  20. python查看字符串的编码格式_Python 3 查看字符编码方法

热门文章

  1. 水果店圈子:水果店毛利率计算公式,开水果店要怎样算毛利
  2. CC00006.NavigationLog——|FreeNAS|
  3. 在Linux下安装邮件服务器Qmail(一)
  4. 解析VUE中nextTick是什么
  5. 读书笔记:《冠军记忆术》
  6. 你每天都在看抖音,到底在看什么?
  7. 环保数采仪农村土壤监测应用
  8. Linux-固定USB转串口名称
  9. 最详细SpringCloud+nacos整合Seata1.4.2 实现分布式事务
  10. 全媒体运营师胡耀文:社群出货5000加?3个实战经验起盘社群团购