2009-10-30 55 views

回答

3

您可以通過數據窗口的列列表進行迭代,並使用描述或點符號檢查的一些關鍵特性:

<DW Control Name>.Describe("<Columnname>.Key") 
or 
<DW Control Name>.Object.<Columnname>.Key 

這讓你知道列是否包含在您在數據窗口看到高亮列表菜單項下的畫家Rows->更新屬性 - >獨特的鍵列(S):

下面是該屬性的文檔:

http://infocenter.sybase.com/help/topic/com.sybase.dc37783_1150/html/dwref/CAIBHFGF.htm

1

似乎沒有一個屬性可以通過點符號或隔離主鍵的描述函數獲取,至少我沒有看到一個屬性。我可能在這裏完全錯了,還有更好的方法來做到這一點。

但我認爲如果你想在Powerscript中這樣做,你必須掃描數據窗口中的列並檢查「columnname.key」屬性以確定密鑰中的列。

我希望這也取決於你在數據窗口更新屬性中定義了主鍵列;通常這些不是由開發人員爲只讀數據窗口定義的。

如果有人有更好的方法,請發帖。

0

你的對象或代碼有什麼需要你知道表的主鍵是什麼?自從2.0版本以來,我一直在使用Powerbuilder,並且我無法想起我需要知道的情況。