You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Enterprise Architect中正确提取数据库表列的可空性?

正确提取Enterprise Architect数据库表列的可空性

你之前对LowerBound和UpperBound的理解其实是个误区——这两个属性是用来定义数组或集合类型字段的元素数量范围的,和数据库列的可空性完全不相关。EA里专门有一个属性用来标记列是否允许NULL,下面分两种场景告诉你怎么正确获取:

1. 使用EA内置脚本提取(以VBScript为例)

在EA的脚本编辑器里,你可以遍历表的列,直接访问列的AllowNulls属性,它会返回布尔值:True表示允许NULL,False表示不允许。

示例代码:

Dim table as EA.Element
Set table = Repository.GetElementByGUID("{你的表元素GUID}") ' 替换成目标表的GUID

Dim col as EA.Attribute
For Each col In table.Attributes
    ' 判断列是否允许NULL
    If col.AllowNulls Then
        Session.Output(col.Name & " 允许NULL")
    Else
        Session.Output(col.Name & " 不允许NULL")
    End If
Next

2. 通过EA API提取(以C#为例)

如果是用外部程序调用EA API,同样是访问EA.Attribute对象的AllowNulls属性:

示例代码:

using EA;

Repository repo = new Repository();
repo.OpenFile(@"你的EA模型路径.eap");

Element table = repo.GetElementByGUID("你的表元素GUID");
foreach (Attribute col in table.Attributes)
{
    bool isNullable = col.AllowNulls;
    Console.WriteLine($"{col.Name} 允许NULL: {isNullable}");
}

repo.CloseFile();

验证设置是否正确

另外,你可以在EA的UI里确认列的可空性设置:打开表的属性窗口,切换到「Columns」标签页,查看对应列的「Allow Nulls」复选框是否勾选——这个状态就是AllowNulls属性对应的取值。

内容的提问来源于stack exchange,提问作者Ruudjah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 07:29:00