301 lines
9.8 KiB
VB.net
301 lines
9.8 KiB
VB.net
![]() |
Imports MySql.Data ' 데이터베이스 연동을 위한 네임스페이스 추가
|
|||
|
Imports MySql.Data.MySqlClient ' MYSQL Server용 네임스페이스 추가
|
|||
|
Module MySqlModule
|
|||
|
Private Const ServerIP As String = "192.168.0.250"
|
|||
|
Private Const DataBaseName As String = "jomtTesterDB"
|
|||
|
'Private Const DataBaseName As String = "jomtTesterServerDB"
|
|||
|
Private Const UserDataBaseName As String = "jomtAccountDB"
|
|||
|
Private Const UserName As String = "root"
|
|||
|
Private Const Password As String = "JOMT1646db!!"
|
|||
|
Private Conn As String = "Server=" + ServerIP + ";DataBase=" + DataBaseName + ";user=" + UserName + ";password=" + Password + ";"
|
|||
|
|
|||
|
Private sqlCon As New MySqlConnection(Conn)
|
|||
|
Private sqlCmd As New MySqlCommand()
|
|||
|
Private sqlData As MySqlDataReader
|
|||
|
Public sqlDataQueryScalar As Object
|
|||
|
Public sqlDataQuery() As Object
|
|||
|
Public StrCmd As String
|
|||
|
|
|||
|
Private Function DBOpen() As Boolean
|
|||
|
Try
|
|||
|
If sqlCon.State <> ConnectionState.Open Then
|
|||
|
sqlCon.Open()
|
|||
|
End If
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
|
|||
|
Private Function DBClose() As Boolean
|
|||
|
Try
|
|||
|
If sqlCon.State = ConnectionState.Open Then
|
|||
|
sqlCon.Close()
|
|||
|
End If
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Function DBCommand(cmdStr As String) As Boolean
|
|||
|
Try
|
|||
|
sqlCon.Open()
|
|||
|
sqlCmd.CommandText = "USE " & DataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCon.Close()
|
|||
|
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
sqlCon.Close()
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function DBQueryScalar(cmdStr As String) As String
|
|||
|
Try
|
|||
|
sqlCon.Open()
|
|||
|
sqlCmd.CommandText = "USE " & DataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlDataQueryScalar = sqlCmd.ExecuteScalar()
|
|||
|
|
|||
|
sqlCon.Close()
|
|||
|
|
|||
|
Return sqlDataQueryScalar
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
sqlCon.Close()
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function DBQueryReader(cmdStr As String) As Integer
|
|||
|
Dim FieldCount As Integer
|
|||
|
Dim QueryCount As ULong
|
|||
|
Dim initRun As Boolean = True
|
|||
|
Dim TmpData As Object
|
|||
|
Dim DataTypeName As String
|
|||
|
|
|||
|
Try
|
|||
|
DBOpen()
|
|||
|
|
|||
|
sqlCmd.CommandText = "USE " & DataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlData = sqlCmd.ExecuteReader
|
|||
|
|
|||
|
FieldCount = sqlData.FieldCount
|
|||
|
|
|||
|
While (sqlData.Read())
|
|||
|
If initRun Then
|
|||
|
ReDim sqlDataQuery(FieldCount - 1)
|
|||
|
initRun = False
|
|||
|
Else
|
|||
|
ReDim Preserve sqlDataQuery(UBound(sqlDataQuery) + FieldCount)
|
|||
|
End If
|
|||
|
|
|||
|
For cnt = 0 To FieldCount - 1
|
|||
|
DataTypeName = sqlData.GetDataTypeName(cnt)
|
|||
|
|
|||
|
If DataTypeName = "DATE" Then
|
|||
|
TmpData = sqlData.GetDateTime(cnt)
|
|||
|
Else
|
|||
|
TmpData = sqlData.GetValue(cnt)
|
|||
|
End If
|
|||
|
|
|||
|
If DBNull.Value.Equals(TmpData) Or TmpData.Equals(String.Empty) Then
|
|||
|
sqlDataQuery(QueryCount) = "0"
|
|||
|
Else
|
|||
|
sqlDataQuery(QueryCount) = TmpData
|
|||
|
End If
|
|||
|
|
|||
|
QueryCount += 1
|
|||
|
Next
|
|||
|
End While
|
|||
|
|
|||
|
DBClose()
|
|||
|
Return QueryCount
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
If sqlCon.State = ConnectionState.Open Then sqlCon.Close()
|
|||
|
Return 0
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
Public Function UserDBCommand(cmdStr As String) As Boolean
|
|||
|
Try
|
|||
|
sqlCon.Open()
|
|||
|
sqlCmd.CommandText = "USE " & UserDataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCon.Close()
|
|||
|
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
sqlCon.Close()
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
Public Function UserDBQueryReader(cmdStr As String) As Integer
|
|||
|
Dim FieldCount As Integer
|
|||
|
Dim QueryCount As ULong
|
|||
|
Dim initRun As Boolean = True
|
|||
|
Dim TmpData As Object
|
|||
|
Dim DataTypeName As String
|
|||
|
|
|||
|
Try
|
|||
|
DBOpen()
|
|||
|
|
|||
|
sqlCmd.CommandText = "USE " & UserDataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlData = sqlCmd.ExecuteReader
|
|||
|
|
|||
|
FieldCount = sqlData.FieldCount
|
|||
|
|
|||
|
While (sqlData.Read())
|
|||
|
If initRun Then
|
|||
|
ReDim sqlDataQuery(FieldCount - 1)
|
|||
|
initRun = False
|
|||
|
Else
|
|||
|
ReDim Preserve sqlDataQuery(UBound(sqlDataQuery) + FieldCount)
|
|||
|
End If
|
|||
|
|
|||
|
For cnt = 0 To FieldCount - 1
|
|||
|
DataTypeName = sqlData.GetDataTypeName(cnt)
|
|||
|
|
|||
|
If DataTypeName = "DATE" Then
|
|||
|
TmpData = sqlData.GetDateTime(cnt)
|
|||
|
Else
|
|||
|
TmpData = sqlData.GetValue(cnt)
|
|||
|
End If
|
|||
|
|
|||
|
If DBNull.Value.Equals(TmpData) Or TmpData.Equals(String.Empty) Then
|
|||
|
sqlDataQuery(QueryCount) = "0"
|
|||
|
Else
|
|||
|
sqlDataQuery(QueryCount) = TmpData
|
|||
|
End If
|
|||
|
|
|||
|
QueryCount += 1
|
|||
|
Next
|
|||
|
End While
|
|||
|
|
|||
|
DBClose()
|
|||
|
Return QueryCount
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
If sqlCon.State = ConnectionState.Open Then sqlCon.Close()
|
|||
|
Return 0
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function CheckExistTD_SN(strPV_SN As String) As String
|
|||
|
StrCmd = "select PV_SN, Number from jomtCartridgeTbl where PV_SN = '" & strPV_SN & "';"
|
|||
|
If DBQueryReader(StrCmd) Then
|
|||
|
If sqlDataQuery(0) = strPV_SN.ToUpper() Then
|
|||
|
Return sqlDataQuery(1)
|
|||
|
Else
|
|||
|
Return False
|
|||
|
End If
|
|||
|
End If
|
|||
|
Return False
|
|||
|
End Function
|
|||
|
Public Function CheckExistCT_SN(strCT_SN As String) As String
|
|||
|
StrCmd = "select Product_SN,Number from jomtCartridgeTbl where Product_SN = '" & strCT_SN & "';"
|
|||
|
If DBQueryReader(StrCmd) Then
|
|||
|
If sqlDataQuery(0) = strCT_SN.ToUpper() Then
|
|||
|
Return sqlDataQuery(1)
|
|||
|
Else
|
|||
|
Return False
|
|||
|
End If
|
|||
|
End If
|
|||
|
Return False
|
|||
|
End Function
|
|||
|
Public Function CheckExistDEV_SN(strDEV_SN As String) As String
|
|||
|
StrCmd = "select Product_SN,Number from jomtDeviceTbl where Product_SN = '" & strDEV_SN & "';"
|
|||
|
If DBQueryReader(StrCmd) Then
|
|||
|
If sqlDataQuery(0) = strDEV_SN.ToUpper() Then
|
|||
|
Return sqlDataQuery(1)
|
|||
|
Else
|
|||
|
Return False
|
|||
|
End If
|
|||
|
End If
|
|||
|
Return False
|
|||
|
End Function
|
|||
|
Public Function CheckExistAssy_SN(strItem As String, strDEV_SN As String) As Long
|
|||
|
StrCmd = "select " & strItem & ",Number from jomtProductTbl where " & strItem & " = '" & strDEV_SN & "';"
|
|||
|
If DBQueryReader(StrCmd) Then
|
|||
|
If sqlDataQuery(0) = strDEV_SN.ToUpper() Then
|
|||
|
Return Val(sqlDataQuery(1))
|
|||
|
Else
|
|||
|
Return 0
|
|||
|
End If
|
|||
|
End If
|
|||
|
Return 0
|
|||
|
End Function
|
|||
|
Public Function CheckExistCountDate(strDate As String) As String
|
|||
|
|
|||
|
StrCmd = "select Date from jomtMES_ProductTbl where Date='" & strDate & "';"
|
|||
|
If DBQueryReader(StrCmd) Then
|
|||
|
If sqlDataQuery(0) = strDate Then
|
|||
|
Return sqlDataQuery(0)
|
|||
|
Else
|
|||
|
Return 0
|
|||
|
End If
|
|||
|
End If
|
|||
|
Return 0
|
|||
|
End Function
|
|||
|
Public Function getNowDateTime() As String
|
|||
|
Dim DateTimeStr As String
|
|||
|
|
|||
|
DateTimeStr = Format(DateAndTime.Year(Now), "0000") & "-" & Format(DateAndTime.Month(Now), "00") & "-" & Format(DateAndTime.Day(Now), "00") & " " & Format(DateAndTime.Hour(Now), "00") & ":" & Format(DateAndTime.Minute(Now), "00") & ":" & Format(DateAndTime.Second(Now), "00")
|
|||
|
|
|||
|
Return DateTimeStr
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function getNowDate() As String
|
|||
|
Dim DateTimeStr As String
|
|||
|
|
|||
|
DateTimeStr = Format(DateAndTime.Year(Now), "0000") & "-" & Format(DateAndTime.Month(Now), "00") & "-" & Format(DateAndTime.Day(Now), "00")
|
|||
|
|
|||
|
Return DateTimeStr
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function getNowTime() As String
|
|||
|
Dim DateTimeStr As String
|
|||
|
|
|||
|
DateTimeStr = Format(DateAndTime.Hour(Now), "00") & ":" & Format(DateAndTime.Minute(Now), "00") & ":" & Format(DateAndTime.Second(Now), "00")
|
|||
|
|
|||
|
Return DateTimeStr
|
|||
|
End Function
|
|||
|
|
|||
|
End Module
|