คุยกันก่อน
บทความก่อนหน้า ผมเขียนเกี่ยวกับการสร้างฐานข้อมูลแบบง่ายๆ ในโปรแกรม Microsoft Access2013 เพื่อเป็นฐานข้อมูลที่เราจะเขียนโปรแกรมจัดการข้อมูลในลำดับต่อไป ในบทความนี้ผมจะทดสอบเขียนโปรแกรมเพื่อให้โปรแกรมที่เราเขียนนั้นสามารถติดต่อกับฐานข้อมูลที่เราสร้างได้ จริงวิธีการเชื่อมต่อกับฐานข้อมูลนั้นทำได้หลายแบบหลายวิธีแล้วแต่ผู้เขียนจะเลือกวิธีการ
ผมจะลองติดต่อแบบง่ายๆ ไม่ซับซ้อนอะไรมากครับ
สร้างฟอร์มเพื่อทำการติดต่อฐานข้อมูล
ขั้นแรกเปิดโปรแกรม Microsoft Visual Basic ขึ้นมาทำการสร้าง New Project
ตั้อชื่อ โปรเจ็ค
จากนั้นทำการตั้งชื่อโปรเจ็คของเรา ผมตั้งชื่อว่า School นะครับ
เปลี่ยนคุณสมบัติฟอร์ม/Properties
โปรแกรมจะสร้างฟอร์มแรกขึ้นมา ผมจะทำการตั้งชื่อฟอร์มนี้ว่า Frm_Student โดยตั้งที่คุณสมบัติ Name เพื่อ เอาไว้จัดการข้อมูลนักเรียนจากฐานข้อมูลที่เราสร้างไว้รอแล้ว จากบทความที่ผ่านมา
การเขียนโค้ดโปรแกรม
ทำการดับเบิ้ลคลิกที่ฟอร์มครับ จะได้หน้าเขียนโค้ดโปรแกรม แล้วก็จะลองเริ่มเขียนกันเลย
เริ่มแรกให้ใส่โค้ด Imports System.Data.OleDb ไว้บนสุดของหน้าโค้ดโปรแกรม แบบนี้ครับ
จากนั้นเพิ่มโค้ดโปรแกรม นี้ถัดมาจาก Public class แบบนี้ครับ
Public constring As String = "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" _
& Application.StartupPath & "\school.accdb"
จะเป็นแบบนี้ครับ
สังเกตุดูว่า เราจะใส่ชื่อฐานข้อมูลที่เราสร้างจากโปรแกรม Access ด้วยครับ โค้ดตรง
& Application.StartupPath & ตรงนี้ช่วยได้เยอะตรงที่เราไม่จำเป็นต้องอ้างที่อยู่ของไฟล์ฐานข้อมูลครับ สะดวกดีครับ หลังจากนั้น เราทำการประกาศตัวแปรขึ้นมาใช้ 2 ตัวก่อนนะครับ
Public con As New OleDbConnection กับ Public sqlCommand As New OleDbCommand
ประกาศไว้แบบนี้ครับ
จากนั้นใน Frm_student_Load หรือที่เราเรียกว่า ฟอร์มโหลด ก็ใส่โค้ด
con.ConnectionString = constring
If con.State = ConnectionState.Closed Then
con.Open()
MsgBox("Open database")
End If
จะเป็นแบบนี้ครับ
หลังจากเขียนโค้ดโปรแกรเรียบร้อยแล้วลองทำการรันโปรแกรมดูครับว่ามีผลการทำงานเป็นอย่างไรบ้าง
หากมีข้อความแสดงออกมาว่า Open database ก็แสดงว่าการติดต่อฐานข้อมูลขั้นแรกนั้นใช้ได้ครับหลังจากนี้เราจะทำการกับข้อมูลได้ ไม่ว่าจะเป็น แสดง เพิ่ม ลบ แก้ไข ข้อมูล ได้ โดยในบทความต่อไปผมจะพูดถึงการเพิ่มข้อมูลนะครับ ติดตามตอนต่อไป
สำหรับรุ่น Microsoft Visual Basic .NET ของบทความนี้
ดู สำหรับรุ่น Microsoft Visual C# .NET ของบทความนี้
ดู สำหรับรุ่น Microsoft Visual J# .NET ของบทความนี้
ดู บทความนี้อ้างอิงไปไลบรารีคลาสกรอบงาน Microsoft .NET namespaces ดังต่อไปนี้: ระบบ System.Data System.Data.SqlClient
สรุป
ขั้นตอนในการสร้างตัวอย่าง
หมายเหตุเพิ่มเติม
ข้อมูลอ้างอิง โปรแกรมเมอร์จำเป็นต้องสร้างฐานข้อมูลโดยทางโปรแกรม บทความนี้อธิบายวิธีการใช้ ADO.NET และ Visual C++ .NET เพื่อสร้างฐานข้อมูล Microsoft SQL Server โดยทางโปรแกรม เริ่มการทำงาน Microsoft Visual Studio .NET และสร้างโครงการที่มีจัดการแอพลิเคชัน c ++ใหม่ Form1 จะถูกเพิ่มไปยังโครงการ โดยค่าเริ่มต้น
305079
307283
320628
ในงานนี้
สรุป
ขั้นตอนในการสร้างตัวอย่าง
เพิ่มรหัสต่อไปนี้ก่อนการนิยามของฟังก์ชันหลัก:
#using <mscorlib.dll>using namespace System;#using <system.dll>
using namespace System;
#using <System.data.dll>
using namespace System::Data;
using namespace System::Data::SqlClient;
#using <system.windows.forms.dll>
using namespace System::Windows::Forms;
เพิ่มรหัสต่อไปนี้ในฟังก์ชันหลักของคุณ:
int main(void){Console::WriteLine(S"Press 'C' and then ENTER to create a new database");
Console::WriteLine(S"Press any other key and then ENTER to quit");
char c = Console::Read();
if (c == 'C' || c == 'c')
{
Console::WriteLine(S"Creating the database...");
String* str;
SqlConnection* myConn = new SqlConnection
("Server=localhost;Integrated security=SSPI;database=master");
str = "CREATE DATABASE MyDatabase ON PRIMARY "
"(NAME = MyDatabase_Data, "
"FILENAME = 'C:\\MyDatabaseData.mdf', "
"SIZE = 2MB, MAXSIZE = 10MB, FILEGROWTH = 10%) "
"LOG ON (NAME = MyDatabase_Log, "
"FILENAME = 'C:\\MyDatabaseLog.ldf', "
"SIZE = 1MB, "
"MAXSIZE = 5MB, "
"FILEGROWTH = 10%)";
try
{
SqlCommand* myCommand = new SqlCommand(str, myConn);
myConn->Open();
myCommand->ExecuteNonQuery();
MessageBox::Show("Database is created successfully",
"MyProgram", MessageBoxButtons::OK,
MessageBoxIcon::Information);
}
catch (System::Exception* ex)
{
MessageBox::Show(ex->ToString(), "MyProgram",
MessageBoxButtons::OK,
MessageBoxIcon::Information);
}
if (myConn->State == ConnectionState::Open)
{
myConn->Close();
}
}
return 0;
}
เปลี่ยนแปลงสายอักขระการเชื่อมต่อเพื่อชี้ไปยัง SQL Server ของคุณ และตรวจสอบให้แน่ใจว่า อาร์กิวเมนต์ที่ฐานข้อมูลถูกตั้งค่าไปที่ต้นแบบหรือว่างเปล่า
กดแป้น F5 หรือ CTRL + F5 แป้นผสมเพื่อเรียกใช้โครงการ กด "C" จากนั้น กด ENTER เพื่อสร้างฐานข้อมูล
ใช้เซิร์ฟเวอร์ Explorer เพื่อตรวจสอบว่า มีการสร้างฐานข้อมูล
หมายเหตุเพิ่มเติม
รหัสนี้สร้างฐานข้อมูลแบบกำหนดเอง ด้วยคุณสมบัติที่เฉพาะเจาะจง
โฟลเดอร์ที่จะเก็บสร้างขึ้นเป็น.mdf และแฟ้ม.ldf ต้องมีก่อนที่คุณเรียกใช้รหัส หรือจะมีสร้างข้อยกเว้นอยู่แล้ว
ถ้าคุณต้องการสร้างฐานข้อมูลที่มีลักษณะคล้าย กับฐานข้อมูลรุ่นของ SQL Server และ ในตำแหน่งที่ตั้งเริ่มต้น เปลี่ยนตัวแปรสายอักขระในรหัส:
str = "CREATE DATABASE MyDatabase"
ข้อมูลอ้างอิง
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำสั่งสร้างฐานข้อมูลคำสั่งกลุ่ม SQL ดู SQL Server Books Online หรือไลบรารีแบบออนไลน์ของ MSDN:
//msdn2.microsoft.com/en-us/library/aa258257(SQL.80).aspxสำหรับข้อมูลเพิ่มเติมเกี่ยวกับวัตถุ ADO.NET และไวยากรณ์ ดูเอกสารประกอบ SDK กรอบงาน.NET Microsoft หรือแบบออนไลน์ของ MSDN:
เข้าถึงข้อมูล ด้วย
ADO.NET
//msdn2.microsoft.com/en-us/library/e80y5yhx(vs.71).aspx