在实际的需求处理中,遇到需要将当前库中某一批含有指定字段的表在另一个库中生成对应的视图。由于含有指定字段的表数据比较多,不可能一个一个的来生成对应的视图,因此需要采用批量生成视图的方法来处理。
采用该方法批量生成创建视图的SQL语句后,在指定库下执行即可。处理过程中提供了基于SQL
Server数据库和MYSQL数据库下的两种处理方法,详细的处理过程如下:
一、SQL Server数据库中
--1、获取该批表中含有指定字段的表名称和字段名称,放入表t_tmp01
--drop table t_tmp01
create table t_tmp01(id int identity(1,1),tab_name
varchar(80),col_name varchar(20))
insert into t_tmp01(tab_name,col_name)
select a.name,b.name
from sysobjects a,syscolumns
b where a.id=b.id and b.colorder in(1,2) --第一列或者第二列
and b.name
in('insert_dt','state_dt','begin_dt','开始日期','开始时间','日期','时间') --指定字段类型
and
a.type='u' and a.name like 't_state%'
and a.name not like '0%' --排除以时间作为标识的临时表
and a.name not like '