PDA

View Full Version : سوال: کپی یکجا رکوردها از datatable در جدول sql server



ncs2008
جمعه 01 اردیبهشت 1391, 16:59 عصر
سلام دوستان و خسته نباشید
دوستان من یک datatable دارم که 3 ستون کد،نام،نام خانوادگی دارد که داخل آنها 10 رکورد وجود دارد.من می خواهم این 10 رکورد را به یک باره(بدون حلقه و بدون ورود به صورت رکورد رکورد)در جدولی که در sql هست اضافه کنم(مانند کپی کردن).بازم تاکید می کنم اضافه کند.حالا دوستان می خوام بدونم همچین چیزی امکان دارد اگه هست لطفا راهنمایی کنید.
باتشکر از همه دوستان برنامه نویس

فرید نجفلو
جمعه 01 اردیبهشت 1391, 22:03 عصر
دوست عزیز بدن حلقه نمی شه
اگه می خواین از حلقه استفاده کنید راهنمایی کنم
در ضمن با حلقه هم می تونید یک یک و هم می تونید اطلاعات رو به یکباره وارد کنید

swallow.pa
جمعه 01 اردیبهشت 1391, 22:24 عصر
اگر این دیتا تیبل رو به بایندینگ سورس متصل کرده باشی با این روش می تونی هر چه رکورد هست توی دیتا تیبل یک هو وارد Sql کنی
Table1TableAdapter.Update(DataSet.Table1)

ncs2008
جمعه 01 اردیبهشت 1391, 23:27 عصر
دوست عزیز
جناب farid.n اگه ممکنه در مورد نحوه اضافه کردن رکوردها به صورت یکجا بیشتر راهنمایی کنید.
دوست عزیز
جناب swallow.pa من منظور شما را به درستی متوجه نشدم مگه میشه به بایندینگ سورس متصل نشه و update بشه-اگه لطف کنید با مثال توضیح دهید ممنون میشم.

فرید نجفلو
شنبه 02 اردیبهشت 1391, 17:58 عصر
دوست عزیز این کد رو امتحان کنید:
Dim dt As New DataTable
'Fill dt Here
Dim TSQL As String = ""
For Each aRow As DataRow In dt.Rows
Dim aRecordTSQL = "INSERT INTO Table1 (Code,Name,LastName) Values ({0},'{1}','{2}')"
TSQL &= String.Format(aRecordTSQL, aRow("Code"), aRow("Name"), aRow("LastName")) & ";" & vbNewLine
Next
If TSQL = "" Then
MsgBox("no data in Datatable")
Exit Sub
End If
Using conn As New SqlClient.SqlConnection("Connection String")
Dim cmd = conn.CreateCommand
cmd.CommandType = CommandType.Text
cmd.CommandText = TSQL
conn.Open()
cmd.ExecuteNonQuery()
conn.Close()
End Using

swallow.pa
شنبه 02 اردیبهشت 1391, 18:07 عصر
دوست عزیز
دوست عزیز
جناب swallow.pa من منظور شما را به درستی متوجه نشدم مگه میشه به بایندینگ سورس متصل نشه و update بشه-اگه لطف کنید با مثال توضیح دهید ممنون میشم.
دوست من شما یک بایندیگ سورس رو به فرمت اضافه کن
خصوصیت دیتاسورس رو با دیتاستت و دیتا ممبر رو با اون جدول مورد نظر ست کن
بعدش با استفاده از ایجاد یک row جدید هر چقدر خواستی رکورد ایجاد کن
با اینکار اطلاعات توی همون دیتا تیبله حالا این اطلاعات رو می خوای توی دیتابیس ذخیره کنی کدی رو که توی تایپیک بالا نوشتم اطلاعات رو کاملا و بدون استفاده از حلقه به دیتابیس می فرسته
موفق باشید

ncs2008
شنبه 02 اردیبهشت 1391, 22:02 عصر
دوستان می خواستم بدونم به نظرشما رکورد ها را به صورت رکورد رکورد و از طریق حلقه در بانک ذخیره کنم بهتره یا به صورت یکجا و با استفاده از datatable بهتره؟
اگر هم دلیلی داره لطف کنید بیان کنید چون هرکی یه چیزی میگه.
ممنون