تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مشكلة في برمجة زر الحفظ
#1
السلام عليكم ورحمة الله وبركاته

عندي مشكلة في زر الحفظ لما اضغط على زر الحفظ تضهرلي الرساله دي



هل في خطأ فالكود ده ؟؟؟
Private Sub Buttsave_Click(sender As Object, e As EventArgs) Handles Buttsave.Click
cmdinsert.Connection = con
Sqlstr = "insert into report values (الرقم الوظيفي,إسم الموظف,التاريخ,إسم المنطقة, الشارع,رقم الرخصة,الإسم التجاري,نوع الإجراء,رقم الإجراء,نوع المخالفة أو الإنذار,حالة المنشأة,نوع الرخصة,نوع المهمة,الملاحظات) values ('" & TextBox1.Text & "', '" & TextBox2.Text & "', '" & DateTimePicker1.Value & "', '" & TextBox4.Text & "', '" & TextBox5.Text & "', '" & TextBox6.Text & "', '" & TextBox7.Text & "', '" & TextBox8.Text & "', '" & TextBox9.Text & "', '" & TextBox10.Text & "', '" & TextBox11.Text & "', '" & TextBox12.Text & "', '" & TextBox13.Text & "', '" & TextBox14.Text & "')"
cmdinsert.ExecuteNonQuery()
MsgBox("تـم الحـفـظ بـنـجـاح")
con.Close()
End Sub

ويندوز 7 64 بت



فيجوال استوديو 2012

اكسس 2007

الرد }}}
تم الشكر بواسطة:
#2
أخي من الخطأ كتابة أسماء الحقول في قاعدة البيانات باللغة العربية فقد تسبب مشاكل فيما بعد

أعتقد رسالة الخطأ ظهرت لأنه توجد فواصل بين اسم الحقل

يعني مثلا الحقل اللي اسمو (نوع المخالفة أو الإنذار) ، يجب وضعه بين قوسين مربعين هكذا :

كود :
[نوع المخالفة أو الإنذار],[رقم الإجراء]

يعني إذا اسم الحقل يتكون من مقطعين او أكثر ضعه بين القوسين المربعين

والله أعلم
(وَقُل رَّبِّ زِدْنِي عِلْمًا)

الرد }}}
تم الشكر بواسطة: سعود , ahmed saba
#3
شكرا ليك لكن جائني خطأ تاني


command text was not set for command object error


وفي نفس المكان Huh
الرد }}}
تم الشكر بواسطة:
#4
انت ماسويت فتح للأتصال
con.open
قبل تنفيذ امر cmdinsert.ExecuteNonQuery
اعتقد هاذي هي المشكله
والله اعلم
الرد }}}
تم الشكر بواسطة:
#5
انا عامله الاتصال عندي مفتوح مع قاعدة البيانات لاني عامله مويول وحطيت فيه


Imports System.Data.OleDb
Module Module1
Public con As New OleDbConnection
Public Sub dbase_conn()
If con.State = 1 Then con.Close()
Dim myPATH As String
myPATH = CurDir() & "maindatabase\maindatabase.accdb"
con = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\kk\Documents\Visual Studio 2012\Projects\برنامج إدخال ومتابعة التقارير\برنامج إدخال ومتابعة التقارير\bin\Debug\Databases\maindatabase.accdb;Persist Security Info=False;")
con.Open()
الرد }}}
تم الشكر بواسطة:
#6
طيب عوضتي بقيم مساوية لقيم الفاليو
values
عوضتي عنها قيم موجوده في textbox.text مثلآ ؟؟
تأكدي من هاذي الخطوه
تعويض القيم الموجوده في قاعدة البيانات من ادوات موجوده في الفورم
كهذا
cmd.CommandText = "INSERT INTO table (field1, [field2, ... ]) VALUES (value1, [value2, ...])"
حيث ان field1 حقل في قاعدة البيانات
و value1 قيمة تعويضيه عن هذا الحقل في الفورم كأداة نص او كمبو بوكس


PHP كود :
Dim con As New SqlConnection
Dim cmd 
As New SqlCommand
Try
con.ConnectionString "Data Source=atisource;Initial Catalog=BillingSys;Persist Security Info=True;User ID=sa;Password=12345678"
con.Open()
cmd.Connection con
cmd
.CommandText "INSERT INTO table([field1], [field2]) VALUES([Value1], [Value2])"
cmd.ExecuteNonQuery()

Catch 
ex As Exception
MessageBox
.Show("Error while inserting record on table..." ex.Message"Insert Records")
Finally
con.Close()
End Try 

مثال تفصيلي
الرد }}}
تم الشكر بواسطة:
#7
شكرا على تفاعلكم

للاسف نفس المشكله

جربت

Sqlstr = "insert into report values (الرقم الوظيفي,إسم الموظف,التاريخ,إسم المنطقة, الشارع,رقم الرخصة,الإسم التجاري,نوع الإجراء,رقم الإجراء,نوع المخالفة أو الإنذار,حالة المنشأة,نوع الرخصة,نوع المهمة,الملاحظات) values ('" & TextBox1.Text & "', '" & TextBox2.Text & "', '" & DateTimePicker1.Value & "', '" & TextBox4.Text & "', '" & TextBox5.Text & "', '" & TextBox6.Text & "', '" & TextBox7.Text & "', '" & TextBox8.Text & "', '" & TextBox9.Text & "', '" & TextBox10.Text & "', '" & TextBox11.Text & "', '" & TextBox12.Text & "', '" & TextBox13.Text & "', '" & TextBox14.Text & "')"
cmdinsert.ExecuteNonQuery()

وبعدين جربت

Sqlstr = "insert into [report] values ('" & TextBox1.Text & "', '" & TextBox2.Text & "', '" & DateTimePicker1.Value & "', '" & TextBox4.Text & "', '" & TextBox5.Text & "', '" & TextBox6.Text & "', '" & TextBox7.Text & "', '" & TextBox8.Text & "', '" & TextBox9.Text & "', '" & TextBox10.Text & "', '" & TextBox11.Text & "', '" & TextBox12.Text & "', '" & TextBox13.Text & "', '" & TextBox14.Text & "')"
cmdinsert.ExecuteNonQuery()
= "insert into [report] values

نفس الخطأ
الرد }}}
تم الشكر بواسطة:
#8
طيب مش لأن المشكله عندك اسم الحقول فيها فراغات ؟
مثل نوع المخالفة أو الإنذار
لاحظي الفراغات الموجوده عندك بعد كل كلمة اربعه فراغات ورى بعض بين كلمة واخرى
انا صراحة استغربت في البداية لمن سويتي فراغات
لأنه انا اعلم بأن معظم لغات البرمجه لا تتعرف على الحقول الي فيها فراغات
فالحل يكون كل حقل يكون بين قوسين [نوع المخالفة أو الإنذار]
او تسوي _ بين كل كلمة واخرى ( شرطة سفلية )
طبعآ تتغير اسماء الحقول في قاعدة البيانات بأستخدام الشرطة السفليه
او تسوي لها زي ما قلت لك [نوع المخالفة أو الإنذار] , [حالة المنشأة]... الخ اثناء كتابة كود الاضافة الى قاعدة البيانات Insert into
هذا ماعندي الى حد الان
اذا استمرت المشكله معك
فالله يكون بالعون

الرد }}}
تم الشكر بواسطة:
#9
شكرا ليك على تفاعلك معايا

لكن تظهرلي نفس نفس المشكله للاسف

Sad
الرد }}}
تم الشكر بواسطة:
#10
ياليت يتم ترتيب الاكواد بوضعها في وسوم الاكواد حتى تظهر بشكل واضح وايضا وضعها ضمن محاذاة يسار.
ثم لماذا التعصب للغة العربية لهذه الدرجةSmile
يعني الانسب ان نسخدم حروف انجليزية افضل

الواضح من الصورة انه لم يتم اسناد الاستعلام sqlstr للمتغير cmdinsert

الواضح من الصورة انه لم يتم اسناد الاستعلام sqlstr للمتغير cmdinsert عبر خاصية commandtext
الرد }}}
تم الشكر بواسطة:



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم