如何讓ACCESS數(shù)據(jù)庫(kù)中Field對(duì)象的caption可以讀寫
Field對(duì)象的CAPTION屬性并不是ADO原生對(duì)象,而是“可由ADO訪問的ACCESS屬性”,在幫助文檔中介紹了兩種訪問這個(gè)屬性的方法,一種利用ADO,一種利用DAO,在這里我直接說出結(jié)果,由于在ACCESS2003及以前的版本中Field對(duì)象并不是ACCESSObject對(duì)象,因而也就沒有AccessObjectProperties屬性,所以我們也就別想在ADO中去解決這個(gè)問題吧,現(xiàn)在給出DAO的代碼解決辦法。
SubSetProperty(dbsTempAsDAO.Field,strNameAsString,_ booTempAsString) DimprpNewAsDAO.Property DimerrLoopAsError 'Attempttosetthespecifiedproperty.
OnErrorGoToErr_Property dbsTemp.Properties(strName)=booTemp OnErrorGoTo0 ExitSub Err_Property:
'Error3270meansthatthepropertywasnotfound. IfDBEngine.Errors(0).Number=3270Then
'Createproperty,setitsvalue,andappendittothe 'Propertiescollection.
SetprpNew=dbsTemp.CreateProperty(strName,_ dbText,booTemp)
dbsTemp.Properties.AppendprpNew ResumeNext Else
'Ifdifferenterrorhasoccurred,displaymessage. ForEacherrLoopInDBEngine.Errors
MsgBox"Errornumber:"&errLoop.Number&VBCr&_ errLoop.Deion NexterrLoop End EndIf
EndSub SubDisplayClumCaption(ByValtbnameAsString,ByValfldIndexAsInteger)
DimdsetAsDAO.TableDef) //*****必須使用TableDef對(duì)象
DimiAsIntegerDimtmpPropAsDAO.Property //強(qiáng)制使用DAO類型
DimfldAsDAO.Field //強(qiáng)制使用DAO類型DimtmpTxtAsString'OnErrorResumeNext
DimmsgAsStringDimcdbAsDAO.Database //*****強(qiáng)制使用DAO類型
Setcdb=CurrentDb //****關(guān)鍵,確定對(duì)當(dāng)前數(shù)據(jù)庫(kù)的靜態(tài)引用
Setdset=cdb.TableDefs(tbname)//*****必須使用TableDef對(duì)象
ForEachfldIndset.Fields tmpTxt=fld.Name SetPropertyfld,"Caption",tmpTxt msg=msg fld.Properties("Caption")
msg=msg Chr(10) Chr(13) Nextfld MsgBoxmsgEndSub
這里代碼中有兩個(gè)SUB,一個(gè)是SetProperty,用來判斷一個(gè)字段是否有指定的屬性,如果沒有設(shè)置,有就將相應(yīng)的數(shù)值賦給該屬性,這段代碼幾乎完全是照搬MS的幫助文檔。另一個(gè)是DisplayClumCaption,這是對(duì)指定表中的字段按字段名設(shè)置其CAPTION屬性的演示代碼。如果有需要,大家可以對(duì)SetProperty進(jìn)行修改,使他變成一個(gè)只讀的函數(shù),用來枚舉指定表中每個(gè)字段的CAPTION屬性。DisplayClumCaption代碼中,我打“星號(hào)”的地方是要重點(diǎn)注意的,因?yàn)槲以谶@里曾走過彎路,浪費(fèi)了一個(gè)下午的時(shí)間在MSDN中游蕩。
關(guān)鍵字:ACCESS、、Field對(duì)象、caption、讀寫
新文章:
- CentOS7下圖形配置網(wǎng)絡(luò)的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS單網(wǎng)卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗(yàn)證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網(wǎng)打印機(jī)IP講解
- CentOS7使用hostapd實(shí)現(xiàn)無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網(wǎng)絡(luò)重啟出錯(cuò)
- 解決Centos7雙系統(tǒng)后丟失windows啟動(dòng)項(xiàng)
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統(tǒng)有什么不同呢
- Centos 6.6默認(rèn)iptable規(guī)則詳解