Microsoft SQL Server, ORACAL และ Sybase เป็นระบบจัดการฐานข้อมูล (RDMS) ที่ได้รับความนิยมในปัจจุบัน ด้วยการปรับปรุงและพัฒนาอย่างต่อเนื่องของ SQL Server และการผสมผสานที่สมบูรณ์แบบกับระบบปฏิบัติการเครือข่าย Windows NT จึงได้รับการออกแบบมาเพื่อการเขียนโปรแกรมโครงสร้างไคลเอนต์-เซิร์ฟเวอร์แบบกระจาย มีสภาพแวดล้อมการพัฒนาที่ดีและดึงดูดความสนใจมากขึ้นเรื่อยๆ
Microsoft SQL Server เป็นระบบจัดการฐานข้อมูลประสิทธิภาพสูงที่ปรับขนาดได้ ซึ่งให้การบูรณาการกับ Windows NT Threading and Scheduling Services, Performance Monitor และ Event Browser ขึ้นอยู่กับอินเทอร์เฟซการจัดการของ Windows และให้การเข้าถึงข้อมูลระยะไกลบนเซิร์ฟเวอร์หลายเครื่อง การลากและมองเห็นภาพ -ปล่อยการควบคุมสำหรับการจัดการการจำลองแบบ การจัดการเซิร์ฟเวอร์ การวินิจฉัย และการปรับแต่ง
Distributed Management Objects (DMO) จัดเตรียมอินเทอร์เฟซอ็อบเจ็กต์ให้กับกลไกและบริการของ SQL Server SQL-DMO เป็นวัตถุอัตโนมัติ OLE 32 บิตที่มีให้สำหรับระบบปฏิบัติการ Windows 95 และ Windows NT OLE เป็นมาตรฐานและวิธีการสำหรับการรักษาวัตถุที่ใช้ร่วมกันของแอปพลิเคชัน เป็นวิธีการเขียนโปรแกรมที่ช่วยให้แอปพลิเคชันจัดการหรือเข้าถึงวัตถุที่ใช้ร่วมกันสำหรับข้อมูล DMO ได้รับการพัฒนาโดยใช้โครงสร้าง OLE มีแอปพลิเคชันที่เข้ากันได้กับ OLE พร้อมอินเทอร์เฟซสำหรับฟังก์ชันการจัดการ SQL Server ทั้งหมด DMO ทำให้นักพัฒนาซอฟต์แวร์สามารถเข้าถึงออบเจ็กต์ข้อมูล SQL Server ได้โดยตรง เราสามารถใช้ออบเจ็กต์การจัดการแบบกระจายเพื่อให้สามารถเข้าถึง SQL Server ได้โดยตรงโดยใช้เครื่องมือการเขียนโปรแกรมเช่น Visual Basic และ Visual FoxPro
เครื่องมือที่ Microsoft SQL Server มอบให้ช่วยให้ไคลเอนต์สามารถเข้าถึงข้อมูลบนเซิร์ฟเวอร์ผ่านวิธีการที่หลากหลาย ส่วนหลักของเครื่องมือเหล่านี้คือรหัส Transact-SQL (SQL ธุรกรรม) Transact-SQL เป็นเวอร์ชันปรับปรุงของ Structured Query Language (SQL) ที่มีคุณสมบัติและฟังก์ชันเพิ่มเติมมากมาย เมื่อใช้ Transact-SQL คุณสามารถสร้างอุปกรณ์ฐานข้อมูล ฐานข้อมูล และออบเจ็กต์ข้อมูลอื่นๆ แยกข้อมูลจากฐานข้อมูล แก้ไขข้อมูล และเปลี่ยนการตั้งค่าแบบไดนามิกใน SQL Server ดังนั้นการใช้ Transact-SQL จึงช่วยปรับปรุงการใช้งานจริงของแอปพลิเคชันได้อย่างมาก
เมื่อเราพัฒนาโครงการโครงสร้างไคลเอนต์/เซิร์ฟเวอร์ เราจำเป็นต้องสร้างโครงสร้างของออบเจ็กต์ข้อมูลหลายรายการ หากโครงการที่กำลังพัฒนามีไว้สำหรับลูกค้าเฉพาะราย ก็เป็นไปได้ที่จะสร้างอุปกรณ์ฐานข้อมูล ฐานข้อมูล และตารางบนเซิร์ฟเวอร์ด้วยตนเอง แต่หาก เมื่อโครงการที่ได้รับการพัฒนาเป็นซอฟต์แวร์มากกว่าสำหรับลูกค้าเฉพาะ ไม่ต้องสงสัยเลยว่าจะสร้างโครงสร้างของวัตถุข้อมูลด้วยตนเอง เราจำเป็นต้องเสริมสร้างกระบวนการสร้างฐานข้อมูลและตารางในโปรแกรมและแบบไดนามิกเมื่อโปรแกรม กำลังทำงานอยู่ สร้างฐานข้อมูลและตารางบนเซิร์ฟเวอร์ ดังนั้น การใช้ออบเจ็กต์การจัดการแบบกระจายและ Transact-SQL จึงเป็นวิธีสำคัญในการเขียนโปรแกรมโครงสร้างไคลเอ็นต์/เซิร์ฟเวอร์
ต่อไปนี้จะกล่าวถึงวิธีการใช้ DMO และ Transact-SQL ใน Visual Basic 5.0 เพื่อสร้างอุปกรณ์ฐานข้อมูล ฐานข้อมูล และวัตถุข้อมูลอื่นๆ บน SQL Server เริ่มต้นด้วยปัญหาเฉพาะ: สร้างอุปกรณ์ฐานข้อมูล 200M และ 400M Device_1 และ Device_2 บน SQL Server มีสี่โดเมน: ชื่อ อายุ เพศ ID_Code โดยมี ID_Code เป็นคีย์ และ Name เป็นดัชนี สร้างตาราง T_2 ในฐานข้อมูล Db2 มีห้าฟิลด์: ชื่อ อายุ เพศ แผนก No โดยมีแผนก และ No เป็นคีย์ อักขระ.
ในการเข้าถึง SQL Server คุณต้องเปิด SQL Service Manager ก่อน เพื่อเริ่ม หยุดชั่วคราว ดำเนินการต่อ และหยุดบริการ SQL Server รวมถึง MSSQLServer และ SQLExecutive คุณสามารถเปิดบริการทั้งสองนี้ด้วยตนเองหรือเปิดผ่านบรรทัดคำสั่งในโปรแกรมก็ได้
หากคุณใช้วิธีการแบบแมนนวล ให้เปิดตัวจัดการบริการ SQL และเปิดใช้งานไฟสีเขียวเริ่ม/ดำเนินการต่อของบริการ MSSQLServer และ SQLExecutive โดยตรง
เมื่อใช้วิธีการเริ่มต้นคำสั่งบรรทัด คุณสามารถใช้คำสั่ง VB Shell:
X=shell("Sqlmgr.exe",1) เพื่อแสดงหน้าต่าง SQL Service Manager;
X=shell("net start mssqlserver") เริ่มบริการ MSSQLServer
X=shell("net start sqlexecutive") เริ่มบริการ SQLExecutive
เนื่องจากที่นี่เราหวังว่าจะสร้างโครงสร้างวัตถุข้อมูลบน SQL Server แบบไดนามิกผ่านการเขียนโปรแกรม จึงแนะนำให้ใช้วิธีคำสั่ง line
หลังจากเริ่ม SQL Server Manager เราสามารถใช้ DMO และ Transact-SQL เพื่อสร้างวัตถุข้อมูลตามขั้นตอนต่อไปนี้
1. ในการใช้ DMO คุณต้องเปิดการอ้างอิงในแถบเครื่องมือ VB และเลือก Microsoft Windows Common Control 5.0 หากไม่พบรายการนี้ในแถบอ้างอิง ให้เลือกเรียกดูและเปลี่ยนไดเร็กทอรีภายใต้ WINNTSystem32 Comctl32 oca ถูกเพิ่มในการอ้างอิง
2. สร้างวัตถุ SQLOLE ในไฟล์โมดูล (.BAS):
Global OServer เป็น SQLOLE.SQLServer ใหม่
3. สร้างการเชื่อมต่อกับ SQL Server:
OServer.Connect ServerName:=registered SQL Server name, Login:=login name (โดยปกติคือ sa), รหัสผ่าน:=password
4. สร้างอุปกรณ์ฐานข้อมูล Device_1 และ Device_2:
dim transql เป็นสตริง
transql = "ใช้ต้นแบบ" & _
"ดิสก์เริ่มต้น" & _
"ชื่อ='อุปกรณ์_1'," & _
"Physname='D:SQLdatadevice1.dat'," & _
"vdevno=10," & _
"ขนาด=102400" & _
"ดิสก์เริ่มต้น" & _
"ชื่อ='อุปกรณ์2'," & _
"Physname='D:SQLdatadevice2.dat'," & _
"vdevno=11," & _
"ขนาด=204800"
OServer.ExecuteImmediate Command:=transql,exectype:=SQLOLEExec_Default
5. สร้างฐานข้อมูล Db_1 และ Db_2:
transql = "สร้างฐานข้อมูล Db_1 บนอุปกรณ์_1=100"
OServer.ExecuteImmediate คำสั่ง:=transql, exectype:=SQLOLEExec_Default
transql = "สร้างฐานข้อมูล Db_2 บนอุปกรณ์_2=100"
OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default
6. สร้างตารางในฐานข้อมูล:
สร้างตาราง T_1 บนฐานข้อมูล Db_1:
transql = "ใช้ Db_1" & _
"สร้างตาราง T_1" & _
"(ชื่อถ่าน(8) null," & _
" ตัวเลขอายุ (2) null, " & _
" เพศขนาดเล็ก null " & _
" ID_Code char(16) ไม่เป็นโมฆะ " & _
"ข้อจำกัด c_1 คีย์หลักคลัสเตอร์ (ID_Code))"
OServer.ExecuteImmediate คำสั่ง:=transql,exectype:=SQLOLEExec_Default
สร้างดัชนีในคอลัมน์ชื่อของตาราง T_1:
transql="สร้างดัชนีดัชนี_1 บน T_1 (ชื่อ)"
OServer.ExecuteImmediate คำสั่ง:=transql,exectype:=SQLOLEExec_Default
สร้างตาราง T_2 บนฐานข้อมูล Db_2:
transql = "ใช้ Db_2" & _
"สร้างตาราง T_2" & _
"(ชื่อถ่าน(8) null," & _
" ตัวเลขอายุ (2) null, " & _
" เพศขนาดเล็ก null " & _
" อักขระแผนก (16) ไม่ใช่ศูนย์ " & _
"ไม่มีถ่าน (4) ไม่เป็นโมฆะ" & _
"ข้อจำกัด c_2 คีย์หลักคลัสเตอร์ (แผนก, ไม่ใช่))"
OServer.ExecuteImmediate Command:=transql, exectype:=SQLOLEExec_Default
ณ จุดนี้ เราได้ดำเนินการเขียนโค้ดเพื่อสร้างออบเจ็กต์ข้อมูลเสร็จแล้ว หลังจากที่โปรแกรมถูกคอมไพล์และดำเนินการแล้ว อุปกรณ์ฐานข้อมูล ฐานข้อมูล และตารางในไลบรารีจะถูกสร้างขึ้นโดยอัตโนมัติ บนเซิร์ฟเวอร์ SQL
สำหรับอุปกรณ์ฐานข้อมูล คุณสามารถใช้ DISK REINIT, DISK REFIT และ DISK RESIZE เพื่อดำเนินการได้ หากคุณต้องการขยายความจุของอุปกรณ์ฐานข้อมูล Device_1 เป็น 200M คุณสามารถใช้วิธีการต่อไปนี้:
DISK RESIZE
ชื่อ='เดวิฟ_1',
ขนาด = 102400
โครงสร้างของฐานข้อมูลและตารางที่สร้างไว้แล้วบน SQL Server ยังสามารถแก้ไขและลบผ่าน DMO และ Transaction SQL ได้อีกด้วย เช่นเดียวกับการเขียนโค้ดข้างต้น คุณสามารถใช้คำสั่ง SQL ของธุรกรรม เช่น Alter Database Db_1, Alter DatabaseDb_2, Alter Table T_1, Alter Table T_2 เพื่อแก้ไขโครงสร้างของฐานข้อมูลและตารางที่สร้างขึ้น และใช้ Drop Database, Drop Table คำสั่งธุรกรรมเพื่อลบ ฐานข้อมูลและตารางที่สร้างขึ้น
ข้างต้นได้กล่าวถึงวิธีการสร้างและเข้าถึงโครงสร้างของวัตถุข้อมูลบน SQL Server แบบไดนามิก สำหรับการเข้าถึงเนื้อหาของฐานข้อมูลและตารางบน SQL Server คุณสามารถใช้ ODBC (Open Database Connectivity), DAO (Data Access Object), RDO (Remote Data Objects) หรือ DB-Library สำหรับการเขียนโปรแกรม