select *from ownerxxx.tablexxxx where CONTAINS(domain_idx_name, 'fistname lastname', 3) > 0
select *from ownerxxx.tablexxxx where CONTAINS(domain_idx_name, 'lastname and fistname', 3) > 0
EXEC ctx_ddl.drop_preference('ownerxxx.tablexxxx_data_sp');
EXEC ctx_ddl.create_preference('ownerxxx.tablexxxx_data_sp', 'MULTI_COLUMN_DATASTORE');
EXEC ctx_ddl.set_attribute('ownerxxx.tablexxxx_data_sp', 'columns', 'last_name, first_name, lastname_zh, firstname_zh');
EXEC ctx_ddl.drop_section_group('ownerxxx.tablexxxx_section_group');
EXEC ctx_ddl.create_section_group('ownerxxx.tablexxxx_section_group', 'BASIC_SECTION_GROUP');
EXEC ctx_ddl.add_field_section('ownerxxx.tablexxxx_section_group', 'last_name' , 'last_name' , TRUE);
EXEC ctx_ddl.add_field_section('ownerxxx.tablexxxx_section_group', 'first_name' , 'first_name' , TRUE);
EXEC ctx_ddl.add_field_section('ownerxxx.tablexxxx_section_group', 'lastname_zh' , 'lastname_zh' , TRUE);
EXEC ctx_ddl.add_field_section('ownerxxx.tablexxxx_section_group', 'firstname_zh' , 'firstname_zh' , TRUE);
drop index ownerxxx.tablexxxx_DI1;
CREATE index ownerxxx.tablexxxx_DI1 on ownerxxx.tablexxxx(domain_idx_name) indextype is "CTXSYS"."CONTEXT" parameters ('Wordlist ownerxxx.domain_idx_sub_string_pref MEMORY 512M Stoplist ownerxxx.domain_idx_stop_list lexer ownerxxx.domain_idx_zh_lexer Datastore ownerxxx.tablexxxx_data_sp section group ownerxxx.tablexxxx_section_group sync (EVERY "SYSDATE+10/(24*60)")') parallel 8 online;
alter index ownerxxx.tablexxxx_DI1 noparallel;
create or replace trigger ownerxxx.tablexxxx_t2
before insert or update of FIRST_NAME, FIRSTNAME_zh, LAST_NAME, LASTNAME_zh
on ownerxxx.tablexxxx
referencing OLD as OLD NEW as NEW
for each row
begin
IF INSERTING THEN
:NEW.domain_idx_name := 0;
ELSIF UPDATING THEN
IF :OLD.domain_idx_name is null or :OLD.domain_idx_name >= 99 THEN
:NEW.domain_idx_name := 0;
ELSE
:NEW.domain_idx_name := :OLD.domain_idx_name + 1;
END IF;
end IF;
end
;
/