Chuyên trang Oracle to Excel (O2E)

Liên hệ QC

HideBoy

Thành viên thường trực
Tham gia
6/1/08
Bài viết
204
Được thích
413
Nghề nghiệp
Hỏi mình nhé!
GPE có nhiều bài viết về kết nối Excel tới các cơ sở dữ liệu. Tuy nhiên, ở đây mình muốn lập một chuyên trang về kết nối và phân tích xử lý dữ liệu Orcle. Một ngày từ DB bạn có thể tổng hợp ra một báo cáo trực tiếp trên Excel với các tùy biến khác nhau; nếu người khác phải làm mất một tháng, bạn chỉ cần làm mất 0.2s! Vấn đề bạn có chịu nghiên cứu không? Để có 0,2s đó! Bạn sẽ có thể phải nghiên cứu mất một tháng, hoặc nhiều hơn! Hãy tưởng tượng bạn làm hiệu quả thế nào nếu như sản phẩm đó áp dụng một hay nhiều năm. Hãy chuẩn bị cho mình hành trang đầy đủ:
1. Quyền truy cập dữ liệu (Ít nhất cũng là quyền READ)
2. Cấu trúc dữ liệu và mô hình quan hệ CSDL, Dữ liệu vào ra.
3. Công cụ hỗ trợ. Thay vì ngồi lần mò mã lệnh, hãy sử dụng công cụ có ngôn ngữ đặc tả dễ hiểu: SQL Navigator, SQL plus, ....
4. Nghiệp vụ: đóng vai trò quan trọng trong việc bạn xuất ra thông tin gì? hiệu quả đến đâu? Đòi hỏi bạn phải nắm vững nghiệp vụ: Bạn làm kế toán? xây dựng? Công chức? sẽ cho bạn biết bạn sẽ làm gì?
5. Kiến thức lập trình cơ bản về VBA
6. Trình diễn kết quả trên Excel sao cho người sử dụng dù ít kiến thức về Office cũng làm được mà không cần phải hướng dẫn nhiều! (Ví dụ: cứ mở file excel ra là có báo cáo)
HB sẽ lần lượt đưa từng bài phân tích và mong mọi người có ý kiến đóng góp!

From HaịThong:
Tiếp đi bạn ơi. Mình cũng rất quan tâm đến vấn đề này nhưng mù tịt
 
Chỉnh sửa lần cuối bởi điều hành viên:
Dữ liệu Oracle và các công cụ kết xuất dữ liệu

Phần I: Cơ sở dữ liệu Oracle và lấy dữ liệu trong oracle ra.
Bài 1: Lấy dữ liệu từ Oracle ra Excel nhé! Nhưng chưa phải bằng VBA đâu!
Bạn không phải là dân lập trình chuyên nghiệp, chỉ đơn giản là làm thế nào để lấy ra được cái dữ liệu mình cần lấy trong cái mà mọi người gọi là Oracle! Tôi cũng chẳng biết nó mô tê thế nào! Nhưng tôi biết một công cụ có thể giúp tôi làm được điều đó. Bây giờ thì tôi có thể dùng nhiều công cụ chuyên nghiệp hơn; nhưng trước kia, khi mới bắt đầu tôi dùng SQL Navigator 4 (tôi nói là 4 nhé!), Dùng như sau:

1. Bạn đảm bảo máy tính của bạn đã được kết nối với máy chủ với một cái quyền để có thể "ngó" thấy cái Oracle (Gọi tắt là Ora nhé): Dấu hiệu ư? Làm thế nào để biết mình kết nối được với DataBase (DB Ora): đơn giản, có DB Ora thì phải có ứng dụng để tương tác tới DB ấy chứ, bạn chạy được cái ứng dụng tương tác đó coi như máy tính của mình đã kết nối thành công. Vấn đề kết nối đã xong. Nếu không chạy được ứng dụng thì gọi Bác quản trị tới nhé! Làm sao để mình chạy được ứng dụng. Vấn đề kết nối coi như là đã .. Ok nhé!//**/
2. Bạn chạy chương trình SQL Navigator 4 nhé! Mình không có phải khai báo máy chủ chi hết! Tự nó tìm xem trên cái đường truyền của bạn có bao nhiêu cái DB Ora. Sẽ hiện đủ cả cho bạn chọn. Sẽ có 3 dòng trên cửa sổ đó:
1. Là hộp thoại DataBase: Nhấp chuột vào Listbox để chọn DataBase nhé!
2. Là dòng UserName: Để nhập tên truy cập.
3. Là dòng PassWord: Để nhập mật khẩu.
Hãy đảm bảo với tôi rằng User đó đăng nhập được, không được thì phải hỏi người quản trị nhé! Bạn OK là xong!
3. Bạn chạy được ngon rồi thì vào sẽ nhìn thấy bao nhiêu là cửa sổ, hình thù, công cụ,... lóa hết cả mắt! Đừng sợ và cũng đừng quan tâm tới tất cả chúng vội, chưa cần biết cái này, cái kia để làm gì! Bạn chỉ quan tâm tới cái biểu tượng Open Query Builder (Cái này nó giống cái tường gạch chưa chát vữa ấy!) trên thanh công cụ Function Toolbar. Bạn nhấp chuột vào nó để mở ra một vùng làm việc mới với công cụ mới xuất hiện là "Query Builder": Bạn chọn cái biểu tượng "Add another table, view or Synonym" (Nhìn nó giống cái mở thư mục ấy). Xuất hiện cửa sổ Select DB Object, trên hộp thoại Look in: Bạn nhớ chọn dòng: xxx_Owner nó sẽ mở tất cả các Table, View, ... tóm lại là cái đám đó chứa dữ liệu mà bạn sẽ lấy. Bạn chọn một bảng bất kỳ nào đó, rồi Open.
4. Bạn xuất dữ liệu trong bảng ra Excel: Đầu tiên bạn cứ xuất tất cả dữ liệu ra, có bao nhiêu xuất tất nhé (Sợ gì treo máy)! Bằng cách nhấp phải chuột vào bảng vừa mở chọn Select All để chọn tất cả các trường. Xem dữ liệu đó bằng cách nhấn F9 (Cứ coi như là Run nhé). Có thể sẽ lâu hoặc treo máy, đừng lo, kiên trì sẽ thắng!
5. Hoan hô dữ liệu ra rồi! Chữ không đọc được kệ nó nhé! Nhấp chuột phải vào bảng dữ liệu chọn Export (Xuất) ra excel: Đặt tên file mình kết xuất ra là: D:\Du_lieu trên hộp thoại: FileName, chọn Format là Excel nhé! Đợi một thông báo có cái chữ Saved thế là xong rồi đấy!
Vì lười upload ảnh lên các url khác nên gửi tạm cả nhà cái file word có hình ảnh kèm theo nhé!
Hẹn gặp lại trên bài 2: Câu trúc dữ liệu, Lọc dữ liệu theo điều kiện
 

File đính kèm

  • Bai1.doc
    93.5 KB · Đọc: 199
Đặt Secsion time out làm mình bực quá! Tức chết đi được! Vừa soạn một hồi, mất báo công! Gửi một cái, bắt đăng nhập, rồi thì mất luôn bài vừa viết! Điên quá! Thôi được rồi lần sau gõ trên word cái đã! Cú ...mèo!

From Sa_DQ:
Một cách khác: Trước khi bấm nút gởi, ta nên lưu vô bộ nhớ tạm!
 
Chỉnh sửa lần cuối bởi điều hành viên:
Dữ liệu Oracle và các công cụ kết xuất dữ liệu

Phần I: Cơ sở dữ liệu Oracle và lấy dữ liệu trong oracle ra
Bài 2. Cấu trúc dữ liệu
I. Phân tích
Ở bài 1 tôi đã nói cách bạn lấy dữ liệu trên một bảng ra excel bằng công cụ SQL Navigator 4, Tuy nhiên, trong thực tế người ta chuẩn hoá dữ liệu để giảm kích thước cũng như cập nhật, khai thác thuận lợi. Tôi lấy ví dụ thể sau để dần dần bạn nắm bắt cấu trúc dữ liệu Ora
Có một bảng dữ liệu chung:

Mã NV Tên NV Ngày sinh Xã/Phường Huyện/Quận Tỉnh/TP
01002 Hoàng Quang Lê 10/8/1980 T.Thanh Gia Lâm Hà Nội
01003 Nguyễn Thị Hiền 11/5/1985 Đại Hưng Khoái Châu Hưng Yên
01002 Ngô Bá Chi 15/6/1986 T.Thanh Gia Lâm Ha Noi

Chuẩn hoá dữ liệu như sau:
Bảng nhân viên:

ID ID_NV TEN_NV NGAYSINH ID_XA
1 01002 Hoàng Quang Lê 10/8/1980 1010501
2 01003 Nguyễn Thị Hiền 11/5/1985 1090302
3 01004 Ngô Bá Chi 15/6/1986 1010501

Bảng địa bàn xã phường

ID_XA TEN_XA ID_HUYEN
1010501 T.Thanh 10105
1090302 Đại Hưng 10903

Bảng quận huyện

ID ID_HUYEN TEN_HUYEN ID_TINH
1 10105 Gia Lâm 101
2 10903 Khoái Châu 109


Bảng tỉnh/Thành phố

ID ID_TINH TEN_TINH
1 101 Hà Nội
2 109 Hưng Yên


Vài tiêu chí để bạn phải chuẩn hoá dữ liệu là vì:
- Trên bảng dữ liệu chưa chuẩn hoán: Dung lượng lớn để lưu trữ dữ liệu, ví dụ: Bạn có 5000 nhân viên, thì phải có 5000 dòng “tên xã phường”, 5000 dòng “tên quận, huyện”, 5000 dòng “tên tỉnh/thành phố” !$@!!. Lớn hơn rất nhiều so với 5000 dòng mã xã chỉ có xxxxxxx (7 ký tự),
- Nhập dữ liệu khi chưa chuẩn hoá gây nhầm lẫn, ví dụ: Hà Nội và Ha Noi là 2 tỉnh khác nhau trong dữ liệu, nhưng thực tế cả 2 trường hợp đó là một tỉnh mà thôi. Việc chuẩn hoá dữ liệu mã xã, huyện, tỉnh để giảm thiểu chức năng nhập, tránh nhầm lẫn sai sót,..
- Việc thay đổi địa bàn hành chính thường xuyên xảy ra bạn không để ngồi sửa nó cho từng nhân viên được, mà chỉ cần sửa nó trên bảng danh mục địa bàn một cách rất nhanh.

Trong Ora, có một vấn đề bạn cần nắm được đó là các bảng (đã chuẩn hoá) được kết nối với nhau như thế nào? Bạn hãy xem hình dưới đây:


MOHINH_QHDL_ORA.PNG


Trên đây là mô hình quan hệ dữ liệu, trong đó:
NHANVIEN có ID là khoá chính, ID_XA là khoá phụ
DBXAF có ID_XA là khoá chính, ID_HUYEN là khoá phụ
DBQHUYEN có ID là khoá chính, ID_HUYEN là khoá phụ, ID_TINH là khoá ngoài.
DBTINH có ID là khoá chính, ID_TINH là khoá ngoài hay khoá phụ.
Tại sao lại không lấy ID_HUYEN, ID_TINH làm khoá chính trong bảng DBTINH và DBQHUYEN là vì: Sau này nếu cần tới các yếu tố lịch sử thì bắt buộc bạn phải có ID làm khoá chính. Nếu không sẽ chẳng bao giờ bạn biết được Quốc oai, Ba Vì, Thạch Thất,… thuộc Hà Nội nhưng ngày trước là thuộc Hà Tây --=0.
(còn nữa ...)
 
Lần chỉnh sửa cuối:
Phần I: Cơ sở dữ liệu Oracle và lấy dữ liệu trong oracle ra

Bài 2. Cấu trúc dữ liệu (tiếp theo)
II. Cấu trúc dữ liệu ORA
Tôi không có ý trình bày sâu vấn đề về cấu trúc dữ liệu ở đây, nhất là với Oracle. Tôi chỉ đưa ra một số thông tin mà bạn cần xem và phân tích thôi.
Vẫn sử dụng SQL Navigator 4, bạn làm các bước đăng nhập như ở bài 1, sau đó chọn: All Schemas -> xxx_ OWNER -> Tables -> Chọn bảng cần xem -> Columns
Mình cứ tạm gọi nó là "Lược đồ" nhé!

Schemas.PNG


Khi nhấp chuột vào Columns của một bảng bạn sẽ thấy cấu trúc của phần thiết kế bảng dữ liệu.

Dó là cấu trúc của một bảng dữ liệu bất kỳ. Bây giờ tôi muốn bạn biết rằng như ở phần phân tích, dữ liệu của bạn không có nằm trên một bảng mà có thể nằm trên nhiều bảng.
Vậy khi muốn khai thác một nguồn dữ liệu phải làm thế nào? Bạn hãy vào ứng dụng ở CQ bạn tương tác với Ora. Bạn đăng nhập với quyền nhập dữ liệu (Không có user đó thì phải làm quen với Bác Quản trị thôi :-=) Khi bạn thấy from nhập liệu của nguồn dữ liệu bạn cần khai thác hiện ra, hãy nhấn F5 để xem được nguồn dữ liệu này sẽ đi đến những bảng nào? Bạn hãy ghi lại các tên bảng đó vào giấy nháp, để phục vụ cho những việc tiếp theo.

Form_input_to_table.PNG


1. Trở lại với SQL Navigator 4, bạn mở cửa sổ Query như bài 1 (Xem dữ liệu), mở các bảng mà bạn đã ghi lại ở trên.

Link_Tables.PNG


2. Bạn sẽ thấy các bảng hiện ra, và đã mặc định các kết nối. Bạn nhấp chuột vào vạch đỏ để xem kiểu kết nối, chọn: Link Options

LinkOption_Tables_Ora.PNG


3. Các kiểu kết nối Join types và Join Operator

LinkType_Options_Tables_Ora.PNG


Các kiểu kết nối này liên quan tới việc cho ra kết quả dữ liệu như thế nào. Đây là trường hợp mặc định. Nếu trong một số trường hợp khác bạn sẽ phải tự tạo kết nối, tự xác định liểu kết nối theo yêu cầu cụ thể của bạn.
3. Sau khi đã hoàn thiện các kết nối, bạn test dữ liệu cần truy xuất bằng cách nhấn F9.
Sẽ được kết quả dữ liệu chung từ các bảng, ví dụ:

CTU_Full.PNG


(....)
 
Lần chỉnh sửa cuối:
Các bác quản trị xem giúp tại sao file ảnh không hiện lên nhỉ? Có phải tại kíck thước ảnh lớn quá không ạh? Thanks!
 
Phần II: Từ Excel kết nối tới Oracle

Bài 1. Các kiểu kết nối

Trước khi nói về kiểu kết nối Oracle, tiện thể nói về một số các kiểu kết nối từ Excel, Word,... tới các cơ sở dữ liệu khác:

1. DSN-Less Connections
mySQL:
Local database:
"Driver={mySQL};Server=mySrvName;Option=16834;Database=mydatabase;"

Remote database:
"Driver={mySQL};Server=data.domain.com;Port=3306;Option=131072;Stmt=;Database=my-database;Uid=username;Pwd=password;"


Excel:
"Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\MyExcel.xls;DefaultDir=c:\mypath;"

Access:
Standard Security:
"Driver={Microsoft Access Driver (*.mdb)};Dbq=\somepath\mydb.mdb;Uid=Admin;Pwd=asdasd;"


Workgroup:
"Driver={Microsoft Access Driver (*.mdb)};Dbq=\somepath\mydb.mdb;SystemDB=\somepath\mydb.mdw;","admin", ""

Oracle:
New version:
"Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;Uid=Username;Pwd=asdasd;"


Old version:
"Driver={Microsoft ODBC Driver for Oracle};ConnectString=OracleServer.world;Uid=myUsername;Pwd=myPassword;"


SQL Server:
Standard Security:
"Driver={SQL Server};Server=Aron1;Database=pubs;Uid=sa;Pwd=asdasd;"


Trusted connection:
"Driver={SQL Server};Server=Aron1;Database=pubs;Trusted_Connection=yes;"


Prompt for username and password:
oConn.Properties("Prompt") = adPromptAlways
oConn.Open "Driver={SQL Server};Server=Aron1;DataBase=pubs;"

MS Data Shape
"Provider=MSDataShape;Data Provider=SQLOLEDB;Data Source=Aron1;Initial Catalog=pubs;User ID=sa;Password=asdasd;"

Syntax for DSN-less Connection Strings

DB2
Connect_string = "Driver={DB2}; IP=[ip_address]; Port=[port_number]; Database=[database_name]; UID=[username]; PWD=[password]"
dBASE 5
Connect_string = "Driver={Dbase}; DBQ=[pathname]; defaultDir=[default_directory]"
Informix 7, 9
Connect_string = "Driver={Informix}; ServerName=[server_name]; Database=[database_name]; UID=[username]; PWD=[password]"
Informix 2000
connect_string = "Driver={Informix}; HostName=[host_name]; ServerName=[server_name]; Port=[port_number];Database=[database_name]; UID=[username]; PWD=[password]"
Microsoft Access
DSN-less connection strings and file DSNs are not supported for Microsoft Access databases. You must use system DSNs.
Microsoft SQL Server 6.5
DSN-less connection strings and file DSNs are not supported for Microsoft SQL Server 6.5 databases. You must use system DSNs.
Microsoft SQL Server 7.0 and 2000
Connect_string = "Driver={SQL Server}; Database=[database_name]; Address=[ip_address],[port_number]; UID=[username]; PWD=[password]"
MySQL
Connect_string = "Driver={Mysql}; Server=[server_name]; Database=[database_name]; UID=[username]; PWD=[password]"
Oracle 7, 8
Connect_string = " Driver={Oracle}; Server=[TNS_name]; UID=[username]; PWD=[password]"
Oracle 8i, 9i
Connect_string = " Driver={Oracle}; Host=[host_name];Port=[port_number]; SID=[oracle_SID]; UID=[username]; PWD=[password]"
PostgreSQL
Connect_string = " Driver={Postgres}; Server=[server_name]; Port=[port_number]; Database=[database_name]; UID=[username]; PWD=[password]"
Sybase
connect_string = " Driver={Sybase}; NetworkAddress=[host_name],[port_number]; Database=[database_name]; UID=[username]; PWD=[password]"
Text
Connect_string = " Driver={Text}; Database=[database_location]"

 
Lần chỉnh sửa cuối:
Phần II: Từ Excel kết nối tới Oracle

Bài 1. Các kiểu kết nối (tiếp)

2. OLE DB Provider Connections
OLE DB Provider for AS/400
Conn.Open "Provider=IBMDA400; Data source=myAS400;" & _
"User Id=myUsername; Password=myPassword;"

OLE DB Provider for Active Directory Service
Conn.Open "Provider=ADSDSOObject; User Id=myUsername;Password=myPassword;"

OLE DB Provider for DB2
Conn.Open = "Provider=DB2OLEDB;" & _
"Network Transport Library=TCPIP; Network Address=MyServer;" & _
"Package Collection=MyPackage; Host CCSID=1142; Initial Catalog=MyDB;" & _
"User ID=MyUsername; Password=MyPassword;"
OLE DB Provider for Index Server
Conn.Open "Provider=msidxs; Data source=MyCatalog;"

OLE DB Provider for Internet Publishing
Conn.Open "Provider=MSDAIPP.DSO; Data Source=http://mywebsite/myDir;" & _
"User Id=myUsername; Password=myPassword;"

OLE DB Provider for Microsoft Jet
Conn.Open &_
"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=\\somepath\\myDb.mdb;" & _
"User Id=admin; Password=;"

Using a Workgroup (System database)
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; &_
DataSource=\\somepath\\mydb.mdb;" & _
"Jet OLEDB:System Database=MySystem.mdw;", "admin", ""

MDB has a database password
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=\\somepath\\mydb.mdb;" & _
"Jet OLEDB:Database Password=MyDbPassword;", "admin", ""
Open Excel
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0; &_
DataSource=\\somepath\\Sheet1.xls;" & _
"Extended Properties=""Excel 8.0;HDR=Yes;"";"

OLE DB Provider for ODBC Databases MS Access (Jet)
Conn.Open "Provider=MSDASQL; Driver={Microsoft Access Driver (*.mdb)};" &_
"Dbq=\\somepath\\mydb.mdb; Uid=myUsername; Pwd=myPassword;"

SQL Server
Conn.Open "Provider=MSDASQL; Driver={SQL Server};" & _
"Server=myServerName; Database=myDatabaseName;" & _
"Uid=myUsername; Pwd=myPassword;"

OLE DB Provider for Oracle
from Microsoft
Conn.Open "Provider=msdaora; Data Source=MyOracleDB;" & _
"User Id=myUsername; Password=myPassword;"
from Oracle
Conn.Open "Provider=OraOLEDB.Oracle; Data Source=MyOracleDB;" & _
"User Id=myUsername; Password=myPassword;"

For a Trusted Connection
Conn.Open "Provider=OraOLEDB.Oracle; Data Source=MyOracleDB; User Id=/; Password=;"
Conn.Open "Provider=OraOLEDB.Oracle; Data Source=MyOracleDB; OSAuthent=1;"

OLE DB Provider for Simple Provider
Conn.Open "Provider=MSDAOSP; Data Source=MSXML2.DSOControl.2.6;"
rs.Open "http://WebServer/VirtualRoot/MyXMLFile.xml", Conn
OLE DB Provider for SQL Server
Conn.Open "Provider=sqloledb; Data Source=ServerName; Initial Catalog=DatabaseName;" & _
"User Id=myUsername; Password=myPassword;"

For a Trusted Connection
Conn.Open "Provider=sqloledb; Data Source=ServerName; Initial Catalog=DatabaseName;" & _
"Integrated Security=SSPI;"

Connect to a "Named Instance" (SQL Server 2000)
Conn.Open "Provider=sqloledb; Data Source=ServerName\\Inst2; Initial Catalog=DatabaseName;" & _
"User Id=myUsername; Password=myPassword;"

Prompt for username and password
Conn.Provider = "sqloledb"
Conn.Properties("Prompt") = adPromptAlways
Conn.Open "Data Source=ServerName; Initial Catalog=DatabaseName;"

To connect via an IP address
Conn.Open "Provider=sqloledb; Network Library=DBMSSOCN;" & _
"Data Source=xxx.xxx.xxx.xxx,1433; Initial Catalog=DatabaseName;" & _
"User ID=myUsername; Password=myPassword;"




 
Phần II: Từ Excel kết nối tới Oracle

Bài 1. Các kiểu kết nối (tiếp theo)

3. Remote OLE DB Provider Connections
MS Remote - Access (Jet)
ODBC DSN
Conn.Open "Provider=MS Remote; Remote Server=http://ServerName; Remote Provider=MSDASQL; DSN=AdvWorks; Uid=myUsername; Pwd=myPassword;"
OLE DB Provider
Conn.Open "Provider=MS Remote; Remote Server=http://ServerName; Remote Provider=Microsoft.Jet.OLEDB.4.0; Data Source=\\path\\mydb.mdb;", "admin", ""
MS Remote - SQL Server

ODBC DSN
Conn.Open "Provider=MS Remote; Remote Server=http://server; Remote Provider=MSDASQL; DSN=DatabaseName; Uid=Username; Pwd=Password;"
OLE DB Provider
Conn.Open "Provider=MS Remote; Remote Server=http://ServerName; Remote Provider=SQLOLEDB; Data Source=ServerName; Initial Catalog=DatabaseName; User ID=Username; Password=Password;"
4 .NET Managed Provider Connections
SQL Client .NET Managed Provider (System.Data.SqlClient)
Dim Conn As SqlClient.SqlConnection
Dim ConnStr As String

ConnStr = "Data Source=(local); Initial Catalog=NorthWind; Integrated Security=SSPI; Pooling=True; Min Pool Size=10; Max Pool Size=50; Connection Lifetime=30; Connection Reset=True; Enlist=True;"
Conn = New SqlClient.SqlConnection(ConnStr)
Conn.Open()
OLE DB .NET Managed Provider (System.Data.OleDb)
Dim Conn As OleDb.OleDbConnection
Dim ConnStr As String

ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=nwind.mdb; User ID=Admin; Password=;"
Conn = New OleDb.OleDbConnection(ConnStr)
Conn.Open()

 
Phần II: Từ Excel kết nối tới Oracle

Bài 1. Các kiểu kết nối (tiếp theo)

5. ODBC DNS Connections
DNS
Conn.Open "DSN=SampleDB;Uid=Admin;Pwd=;"
File DNS
Conn.Open "FILEDSN=\\path\\mydb.dsn;Uid=Admin;Pwd=;"
ODBC DNS-Less Connections

ODBC Driver for AS/400
Conn.Open "Driver={Client Access ODBC Driver (32-bit)}; System=myAS400;Uid=myUsername;Pwd=myPassword;"

ODBC Driver for dBASE
Conn.Open "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=\\somepath;"
rs.Open "SELECT * FROM USER.DBF", Conn

ODBC Driver for MS Access
Conn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=\\path\\mydb.mdb;Uid=Admin;Pwd=;"

Using a Workgroup (System database)
Conn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=\\path\\mydb.mdb;SystemDB=\\somepath\\mydb.mdw;", "admin",""

ODBC Driver for MS Excel
Conn.Open "Driver={Microsoft Excel Driver (*.xls)};DriverId=790;" & _
"Dbq=\\somepath\\Sheet1.xls;DefaultDir=\\somepath;"

ODBC Driver for MySQL (MyODBC)
Conn.Open "Driver={mySQL};Server=MyServerName;Option=16834;Database=mydb;"

ODBC Driver for Oracle
Conn.Open "Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;" & _"Uid=myUsername;Pwd=myPassword;"

ODBC Driver for Paradox
Conn.Open "Driver={Microsoft Paradox Driver (*.db)};DriverID=538;Fil=Paradox 5.X;" & _
"DefaultDir=c:\\dbpath\\;Dbq=c:\\dbpath\\;CollatingSequence=ASCII;"

ODBC Driver for SQL Server
Conn.Open "Driver={SQL Server};Server=MyServerName;Database=myDatabaseName;" & _
"Uid=myUsername;Pwd=myPassword
For trusted connection
Conn.Open "Driver={SQL Server};Server=MyServerName;Database=myDatabaseName;" & _
"Trusted_Connection=yes;"
To Prompt user for username and password
Conn.Properties("Prompt") = adPromptAlways
Conn.Open "Driver={SQL Server}; Server=ServerName; DataBase=DatabaseName;"
ODBC Driver for Sybase
Sybase System 11 ODBC Driver
Conn.Open "Driver={SYBASE SYSTEM 11}; Srvr=myServerName;" & _
"Uid=myUsername; Pwd=myPassword;"
Intersolv 3.10 Sybase ODBC Driver
Conn.Open "Driver={INTERSOLV 3.10 32-BIT Sybase}; Srvr=myServerName;" & _
"Uid=myUsername; Pwd=myPassword;"
ODBC Driver for Sybase SQL Anywhere
Conn.Open "ODBC; Driver=Sybase SQL Anywhere 5.0;" & _
"DefaultDir=c:\\dbpath\\; Dbf=c:\\sqlany50\\mydb.db;" & _
"Uid=myUsername; Pwd=myPassword; Dsn="""";"

ODBC Driver for Text
Conn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq=\\somepath\\; Extensions=asc,csv,tab,txt; Persist Security Info=False"
rs.Open "SELECT * FROM CUSTOMER.CSV", Conn

ODBC Driver for Visual FoxPro
With a database container
Conn.Open "Driver={Microsoft Visual FoxPro Driver}; SourceType=DBC;" & _
"SourceDB=\\somepath\\mySourceDb.dbc; Exclusive=No;"

Without a database container (Free Table Directory)
Conn.Open "Driver={Microsoft Visual FoxPro Driver}; SourceType=DBF;" & _
"SourceDB=\\somepath\\mySourceDbFolder; Exclusive=No;"
 
Phần II: Từ Excel kết nối tới Oracle

Bài 1. Các kiểu kết nối
(tiếp theo)

5. ODBC DNS Connections
DNS
Conn.Open "DSN=SampleDB;Uid=Admin;Pwd=;"
File DNS
Conn.Open "FILEDSN=\\path\\mydb.dsn;Uid=Admin;Pwd=;"
ODBC DNS-Less Connections


ODBC Driver for AS/400
Conn.Open "Driver={Client Access ODBC Driver (32-bit)}; System=myAS400;Uid=myUsername;Pwd=myPassword;"


ODBC Driver for dBASE
Conn.Open "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=\\somepath;"
rs.Open "SELECT * FROM USER.DBF", Conn


ODBC Driver for MS Access
Conn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=\\path\\mydb.mdb;Uid=Admin;Pwd=;"

Using a Workgroup (System database)
Conn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _
"Dbq=\\path\\mydb.mdb;SystemDB=\\somepath\\mydb.mdw;", "admin",""


ODBC Driver for MS Excel

Conn.Open "Driver={Microsoft Excel Driver (*.xls)};DriverId=790;" & _
"Dbq=\\somepath\\Sheet1.xls;DefaultDir=\\somepath;"


ODBC Driver for MySQL (MyODBC)
Conn.Open "Driver={mySQL};Server=MyServerName;Option=16834;Database=mydb;"

ODBC Driver for Oracle
Conn.Open "Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;" & _"Uid=myUsername;Pwd=myPassword;"


ODBC Driver for Paradox
Conn.Open "Driver={Microsoft Paradox Driver (*.db)};DriverID=538;Fil=Paradox 5.X;" & _
"DefaultDir=c:\\dbpath\\;Dbq=c:\\dbpath\\;CollatingSequence=ASCII;"


ODBC Driver for SQL Server
Conn.Open "Driver={SQL Server};Server=MyServerName;Database=myDatabaseName;" & _
"Uid=myUsername;Pwd=myPassword
For trusted connection
Conn.Open "Driver={SQL Server};Server=MyServerName;Database=myDatabaseName;" & _
"Trusted_Connection=yes;"

To Prompt user for username and password
Conn.Properties("Prompt") = adPromptAlways
Conn.Open "Driver={SQL Server}; Server=ServerName; DataBase=DatabaseName;"
ODBC Driver for Sybase
Sybase System 11 ODBC Driver
Conn.Open "Driver={SYBASE SYSTEM 11}; Srvr=myServerName;" & _
"Uid=myUsername; Pwd=myPassword;"
Intersolv 3.10 Sybase ODBC Driver
Conn.Open "Driver={INTERSOLV 3.10 32-BIT Sybase}; Srvr=myServerName;" & _
"Uid=myUsername; Pwd=myPassword;"
ODBC Driver for Sybase SQL Anywhere
Conn.Open "ODBC; Driver=Sybase SQL Anywhere 5.0;" & _
"DefaultDir=c:\\dbpath\\; Dbf=c:\\sqlany50\\mydb.db;" & _
"Uid=myUsername; Pwd=myPassword; Dsn="""";"


ODBC Driver for Text
Conn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq=\\somepath\\; Extensions=asc,csv,tab,txt; Persist Security Info=False"
rs.Open "SELECT * FROM CUSTOMER.CSV", Conn


ODBC Driver for Visual FoxPro
With a database container
Conn.Open "Driver={Microsoft Visual FoxPro Driver}; SourceType=DBC;" & _
"SourceDB=\\somepath\\mySourceDb.dbc; Exclusive=No;"


Without a database container (Free Table Directory)
Conn.Open "Driver={Microsoft Visual FoxPro Driver}; SourceType=DBF;" & _
"SourceDB=\\somepath\\mySourceDbFolder; Exclusive=No;"
Bài này không còn nội dung tiếp à anh
 
Web KT
Back
Top Bottom