Làm th? nào đ? c?u h?nh ngu?n d? li?u ODBC trên bay

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 110507 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

TÓM T?T

B?n có th? c?u h?nh ODBC (k?t n?i cơ s? d? li?u m?) d? li?u ngu?n tên l?p tr?nh. Đi?u này s? cho b?n s? linh ho?t đ? xu?t d? li?u mà không bu?c ngư?i s? d?ng m?t cách r? ràng có th? s? d?ng các qu?n tr? viên ODBC ho?c chương tr?nh khác đ? ch? r? tên ngu?n d? li?u. Đi?u này có th?, ví d?, cho phép c?a b?n chương tr?nh đ? s? d?ng API ODBC (giao di?n l?p tr?nh ?ng d?ng) đ? xu?t kh?u m?t.T?p tin XLS. Đ? th?c hi?n vi?c này, h?y s? d?ng ch?c năng SQLConfigDataSource().

Ví d? sau s? d?ng SQLConfigDataSource đ? t?o ra m?t m?i Excel Dados m? ngu?n đư?c g?i là "D? li?u ngu?n m?i Excel":
   SQLConfigDataSource(NULL,ODBC_ADD_DSN,
     (LPSTR) "Excel Files (*.xls)",
     (LPSTR) "DSN=New Excel Data Source\0"
     "Description=New Excel Data Source\0"
     "FileType=Excel\0"
     "DataDirectory=C:\\EXCELDIR\0"
     "MaxScanRows=20\0");
Lưu ? r?ng các ngu?n d? li?u th?c s? là m?t thư m?c (C:\EXCELDIR). Excel tr?nh đi?u khi?n có thư m?c như là các ngu?n d? li?u, và các t?p tin như các cá nhân b?ng (m?t b?ng cho m?i.T?p tin XLS).

Đ? thêm thông tin v? vi?c t?o ra b?ng, xin vui l?ng xem dư?i đây bài trong cơ s? ki?n th?c Microsoft:
110508T?o b?ng v?i n?n t?ng cơ s? d? li?u các l?p h?c
Các thông tin dư?i đây th?o lu?n v? các tham s? c?n ph?i đư?c thông qua v?i ch?c năng SQLConfigDataSource() ODBC API. S? d?ng các Ch?c năng SQLConfigDataSource(), b?n ph?i bao g?m ODBCINST.T?p tin tiêu đ? h và s? d?ng ODBCINST.LIB chuy?n nh?p thư vi?n.

Lưu ?: Đ?i v?i các ?ng d?ng 32-bit, b?n ph?i v?n bao g?m ODBCINST.H tiêu đ? t?p tin, tuy nhiên b?n ph?i bây gi? liên k?t v?i ODBCCP32.lib

Lưu ?: Nh?ng thông tin có trong bài vi?t này đư?c nhân đôi ? các 'L?p tr?nh v?i MFC Vi?t' keøm Visual C++ 4.0. Các bài vi?t có th? đư?c t?m th?y b?ng cách t?m ki?m cho "sqlconfigdatasource" và ch?n bài vi?t có tiêu đ? ' FAQ: Programatically c?u h?nh ngu?n d? li?u ODBC'.

THÔNG TIN THÊM

Lưu ?: Bài này ban đ?u đư?c vi?t cho các thành ph?n ODBC 16-bit ch?. Các thành ph?n ODBC 16-bit s? d?ng t?p tin này đ? lưu tr? thông tin v? c?u h?nh datasources (ODBC.INI) và cài đ?t tr?nh đi?u khi?n (ODBCINST.ĐI?U NÀY). Các 32-bit ODBC thành ph?n không c?n s? d?ng t?p tin này, nhưng thay vào đó, vi?t như v?y thông tin đ? đăng k?. Thông tin h? th?ng datasource và cài đ?t tr?nh đi?u khi?n thông tin đư?c lưu tr? trong HKEY_LOCAL_MACHINE\SOFTWARE\ ODBC\ trong ODBC.INI và ODBCINST.NÀY, tương ?ng. Non-h? th?ng datasources đư?c lưu tr? trong HKEY_CURRENT_USER\SOFTWARE\ODBC\ODBC.ĐI?U NÀY. Ph?n c?n l?i c?a đi?u này bài vi?t, tài li?u tham kh?o đ? ODBC.NÀY nên đư?c hi?u là đ? c?p đ?n các thích h?p ph?n c?a cơ quan đăng k? n?u b?n đang s? d?ng ODBC 32-bit các thành ph?n.

M?t tên ODBC ngu?n d? li?u có th? đư?c t?o ra b?ng cách s? d?ng các qu?n tr? viên ODBC chương tr?nh ho?c ti?n ích tương t?. Tuy nhiên, đôi khi nó là mong mu?n đ? t?o ra m?t d? li?u ngu?n tên tr?c ti?p t? các ?ng d?ng c?a b?n đ? cho truy c?p có th? thu đư?c mà không yêu c?u ngư?i s? d?ng đ? ch?y m?t ti?n ích riêng bi?t.

Các qu?n tr? viên ODBC (thư?ng đư?c cài đ?t trong Windows Control Panel) t?o ra m?t ngu?n d? li?u m?i b?ng cách đ?t m?c trong ODBC.T?p tin này. Đi?u này t?p truy v?n b?i qu?n l? tr?nh đi?u khi?n ODBC đ? có đư?c các yêu c?u thông tin v? các ngu?n d? li?u. Nó là quan tr?ng đ? bi?t thông tin nào c?n ph?i đư?c đ?t trong ODBC.NÀY b?i v? b?n s? c?n ph?i cung c?p nó v?i các cu?c g?i đ?n SQLConfigDataSource().

M?c dù thông tin này có th? đư?c ghi tr?c ti?p vào ODBC.T?p tin này [không có b?ng cách s? d?ng SQLConfigDataSource()], b?t k? ?ng d?ng mà th?c hi?n đi?u này là d?a vào các k? thu?t hi?n t?i mà ngư?i qu?n l? tr?nh đi?u khi?n dùng đ? duy tr? d? li?u c?a nó. N?u m?t phiên b?n sau này đ? qu?n l? tr?nh đi?u khi?n ODBC th?c hi?n k? l?c gi? v? d? li?u ngu?n trong m?t cách khác nhau, sau đó b?t k? ?ng d?ng mà s? d?ng k? thu?t này s? b? h?ng. Nói chung b?n nên s? d?ng m?t API ch?c năng khi m?t trong đư?c cung c?p.

Dư?i đây, b?n s? t?m th?y m?t l?i gi?i thích các tham s? c?a các Ch?c năng SQLConfigDataSource(). Nhi?u thông tin đư?c l?y t? các L?p tr?nh ODBC API tài li?u tham kh?o đư?c cung c?p v?i Visual C++ Phiên b?n 1.5. M?u th? nghi?m ch?c năng:
   BOOL SQLConfigDataSource(HWND hwndParent,UINT fRequest,
                            LPCSTR lpszDriver,
                            LPCSTR lpszAttributes);
hwndParent -Đây là c?a s? s? đư?c s? d?ng như là các ch? s? h?u c?a b?t k? h?p tho?i đư?c t?o ra b?i m?t trong hai các Qu?n l? tr?nh đi?u khi?n ho?c tr?nh đi?u khi?n ODBC c? th? đ? có đư?c thông tin b? sung t? ngư?i dùng v? các d? li?u m?i ngu?n. N?u không ph?i là đ? thông tin cung c?p trong các lpszAttributes tham s?, m?t h?p tho?i s? xu?t hi?n. Tham s? này có th? là NULL, xem tài li?u tham kh?o cho chi ti?t c? th?.

fRequest -Các ho?t đ?ng đư?c th?c hi?n. Giá tr? có th? là:
                      ODBC_ADD_DSN: Add new user data
                        source.
                      ODBC_CONFIG_DSN: Modify an
                        existing data source.
                      ODBC_REMOVE_DSN: Remove an
                        existing data source.
Các giá tr? sau đây có s?n trong ODBC 2.53.0 ho?c sau 32-bit ch?:
                      ODBC_ADD_SYS_DSN: Add a new
                        system data source.
                      ODBC_CONFIG_SYS_DSN: Modify
                        an existing system data
                        source.
                      ODBC_REMOVE_SYS_DSN: Remove
                        an existing system data
                        source.
lpszDriver -Mô t? tr?nh đi?u khi?n. Như đ? c?p đ?n tài li?u hư?ng d?n, Đây là tên tr?nh bày cho ngư?i s? d?ng thay v? các tr?nh đi?u khi?n v?t l? (DLL). B?n có th? xác đ?nh các mô t? m?t tr?nh đi?u khi?n b?ng cách s? d?ng chương tr?nh qu?n tr? ODBC như sau:

  1. Ch?y chương tr?nh qu?n tr? ODBC.
  2. Ch?n thêm. Đi?u này s? cung c?p cho b?n m?t danh sách các tr?nh đi?u khi?n đ? cài đ?t.
Danh sách có ch?a mô t? tr?nh đi?u khi?n. Nó là mô t? này mà b?n s? s? d?ng như là tham s? lpszDriver. Lưu ? r?ng các Mô t? toàn b? đư?c s? d?ng [ví d?, "Excel Files (*.xls)"] bao g?m các ph?n m? r?ng t?p tin và d?u ngo?c đơn n?u chúng t?n t?i trong các mô t?.

Tùy ch?n, b?n có th? ki?m tra các t?p tin ODBCINST.NÀY, mà ch?a danh sách t?t c? các tr?nh đi?u khi?n m?c và mô t? trong ph?n [tr?nh đi?u khi?n ODBC].

lpszAttributes -Danh sách các thu?c tính trong các h?nh th?c "keyname = giá_tr?". Các dây đư?c ngăn cách b?i null terminators v?i hai liên ti?p terminators tr?ng ? cu?i danh sách. Các thu?c tính này ch? y?u s? m?c đ?nh đ?c trưng cho tr?nh đi?u khi?n m?c, mà đi vào ODBC.T?p tin này cho các d? li?u m?i ngu?n. M?t tr?ng đi?m quan tr?ng, mà không đư?c đ? c?p trong các ODBC API tài li?u tham kh?o cho ch?c năng này, là "dsn" mà ch? đ?nh tên c?a các ngu?n d? li?u m?i. Ph?n c?n l?i các m?c đư?c c? th? cho tr?nh đi?u khi?n Đ?i v?i các ngu?n d? li?u m?i. Thông thư?ng là không c?n thi?t cung c?p t?t c? các m?c nh?p b?i v? tr?nh đi?u khi?n có th? nh?c ngư?i s? d?ng (n?u hwndParent không ph?i là NULL) v?i h?p tho?i cho các giá tr? m?i. B?n có th? mu?n cung c?p m?t cách r? ràng m?c đ?nh giá tr? v? v?y mà ngư?i dùng không đư?c nh?c.

M?t cách đ? t?m các keynames và các giá tr? c?a h? là đ? ki?m tra m?c đăng k? cho m?t ngu?n d? li?u đ? đư?c c?u h?nh (có l? m?t mà đ? đư?c c?u h?nh b?i chương tr?nh qu?n tr? ODBC):

Quan tr?ng Ph?n này, phương pháp, ho?c công vi?c có bư?c mà cho b?n bi?t làm th? nào đ? ch?nh s?a registry. Tuy nhiên, v?n đ? nghiêm tr?ng có th? x?y ra n?u b?n s?a đ?i registry không chính xác. V? v?y, h?y ch?c ch?n r?ng b?n làm theo các bư?c sau m?t cách c?n th?n. Đ? b?o v? đư?c thêm vào, sao lưu s? đăng k? trư?c khi b?n s?a đ?i nó. Sau đó, b?n có th? khôi ph?c s? đăng k? n?u m?t v?n đ? x?y ra. Đ? bi?t thêm chi ti?t v? làm th? nào đ? sao lưu và khôi ph?c s? đăng k?, h?y nh?p vào s? bài vi?t sau đ? xem bài vi?t trong cơ s? ki?n th?c Microsoft:
322756 Cách sao lưu và lưu tr? s? đăng kư trong Windows

  1. B?ng cách s? d?ng regedit đi đ?nHKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\
  2. T?m hive tương ?ng v?i tên ngu?n d? li?u c?a b?n. ? đó b?n s? t?m th?y các c?p t? khóa. C?nh báo, b?ng tay ch?nh s?a giá tr? đ?ng k? có th? gây ra s? m?t ?n đ?nh h? th?ng và có l? là m?t s? th?t b?i không th? khôi ph?c.
B?n c?ng có th? mu?n ki?m tra các tài li?u tr?nh đi?u khi?n c? th? b?n đang s? d?ng. Thông tin h?u ích có th? đư?c t?m th?y trong s? tr? giúp tr?c tuy?n tr?nh đi?u khi?n, mà có th? đư?c truy c?p b?ng cách ch?y ODBC Administrator: Nh?p vào thêm, ch?n tên tr?nh đi?u khi?n và b?m OK. Khi các thông tin cho vi?c t?o ra m?t ngu?n d? li?u m?i đi lên cho r?ng tr?nh đi?u khi?n đ?c bi?t, ch?n Tr? giúp. Đi?u này s? m? t?p tin tr? giúp cho r?ng tr?nh đi?u khi?n đ?c bi?t, mà thư?ng ch?a thông tin quan tr?ng liên quan đ?n vi?c s? d?ng các tr?nh đi?u khi?n.

THAM KH?O

ODBC Programmer tham kh?o và SDK Guide (có s?n trong sách tr?c tuy?n).

Thu?c tính

ID c?a bài: 110507 - L?n xem xét sau cùng: 17 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
  • Microsoft Data Access Components 2.7
T? khóa: 
kbdatabase kbhowto kbmt KB110507 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:110507

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com