Imports System.Data.SqlClient
'ประกาศตัวแปร
Friend con As New SqlConnection("data source=.\SQL2012;initial catalog=Projectcall; integrated Security=sspi;")
Friend cmd As New SqlCommand
Friend sql As String = ""
ก็ทำโมดูลขึ้นมาอันนึงก็ได้ครับ แล้วประกาศเป็น Friend หรือ Public ก็เรียกใช้ได้ทั้งโปรเจ็คแล้วครับ
เช่น Code (VB.NET)
Imports MySql.Data.MySqlClient
Module ModuleCode
Friend FileConfigINI_mcode = Application.StartupPath + "\CONFIG.ini"
Friend server As String = HexToStr(ReadIni(FileConfigINI_mcode, "database_config", "server", ""))
Friend database As String = HexToStr(ReadIni(FileConfigINI_mcode, "database_config", "data_base_name", ""))
Friend user As String = HexToStr(ReadIni(FileConfigINI_mcode, "database_config", "data_base_user", ""))
Friend password As String = HexToStr(ReadIni(FileConfigINI_mcode, "database_config", "data_base_password", ""))
Friend port As String = HexToStr(ReadIni(FileConfigINI_mcode, "database_config", "data_base_port", ""))
'connect database
Public data As String = "Server='" & server & "';Port='" & port & "';Database='" & database & "';Uid='" & user & "';Pwd='" & password & "';Convert Zero Datetime=True;"
''' <summary>
''' MySqlConnection
''' </summary>
''' <remarks></remarks>
Public ConnectionDB As New MySqlConnection(data)
Dim constrAppconfig As String = "server=" + server + ";Port=" + port + ";user id=" + user + ";password=" + password + ";database=" + database + ";Convert Zero Datetime=True;"
''' <summary>
''' String สำหรับ MySQL
''' </summary>
''' <remarks></remarks>
Public strSQL As String
''' <summary>
''' MySqlDataAdapter
''' </summary>
''' <remarks></remarks>
Public dtAdapter As MySqlDataAdapter
''' <summary>
''' DataTable Form MySQL
''' </summary>
''' <remarks></remarks>
Public dt As DataTable
''' <summary>
''' DataSet Form MySQL
''' </summary>
''' <remarks></remarks>
Public ds As DataSet
''' <summary>
''' DataRow Form MySQL
''' </summary>
''' <remarks></remarks>
Public dRow As DataRow
''' <summary>
''' MySqlCommand
''' </summary>
''' <remarks></remarks>
Public cmd As MySqlCommand
''' <summary>
''' MySqlDataReader
''' </summary>
''' <remarks></remarks>
Public Dr As MySqlDataReader
''' <summary>
''' DataView From MySQL
''' </summary>
''' <remarks></remarks>
Public dv As DataView
Public saveMess As Integer
Friend cashSelectDetail As String
''' <summary>
''' เปิด/ปิด การเชื่อมต่อฐานข้อมูล MySQL อัตโนมัติ
''' </summary>
''' <remarks>Call open_connection()</remarks>
Public Sub open_connection()
Try
If ConnectionDB.State = ConnectionState.Open Then ConnectionDB.Close()
ConnectionDB.Open()
Catch ex As Exception
Throw New Exception("การเชื่อมต่อฐานข้อมูลใช้งานไม่ได้ เกิดข้อผิดพลาด : " & ex.Message)
End Try
End Sub
End Module
เรียกใช้ในฟอร์มต่างๆ
Code (VB.NET)
Friend MenuLoigName As String
Friend access, leval As Integer
Friend Sub checkAccess(ByVal CeAc As String)
Try
access = Nothing
leval = Nothing
MenuLoigName = CeAc
cmd = New MySqlCommand("SELECT access,leval FROM access_lavel WHERE zone='" & CeAc & "'", ConnectionDB)
Call open_connection()
Dr = cmd.ExecuteReader()
If Dr.HasRows Then
Dr.Read()
access = Dr.Item("access")
leval = Dr.Item("leval")
End If
Catch ex As Exception
Me.lblMainStatus.Text = "Error - " & Me.GetType().Name & " - " & System.Reflection.MethodBase.GetCurrentMethod().Name & " - " & ex.Message
End Try
End Sub
การประกาศตัวแปรในโมดูล เวลาใช้เราไม่ต้องอ้างอิงใด ๆ ต่างจากประกาศใน Form หรือ Class ต้องอ้างอิงชื่อ Form หรือ Class นั้น ๆ ที่ตัวแปรถูกประกาศอยู่ เช่น
Code (VB.NET)
Public Class MainFrm
Public r As String
End Class
เวลานำไปใช้ใน Form หรือ Class อื่น ต้องอ้างอิงชื่อ คลาสนั้นด้วย