Sinh vien hoa sen


Login - Äăng Nhập
Cũ 03-05-2008, 01:01 PM   #1 (permalink)
Profile - Thông Tin Cá Nhân
 
C# vs MySQL Tutorial

Chào bạn,
Nếu bạn Ä‘ang há»c .Net vá»›i C#, chắc hản bạn sẽ gặp 1 số yếu cầu vá» thao tác vá»›i CSDL thông qua ngôn ngữ lập trình, bjan chá»n hệ quản trị CSDL nào? MS SQL? Accesss?
Theo mình, cái nào cũng đc cả! mỗi cái có một thế mạnh riêng Tuy nhiên, bạn cần 1 HQTCSDL mã mở, miễn phí, và vừa đủ để đáp ứng nhu cầu cho một đỠán sinh viên của bạn, hản bạn đang nghĩ tôi mún đỠcập đến MySQL. Tôi nghĩ bạn cũng bít, DD của chúng ta cũng đang base trên MySQL đây, mún hack thì chi cần kiếm bug của nó mà hack nhé ^^
Nhưng ở đây mình hok có ..biết hack. Nên chỉ hướng dẫn bạn 1 số bước cơ bản để bạn có thể dùng ngôn ngữ C# làm việc với MySQL
Tôi không khuyến khích bạhn kết hợp 2 thứ này lại đâu nhé. chỉ trong trưá»ng hợp bạn buá»™c phải làm việc vá»›i MySQl mà bạn chỉ rành má»—i C#, tất nhiên , it's not big deal!

MySQL là hệ cÆ¡ sở dữ liệu mã nguồn mở nổi tiếng nhất thế giá»›i, đây là hệ cÆ¡ sở dữ liệu vá»›i tốc độ truy cập cao, mạnh mẽ, dá»… sá»­ dụng. ÄÆ°á»£c sá»­ dụng bởi nhiá»u hệ thống lá»›n như Yahoo, Google, Nokia, YouTube … Việc sá»­ dụng má»™t hệ cÆ¡ sở dữ liệu mã mở, miá»…n phí giúp tiết kiệm chi phí cho doanh nghiệp cá»§a bạn. Bạn có thể tải và sá»­ dụng miá»…n phí hệ cÆ¡ sở dữ liệu này thông qua địa chỉ www.mysql.com



MySQL cung cấp khả năng giao tiếp với C# một cách mạnh mẽ và dễ dàng thông qua namespace MySQL.Data.MySqlClient. Cách thức thực hiện giao tiếp dữ liệu với MySQL giống như cách thức mà bạn làm việc với ADO.NET đã trình bày ở phần trước.



Äể sá»­ dụng namespace MySQLClient, đòi há»i bạn phải tham chiếu đến thư viện này bằng chá»n References di chuyển đến tệp tin MySQL.Data.dll. Nhấn OK để thá»±c hiện



Sau khi đã tham chiếu file MySQL.Data.dll vào project, để sử dụng các hàm trong thư viện này, bạn phải khai báo sử dụng thư viện.

PHP Code:

using MySql
.Data;

using MySql.Data.MySqlClient
Từ đây bạn có thể sử dụng những hàm, thủ tục trong thư viện MySQL.





Kết nối đến cơ sở dữ liệu MySQL



Äoạn mã lệnh sau thá»±c hiện việc kết nối đến cÆ¡ sở dữ liệu MySQL bằng lập trình C#.


PHP Code:
MySqlConnection con = new MySqlConnection("server=localhost;database=_net;uid=root;pwd=root");

con.Open();

Response.Write("Connected into MySQL Database");

con.Close(); 
Sau khi đã kết nối đến cơ sở dữ liệu MySQL, bạn có thể thực hiện một câu truy vấn đến một bảng trong cơ sở dữ liệu này, đoạn mã lệnh sau thực hiện truy vấn đến một bảng và hiển thị số dòng dữ liệu có trong bảng này.

PHP Code:

MySqlConnection con 
= new MySqlConnection("server=localhost;database=_net;uid=root;pwd=root");

        
con.Open();

        
Response.Write("Connected into MySQL Database");

        
MySqlCommand cmd = new MySqlCommand("select * from list",con);

        
cmd.CommandType CommandType.Text;

        
MySqlDataAdapter da = new MySqlDataAdapter(cmd);

        
DataSet ds = new DataSet();

        
da.Fill(ds"list");

        
Response.Write(ds.Tables["list"].Rows.Count.ToString());

        
con.Close(); 
Hai ví dụ trên cho thấy, lập trình kết nối cơ sở dữ liệu MySQL sử dụng Namespace MySQL.Data.MySqlClient cũng giống như làm việc với hệ cơ sở dữ liệu MSSQL thông qua ADO.NET.

bây giỠchúng ta sẽ thực hiện việc cập nhật, thêm mới dữ liệu vào CSDL MySQL từ chương trình được viết bằng C#.

PHP Code:
MySqlConnection con = new MySqlConnection("server=localhost;database=_net;uid=root;pwd=root");

        
con.Open();

        
Response.Write("Connected into MySQL Database");

        
// thá»±c hiện thêm má»›i dữ liệu vào CSDL

        
cmd = new MySqlCommand("insert into list values(0,'New record 1','Description Record 1')");

        
cmd.Connection con;

        
cmd.ExecuteNonQuery();

        
Response.Write("<br>Inserted into MySql DB");

 

        
// thá»±c hiện cập nhật dữ liệu

        
cmd = new MySqlCommand("update list set name='Updated Name' where id=?id");

        
cmd.CommandType CommandType.Text;

        
cmd.Parameters.Add("?id""1");

        
cmd.Connection con;

        
cmd.ExecuteNonQuery();

        
con.Close(); 
:gem17:Thế là bạn có thể truy xuất và edit data cá»§a MySQL rồi nhé, tôi hi vong bạn có thể viết giup tôi, 1 phần má»m bằng C# ... connect vào csdl cá»§a dd này và ... (tùy bạn mún làm j) Tuy nhiên, há»i ý admin nhé!

sVip đang ẩn  
Lần đọc: 2294
Trả lời với trích dẫn
The Following User Says Thank You to sVip For This Useful Post:
Cũ 22-05-2008, 02:19 AM   #2 (permalink)
Profile - Thông Tin Cá Nhân
123... trốn
 
Avatar của hiepgia
 
Mặc định Ãá»: C# vs MySQL Tutorial

=,=! Anh ui. Cái MySQL bảo mật hay ở chỗ là giới hạn truy cập qua ip/host. Vì thế nên giới hạn lại host là ko bao giỠconnect đc từ ngoài hết...

Chữ Ký Của Webmaster hiepgia Thanks nếu bạn thấy hay ^^!
I'm Pinky's Husband ^^!
Quy định vá» chữ ký: http://www.sinhvienhoasen.com/forum/...ad.php?t=13396. Äá» nghị các Admin, Smod thá»±c hiện...
hiepgia đang ẩn  
Lần đọc: 2294
Trả lời với trích dẫn
Cũ 14-08-2009, 04:39 PM   #3 (permalink)
Profile - Thông Tin Cá Nhân
 
Mặc định

mình conect tới database thì ok rồi. nhưng mà không thể insert được vào database bạn có thể chỉ mình rõ hơn được không.
PHP Code:
string strProvider "Data Source=" host ";Database=" database ";User ID=" user ";Password=" password;
            try
            {
                
mysqlCon = new MySqlConnection(strProvider);
                
mysqlCon.Open();

                if (
mysqlCon.State.ToString() == "Open")
                {
                    
Console.WriteLine("database conected");
                    
MySqlCommand cmd = new MySqlCommand("insert into list values('1','2','3','4','5')");
                    
cmd.Connection mysqlCon;
                    
cmd.ExecuteNonQuery();
                    

                }

                
mysqlCon.Close();

            }
            catch (
Exception er)
            {
                
Console.WriteLine("An Error Occured: " er.Message);
            } 
mình chạy debug thì nó không chịu cạy cái hàm này cmd.ExecuteNonQuery();
bạn có thể liên send code chạy được cho mình qua mail nha: admin@congnghesocctv.com
hoặc ym: haytinvaochinhminh_12gcolen
thank bạn nhiá»u

minhquang12g đang ẩn  
Lần đọc: 2294
Trả lời với trích dẫn
Cũ 18-08-2009, 11:54 PM   #4 (permalink)
Profile - Thông Tin Cá Nhân
123... trốn
 
Avatar của hiepgia
 
Mặc định

Mình nghĩ connection string sai bét....

Mã:
Server=myServerAddress;Port=1234;Database=myDataBase;Uid=myUsername;Pwd=myPassword;
PS: POST giùm mình cái lỗi mà khi chạy nó báo lỗi được không? Chứ nói xuông thế này thì ...

Chữ Ký Của Webmaster hiepgia Thanks nếu bạn thấy hay ^^!
I'm Pinky's Husband ^^!
Quy định vá» chữ ký: http://www.sinhvienhoasen.com/forum/...ad.php?t=13396. Äá» nghị các Admin, Smod thá»±c hiện...
hiepgia đang ẩn  
Lần đọc: 2294
Trả lời với trích dẫn
Trả lời

Công cụ bài viết
Kiểu hiển thị

Quyền viết bài
Bạn không thể gửi chủ đề mới
Bạn không thể gửi trả lời
Bạn không thể gửi file đính kèm
Bạn không thể sửa bài viết của mình

BB code đang Mở
Mặt cười đang Mở
[IMG] đang Mở
HTML đang Tắt
Trackbacks are Mở
Pingbacks are Mở
Refbacks are Mở


Address: Hoa Sen University, Ho Chi Minh City, Viet Nam.
Designed by hiepgia.
Best Viewed in 1024x768 with IE6+, Firefox 1.5+, Chrome, Opera 9+.
Truy cập vào Website, nghÄ©a là bạn đã chấp nhận Quy Äịnh cá»§a Forum!
RSS RSS 2.0 XML MAP

Valid XHTML 1.0 Transitional Valid CSS!
vBulletin v3.8.4 Licensed & Copyright © 2008 - 2009, Hoa Sen University.