HOME > .NET Framework > Forum > conversion from string to type 'integer' is not valid>> เวลาเพิ่มข้อมุลข้อมูลอื่นขึ้นแต่ตรงรหัสที่เป็น pk ไม่ขึ้นอ่ะค่ะ
conversion from string to type 'integer' is not valid>> เวลาเพิ่มข้อมุลข้อมูลอื่นขึ้นแต่ตรงรหัสที่เป็น pk ไม่ขึ้นอ่ะค่ะ
Function getNextId() As String
'สั่งให้รันรหัสเองไปเรื่อยๆ
Dim sqlStr As String
sqlStr = "Select TOP(1) Personnel_id From person order by Personnel_id DESC "
Dim conn As New SqlConnection(dbcon.conString)
Dim cmd As New SqlCommand(sqlStr, conn)
Dim dr As SqlDataReader
conn.Open()
dr = cmd.ExecuteReader
Dim id As Integer = 0<<<<<<<<<<<<<<<<<<<<<<ตรงนี้
If dr.HasRows = True Then
dr.Read()
'ตัดตัว Pe ออก เริ่มเอามาจากตัวที่ 2
id = dr("Personnel_id").ToString.Substring(2, 4)<<<<<<<<<<<<<<<<<<<<<ตรงนี้อีกที่ค่ะ
dr.Close()
End If
conn.Close()
id = id + 1
Return "Pe" & id.ToString("0000")
End Function
Private Sub AutoGenerateLendID()
Dim sqlTmp As String = ""
Dim comTmp As SqlCommand = New SqlCommand
Dim drLend As SqlDataReader
Dim tmpLendID As Integer = 0
sqlTmp = "SELECT TOP 1 LendID FROM Lend ORDER BY LendID DESC"
With Conn
If .State = ConnectionState.Open Then .Close()
.ConnectionString = strConn
.Open()
End With
Try
With comTmp
.CommandType = CommandType.Text
.CommandText = sqlTmp
.Connection = Conn
drLend = .ExecuteReader()
drLend.Read()
tmpLendID = CInt(CStr((drLend.Item("MemberID"))))
tmpLendID = tmpLendID + 1
LastLendID = tmpLendID.ToString("0000000")
End With
Catch
LastLendID = "0000001"
End Try
drLend.Close()
End Sub
Date :
2013-01-16 23:52:07
By :
แต้ว
No. 5
Guest
รบกวนอีกทีค่ะ ขึ้นError Incorrect syntax near ','. ต้องแก้ไขตรงไหนหรอค่ะ
Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
Dim sqlMember As String = ""
Dim comMember As SqlCommand = New SqlCommand
Dim tmpMSG As String = ""
If (txtMemberID.Text = "") Or (txtName.Text = "") Or (txtAddress.Text = "") Or (txtTel.Text = "") Then
MessageBox.Show("กรุณาป้อนข้อมูลสมาชิกให้ครบ !!!", "ผลการตรวจสอบ", MessageBoxButtons.OK, MessageBoxIcon.Warning)
txtMemberID.Focus()
Exit Sub
End If
If cboPosition.Text = "" Then
MessageBox.Show("กรุณาระบุประเภทสมาชิก !!!", "ผลการตรวจสอบ", MessageBoxButtons.OK, MessageBoxIcon.Warning)
cboPosition.Focus()
Exit Sub
End If
If CStr(cboPosition.SelectedValue) = "1" Or CStr(cboPosition.SelectedValue) = "2" Then
sqlMember &= "'0','1')"
ElseIf CStr(cboPosition.SelectedValue) = "0" Then
sqlMember &= "'1','0')"
End If
Case "Edit"
sqlMember = "UPDATE Member "
sqlMember &= " SET Mem_Num='" & txtMemberID.Text & "',"
sqlMember &= " Mem_Name='" & txtName.Text & "',"
sqlMember &= " Address='" & txtAddress.Text & "',"
If OptMale.Checked = True Then
sqlMember &= " Sex='M',"
ElseIf OptFemale.Checked = True Then
sqlMember &= " Sex='F',"
End If
With Conn
If .State = ConnectionState.Open Then .Close()
.ConnectionString = strConn
.Open()
End With
If ActionFlag = "Add" Then
tmpMSG = "คุณต้องการเพิ่มข้อมูล ใช่หรือไม่ ?"
ElseIf ActionFlag = "Edit" Then
tmpMSG = "คุณต้องการแก้ไขข้อมูล ใช่หรือไม่ ?"
End If
If MessageBox.Show(tmpMSG, "คำยืนยัน", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then
With comMember
.CommandType = CommandType.Text
.CommandText = sqlMember
.Connection = Conn
.ExecuteNonQuery()
End With
End If
Catch ErrProcess As Exception
MessageBox.Show("ไม่สามารถเพิ่มสมาชิกใหม่ได้ เนื่องจาก " & ErrProcess.Message, "ข้อผิดพลาด", MessageBoxButtons.OK, MessageBoxIcon.Warning)
Exit Sub
End Try