mostafa_tak2000
جمعه 08 شهریور 1398, 14:09 عصر
باسلام . دوستان عزیز من به یه مشکل برخورد کردم که خودم خیلی سعی کردم رفعش کنم ولی نشد . ممنون میشم که دوستان کمکم کنند . من میخوام که وقتی کلید ثبت رکورد زده شد و رکورد ثبت شد کلید اصلی آن در دیتابیس SQLSERVER برگردانده شود البته کد کار میکنه و ID را میده ولی نمیتونم به ID دسترسی داشته باشم و فقط عدد 1 همون 1 رکورد ثبت شد برام ارسال مشه تو خروجی. من کدهام را هم براتون میفرستم که مشکل را پیدا کنید .
تابع اصلی که کار ارتباط با بانک جهت ذخیره را انجامیده
Public Function setdata2(ByVal sqlstr As String) As Object
Dim mconnectionstring As SqlConnection = New SqlConnection(connectionstring)
Dim command As New SqlCommand(sqlstr, mconnectionstring)
command.CommandType = CommandType.Text
mconnectionstring.Open()
Try
Return command.ExecuteNonQuery()
Catch myerror As SqlException
'MessageBox.Show("خطای داخلی برنامه با پشتیبانی نرم افزار تماس حاصل نمائید" & myerror.Message)
' End
Finally
mconnectionstring.Close()
mconnectionstring.Dispose()
End Try
End Function
تابع که ذخیره را انجام میده
Public Function AddTest(ByVal Name As String) As Integer
Dim dt As New Integer
Dim sql As String
Dim dm As New DataManager
sql = "insert into Test (Name) OUTPUT INSERTED.Id Values (N'" & Name & "')"
dt = dm.setdata2(sql)
Return dt
End Function
150683
هومنطور که تو تصویر میبینید ID رکورد ثبت شده 47 هست نشون میده و عدد 1 هم که ردیف ثبت است . من فقط 1 را میتونم تو برنامه بخونم . چطوری باید به 47 دسترسی داشته باشم
تابع اصلی که کار ارتباط با بانک جهت ذخیره را انجامیده
Public Function setdata2(ByVal sqlstr As String) As Object
Dim mconnectionstring As SqlConnection = New SqlConnection(connectionstring)
Dim command As New SqlCommand(sqlstr, mconnectionstring)
command.CommandType = CommandType.Text
mconnectionstring.Open()
Try
Return command.ExecuteNonQuery()
Catch myerror As SqlException
'MessageBox.Show("خطای داخلی برنامه با پشتیبانی نرم افزار تماس حاصل نمائید" & myerror.Message)
' End
Finally
mconnectionstring.Close()
mconnectionstring.Dispose()
End Try
End Function
تابع که ذخیره را انجام میده
Public Function AddTest(ByVal Name As String) As Integer
Dim dt As New Integer
Dim sql As String
Dim dm As New DataManager
sql = "insert into Test (Name) OUTPUT INSERTED.Id Values (N'" & Name & "')"
dt = dm.setdata2(sql)
Return dt
End Function
150683
هومنطور که تو تصویر میبینید ID رکورد ثبت شده 47 هست نشون میده و عدد 1 هم که ردیف ثبت است . من فقط 1 را میتونم تو برنامه بخونم . چطوری باید به 47 دسترسی داشته باشم