标签:des ctrl comm 数据 如图所示 form 创建表 ima option
本示例中创建了三张sheet表分别是t_user、t_role、t_user_role三张表(sheet表可以建多个,表中数据的格式其实是可以自定义的,此处不做阐述)。如图所示:
1、打开PowerDesigner,点击【File】==》【New Model】==》【Model types】==》【Physical Data Model】==》【Physical Diagram】==》【OK】。如图所示:
Ps:*代表未保存项目,创建后【CTRL+S】可能是个好习惯。
2、然后点击【Tools】==》【Execute Commands】==》【Edit/Run Script】编辑运行相关脚本。如图所示:
输入以下脚本内容,点击【Run】执行脚本,如图所示:
Option Explicit
dim shet
dim cnt
cnt = 0
For each shet in array("t_user","t_role","t_user_role") ‘列出excel文件中所用需要读取的sheet的名称,例如:t_user、t_role、t_user_role...
Dim mdl ‘ 当前的模型
Set mdl = ActiveModel
If (mdl Is Nothing) Then
MsgBox "There is no Active Model"
End If
Dim HaveExcel
Dim RQ
RQ = vbYes ‘MsgBox("Is Excel Installed on your machine ", vbYesNo + vbInformation, "Confirmation")
If RQ = vbYes Then
HaveExcel = True
‘ Open & Create Excel Document
Dim x1 ‘
Set x1 = CreateObject("Excel.Application")
x1.Workbooks.Open "excel文档路径" ‘指定excel文档路径
x1.Workbooks(1).Worksheets(shet).Activate ‘指定要打开的sheet名称
Else
HaveExcel = False
End If
a x1, mdl
cnt = cnt + 1
Next
MsgBox "生成数据表结构共计 " + CStr(cnt), vbOK + vbInformation, "表"
sub a(x1, mdl)
dim rwIndexdim table
dim col
on error Resume Next
‘--------------------------------
‘读取excel中的sheet表,并在model中创建物理表
‘--------------------------------
For rwIndex = 1 To 10 ‘指定遍历开始行-遍历的行数
With x1.Workbooks(1).Worksheets(shet)‘需要循环的sheet名称
If rwIndex = 1 Then‘sheet表中的第一行第一列为表中文名,第一行第二列为英文名,第一行第三列为表注释信息
set table = mdl.Tables.CreateNew ‘创建一个表实体
table.Code = .Cells(rwIndex,2).Value‘获取表英文名,即表名
table.Name = .Cells(rwIndex,1).Value‘获取表中文名
table.Comment = .Cells(rwIndex,3).Value ‘获取表注释信息
Continue
End If
If rwIndex = 1 or rwIndex = 2 or .Cells(rwIndex,1).Value = "" Then ‘忽略第一行、第二行和空行(第一行为表相关信息,第二行为表头信息)
continue
Else
set col =table.Columns.CreateNew ‘创建一个字段实体
col.Code = .Cells(rwIndex, 1).Value ‘指定model中code在sheet表中对应的列
col.DataType = .Cells(rwIndex, 3).Value ‘指定model中的DataType在sheet表中对应的列
col.Name = .Cells(rwIndex, 2).Value ‘指定model中的Name在sheet表中对应的列
col.Comment = .Cells(rwIndex, 5).Value ‘指定model中的Comment在sheet表中对应的列
End If
End With
Next
Exit Sub
End sub
3、导出SQL语句,并在数据库中建表。工具栏中点击【Database】==》【Generate Database】==》【确定】保存SQL文件。如图所示:
4、选择一个数据库,【表】右键==》【运行SQL文件】==》【选择文件】==》【开始】执行SQL文件创建表。如图所示:
作者:lightbc
出处:https://www.cnblogs.com/lightbc/p/14564016.html
powerdesigner通过导入excel方式创建物理表详解
标签:des ctrl comm 数据 如图所示 form 创建表 ima option
原文地址:https://www.cnblogs.com/lightbc/p/14612322.html