ORACLE 建表语句(表名及字段名大写)

时间:2021-09-21 08:37:34

  ORACLE建表时如果表名或者字段名存在大小写同时存在的情况下,默认为区分大小写,此时在select/updata等操作时需要在表名或者字段名上添加双引号,否则会报“视图不存在”的错误,为了规避此问题,我们需要使用如下建表语句如下(这样建立表名及字段名均为大写):

BEGIN
DECLARE
cnt integer := 0;
BEGIN
    SELECT 1 INTO cnt FROM dual WHERE exists(SELECT * FROM user_tables WHERE table_name = 'User_test');
    IF cnt != 0  THEN
        DECLARE
        s  VARCHAR2(500);
        BEGIN
            s := 'DROP TABLE User_test';
            DBMS_OUTPUT.PUT_LINE(s);
            EXECUTE IMMEDIATE  s;
        END;
    END IF;
exception
    WHEN no_data_found  THEN
        DBMS_OUTPUT.PUT_LINE(cnt);
    END;
END;
/

create table User_test  (
   ID   			INT		 not null,
   NAME		    		VARCHAR2(50)     not null,
   constraint PK_User_test primary key (ID)
);