对oracle已经学习三个多4,可以测试用一些复杂的组合; 5,它生成的测试用例是有迹可循日,即有规律的,不像手工测试那样会遗漏一些用例的组合。 3 选择OATS的基本原则一般都是先确定测试的因素、水平和交互作用,后选择适用的正交表。在确定因素的水平数时,主要因素应该多安排几个水平,次要因素可少安排几个水平。 (1重庆软件培训)先看水平数。若各因素全是2水平,就选用L(2*)表;若各因素全是3水平,就选L(3*)表。若各因素的水平数不相同,就选择适用的混合水平正交表。 (2)每一个交互作用在正交表中应占一列或二列。要看所选的正交表是否足够大,能否容纳得下所考虑的因素和交互作用。为了对试验结果进行方差分析或回归分析,还必须至少留一个空白列,作为“误差”列,在极差分析中要作为“其他因素&rdquo.数据库集群
关键字:OATS:即Orthogonal Array 集,这个集合,包括最少的测试用例,;列处理。 (3)要看测试精度的要求。若要求高,则宜取测试次数多的正交表。 (4)若测试费用很昂贵,或测试的经费很有限,或人力和时间都比较紧张,则不宜选实验次数太多的正交表。 (5)按原来考虑的因素、水平和交互作用去选择正交表,若 ......
一.引言
ORACLE数据库字符集,即Oracle全球化支持(Globalization Support),或即国家语言支持(NLS)其作用是用本国语言和格式来存储、处理和检索数据。利用全球化支持,ORACLE为用户提供自己熟悉的数据库母语环境,诸如日期格式、数字格式和存储序列等。Oracle可以支持多种语言及字符集,其中oracle8i支持48种语言、76个国家地域、229种字符集,而oracle9i则支持57种语言、88个国家地域、235种字符集。由于oracle字符集种类多,且在存储、检索、迁移oracle数据时多个环节与字符集的设置密切相关,因此在实际的应用中,数据库开发和管理人员经常会遇到有关oracle字符集方面的问题。本文通过以下几个方面阐述,对oracle字符集做简要分析
二.字符集基本知识
2.1字符集
实质就是按照一定的字符编码方案,对一组特定的符号,分别赋予不同数值编码的集合。Oracle数据库最早支持的编码方案是US7ASCII。
Oracle的字符集命名遵循以下命名规则:
<Language><bit size><encoding>
即: <语言><比特位数><编码>
比如 ......
author:skate
time:2010-05-27
oracle添加字段引起的问题
由于同事在添加了表的字段后,没有重新编译数据库的对象,导致和这个表相关的很多procedure和package都失效。
由于发现后是在修改后2个小时吧,而在这期间很多程序在调用这些过程,致使很多会话都僵死在那,所以也无法
再重新编译过去,及时kill相应session进程也无法编译,由于业务需要数据库快速提供服务,于是决定重启数据库
当我发出shutdown immediate1分钟后,有一种不祥的预感,数据库很难关闭,数据库里存在active事务,而且因为
对象失效,所以在那一直跑(僵死在那),我赶紧查看alert.log,如下所示:
Thu May 27 13:07:19 2010
Thread 1 advanced to log sequence 3666
Current log# 5 seq# 3666 mem# 0: /u01/oradata/dbtica/redo05.log
Thu May 27 13:59:37 2010
Starting background process EMN0
EMN0 started with pid=53, OS id=12951
Thu May 27 13:59:37 2010
Shutting down instance: further logons disabled
Thu May 27 13:59:37 2010
Stopping background process CJQ0
Thu May 27 13:59:37 2010
Stopping background process QMNC
Thu M ......
to_date()与24小时制表示法及mm分钟的显示:
一、在使用Oracle的to_date函数来做日期转换时,很多Java程序员也许会直接的采用“yyyy-MM-dd
HH:mm:ss”的格式作为格式进行转换,但是在Oracle中会引起错误:“ORA 01810 格式代码出现两次”。
如:select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mm:ss') from
dual;
原因是SQL中不区分大小写,MM和mm被认为是相同的格式代码,所以Oracle的SQL采用了mi代替分钟。
select to_date('2005-01-01 13:14:20','yyyy-MM-dd HH24:mi:ss') from dual;
二、另要以24小时的形式显示出来要用HH24
select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual;//mi是分钟
select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual;//mm会显示月份
oracle中的to_date参数含义
1.日期格式参数含义说明
D 一周中的星期几
DAY 天的名字,使用空格填充到9个字符
DD 月中的第几天
DDD 年中的第几天
DY 天的简写名
IW ISO标准的年中的第几周
IYYY IS ......
create or replace trigger InsertEdcTerminal
after INSERT on edc_terminal
FOR EACH ROW
DECLARE
merchantId char(15);
terminalId char(8);
uservalue char(6) ;
updatedate char(8);
updatetime char(6);
v_cardtype Merchant_Card.Card_Type%TYPE;
v_cardstate merchant_card.card_stat%TYPE;
v_banktype merchant_card.bank_type%TYPE;
BEGIN
merchantid:=:new.MERCHANT_ID;
terminalId:=:new.TERMINAL_ID;
uservalue:=:new.UPDATE_OPER;
updatedate:=:new.UPDATE_DATE;
updatetime:=:new.UPDATE_TIME;
insert into pos_key_base(merchant_id,terminal_id,mac_flag,safe_flag,change_mode)values(merchantId,terminalId,'0','0','2');
insert into edc_trans(merchant_id,terminal_id,trans_bitmap,update_oper,update_date,update_time)values(merchantId,terminalId,'111111111110111111000111111111',uservalue,updatedate,updatetime);
DECLARE
CURSOR c_emp IS SELECT Card_Type,card_stat,bank_type from Merchant_Card where MERCHANT_ID=merchantId;
BEGIN
OPEN c_emp;
&n ......
共需要创建两个文件在同一个目录下:
一:
文件oracle_cool_backup.bat,内容如下:
Remark 定义时间日期变量
set date=%date:~0,10%
set h=%time:~0,2%
set m=%time:~3,2%
set s=%time:~6,2%
set tempvar=%date%-%h%-%m%-%s%
md "c:/temp/%tempvar%/"
echo %tempvar%
sqlplus /nolog @oracle_cool_backup.sql %tempvar%
call oracle_cool_backup_spool.bat
pause
二:文件oracle_cool_backup.sql,内容如下:
Remark oracle_cool_backup.sql
Remark 冷备份脚本
Remark 设置SQL*Plus环境变量
conn sys/sunny as sysdba;
set feedback off heading off verify off trimspool off
set pagesize 0 linesize 200
Remark 设置用户变量
define spoolfile = 'oracle_cool_backup_spool.bat'
prompt *** spooling to &spoolfile
Remark 创建包含备份命令的脚本文件
spool &spoolfile
Remark 下面的e:\temp\&1后必须加"\" 不然提示还是目录名(F = 文件,D = 目录)?
select 'copy ' || name || ' c:\temp\&1\' from v$datafile;
select 'copy ' || name || ' c:\temp\&1\' from v$controlfile;
select 'copy ' || member || ' c:\temp ......