powerdesigner---word文件生成pdm文件

前言:word文档和pdm文档和数据库表结构如果不能互相转换,会特别的麻烦。每一个都需要手动生成一遍。

1. word文件生成pdm文件:
  • 将word中表结构复制到txt文件,在txt文件中格式如下 :
    txt文件格式
    描述:每个表的第一行为表的name和code,中间用空格隔开。从第二行开始是每个表的字段的name,codehe type,用空格隔开。每个表之间用空行隔开。
  • 打开powerdesigner,新建一个物理模型,dbms可以选mysql,如果有sqlserver也可以选择sqlserver,如果没有,可以先选mysql,然后可以修改dbms,此时会有sqlserver.
    在这里插入图片描述
  • 新建好 物理模型后,按“ctrl+shift+x”打开编译运行脚本窗口。脚本中输入:【其中打开文本文档行第一个参数是文档地址:填写要导入的txt文件的地址;第二个参数是读写状态属性:1 是 文件只读 , 2 是 文件写入 , 8 是 文件追加】
Option Explicit

Dim mdl
'获取当前激活模型
Set mdl = ActiveModel 

Dim system, file
'创建文件对象
Set system = CreateObject("Scripting.FileSystemObject")
'打开文本文档
Set file = system.OpenTextFile("E:\table.txt", 1)

'表和列
Dim tab, col

'当前行内容,当前行拆分后的内容,和当前行所属表的行数
Dim line_str, lineAry, tab_line_index
tab_line_index = 1

'循环读取文档的每一行
Do While file.AtEndOfStream <> True 
	line_str = file.ReadLine
	
	'空行是下一个表的开始
	if line_str = "" then 
		'声明下一行是新表的第一行
		tab_line_index = 1
	else
		'新表的第一行,表名行
		if tab_line_index = 1 then
			'先创建一个表
			set tab = mdl.Tables.CreateNew
			'拆分第一行信息
			lineAry = split(line_str)
			'设置表名信息
			tab.name = lineAry(0)  '表name
			tab.code = lineAry(1)  '表code
		'新表的非第一行,字段行
		else
			'先创建一列
			set col=tab.Columns.CreateNew
			'拆分列的信息
			lineAry = split(line_str)
			'设置列的属性
			col.name = lineAry(0)  '列name
			col.code = lineAry(1)  '列code
			'col.datatype = lineAry(2)  '列类型
		end if
		
		'行数往下延伸
		tab_line_index = tab_line_index + 1
	end if
Loop
file.Close
  • 点击窗口下边的“run”运行,进行表的创建。创建好后,会发现左测结构中已经有了你需要的表。
    创建结果
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值