Danh mục

Sử dụng VB.NET để kết nối mySQL

Số trang: 8      Loại file: pdf      Dung lượng: 184.53 KB      Lượt xem: 8      Lượt tải: 0    
Hoai.2512

Hỗ trợ phí lưu trữ khi tải xuống: 4,000 VND Tải xuống file đầy đủ (8 trang) 0

Báo xấu

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Sử dụng VB.NET để kết nối mySQLYêu cầu: - MySQL 5.0.27 - My SQL Connector/Net 5.0.3 - Toad for MySQL Freeware 2.0.3 - VB.NET 2005 Express Edition Phần I. Định nghĩa ConnectionString Những ai đã quen với lập trình .NET khi sử dụng ADO để kết nối với CSDL cũng đã rất quen thuộc với cụm từ Connection String. Đúng ra, trong lập trình ConnectionString là thuộc tính của đối tượng ADO Connection. Với MySQL cũng vậy, một số thông số truyền vào chuỗi định nghĩa kết nốivới CSDL gần như giống hoàn toàn với ADO.NET; tuy nhiên chúng ta...
Nội dung trích xuất từ tài liệu:
Sử dụng VB.NET để kết nối mySQL Sử dụng VB.NET để kết nối mySQL Yêu cầu: - MySQL 5.0.27 - My SQL Connector/Net 5.0.3 - Toad for MySQL Freeware 2.0.3 - VB.NET 2005 Express Edition Phần I. Định nghĩa ConnectionStringNhững ai đã quen với lập trình .NET khi sử dụng ADO để kết nối với CSDL cũng đã rất quenthuộc với cụm từ Connection String. Đúng ra, trong lập trình ConnectionString là thuộc tính củađối tượng ADO Connection. Với MySQL cũng vậy, một số thông số truyền vào chuỗi định nghĩakết nốivới CSDL gần như giống hoàn toàn với ADO.NET; tuy nhiên chúng ta không sử dụngADO.NET mà là MySQL Connector.Ví dụ:Dim MySQLConnectionString As StringMySQLConnectionString = Server=myServer; & _ Database=myDatabase; & _ Uid=myUserID; & _ Pwd=myPassword; & _ Connect Timeout=30;Vi dụ trên đây không bao gồm thông số Persist Security Info và mặc định giá trị PSI là false; bấtcứ thông số nào trong chuỗi ConnectionString mà thiếu đều mang giá trị mặc định.Một đối tượng dùng để kết nối với CSDL phải được khởi tạo và mở kết nối. Tuy nhiên, có nhiềucách khai báo khác nhau sẽ nảy sinh những vấn đề vể bộ nhớ.Ví dụ:Dim MySQLConnectionString As StringDim MyADOConnection As MySqlConnectionMySQLConnectionString = Server=myServer; & _ Database=myDatabase; & _ Uid=myUserID; & _ Pwd=myPassword; & _ Connect Timeout=30;MyADOConnection = New MySqlConnection(MySQLConnectionString)MyADOConnection.Open()Ví dụ trên sẽ gửi lệnh connect thông qua phương thức khởi tạo của 9ối tượng MySQlConnection;nếu như chưa có connection nào được tạo thì phương thức Open làm nhiệm vụ tạo ra mộtconnection mới; nếu như đã có rồi thì hàm open sẽ lấy một connection có sẵn trong danh sáchconnection available.Dim MySQLConnectionString As StringDim MyADOConnection As MySqlConnectionMySQLConnectionString = Server=myServer; & _ Database=myDatabase; & _ Uid=myUserID; & _ Pwd=myPassword; & _ Connect Timeout=30;MyADOConnection = New MySqlConnection()MyADOConnection.ConnectionString = MySQLConnectionStringMyADOConnection.Open()Ví dụ trên đây sẽ tạo một connection hoàn toàn mới vì khi khởi tạo không gán thuộc tínhconnectionstring cho đối tượng mySQL Connection; do đó không thể lấy trong sanh sách cácconnection có sẵn được. Chỉ khi phương thức Open được gọii thì câu lệnhMyADOConnection.ConnectionString = MySQLConnectionString mới được sử dụng.Lưu ý: Cái này cực kỳ quan trọng và cực kỳ hay, khi lập trình chú ý đến vấn đề sử dụngconnectionstring. Tuyệt đối kông nên nhúng connectionstirng vào trong code vì rất khó nâng cấpvà không an toàn chút nào. Có 2 lý do chính:1. hacker có thể lợi dụng các lỗi bảo mật của MySQL để thay thế chuổi connectionstring vì chuỗinày đã được đóng gói lại một dòng duy nhất. Bằng cách nào đó hacker sẽ cộng dồn biếnconnectionstirng với một chuỗi nào đó mà MySQL dễ dàng pass qua các lỗi hoặc chỉ trả về kếtquả thực thi câu lệnh sau cùng...2. Khó bảo trì vì nếu một trongc ác thông số của câu lệnh connectionstring thay đổi bạn phải biêndịch lại hoàn toàn bộ code, thật là phiền phức.Có môt cách mà bạn có thể an tâm giao phó việc bảo mật cho các nhà quản lý host hoặc adminđó là đưa câu lệnh này vào file cấu hình (web.config) ; do đó khi có thay đổi bất kỳ thông số nàocũng có thể thay đổi không cần biên dịch lại. Khi đó muốn sử dụng chỉ cần khai báo như sau:Dim mMySQLConnectionString As String = My.Settings.MySQLConnectionStringDim mMySQLConnectionString As String = My.Settings.MySQLConnectionStringDim MyADOConnection As New MySqlConnectionMyADOConnection.ConnectionString = MySQLConnectionStringMyADOConnection.Open()Thế là xong phần khai báo kết nối CSDLMở và đóng kết nốiViệc mở và đóng kết nới một đối tượng ADO.NET là công việc cực ký quan trọng nhất trong bấtcứ tình huống nào. Bởi vì nếu coding không cẩn thận sẽ dễ gây ra tràn bộ nhớ. Quá trình mở vàđóng kết nối luôn trãi qua 3 bước: Tạo một đối tượng ADO Connection; gửi ConnectionStringcho thuộc thính của đối tượng hoặc truyền vào hàm khởi tạo của đối tượng; dùng phương thứcOpen() để mời kết nối.Khi không có nhu cầu sử dụng đối tượng Connection này nữa, hãy dùng IsNothing (choVB.NET) để hủy tất cả các connection và liên kết tới đối tượng; và cũng để giải phóng tàinguyên hệ thống. Cũng giống như SQL; MySQL cũng dựng sẵn các exception để giải quyết vấnđề lỗi xảy ra của đối tượng.Xem 2 ví dụ để có thể thấy cách mở và đóng kết nối an toàn khi sử dụng MySQLConnectionPrivate Function MySQLADOConnectionOpen(ByRef pErrorMessageString As String) AsBoolean Try mMySqlConnection = New MySqlConnection mMySqlConnection.ConnectionString = mMySQLConnectionString mMySqlConnection.Open() Return (True) Catch exError As MySqlException pErrorMessageString = exError.Message Return (False) End TryEnd FunctionPublic Function MySQ ...

Tài liệu được xem nhiều: