Tuesday, December 20

C# connect MySQL via MySQL connector/NET

บ่อยครั้ง ที่เราไม่ได้เลือกใช้ Data base ของค่ายไมโครซอฟท์ แต่เราเลือกที่จะติดต่อกับฐานข้อมูล ของค่ายอื่น ด้วยเหตุผลบางประการ ในกรณี เราต้องเช็คดูว่า Visual C# ของเรามี Class ที่รองรับการเชื่อมต่อดาต้าเบส ค่ายนั้นๆ หรือไม่ หากไม่ได้มี Class รองรับการเชื่อมต่อฐานข้อมูลค่ายนั้นๆ ไว้แล้ว เราต้องมองหา ตัวเลือกอื่นๆ วันนี้ เรามาดูตัวอย่างในการทำให้โปรแกรม Visual C# เชือมต่อกับ MySQL ผ่าน MySQL Connector/NET

เริ่มจาก ดาวน์โหลด MySQL connector/NET ก่อน เอาเวอร์ชั่น ล่าสุดก็ได้ครับ แต่ในขณะนี้ ผมเลือกเวอร์ชั่น Connector/Net 6.4.4

ทำการติดตั้งไฟล์ เหมือนโปรแกรม อื่นๆ ทั่วไป ครับ ในที่นี้ ผมเลือกแบบ Complete กด Next กดไปเรื่อยๆ จนโปรแกรมติดตั้งเสร็จ

มาถึงจุดนี้ อย่างแรกที่เราต้องตกลงกันก่อน ก็คือ คุณจะต้องมี

  • ดาต้าเบส MySQL ที่ติดตั้งไว้แล้ว และสามารถเชื่อมต่อฐานข้อมูลได้อย่างไม่มีปัญหา (เช็คจากโปรแกรมอื่น เรียบร้อยแล้ว)
  • โปรแกรม Visual C# 2008 express ที่ติดตั้งไว้แล้ว

สร้างโปรเจค Windows Form Application ตั้งชื่อตามใจชอบ ในที่นี้ ผมตั้งชื่อเป็น MySQL_connection_test

สร้างโปรเจค Windows Form  

จากนั้นให้ทำการ Add reference เข้ามาที่โปรเจคของเราก่อน เพื่อเป็นการดึง Library dll ของ CMySQL เข้ามาใช้งานกับโปรเจคของเรา ไปที่เมนู Project –> Add reference ทีแท๊ป NET เลือนลงมาหา MySql.Data แล้วกด OK

Add reference เพื่อดึงไฟล์ dll เข้ามาร่วมด้วย

กลับมาที่หน้า Form ทำการสร้างปุ่ม button ลงบน Form จากนั้น ทำการกำหนด Event ให้กับปุ่ม ดับเบิลคลิกเข้าไปที่ปุ่ม แล้ว เขียนโค๊ด

สร้างปุ่มบน Form

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using MySql.Data;
using MySql.Data.MySqlClient;

namespace MySQL_connection_test
{
    public partial class Form1 : Form
    {
        MySql.Data.MySqlClient.MySqlConnection conn;
        string myConnectionString = "server=localhost;uid=root;pwd=merlin;database=test;";

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                conn = new MySql.Data.MySqlClient.MySqlConnection();
                conn.ConnectionString = myConnectionString;
                conn.Open();
                MessageBox.Show(conn.State.ToString());
                conn.Close();
                conn.Dispose();
            }
            catch (MySql.Data.MySqlClient.MySqlException ex)
            {
                MessageBox.Show(ex.Message);
            }

        }
    }
}

สิ่งที่ต้องเพิ่มเข้าไปคือ อ้างถึง namespace ของ Mysql.Data

using MySql.Data;
using MySql.Data.MySqlClient;

ทำการสร้างออปเจค และสร้าง ตัวแปรสตริง เพื่อเป็นค่ากำหนดค่าของออปเจค

MySql.Data.MySqlClient.MySqlConnection conn; 
string myConnectionString = "server=localhost;uid=root;pwd=merlin;database=test;";

รูปแบบของสตริง ประกอบไปด้วยคีย์เวิร์ด key=value แต่ละคีย์เวิร์ด แยกกันด้วยเครื่องหมายเซมิโคล่อน “ ; ”

  • server=localhost // กำหนดที่อยู่ของ server ของฐานข้อมูล ในกรณีเชื่อมต่อเครื่องเราเอง
  • uid=root // ชื่อของ user ที่ทำการเชื่อมต่อ ในที่นี้ผมได้กำหนดเป็น root
  • pwd=merlin // พาสเวิร์ดของ root ที่ทำการเชื่อมต่อ
  • database=test // ชื่อฐานข้อมูล

ทดลองรันดูครับ กดไปที่ปุ่มที่เราสร้างไว้ จะปรากฏ messagebox แจ้งให้ทราบว่า สถานะการเชื่อมต่อของเรากับฐานข้อมูล ถูกเปิด แล้ว แสดงว่า เราสามารถที่จะติดต่อกับฐานข้อมูลได้สำเร็จ

ทดสอบการรัน การติดต่อ MySQL ผ่าน mysql connector 

ถ้ายังทำไม่ได้ พยายามแก้ไข เช็คเรื่องการเชื่อมต่อฐานข้อมูลก่อน ว่าสามารถเชื่อมต่อด้วย use/password นี้ ได้จริงๆ ไหม ด้วยโปรแกรมการเชื่อมต่อตัวอื่น เช่น MySqlFront หรือ phpmyadmin เพื่อให้แน่ใจว่า myConnectionString ถูกต้องแล้ว

เพื่อนๆ สามารถศึกษาเพิ่มเติมได้ ตามคู่มือ ที่อยู่ในโฟลเดอร์ที่ได้ติดตั้งไว้แล้ว

อ่านเพิ่มเติม...

Thursday, November 3

รวบรวมคีย์ลัด namespace ต่างๆ ของ Visual Studio

Collection of .NET Framework and Visual Studio Posters     วันนี้ ผมเอาแผ่นภาพโปสเตอร์ ที่รวบรวม namespace .NET Framework และ คีย์ลัดของ Visual Studio มาให้เพื่อนๆ ปริ้นท์แล้วเอาไว้แปะข้าฝา กันเลย  รวบรวมไว้ค่อนข้างเยอะ ที่เป็นประโยชน์สำหรับนักพัฒนาโปรแกรม ที่เป็นสาวกของ Visual Studio ไม่ว่าจะเป็น namespace ของ .NET Framework 3.0  3.5 หรือ 4.0 ก็มีให้อย่างพร้อมสรรพ

ไม่ควรพลาดด้วยประการทั้งปวง ปริ้นท์สี สวยๆ เคลือบดีๆ แล้วแปะไว้ข้างฝา รับรอง เขียนโปรแกรม ลื่นหัวแตก แน่ๆนอน ^_^

Visual Studio 2010 Keybinding Cards - A high quality, print-ready PDF containing the default keybindings in Visual Studio 2010 for Visual Basic, Visual C#, Visual C++ and Visual F#.

.NET Framework 4.0 Namespaces and Types Poster – A high quality, print-ready PDF containing .NET Framework 4.0 important Namespaces and Types.

.NET Framework 3.5 Common Namespaces and Types Poster - The .NET Framework 3.5 Common Namespaces and Types Poster is downloadable as XPS or PDF format.

.NET Framework 3.0 Namespaces and Types Poster - A high quality, print-ready PDF containing .NET Framework 3.0 important Namespaces and Types

Visual C# 2008 Keybinding Reference Poster - A high quality, print-ready PDF containing the useful keybindings for developers that choose the C# developer profile in Visual Studio 2008 or use Visual C# Express

Visual Basic 2008 Keybinding Reference Poster - A high quality, print-ready PDF containing the useful keybindings for developers that choose the Visual Basic developer profile in Visual Studio 2008 or use Visual Basic Express.

Visual C++ 2008 Keybinding Reference Poster - A high quality, print-ready PDF containing the useful keybindings for developers that choose the Visual C++ developer profile in Visual Studio 2008 or use Visual C++ Express

Visual C# 2005 Keyboard Shortcut Reference Poster - This poster contains the default keybindings for Visual C# 2005, and is available as a PDF download in either color or grayscale for you to print.

Visual Basic 2005 Keyboard Shortcut Reference Poster - This poster contains the default key bindings for Visual Basic 2005, and is available as a PDF download in either color or grayscale for you to print

Visual C++ 2005 Keyboard Shortcut Reference Poster - This poster contains the default keybindings for Visual C++ 2005, and is available as a PDF download in either color or grayscale for you to print.

เครดิต http://www.devcurry.com/2010/06/collection-of-net-framework-and-visual.html

อ่านเพิ่มเติม...

Wednesday, June 15

HelloWorld with Visual C# (Simple Application)

      ถือว่าเป็นการไหว้ครู ทุกภาษาที่เรากำลังจะเริ่มศึกษาจะต้องมีการไหว้ครูก่อน เป็นธรรมเนียมปฏิบัติ ด้วยการส่งข้อความ HelloWorld ออกสู่การแสดงผล ทางอุปกรณ์การแสดงผลพื้นฐาน ที่ต้องบอกว่าอุปกรณ์การแสดงผลพื่นฐานนันก็เพราะว่า ไม่เฉพาะกับโปรแกรมที่เรากำลังเขียนอยู่บนคอมพิวเตอร์เท่านั่น แม้แต่อุปกรณ์จำพวกไมโครคอนโทรลเลอร์ ก็ต้องทำการ HelloWorld ก่อนด้วยกันทั้งนั้น แต่ด้วยความที่ไมโครคอนโทรลเลอร์ไม่ได้มีจอภาพ หรือจอมอนิเตอร์เหมือนพีซี จึงจะต้อง HelloWorld ด้วยการทำให้ไฟ LED ที่ต่ออยู่ที่ขาไอซี กระพริบติดดับเป็นจังหวะ นันก็เป็นการ HelloWorld อีกรูปแบบหนึ่งเช่นกัน

      เรามาทำการ Hello World กันดีกว่า ด้วยการสร้างแอปพลิเคชั่นอย่างง่ายที่สุด เพื่อลดข้อผิดพลาดที่อาจจะเกิดขึ้น กับมือใหม่ ที่อาจจะทำให้เกิดความท้อแท้ และผิดหวังในโปรแกรมที่กำลังศึกษาตจนเป็นอันต้องล้มเลิกไปก่อนที่จะเริ่มเขียนแอปพลิเคชั่นที่ซับซ้อนขึ้นไป

ง่ายๆครับ เริ่มจากการสร้างโปรเจคด้วยเราจะเลือก

Visual C# creat project

Visual C# Console Application

Visual C# HelloWorld 

Hello World by VC#

รับชม VDO ตอนสั้นๆ กันดีกว่า เข้าใจง่ายกว่า

ถ้าใครยังทำตรงนี้ ไม่ได้ อาจจะต้องไปไหว้เจ้าที่ก่อนนะครับ เพราะอาจจะโดนเจ้าที่แกล้งเอาได้ เพราะเป็นโค๊ดง่ายๆ อย่างที่สุดแล้ว ไม่ต้องเข้าจะอะไรมากในตอนนี้ ขอให้ทำตามไปก่อน แล้วดูผลลัพธ์ที่ได้ ถ้าเพื่อนๆ ทำได้แล้ว ก็สบายใจได้แล้วครับ เราอาจจะเหมาะกับทางนี้ก็ได้นะครับ (สร้างขวัญและกำลังใจกันสุดๆ)  เดี๋ยวเราค่อยมาเจาะลงลึก กันในตอนต่อไปนะครับ

อ่านเพิ่มเติม...

Monday, June 6

Getting Start with Visual Studio.net express




หลังจากที่จดๆ จ้องๆ มานานกับ Visual Basic ก็ได้เวลากันสักที

บล๊อกนี้ สร้างขึ้นมาเพื่อเป็นที่เก็บรวบรวมความรู้ ประสบการณ์ในการศึกษาภาษา Visual Studio ของบริษัทไมโครซอฟท์ ซึ่งในชุดของ Visual Studio ยังมีแบ่งแยกเป็นหลายภาษาด้วยกัน ได้แก่ Visual Basic.net , Visual C#, Visual C++ และ Visual Web developer ซึ่งในที่นี้ ผมคงไม่ได้ศึกษาได้ครบหมดทุกตัว ตัวที่ผมสนใจ ได้แก่ Visual Basic.net, Visual C# และ Visual C++ ที่เหลือคงเก็บไว้ก่อน

อันดับแรกเลย เครื่องคอมพิวเตอร์ของเราจะต้องมีโปรแกรมแปลภาษาและเขียนภาษาเหล่านี้ก่อน ในที่นี้ ผมอยากแนะนำให้เพื่อนๆ ทดลองดาวน์โหลดชุดพัฒนาโปรแกรมของไมโครซอฟท์ที่ชื่อ Visual Studio.net express มาลองศึกษากันก่อน เนื่องจากเป็นชุดพัฒนาโปรแกรมที่ทางไมโครซอฟท์ปล่อยให้เราดาวน์โหลดได้ฟรี (แต่ต้องลงทะเบียน เพื่อให้โปรแกรมสามารถใช้ได้เกิน 30 วัน ) เข้าไปที่ลิ้งค์นี้กันเลยครับ

แล้วเลือกชุดพัฒนา Visual Studio 2008 Express  (ผมแนะนำตัวนี้ เพราะเคยลองโหลด Visual Studio 2010 Express มาแล้วรู้สึกเครื่องมันหน่วงๆ )  ที่แท๊ป Visual Studio 2008 Express จะมี package แยกให้เราติดตั้งแต่ละตัว หรือว่าเพื่อนๆ จะติดตั้งทั้งหมดของชุดพัฒนาโปรแกรม Visual Studio เลยก็ได้ โดยสามารถโหลดเป็น file ISO มาไว้ที่เครื่อง แล้วใช้โปรแกรมพวกจำลอง virtual drive ทำการจำลองเป็น DVD drive แล้วติดตั้งแบบไม่ต้องต่ออินเตอร์เนตก็ได้ ตามภาพ

Microsoft Express Downloads - Visual Studio Express

หลังจากติดตั้งแล้ว ผมแนะนำให้เพื่อนๆ ลงทะเบียนกันได้เลยครับ ถ้าเพื่อนๆ มี account windows live หรือ hotmail อยู่แล้ว เราสามารถลงทะเบียนได้เลยทันที โดยเปิดโปรแกรมตัวที่เราติดตั้งไว้แล้ว ไม่ว่าจะเป็น Visual Basic, Visual C++ หรือ Visual C# แล้วไปที่เมนูด้านบน เลือก
Help --> Register Product เมื่อคลิกแล้วจะเข้าสู่หน้าเว็บไมโครซอฟท์ ซึ่งให้เรา login เข้าเหมือนเข้า Hotmail หรือ windows live โดยใช้ username / password ที่เราใช้เข้าเพื่ออ่านเมล์ นั่นแหละ

เมื่อ login ได้แล้ว ให้รอสักครู่ หน้าเว็บจะ re-direct ไปที่หน้าแบบสอบถาม ให้เรากรอก information คร่าวๆ เมื่อกรอกเรียบร้อยแล้ว กดปุ่ม เพื่อดำเนินการต่อ เราก็จะได้ register key ให้เรา copy หมายเลขชุดนั้นกลับมาใส่ที่หน้าเมนู ที่เราเปิดไว้ครั้งแรก โปรแกรมของเราก็จะสามารถใช้ได้เกิน 30 วัน

หวังว่า เพื่อนๆคงติดตั้งโปรแกรมกันเรียบร้อยแล้วนะครับ ในตอนต่อไป ผมก็จะได้ไปศึกษาเพิ่มเติม แล้วนำมาเล่าสู่กันฟังในตอนนต่อๆ ไปครับ

อ่านเพิ่มเติม...
 

แจกฟรี พื้นที่ฝากไฟล์ 2 GB

ads

ติดตามข่าวสารผ่าน Twitter

ติดตาม Blog นี้

About Me

My photo

สวัสดีครับ ชื่อเปิ้ลนะครับ ถ้ามีอะไรให้ช่วยเหลือได้ ก็จะช่วยครับ
ผมได้สร้างบล๊อกไว้ เพื่อเก็บรวบรวมความรู้ และประสบการณ์ในการทำงานครับ แวะไปเยี่ยมชมกันได้ครับ http://mechacity.blogspot.com และบล๊อก http://faker-programmer.blogspot.com ครับ

Blog อื่นๆของฉัน

จำนวนการเยี่ยมชมบล๊อก