是否可以通过对 sybase 15.7 服务器进行逆向工程来自动创建(运行脚本)(.pdm)的物理数据库模型?
我知道我可以手动完成,但可以通过脚本完成吗?
是否可以通过对 sybase 15.7 服务器进行逆向工程来自动创建(运行脚本)(.pdm)的物理数据库模型?
我知道我可以手动完成,但可以通过脚本完成吗?
我正在使用这样的东西来反转数据库。
dim path
path = EvaluateNamedPath("%WORKDIR%\cnctjdbcasa.dcp")
ReverseModel path, "dbuser", "dbpassword", "Sybase SQL Anywhere 12"
Function ReverseModel(cnxDSN, cnxUSR, cnxPWD, sDBMS)
Dim mdl
Set mdl = CreateModel(PdPDM.cls_Model, "|DBMS=" & sDBMS)
set ReverseModel = mdl
If mdl is Nothing Then
MsgBox "Error: Unable to create a physical model for " & sDBMS, 0, "ReverseTest"
Exit Function
End If
' connect to the database with connection parameters
If Not(mdl.ConnectToDatabase(cnxDSN, cnxUSR, cnxPWD)) Then
MsgBox "Error: Unable to connect to " & cnxDSN & " - " & cnxUSR, 0, "ReverseTest"
set ReverseModel = nothing
mdl.Close false
exit Function
End If
' reverse tables from ODBC
Dim opt
Set opt = mdl.GetPackageOptions()
opt.ReversedScript = False
opt.ReverseAllTables = true
opt.ReverseAllViews = false
opt.ReverseAllStorage = false
opt.ReverseAllTablespace = false
opt.ReverseAllDomain = false
opt.ReverseAllUser = false
opt.ReverseAllProcedures = false
opt.ReverseAllTriggers = false
opt.ReverseAllSystemTables = false
opt.ReverseAllSynonyms = false
' not interested in table details
opt.ReversePrimaryKey = false
opt.ReverseForeignKey = false
opt.ReverseAlternateKey = false
opt.ReverseIndex = false
opt.ReverseCheck = false
opt.ReversePhysicalOptions = false
opt.ReverseStatistics = false
opt.ReverseTablPermissions = false
mdl.ReverseDatabase
End Function
您可能很久以前就已经想到了,但也许我仍然可以帮助某人。因此,我通过 Tasks->Generate Scripts 从 Server Management Studio 中的数据库创建了一个 .sql 脚本文件。接下来,在 PowerDesigner 12.5 中,我执行了逆向工程 -> 数据库(选择复制模型中的 DBMS 定义)-> 确定(选择脚本文件),等等 -> 我的 PhysicalDataModel 包含一个 PhysicalDiagram。我无法理解他说什么语言,但这个人给了我一个很好的主意。 https://www.youtube.com/watch?v=A8I47kLdIXg 快乐编码 :))