在oracle中
采用两个sql语句即可,如:
判断数据表是否存在
SELECT count(*) FROM USER_TABLES where TABLE_NAME=upper('表名');
返回值为:1 则存在, 0 则不存在
判断数据表中字段是否存在
如果是单个的,可以这个去处理
SELECT COUNT(*) FROM USER_TAB_COLUMNS WHERE TABLE_NAME = upper('表名') AND COLUMN_NAME = upper('字段名')
返回值为:1 则存在, 0 则不存在
如果是多个字段同时判断,我个人是这么处理的,如下
SELECT COUNT(*) FROM USER_TAB_COLUMNS WHERE TABLE_NAME = upper('表名')
AND COLUMN_NAME in ( '字段1','字段2','字段3','字段4','字段5','字段6' )
返回值为:如果和传入的字段个数相同 则存在, 不同 则不存在
有个缺点,无法定位哪个字段出现问题