السلام عليكم
لدي مشكلة في اضافة حقول الداتا قريت فيو فعندما اضيف الحقول الى قاعدة البيانات لاتضاف كل الحقول وانما يضاف صف واحد فقط !!
وهذا هو الكود الذي اعمل به ..
كود :
Try
con.Open()
cmd.Connection = con
cmd.CommandText = "insert into TABLE1 (name,age) values (@name,@age)"
cmd.Parameters.Add("@name", SqlDbType.VarChar, 10)
cmd.Parameters.Add("@age", SqlDbType.Int)
cmd.Prepare()
For Each row As DataGridViewRow In dgv2.Rows
If Not row.IsNewRow Then
cmd.Parameters("@name").Value = row.Cells(0).Value.ToString
cmd.Parameters("@age").Value = row.Cells(1).Value.ToString
End If
Next
cmd.ExecuteNonQuery()
MessageBox.Show("insert succes")
Catch ex As Exception
MessageBox.Show("Error :" & ex.ToString())
Finally
con.Close()
dgv2.Rows.Clear()
End Try
(13-04-17, 11:31 PM)Amir_alzubidy كتب : [ -> ]السلام عليكم و رحمة الله
ربما ارفاق المشروع سيكون فكرة جيدة اخي الكريم .
اهلا و سهلا
مشكور على الاجابة والتفاعل مع المشكلة
لقد ارفقت لك المشروع .. انه يدخل صف واحد فقط وانا اريده ان يدخل كافة البيانات في الداتا قريد .. وشكرا مرة اخرى
(14-04-17, 11:55 PM)khodor1985 كتب : [ -> ]السلام عليكم أخي العزيز ورحمة الله وبركاته
لقد تم إضافة قاعدة بيانات Access إلى مشروعك وإضافة نموذج بعنوان Form2 في نفس المشروع لعدم وجود قاعدة بيانات sql، وقد قمنا بتطبيق المثال بناء لطلبك.
المرفق بعد التعديل عليه :
مشكور اخي
ولكني اضفت القاعدة ولكن بداخل الملف , اسف على هذا الخطا كان يجب ان اضعها خارج الملف ولكني مبتدئ
الامر الثاني اني اعمل بفيجوال 2008 ولدي فيجوال 2010 ولكن يبدو انك تعمل بفيجوال اعلى لذلك لم يفتح معي المشروع
انا اسف تعبتك معاي
انا اسف اخي
khodor1985 لا اريد ان اتعبك معي فقط اكتب لي كود 'الحفظ ' اذا امكن وانا ساجربة وان عمل او لم يعمل ساعلمك
(15-04-17, 12:18 AM)khodor1985 كتب : [ -> ]لقد تم التعديل على إصدار المشروع بناء لطلبك
المشروع بعد التعديل عليه :
PHP كود :
Imports System.Data.OleDb
Imports System.Data
Public Class Form2
Dim con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\MyDb.accdb")
Dim cmd As OleDbCommand
Dim da As OleDbDataAdapter
Dim dt As DataTable
Dim sqlstr As String
Sub loadPerson()
Try
dgvPerson.Rows.Clear()
sqlstr = "Select * from Person"
da = New OleDbDataAdapter(sqlstr, con)
dt = New DataTable("Person")
da.Fill(dt)
For Each rw As DataRow In dt.Rows
dgvPerson.Rows.Add(rw(0), rw(1), rw(2))
Next
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Sub InsertPerson()
Try
con.Open()
For Each rw As DataGridViewRow In dgvPerson.Rows
sqlstr = "Insert Into Person(Fname,Age) Values(@Fname,@Age)"
cmd = New OleDbCommand(sqlstr, con)
cmd.Parameters.Add("@Fname", OleDbType.VarWChar).Value = rw.Cells(1).Value.ToString()
cmd.Parameters.Add("@Age", OleDbType.VarWChar).Value = rw.Cells(2).Value.ToString()
cmd.ExecuteNonQuery()
Next
con.Close()
Catch ex As Exception
End Try
End Sub
Sub DeleteAllPerson()
Try
con.Open()
sqlstr = "Delete From Person"
cmd = New OleDbCommand(sqlstr, con)
cmd.ExecuteNonQuery()
con.Close()
Catch ex As Exception
End Try
End Sub
Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
DeleteAllPerson()
InsertPerson()
loadPerson()
End Sub
Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
loadPerson()
End Sub
End Class
انا اسف جدا ولكني عدلت على قاعده البيانات سيرفر ولكنها لم تنجح معي ونفس المشكلة يحفظ صف واحد فقط.. جدا اسف ولكن لو تكرمت وعدلت على الاسكيول سيرفر تكون ماقصرت معي .. لقد ارفقت لك قاعدة البيانات ..
(15-04-17, 01:08 AM)khodor1985 كتب : [ -> ]ماشي
أخي العزيز في مشكلة في ملف الـ Backup
إما أن ترفق نلف الـ Backup من جديد أو تعمل DeAttach للقاعدة لكي تتمكن من ضغطها ورفعها
طيب شوف أنا رح أعمل مثال نفس مثالك على قاعدة بيانات من نو ع Sql.
اخي خلاص كودك نفز .. انا غلطت في التعديل في شي ماانتبهت لاني اعدله
انا ااااااااااسف جدا والله تعبتك معاي كتير كتير بس ربنا يجعله في ميزان حسناتك ان شاءالله .. بجد كل كلمات الشكر ماتوفيك حقك بس ماعارف كيف اعبر ..
شكرررررررررررررررررررررررا .. ومرة ثانية اسف لتعبك معاي
هذا الكود يدخل كافه حقول داتا جريد فيو vb.net2008 whith sql server 2005
For Each row As DataGridViewRow In DataGridView1.Rows
Dim cmd3 As SqlCommand = con.CreateCommand
cmd3.CommandText = "Insert Into article_utilise(code_article, designation,prix_achat, quantite1,date11,N_OP) " & _
"values (@code_article, @designation,@prix_achat, @quantite1,@date11,@N_OP)"
cmd3.Parameters.AddWithValue("@code_article", row.Cells(0).Value)
cmd3.Parameters.AddWithValue("@designation", row.Cells(1).Value)
cmd3.Parameters.AddWithValue("@prix_achat", row.Cells(2).Value)
cmd3.Parameters.AddWithValue("@quantite1", row.Cells(3).Value)
cmd3.Parameters.AddWithValue("@date11", row.Cells(4).Value)
cmd3.Parameters.AddWithValue("@N_OP", TextBoxNOP.Text)
cmd3.ExecuteNonQuery()
cmd3.Dispose()
Next
(15-04-17, 08:47 PM)samawi كتب : [ -> ] هذا الكود يدخل كافه حقول داتا جريد فيو vb.net2008 whith sql server 2005
For Each row As DataGridViewRow In DataGridView1.Rows
Dim cmd3 As SqlCommand = con.CreateCommand
cmd3.CommandText = "Insert Into article_utilise(code_article, designation,prix_achat, quantite1,date11,N_OP) " & _
"values (@code_article, @designation,@prix_achat, @quantite1,@date11,@N_OP)"
cmd3.Parameters.AddWithValue("@code_article", row.Cells(0).Value)
cmd3.Parameters.AddWithValue("@designation", row.Cells(1).Value)
cmd3.Parameters.AddWithValue("@prix_achat", row.Cells(2).Value)
cmd3.Parameters.AddWithValue("@quantite1", row.Cells(3).Value)
cmd3.Parameters.AddWithValue("@date11", row.Cells(4).Value)
cmd3.Parameters.AddWithValue("@N_OP", TextBoxNOP.Text)
cmd3.ExecuteNonQuery()
cmd3.Dispose()
Next
مشكور اخي ماقصرت ^^ ..
من جد انتو كلكم زي الاخوة واجمل شي كل شخص يعطي الاخر جهده وزمن من وقتة وبلا مقابل في سبيل المساعدة .. ربنا يجزاكم خير ان شاءالله