电话号码以以下格式从网络服务发送到我们的数据库:
1-210-5551212
如果前两个字符是"1-",我希望将它们输入到字段中:
1-210-555-1212
如何创建插入或更新触发器来实现此目的?
如果 Web 服务中的格式保持不变,则可以执行此操作。
CREATE TABLE PHONE_NUMBERS(PH_ID NUMBER(12), PHONE_NUMBER VARCHAR2(20));
CREATE OR replace TRIGGER trg_test_numbers
BEFORE INSERT OR UPDATE ON phone_numbers
FOR EACH ROW
BEGIN
IF Substr(:new.phone_number, 1, 2) = '1-' THEN
:new.phone_number := Substr(:new.phone_number, 1, 9)
|| '-'
|| Substr(:new.phone_number, 10);
END IF;
END trg_test_numbers;
insert into phone_numbers(ph_id, phone_number) VALUES(1,'1-210-5551212');
SELECT * from phone_numbers;