Oracle简单易用的表结构导出方法

来源:互联网 发布:网络监视窥探隐私 编辑:程序博客网 时间:2024/06/05 13:27

最近做项目时需要给客户导出数据库表结构文档,库中表名及列已有注释,可是要输出一份表结构文档要借助第三方工具(如powerdesigner),那有没有更简单的方式呢?当然有,自己做丰衣足食!

附代码(将输出的文本存入x.htm,双击查看就行,至于排版可以拷贝页面到word中搞定):

declare
i integer;
begin
i:=1;
for tbl in(
select
a.table_name,b.comments
from user_tables a,ALL_TAB_COMMENTS b where a.table_name=b.table_name
and b.comments is not null )
loop

    dbms_output.put_line('<br/><h2>'||i||'.'||tbl.comments || '('|| tbl.table_name ||')</h2>');    dbms_output.put_line('<table border=1 bordercolor=black><tr><th>字段名</th><th>数据类型</th><th>长度</th><th>精度</th><th>小数位</th><th>是否为空</th><th>注释</th></tr>');    --列    for col in(     SELECT a.table_name, a.column_name, a.data_type, a.data_length, a.data_precision,     a.data_scale, a.nullable, b.comments     FROM user_tab_columns a,user_col_comments b      where a.TABLE_NAME=b.table_name      and a.COLUMN_NAME=b.column_name and b.table_name = tbl.table_name     --and b.comments is null     )    loop        dbms_output.put_line('<tr><td>'||col.column_name || '</td><td>'||col.data_type || '</td><td>'||col.data_length || ' </td><td>'||col.data_precision || ' </td><td>'||col.data_scale || '</td><td>'||col.nullable || '</td><td>'||col.comments || '</td></tr>');    end loop;    dbms_output.put_line('</table>');    i:=i+1;

end loop;

end;

当然mysql的按上面的思路写一份即可,不过Mysql-front本身也可以导出pdf。

0 0
原创粉丝点击