日期:2014-05-17  浏览次数:20789 次

如何知道数据库中某个表的某个字段存在?
比如:想知道表LBM_INFO中是否有字段REMOTE_TIMEOUT,如果没有,就在LBM_INFO表中创建该字段。

------解决方案--------------------

DECLARE
    FLAG NUMBER(2);
BEGIN
    SELECT COUNT(1)
      INTO FLAG
      FROM USER_TAB_COLS
     WHERE TABLE_NAME = 'LBM_INFO'
       AND COLUMN_NAME = 'REMOTE_TIMEOUT';
    IF FLAG=0 THEN
        EXECUTE IMMEDIATE 'ALTER TABLE LBM_INFO ADD REMOTE_TIMEOUT VARCHAR2(10)';
    END IF;
END;