oracle怎么校验 oracle 校验数据完整性

oracle怎么校验字段是否为非空约束

dba_tab_columns视图有一个 nullable的字段,是说该字段是否允许为空,如果不允许为空,那么他就是非空呗,不过我忘了他的具体内容了,大概你要自己看一下才行。

创新互联专注于大通企业网站建设,成都响应式网站建设公司,购物商城网站建设。大通网站建设公司,为大通等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务

不过你要全部一样,自己建立不是很慢么,个人建议你可以按用户导出建表语句,然后改一改在另外一个库上建立就好了。plsql dev可以实现的,不导内容就行了。用exp也可以,不导内容只倒框架。

oracle表中字段校验

CREATE TABLE test_abc(

id INT,

a  int,

b  int,

c  int

);

ALTER TABLE test_abc

ADD CONSTRAINT test_abc_check

CHECK ( COALESCE (a, b, c)  is not null );

测试结果:

SQL insert into test_abc values(1, null, null, null);

insert into test_abc values(1, null, null, null)

*

ERROR 位于第 1 行:

ORA-02290: 违反检查约束条件 (TEST.TEST_ABC_CHECK)

SQL insert into test_abc values(2, 2, null, null);

已创建 1 行。

SQL insert into test_abc values(3, null, 3, null);

已创建 1 行。

SQL insert into test_abc values(4, null, null, 4);

已创建 1 行。

如何配置 Oracle 11g 复杂密码校验设置

给某个profile 添加密码负责度验证函数(oracle的默认验证函数为PASSWORD_VERIFY_FUNCTION,可以根据自己的需要进行修改)

例如:alter profile test limit PASSWORD_VERIFY_FUNCTION TEST_PASSWORD_FUNCTION;

##上面alter命令给test profile添加了名为“TEST_PASSWORD_FUNCTION”的密码复杂度验证函数

2.把上面的test profile指定给 需要密码复杂度验证的用户

alter user test profile username;

oracle 怎么校验身份证号码

CREATE OR REPLACE FUNCTION fn_checkidcard (p_idcard IN VARCHAR2) RETURN INT

IS

v_regstr VARCHAR2 (2000);

v_sum NUMBER;

v_mod NUMBER;

v_checkcode CHAR (11) := '10X98765432';

v_checkbit CHAR (1);

v_areacode VARCHAR2 (2000) := '11,12,13,14,15,21,22,23,31,32,33,34,35,36,37,41,42,43,44,45,46,50,51,52,53,54,61,62,63,64,65,71,81,82,91,';

BEGIN

CASE LENGTHB (p_idcard)

WHEN 15

THEN -- 15位

IF INSTRB (v_areacode, SUBSTR (p_idcard, 1, 2) || ',') = 0 THEN

RETURN 0;

END IF;

IF MOD (TO_NUMBER (SUBSTRB (p_idcard, 7, 2)) + 1900, 400) = 0

OR

(

MOD (TO_NUMBER (SUBSTRB (p_idcard, 7, 2)) + 1900, 100) 0

AND

MOD (TO_NUMBER (SUBSTRB (p_idcard, 7, 2)) + 1900, 4) = 0

)

THEN -- 闰年

v_regstr :=

'^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$';

ELSE

v_regstr :=

'^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$';

END IF;

IF REGEXP_LIKE (p_idcard, v_regstr) THEN

RETURN 1;

ELSE

RETURN 0;

END IF;

WHEN 18

THEN -- 18位

IF INSTRB (v_areacode, SUBSTRB (p_idcard, 1, 2) || ',') = 0 THEN

RETURN 0;

END IF;

IF MOD (TO_NUMBER (SUBSTRB (p_idcard, 7, 4)), 400) = 0

OR

(

MOD (TO_NUMBER (SUBSTRB (p_idcard, 7, 4)), 100) 0

AND

MOD (TO_NUMBER (SUBSTRB (p_idcard, 7, 4)), 4) = 0

)

THEN -- 闰年

v_regstr :=

'^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$';

ELSE

v_regstr :=

'^[1-9][0-9]{5}(19|20)[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$';

END IF;

IF REGEXP_LIKE (p_idcard, v_regstr) THEN

v_sum :=

( TO_NUMBER (SUBSTRB (p_idcard, 1, 1))

+ TO_NUMBER (SUBSTRB (p_idcard, 11, 1))

)

* 7

+ ( TO_NUMBER (SUBSTRB (p_idcard, 2, 1))

+ TO_NUMBER (SUBSTRB (p_idcard, 12, 1))

)

* 9

+ ( TO_NUMBER (SUBSTRB (p_idcard, 3, 1))

+ TO_NUMBER (SUBSTRB (p_idcard, 13, 1))

)

* 10

+ ( TO_NUMBER (SUBSTRB (p_idcard, 4, 1))

+ TO_NUMBER (SUBSTRB (p_idcard, 14, 1))

)

* 5

+ ( TO_NUMBER (SUBSTRB (p_idcard, 5, 1))

+ TO_NUMBER (SUBSTRB (p_idcard, 15, 1))

)

* 8

+ ( TO_NUMBER (SUBSTRB (p_idcard, 6, 1))

+ TO_NUMBER (SUBSTRB (p_idcard, 16, 1))

)

* 4

+ ( TO_NUMBER (SUBSTRB (p_idcard, 7, 1))

+ TO_NUMBER (SUBSTRB (p_idcard, 17, 1))

)

* 2

+ TO_NUMBER (SUBSTRB (p_idcard, 8, 1)) * 1

+ TO_NUMBER (SUBSTRB (p_idcard, 9, 1)) * 6

+ TO_NUMBER (SUBSTRB (p_idcard, 10, 1)) * 3;

v_mod := MOD (v_sum, 11);

v_checkbit := SUBSTRB (v_checkcode, v_mod + 1, 1);

IF v_checkbit = upper(substrb(p_idcard,18,1)) THEN

RETURN 1;

ELSE

RETURN 0;

END IF;

ELSE

RETURN 0;

END IF;

ELSE

RETURN 0; -- 身份证号码位数不对

END CASE;

EXCEPTION

WHEN OTHERS

THEN

RETURN 0;

END fn_checkidcard;

/

Show Err;

如何验证oracle是否安装成功

1.安装好后,在开始处按照如下图点击打开,如果显示的不是中文版的,则是

Configuration and Manager 、然后点击Net Manager。

2.输入自己的账号跟密码,然后在服务命名下点击"orcl"中的地址配置中输入你电脑的IP地址。

3.再在监听程序的LISTENER中的地址2中输入你电脑的IP地址。

4.点击我的点击,鼠标右击,进入"管理",点击服务和应用程序,再点击服务选项。

5.拉开服务的名称,找到如下图的2个服务,分别点击启动。

6.重新操作步骤1,输入自己的账号跟密码,打开界面后,点击如图所示的图标,即"测试",测试orcl程序。

7.测试成功后会像下图所示显示测试成功,否则就是orcl不能够正常使用,需要查看安装的步骤。


网站标题:oracle怎么校验 oracle 校验数据完整性
转载来源:http://hbruida.cn/article/hjdpgp.html