国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Access > 正文

解析ACCESS數據庫中Field對象的caption屬性讀寫

2024-09-07 19:03:54
字體:
來源:轉載
供稿:網友

ACCESS數據庫中Field對象的caption屬性(也就是標題)屬性是用來設置數據字段的標題的,在正常的數據庫設計中為了保持維護的便利性,許多開發者都將字段名與標題做了分別設置,標題往往比字段名更友好,更能說明字段的用途。本文章說明如何用VBA讀寫該屬性。
可惜Field對象的CAPTION屬性并不是ADO原生對象,而是“可由ADO訪問的ACCESS屬性”,在幫助文檔中介紹了兩種訪問這個屬性的方法,一種利用ADO,一種利用DAO,在這里我直接說出結果,由于在ACCESS2003及以前的版本中Field對象并不是ACCESSObject對象,因而也就沒有AccessObjectProperties 屬性,所以我們也就別想在ADO中去解決這個問題吧,現在給出DAO的代碼解決辦法

Sub SetProperty(dbsTemp As DAO.Field, strName As String, _
booTemp As String)

Dim prpNew As DAO.Property
Dim errLoop As Error

' Attempt to set the specified property.
On Error GoTo Err_Property
dbsTemp.Properties(strName) = booTemp
On Error GoTo 0

Exit Sub

Err_Property:

' Error 3270 means that the property was not found.
If DBEngine.Errors(0).Number = 3270 Then
' Create property, set its value, and append it to the
' Properties collection.
Set prpNew = dbsTemp.CreateProperty(strName, _
dbText, booTemp)
dbsTemp.Properties.Append prpNew
Resume Next
Else
' If different error has occurred, display message.
For Each errLoop In DBEngine.Errors
MsgBox "Error number: " & errLoop.Number & vbCr & _
errLoop.Description
Next errLoop
End
End If

End Sub

Sub DisplayClumCaption(ByVal tbname As String, ByVal fldIndex As Integer)

Dim dset As DAO.TableDef) //*****必須使用TableDef對象

Dim i As Integer
Dim tmpProp As DAO.Property //強制使用DAO類型
Dim fld As DAO.Field //強制使用DAO類型
Dim tmpTxt As String
'On Error Resume Next

Dim msg As String
Dim cdb As DAO.Database //*****強制使用DAO類型
Set cdb = CurrentDb //****要害,確定對當前數據庫的靜態引用
Set dset = cdb.TableDefs(tbname)//*****必須使用TableDef對象

For Each fld In dset.Fields
tmpTxt = fld.Name
SetProperty fld, "Caption", tmpTxt
msg = msg fld.Properties("Caption")
msg = msg Chr(10) Chr(13)
Next fld
MsgBox msg
End Sub


這里代碼中有兩個SUB,一個是SetProperty ,用來判定一個字段是否有指定的屬性,假如沒有設置,有就將相應的數值賦給該屬性,這段代碼幾乎完全是照搬MS的幫助文檔。另一個是DisplayClumCaption,這是對指定表中的字段按字段名設置其CAPTION屬性的演示代碼。假如有需要,大家可以對SetProperty進行修改,使他變成一個只讀的函數,用來枚舉指定表中每個字段的CAPTION屬性。DisplayClumCaption代碼中,我打“星號”的地方是要重點注重的,因為我在這里曾走過彎路,浪費了一個下午的時間在MSDN中游蕩

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 江门市| 洪泽县| 新源县| 广水市| 弥渡县| 蛟河市| 准格尔旗| 周口市| 卢氏县| 安平县| 临夏市| 海南省| 丰原市| 勃利县| 湖北省| 旬阳县| 昂仁县| 太湖县| 乌鲁木齐市| 康定县| 綦江县| 新田县| 昌乐县| 建宁县| 明水县| 阿勒泰市| 白沙| 南通市| 志丹县| 贺州市| 凤庆县| 依兰县| 简阳市| 右玉县| 新乡市| 永靖县| 佛山市| 蓬莱市| 交城县| 广元市| 连江县|