terrydiederich2
1/10/2019 - 3:14 PM

Database Return Parameter

 Public Function InsertLog(_machineName As String) As Integer
        Dim fmt As New dbFunctions
        Dim newID As Integer = -1

        Using con As New MySqlConnection(MyConnectionString)
            Using cmd As New MySqlCommand("UpdateProgressLog_Insert", con)
                cmd.CommandType = CommandType.StoredProcedure
                cmd.Parameters.AddWithValue("@_startDateTime", DateTime.Now)
                cmd.Parameters("@_startDateTime").Direction = ParameterDirection.Input
                cmd.Parameters.AddWithValue("@_endDateTime", Nothing)
                cmd.Parameters("@_endDateTime").Direction = ParameterDirection.Input
                cmd.Parameters.AddWithValue("@_machinename", _machineName)
                cmd.Parameters("@_machinename").Direction = ParameterDirection.Input
                cmd.Parameters.AddWithValue("@_lastID", newID)
                cmd.Parameters("@_lastID").Direction = ParameterDirection.Output

                con.Open()

                cmd.ExecuteNonQuery()

                If IsDBNull(cmd.Parameters("@_lastID").Value) Then
                    newID = -1
                Else
                    newID = fmt.ConvertdbToInteger(cmd.Parameters("@_lastID").Value)
                End If

            End Using
        End Using

        Return newID
    End Function


'PROCEDURE intechdbtest.UpdateProgressLog_Insert(IN _startDateTime datetime, IN _endDateTime datetime, IN _machineName varchar(20), OUT _lastID int)
'BEGIN
'
'  INSERT INTO updateprogresslog (StartDateTime
'  , EndDateTime
'  , MachineName)
'    VALUES (_startDateTime, _endDateTime, _machineName);
'
'  SET _lastID = LAST_INSERT_ID();
'END