如何将oracle中的表结构导出到word文件中

Laughing 2010-09-15 03:40:03
导出后成为下面这种表格形式:


序号 字段名 字段说明 数据类型 允许为空 主键(P)/外键(F) 说明
1 ATTACH_ID NUMBER(10) N P
2 POST_ID NUMBER(10) Y F
3 PRIVMSGS_ID NUMBER(10) Y F
4 USER_ID NUMBER(10) N F

我使用DBExportDoc_V1.0_For_Oracle总是报错:没有选定文字!
请问有其他的方法吗?因为我的数据库表比较多,手动的话会耗费很多时间!
...全文
606 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyisky84 2010-09-15
  • 打赏
  • 举报
回复
我写过一个程序,放在家里的电脑上了
luoyoumou 2010-09-15
  • 打赏
  • 举报
回复
SELECT t1.Table_Name AS "表名称",
t3.comments AS "表说明",
t1.Column_Name AS "字段名称",
t2.Comments AS "字段说明",
t1.Data_Type AS "数据类型",
t1.Data_Length AS "长度",
t1.NullAble AS "是否为空",
t1.Data_Default "默认值"
FROM cols t1 left join user_col_comments t2
on t1.Table_name=t2.Table_name and t1.Column_Name=t2.Column_Name
left join user_tab_comments t3
on t1.Table_name=t3.Table_name
WHERE NOT EXISTS ( SELECT t4.Object_Name FROM User_objects t4
WHERE t4.Object_Type='TABLE'
AND t4.Temporary='N'
AND t4.Object_Name=t1.Table_Name )
ORDER BY t1.Table_Name, t1.Column_ID;

-- 修改一下:AND t4.Temporary='N',当 t4.Temporary='Y'时,表示你查询的是当前用户下的临时表!
luoyoumou 2010-09-15
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 luoyoumou 的回复:]

SQL code
SELECT t1.Table_Name AS "表名称",
t3.comments AS "表说明",
t1.Column_Name AS "字段名称",
t2.Comments AS "字段说明",
t1.Data_Type AS "数据类型",
t1.Data_Length AS "长度",
……
[/Quote]

-- 如果要指定某个表,加 个 where t1.Table_Name = 'xxx' 就OK啦!
luoyoumou 2010-09-15
  • 打赏
  • 举报
回复
SELECT t1.Table_Name AS "表名称",
t3.comments AS "表说明",
t1.Column_Name AS "字段名称",
t2.Comments AS "字段说明",
t1.Data_Type AS "数据类型",
t1.Data_Length AS "长度",
t1.NullAble AS "是否为空",
t1.Data_Default "默认值"
FROM cols t1 left join user_col_comments t2
on t1.Table_name=t2.Table_name and t1.Column_Name=t2.Column_Name
left join user_tab_comments t3
on t1.Table_name=t3.Table_name
WHERE NOT EXISTS ( SELECT t4.Object_Name FROM User_objects t4
WHERE t4.Object_Type='TABLE'
AND t4.Temporary='Y'
AND t4.Object_Name=t1.Table_Name )
ORDER BY t1.Table_Name, t1.Column_ID;
Laughing 2010-09-15
  • 打赏
  • 举报
回复
我导出上述形式的表结构呀(以表格的形式)
序号 字段名 字段说明 数据类型 允许为空 主键(P)/外键(F) 说明
1 ATTACH_ID NUMBER(10) N P
2 POST_ID NUMBER(10) Y F
3 PRIVMSGS_ID NUMBER(10) Y F
4 USER_ID NUMBER(10) N F
ngx20080110 2010-09-15
  • 打赏
  • 举报
回复
樓主你要導出數據還是表結構?
Laughing 2010-09-15
  • 打赏
  • 举报
回复
LS你给的不行,要产生表格的
luoyoumou 2010-09-15
  • 打赏
  • 举报
回复
spool C:\sql_ddl.txt;
select dbms_metadata.get_ddl('TABLE','TABLE_NAME') FROM dual;
spool off;

-- TABLE_NAME 是你的表名

-- 然后打开C:\sql_ddl.txt文件,里面有你要的代码!

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧