给当前数据库或当前数据库中的字段、命名连接、表或视图设置一个属性。
- DBSETPROP(cName, cType, cProperty, ePropertyValue)
参数
cName:
指定要设置属性的数据库、字段、命名连接、表或用DBGETPROP( )返回信息获得的视图的名称。若要给表或视图中的字段设置一个属性,应将包含该字段的表或视图的名称加在字段名前面。例如,要为 customer 表中的 custid 字段设置属性,应该将 cName 指定为:
- customer.custid
- cType 指定 cName 是否为当前数据库,或者当前数据库中的一个字段、命名连接、表或视图。下表列出了 cType 的允许值:
cType | 说明 |
CONNECTION | cName 是当前数据库中的一个命名连接。 |
DATABASE | cName是当前数据库。 |
FIELD | cName是当前数据库中的一个字段。 |
TABLE | cName是当前数据库中的一个表。 |
VIEW | cName是当前数据库中的一个视图。 |
- cProperty 指定属性名称,如果属性是只读的,则它的值就不能用 DBSETPROP( )更改。如果试图更改只读属性,Visual FoxPro则产生一个错误信息。有关使用 cProperty 可以指定的属性及其数据类型的详细内容,请参见 DBGETPROP( ) ePropertyValue 指定 cProperty 的设定值, ePropertyValue 的数据类型必须和属性的数据类型相同。 Visual FoxPro 并不验证为属性指定的值是否有效,因而 DBSETPROP()函数为某一属性可能设置无效值。例如,可以用 DBSETPROP()函数为一个字段的规则表达式设置一个无效表达式,而 Visual FoxPro 并不产生错误。当设置一个视图的表属性要避免产生这样的错误,在设置ePropertyValue之前保证数据库的设计语法。
- <databaseName>!ePropertyValue
逻辑型。如果Visual FoxPro成功设置了指定的属性, DBSETPROP( ) 返回“真 (.T.)。 如果指定的属性不能设置,Visual FoxPro产生一个错误。
例子
下面的示例使用 DBSETPROP( ) 设置表 customer
中字段 cust_id
的注释,使用 DBGETPROP( ) 显示注释。
- CLOSE DATABASES
- CLEAR
- OPEN DATABASE (HOME(2) + 'data\testdata')
- USE customer && Open customer table
- = DBSETPROP("customer.cust_id", "Field", "Comment", ;
- "Property has been set by DBSETPROP.") && New field comments
- cRESULTS = DBGETPROP("customer.cust_id", "Field", "Comment")
- WAIT WINDOW "Cust_id field comments: "+ cRESULTS && Display comments
來自msdn:http://technet.microsoft.com/zh-cn/70w4w6k9%28en-us,VS.80%29.aspx