PowerDesigner直接导入表字段

 

最近在帮老师弄数据结构,表不多,但是字段一个一个的写进去还是挺烦的。

从网上找到一段脚本可以实现txt直接导入,工作量节省了60%。

原文地址找不到了,有知道告诉一声。

脚本贴出来如下:

View Code
'-----------------------------------------------------------------------------
' 说明:1.表样在F:\table.txt。
'       2.中间如果出现空行会新建表,用以提示 
'       3.以空格分割划分入数组,EXCEL文件需要把各字段用&" "链接在复制
'-----------------------------------------------------------------------------

Option Explicit


Dim system, file
Set system = CreateObject("Scripting.FileSystemObject") '创建文件对象


Dim ForReading, ForWriting, ForAppending
dim str
dim tittle
dim first
ForReading   = 1 ' 设置文件只读 
ForWriting   = 2 ' 设置文件写入
ForAppending = 8 ' 设置文件追加

'-----------------------------------------------------------------------------
' 主要程序
'-----------------------------------------------------------------------------

Set file = system.OpenTextFile("F:\table.txt", ForReading)'打开文本文档
Dim noLine
Dim Tab  '定义一个表,vbscript中变量没有那么严格的类型,但此变量将来将用来表示table
ValidationMode = True
Dim mdl ' 定义当前激活的模型,也就是mdl
Dim Col
dim dm, dmstr
Dim SSS
Dim isNewTable

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

set Tab = mdl.Tables.CreateNew
isNewTable = True

first=file.readline '读文档按行读
tittle=split(first) '以空格分隔划分入数组,获取的是表的属性,可以获取更多属性,根据实际情况而定
tab.name=tittle(0) 'name
tab.code=tittle(1) 'code
tab.comment=tittle(2) 'comment

Do While file.AtEndOfStream <> True '循环读取文档的每一行
   SSS = file.ReadLine
   str=split(SSS)
   
   if isNewTable = True then
     if SSS <> "" then
       isNewTable = False
       
     end if
   elseif SSS = "" then
     set Tab = mdl.Tables.CreateNew  '创建新表,这是读到空行时的表现,自己用来警示
     
   else  
     set Col=tab.Columns.CreateNew '创建一行字段
     Col.name = str(0) '依次设置属性,同表的属性,字段熟悉也可以设置更多,根据实际情况
     Col.code= str(1)
     col.datatype=str(2)
     'col.Comment=str(3)
     
   end if  
Loop
file.Close

 

 

posted @ 2012-04-24 12:23  慢小姐的脚印  阅读(433)  评论(0编辑  收藏  举报