求代码:根据dtd进行数据库建表

dy314 2006-04-21 10:40:45
对不同的dtd都可以自动生成不同的表.
使用java语言.
希望可以提供源程序.
或者相关的资料.
...全文
189 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
dy314 2006-04-22
  • 打赏
  • 举报
回复
知道了数据库名,有没有什么办法可以判断里面有多少个表?每个表有哪些字段?
dy314 2006-04-22
  • 打赏
  • 举报
回复
如果没有了dtd,可以根据数据库生成xml文件吗?
特别是当数据库中有多个表的时候?


(分数继续加)
dy314 2006-04-22
  • 打赏
  • 举报
回复
如果没有了dtd,可以根据数据库生成xml文件吗?
特别是当数据库中有多个表的时候?


(分数继续加)
yuzl32 2006-04-21
  • 打赏
  • 举报
回复
另外,保存的时候可以将该节点以及子节点的信息封装保存到List中.便于后面节点分析.
yuzl32 2006-04-21
  • 打赏
  • 举报
回复
name --> 无子节点,丢弃.
lw --> 存在(id,name) --> 可能为库名或表名,设个标志,并保存.
lws --> 存在(lw) --> 子节点名跟上面的未知标志的lw做比较,若相同,lws 则为数据库,否则,再设标志,并保存(信息).

循环...

一旦确认一个是数据库,所有其他未知标志全部设定为表.

(不知道这样符合你的规则不)
dy314 2006-04-21
  • 打赏
  • 举报
回复
waiting~~~~
dy314 2006-04-21
  • 打赏
  • 举报
回复
例如下面的dtd,可以将lws作为数据库名,lw作为表名,id和name作为字段名.
现在碰到的困难是:
1.如何识别出lws就是数据库名,特别是比较复杂dtd.
2.同理,如何识别表名,字段名.
(不同的用户可以给出不同结构的xml文件或dtd)

<?xml version="1.0" encoding="GB2312" ?>
<!ELEMENT name ( #PCDATA ) >
<!ELEMENT lw ( id, name ) >
<!ELEMENT lws ( lw ) >
<!ELEMENT id ( #PCDATA ) >
dy314 2006-04-21
  • 打赏
  • 举报
回复
原来的要求是要将任何xml文件存入关系数据库,并且可以还原会原来的xml文件.

要考虑到通用性.也就是不同结构的xml都要适应.(这正是我要问的)

我的想法是:
1.先由xml文件生成dtd.
2.根据dtd建表.
3.根据dtd将xml数据读出并存入数据库.
4.根据dtd将数据从数据库中读出,并还原为原来的xml文件.
yuzl32 2006-04-21
  • 打赏
  • 举报
回复
dtd 里面你要怎么区分表名和字段名?贴个例子上来.
dy314 2006-04-21
  • 打赏
  • 举报
回复
给个思路也行.通宵等...

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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