可以得到字段名的。 参考我以前写的一个过程: create or replace procedure SP_CREATE_SAME_TABLE IS /*--------------------------- 功能:创建和现有用户的表(包含YGID字段)结构相同但名称不同的另一套表 编写:廖志强 日期:2002年9月6日 ----------------------------*/ v_table col.tname%TYPE; CURSOR c_table IS select TNAME from col,user_objects where col.tname=user_objects.object_name and user_objects.object_type='TABLE' AND instr(tname,'$')=0 AND instr(tname,'QUEST')=0 AND CNAME='YGID'; sql_str STRING(10000):=''; begin --Get Tables and Columns from dictionary OPEN c_table; FETCH c_table INTO v_table; WHILE c_table%FOUND LOOP sql_str:='create table '||v_table||'_s as (select * from '||v_table||' where 1=2)'; EXECUTE IMMEDIATE sql_str; FETCH c_table INTO v_table; END LOOP; CLOSE c_table; COMMIT; EXCEPTION WHEN OTHERS THEN ROLLBACK; RAISE; end SP_CREATE_SAME_TABLE; /
select column_name from all_col_comments where OWNER='LABUNION' and TABLE_NAME='BFGDB' 就可以取到 CODE (== DESC) 那么要得到 NAME 这一列的值怎么办呢?
谢谢你, jiezhi 大哥。我想问一下,用 powerDesign 作的转化为 oracle 语句之后,是不是 name 字断丢失咯??我察看生成的代码(generate script->script)里面没有这些信息。
KZID
BFGBID
JDDATE
BZ一样,希望得到列表:
结对编号
困职编号
干部编号
结对日期
备注然后将他拷贝出来,处理。不然一个字断一个字断的拷贝,我明天都做不完。
select * from cat
等等,都试过了,得不到呀,着急!!
参考我以前写的一个过程:
create or replace procedure SP_CREATE_SAME_TABLE IS
/*---------------------------
功能:创建和现有用户的表(包含YGID字段)结构相同但名称不同的另一套表
编写:廖志强
日期:2002年9月6日
----------------------------*/
v_table col.tname%TYPE;
CURSOR c_table IS select TNAME from col,user_objects
where col.tname=user_objects.object_name
and user_objects.object_type='TABLE'
AND instr(tname,'$')=0
AND instr(tname,'QUEST')=0
AND CNAME='YGID';
sql_str STRING(10000):='';
begin
--Get Tables and Columns from dictionary
OPEN c_table;
FETCH c_table INTO v_table;
WHILE c_table%FOUND LOOP
sql_str:='create table '||v_table||'_s as (select * from '||v_table||' where 1=2)';
EXECUTE IMMEDIATE sql_str;
FETCH c_table INTO v_table;
END LOOP;
CLOSE c_table;
COMMIT;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK;
RAISE;
end SP_CREATE_SAME_TABLE;
/
那么要得到 NAME 这一列的值怎么办呢?