對(duì)于動(dòng)態(tài)數(shù)據(jù)源的配置_第1頁(yè)
對(duì)于動(dòng)態(tài)數(shù)據(jù)源的配置_第2頁(yè)
對(duì)于動(dòng)態(tài)數(shù)據(jù)源的配置_第3頁(yè)
對(duì)于動(dòng)態(tài)數(shù)據(jù)源的配置_第4頁(yè)
對(duì)于動(dòng)態(tài)數(shù)據(jù)源的配置_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、對(duì)于動(dòng)態(tài)數(shù)據(jù)源的配置,可以通過(guò)直接操作注冊(cè)表的方法,也可以通過(guò)API完成。相對(duì)來(lái)講API是首選,本篇將對(duì)上幾篇的整理過(guò)程中收集到的API的說(shuō)明及實(shí)例進(jìn)行整理。所列內(nèi)容都來(lái)自網(wǎng)絡(luò),并將在后面給出來(lái)源網(wǎng)址!函數(shù)說(shuō)明(SQLConfigDataSource 函數(shù)被用于動(dòng)態(tài)地添加、修改或刪除數(shù)據(jù)源,該函數(shù)使用下列關(guān)鍵字。關(guān)鍵字描述CHARACTERSET: 對(duì)于Text驅(qū)動(dòng)程序,OEM或ANSI。 COLLATINGSEQUENCE:字段排序的順序。當(dāng)使用dBASE驅(qū)動(dòng)程序時(shí),這個(gè)序列可以是: ASCII (缺省)或International.當(dāng)使用Paradox驅(qū)動(dòng)程序時(shí),這個(gè)序列可以是: ASCI

2、I (缺省),International,Swedish-Finnish,或Norwegian-Danish.這將設(shè)置與“設(shè)置”對(duì)話(huà)框的“排序順序”控件相同的選項(xiàng)。COLNAMEHEADER: 對(duì)于Text驅(qū)動(dòng)程序,指出數(shù)據(jù)的第一個(gè)記錄是否將指定列名。其值為T(mén)RUE或FALSE。COMPACT_DB: 對(duì)于Microsoft Access data compaction驅(qū)動(dòng)程序,在數(shù)據(jù)庫(kù)文件上執(zhí)行數(shù)據(jù)庫(kù)壓縮。有如下的格式:COMPACT_DB=.CREATE_DB: 對(duì)于Microsoft Access驅(qū)動(dòng)程序,創(chuàng)建數(shù)據(jù)庫(kù)文件。有如下的格式:CREATE_DB=,在這里路徑名是一個(gè)Micros

3、oft Access數(shù)據(jù)庫(kù)的完整路徑。如果路徑名指到現(xiàn)有數(shù)據(jù)庫(kù),則將返回錯(cuò)誤。排序順序如“添加數(shù)據(jù)庫(kù)”對(duì)話(huà)框中所設(shè)置,且在按下“Microsoft Access安裝”對(duì)話(huà)框的“創(chuàng)建”按鈕時(shí)顯示此對(duì)話(huà)框會(huì)。如果沒(méi)有指定排序順序,則使用General。當(dāng)使用CREATE_DB關(guān)鍵字時(shí),如果要?jiǎng)?chuàng)建的Microsoft Access數(shù)據(jù)庫(kù)的路徑名稱(chēng)包含一個(gè)或一個(gè)以上的空格,則必須將整個(gè)路徑名稱(chēng)用雙引號(hào)括起來(lái),如下列示例顯示:C:PROGRAM FILESCOMMON FILESMyAccess.mdbC:PROGRAM FILESAccess2.mdb CREATE_DB=C:TEMPtest.mdb

4、(不需要雙引號(hào))CREATE_SYSDB: 對(duì)于Microsoft Access驅(qū)動(dòng)程序,創(chuàng)建系統(tǒng)數(shù)據(jù)庫(kù)文件。有如下的格式:CREATE_SYSDB=,在這里路徑名是一個(gè)Microsoft Access數(shù)據(jù)庫(kù)的完整路徑。如果路徑名指到現(xiàn)有數(shù)據(jù)庫(kù),則將返回錯(cuò)誤。排序順序如“添加數(shù)據(jù)庫(kù)”對(duì)話(huà)框中所設(shè)置,且在按下“Microsoft Access安裝”對(duì)話(huà)框的“創(chuàng)建”按鈕時(shí)顯示此對(duì)話(huà)框會(huì)。如果沒(méi)有指定排序順序,則使用General。CREATE_V2DB: 對(duì)于Microsoft Access驅(qū)動(dòng)程序,創(chuàng)建與Microsoft Access 2.0兼容的數(shù)據(jù)庫(kù)文件。有如下的格式:CREATE_V2D

5、B=,在這里路徑名是一個(gè)Microsoft Access數(shù)據(jù)庫(kù)的完整路徑。如果路徑名指到現(xiàn)有數(shù)據(jù)庫(kù),則將返回錯(cuò)誤。排序順序如“添加數(shù)據(jù)庫(kù)”對(duì)話(huà)框中所設(shè)置,且在按下“Microsoft Access安裝”對(duì)話(huà)框的“創(chuàng)建”按鈕時(shí)顯示此對(duì)話(huà)框會(huì)。如果沒(méi)有指定排序順序,則使用General。當(dāng)使用CREATE_V2DB關(guān)鍵字時(shí),如果要?jiǎng)?chuàng)建的Microsoft Access數(shù)據(jù)庫(kù)的路徑名稱(chēng)包含一個(gè)或一個(gè)以上的空格,則必須用雙引號(hào)將整個(gè)路徑名稱(chēng)括起來(lái),如下列示例顯示:C:PROGRAM FILESCOMMON FILESMyAccess.mdbC:PROGRAM FILESAccess2.mdbCREAT

6、E_V2DB=C:TEMPtest.mdb(不需要雙引號(hào)) DBQ 對(duì)于Microsoft Access或Paradox驅(qū)動(dòng)程序,數(shù)據(jù)庫(kù)文件的名稱(chēng)。對(duì)于Microsoft Excel驅(qū)動(dòng)程序,當(dāng)訪(fǎng)問(wèn)Microsoft Excel5.0、7.0或97的文件時(shí),工作簿文件的名稱(chēng)。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“數(shù)據(jù)庫(kù)”控件相同的選項(xiàng)。 DEFAULTDIR: 對(duì)于數(shù)據(jù)庫(kù)文件(Microsoft Access驅(qū)動(dòng)程序)或目錄 (dBASE,Microsoft Excel,Paradox,或Text驅(qū)動(dòng)程序)的路徑指定。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“選擇目錄”控件,或?qū)τ贛icrosoft Excel,

7、“設(shè)置”對(duì)話(huà)框的“選擇工作簿”控件相同的選項(xiàng)。DELETED: 對(duì)于dBASE驅(qū)動(dòng)程序,指定被標(biāo)記為已刪除的行是否可以被檢索到或被放置。如果設(shè)置成1,則不顯示被刪除的行;如果設(shè)置成0,則把已刪除的行當(dāng)作未刪除的行。默認(rèn)值是不選定。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“顯示刪除列”控件相同的選項(xiàng)。DESCRIPTION: 數(shù)據(jù)源中數(shù)據(jù)的描述。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“描述”控件相同的選項(xiàng)。 DRIVER: 指向驅(qū)動(dòng)程序DLL的路徑說(shuō)明。DRIVERID: 對(duì)于驅(qū)動(dòng)程序的整型標(biāo)識(shí)符。 25 (Microsoft Access) 21 (dBASE III) 277 (dBASE IV) 533 (dB

8、ASE 5.0) 534 (Microsoft Excel 3.0) 278 (Microsoft Excel 4.0) 22 (Microsoft Excel 5.0/7.0) 790 (Microsoft Excel 97) 26 (Paradox 3.x) 282 (Paradox 4.x) 538 (Paradox 5.x) 27 (Text)EXCLUSIVE: 決定數(shù)據(jù)庫(kù)將以獨(dú)占方式(一次只有一個(gè)用戶(hù)訪(fǎng)問(wèn))或分享方式(一次有多個(gè)用戶(hù)訪(fǎng)問(wèn))打開(kāi)??梢允荰RUE(獨(dú)占方式)或FALSE(分享方式)。(這不會(huì)應(yīng)用到Microsoft Excel或Text驅(qū)動(dòng)程序)。這就設(shè)置了與“設(shè)置”對(duì)

9、話(huà)框的“獨(dú)占方式”控件相同的選項(xiàng)。 EXTENSIONS: 列出在數(shù)據(jù)源上“文本文件”的文件名的文件擴(kuò)展名。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“文件類(lèi)型”控件相同的選項(xiàng)。FIL: 文件類(lèi)型 MS Access for Microsoft Access dBase III,dBase IV,or dBase 5 Excel 3.0,4.0,5.0,7.0,or 97 for Microsoft Excel Paradox 3.x,4.x,or 5.x Text. FILETYPE: 對(duì)于Text驅(qū)動(dòng)程序(文本)的文件類(lèi)型。 FIRSTROWHASNAMES: 對(duì)于Microsoft Excel驅(qū)動(dòng)程序

10、,指出范圍中第一行的單元格包含了表的列名 (1)還是沒(méi)有包含 (0)。FORMAT: 對(duì)于Text驅(qū)動(dòng)程序,可以是FIXEDLENGTH、TABDELIMITED、CSVDELIMITED(用逗點(diǎn)分隔)或DELIMITED ()(用括號(hào)中指定的特殊字符分隔)。特殊字符是長(zhǎng)度為1的字符,并且可以是字符、十進(jìn)制或十六進(jìn)制格式。 IMPLICITCOMMITSYNC 決定Microsoft Access驅(qū)動(dòng)程序是否將異步執(zhí)行內(nèi)部或隱含提交。最初將此值設(shè)置成“是”Microsoft Access驅(qū)動(dòng)程序?qū)⒌却峤灰瓿傻膬?nèi)部/隱含事務(wù)。不應(yīng)輕率更改此選項(xiàng)的值。有關(guān)此選項(xiàng)的更多信息,參見(jiàn)Microsof

11、t Jet數(shù)據(jù)庫(kù)引擎程序員指南。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的ImplicitCommitSync控件相同的選項(xiàng)。MAXBUFFERSIZE: Microsoft Access用來(lái)與磁盤(pán)傳送數(shù)據(jù)的內(nèi)部緩沖區(qū)大小,以KB為單位。缺省緩沖區(qū)大小是512K(顯示為512)??捎萌魏伪?56整除的整型值。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“緩沖區(qū)大小”控件相同的選項(xiàng)。 MAXSCANROWS 對(duì)于Microsoft Access、Microsoft Excel或Text驅(qū)動(dòng)程序,在根據(jù)現(xiàn)有數(shù)據(jù)來(lái)設(shè)置列的數(shù)據(jù)類(lèi)型時(shí),所掃描的行數(shù)??梢暂斎胗?到16的數(shù)字作為掃描的行數(shù)。默認(rèn)值為8;如果將它設(shè)置成0,則掃描全部行

12、。(越界的數(shù)字將返回錯(cuò)誤)。對(duì)于Text驅(qū)動(dòng)程序,可輸入由1到32767的數(shù)字為掃描的行數(shù);不過(guò),默認(rèn)值總是25。(越界的數(shù)字將返回錯(cuò)誤)。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“掃描”控件相同的選項(xiàng)。PAGETIMEOUT 指定一頁(yè)(如果不使用)在刪除之前保持在緩沖區(qū)中的時(shí)間的長(zhǎng)短,以十分之一秒為單位。對(duì)于Microsoft Access驅(qū)動(dòng)程序,默認(rèn)值是5個(gè)十分之一秒(0.5秒)。對(duì)于dBASE和Paradox驅(qū)動(dòng)程序,缺省值是1秒的600/10 (60秒).注意,此選項(xiàng)應(yīng)用于所有使用ODBC驅(qū)動(dòng)程序的數(shù)據(jù)源。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“頁(yè)超時(shí)”控件相同的選項(xiàng)。PARADOXNETPATH: 對(duì)于

13、Paradox驅(qū)動(dòng)程序,包含Paradox鎖定數(shù)據(jù)庫(kù)的目錄的完整路徑,因?yàn)樗琍DOXUSRS.net文件 (Paradox 4.x)或PARADOX.net文件 (Paradox 5.x)。如果其中一個(gè)文件未包含在目錄中,Paradox驅(qū)動(dòng)程序?qū)?chuàng)建一個(gè)。關(guān)于這些文件的詳細(xì)信息,請(qǐng)參閱Paradox文檔。在可以選定網(wǎng)絡(luò)目錄之前,必須輸入Paradox用戶(hù)名稱(chēng)。這就設(shè)置了與Paradox“設(shè)置”對(duì)話(huà)框的“選定網(wǎng)絡(luò)目錄”控件相同的選項(xiàng)。 PARADOXNETSTYLE 對(duì)于Paradox驅(qū)動(dòng)程序,當(dāng)存取Paradox數(shù)據(jù)時(shí)使用的網(wǎng)絡(luò)存取方式是:對(duì)于Paradox 3.x用“3.x”或?qū)τ赑ar

14、adox 4.x或5.x 用“4.x”。如果版本是Paradox 4.x或5.x,可以設(shè)置成“3.x”或“4.x”;如果版本是Paradox 3.x,樣式必須是“3.x”。這就設(shè)置了與Paradox“設(shè)置”對(duì)話(huà)框的“網(wǎng)絡(luò)樣式”控件相同的選項(xiàng)。 PARADOXUSERNAME: 對(duì)于Paradox驅(qū)動(dòng)程序,Paradox用戶(hù)名稱(chēng)。這就設(shè)置了與Paradox“設(shè)置”對(duì)話(huà)框的“用戶(hù)名稱(chēng)”控件相同的選項(xiàng)。PWD: 對(duì)于Microsoft Access或Paradox驅(qū)動(dòng)程序,密碼。對(duì)于Paradox驅(qū)動(dòng)程序,這是可選的關(guān)鍵字,而且驅(qū)動(dòng)程序不會(huì)將它寫(xiě)到文件中。用它調(diào)用SQLDriverConnect,與

15、有密碼安全的Paradox文件相對(duì)。READONLY: TRUE使文件為只讀;FALSE使文件不是只讀。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“只讀”控件相同的選項(xiàng)。 REPAIR_DB: 對(duì)于Microsoft Access repairs a database驅(qū)動(dòng)程序,在提交進(jìn)程期間失敗而損害的數(shù)據(jù)庫(kù)修復(fù)。STATISTICS: 對(duì)于dBASE驅(qū)動(dòng)程序,確定表大小統(tǒng)計(jì)是否是近似的。注意,此選項(xiàng)應(yīng)用于所有使用ODBC驅(qū)動(dòng)程序的數(shù)據(jù)源。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“近似(行)計(jì)數(shù)”控件相同的選項(xiàng)。SYSTEMDB: 對(duì)于Microsoft Access驅(qū)動(dòng)程序,指向系統(tǒng)數(shù)據(jù)庫(kù)文件的路徑規(guī)范。這就設(shè)置了與

16、“設(shè)置”對(duì)話(huà)框的“系統(tǒng)信息庫(kù)”控件相同的選項(xiàng)。THREADS: 使用引擎的背景線(xiàn)程數(shù)。對(duì)于Microsoft Access驅(qū)動(dòng)程序,默認(rèn)值為3,但可以更改。對(duì)于dBASE,Microsoft Excel,Paradox,和Text驅(qū)動(dòng)程序,這個(gè)值是3,并且不能被改變。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的“線(xiàn)程”控件相同的選項(xiàng)。UID: 對(duì)于Microsoft Access驅(qū)動(dòng)程序,用于登錄的用戶(hù)ID名稱(chēng)。 USERCOMMITSYNC: 決定Microsoft Access驅(qū)動(dòng)程序是否將異步執(zhí)行用戶(hù)定義的事務(wù)。最初將此值設(shè)置成 “Yes”,表示Microsoft Access驅(qū)動(dòng)程序?qū)⒌却峤灰淹瓿傻?/p>

17、用戶(hù)定義的事務(wù)。不應(yīng)輕率更改此選項(xiàng)的值。有關(guān)此選項(xiàng)的更多信息,參見(jiàn)Microsoft Jet數(shù)據(jù)庫(kù)引擎程序員指南。這就設(shè)置了與“設(shè)置”對(duì)話(huà)框的UserCommitSync控件相同的選項(xiàng)。函數(shù)原型:SQLConfigDataSource(hwndParent: Integer; fRequest: Integer;lpszDriverString: String; lpszAttributes: String): Integer;調(diào)用時(shí)的聲明:function SQLConfigDataSource(hwndParent: Integer; fRequest: Integer;lpszDrive

18、rString: String; lpszAttributes: String): Integer;stdcall;external ODBCCP32.DLL;一, Access創(chuàng)建語(yǔ)法, if(SQLConfigDataSource(m_pMainWnd-m_hWnd,ODBC_ADD_DSN,Microsoft Access Driver (*.mdb),DSN=Personnel0DBQ=C:My Documentsdq.mdb0DefaultDir=C:My Documents0Driver=Microsoft Access Driver (*.mdb)0DriverId=7900De

19、leted=10Description=兵營(yíng)房屋信息ODBC數(shù)據(jù)源0FileType=Access0JetIniPath=odbcddp.ini0MaxScanRows=200MaxBufferSize=512ImplicitCommitSync=No0UserCommitSync=No0Exclusive=10/獨(dú)占ReadOnly=10/只讀UID=Smith0SafeTransactions=00PWD=Sesame0DATABASE=dq0ExtendedAnsiSQL=10Statistics=000)AfxMessageBox(創(chuàng)建成功!);elseAfxMessageBox(取消

20、創(chuàng)建或創(chuàng)建失敗!);二,SQL創(chuàng)建語(yǔ)法(SQLConfigDataSource(0, ODBC_ADD_SYS_DSN,SQL Server,DSN=Record_ODBC+ chr(0) +Server=(local)+ chr(0) +Database=master+ chr(0) +Description=DragonPC SQLServer ODBC Source+ chr(0);DSN:你的ODBC數(shù)據(jù)源名稱(chēng)。Server:你的數(shù)據(jù)庫(kù)服務(wù)器名稱(chēng),使用(local)指的是本地計(jì)算機(jī)安裝的數(shù)據(jù)庫(kù)。注:最新的SQL Server 2000支持一臺(tái)計(jì)算機(jī)運(yùn)行多個(gè)SQL Server服務(wù),這個(gè)

21、時(shí)候你需要指定SqlSever的InstanceName。Address:指定SQL Server服務(wù)器的網(wǎng)絡(luò)IP地址。Database:指定默認(rèn)數(shù)據(jù)庫(kù)名稱(chēng)。Language:指定默認(rèn)語(yǔ)言。Description:備注信息。三,DBF創(chuàng)建語(yǔ)法(SQLConfigDataSource(0, ODBC_ADD_SYS_DSN, Microsoft Visual FoxPro Driver + CHR(0), dsn=SourceTable + CHR(0) + BackgroundFetch=Yes + CHR(0) + Description=descripcion de la conexion

22、 + CHR(0) + Exclusive=No + CHR(0) +sourcedbstr + CHR(0) +Sourcetype=DBF);四,MySQL創(chuàng)建語(yǔ)法及參數(shù)說(shuō)明(1、用Delphi連接MySQL數(shù)據(jù)庫(kù),一般推薦兩種方式:dbExpress,ODBC。dbExpress的效率較高,但對(duì)于本地客戶(hù)端數(shù)據(jù)集比較麻煩。ODBC非常通用,如果用ODBC作為數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)層,后臺(tái)數(shù)據(jù)庫(kù)可以很容易切換,而代碼基本不用修改。我們假設(shè)用ODBC連接MySQL數(shù)據(jù)庫(kù),首先要下載MySQL的ODBC驅(qū)動(dòng),到MySQL的官方網(wǎng)站就可以下載,然后安裝即可。2、在程序中一般要根據(jù)用戶(hù)的配置自動(dòng)配置ODBC,而不是讓用戶(hù)打開(kāi)ODBC的配置窗口進(jìn)行手工配置。ODBC的配置信息一般寫(xiě)在注冊(cè)表中: HKEY_LOCAL_MACHINESOFTWAREODBCODBC.INIODBC Data Sources。我們可以通過(guò)寫(xiě)注冊(cè)表的方法來(lái)建立ODBC連接,但操作注冊(cè)表還算麻煩;為了簡(jiǎn)單,采用ODBC驅(qū)動(dòng)提供的配置API函數(shù):SQLConfigDataS

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論