PDA

View Full Version : دسترسی به کلید اصلی رکورد بعداز ثبت در بانک اطلاعاتی



mostafa_tak2000
جمعه 08 شهریور 1398, 13: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 دسترسی داشته باشم

hamidrezax1
شنبه 09 شهریور 1398, 18:25 عصر
سلام دوست عزیز از تصویر زیر الهام بگیرین.موفق باشید
150687

lovecityseven470
چهارشنبه 13 شهریور 1398, 13:57 عصر
سلام ممنون از راهنماییتون
ولی دیتابیس برنامه من اکسسه

hamidrezax1
چهارشنبه 20 شهریور 1398, 07:30 صبح
دوست عزیز.یکم تغییر بدین و کانکشن درست کنید همون میشه.جسارتا برای یادگیری پیشنهاد میکنم خودتون کد ها رو تصیح و استفاده کنید و منتظر، کد برای کپی برداری نباشید.موفق باشید