المشاركات : 281
المواضيع 74
الإنتساب : Sep 2018
السمعة :
5
الشكر: 228
تم شكره 325 مرات في 179 مشاركات
السلام عليكم اخوتي
عندي مشكله وهي عند اضافة البيانات التي باللغه العربيه في سيكوال سيرفر تظهر علي شكل علامة استفهام فما الحل
وهدا هو الكود
ارجو التعديل عليه
وجزاكم الله خيرا
PHP كود :
Public Sub Insert_Patient(ByVal Code As Integer, ByVal RegistrationDate As Date, ByVal ResultDate As Date, ByVal RegistrationTime As Date, ByVal ResultTime As Date, ByVal PatientTitle As String, ByVal PatientName As String) 'إضافة البيانات Dim cmd As New SqlCommand("Insert into Patients (Code,RegistrationDate,ResultDate,RegistrationTime,ResultTime,PatientTitle,PatientName) values(@Code,@RegistrationDate,@ResultDate,@RegistrationTime,@ResultTime,@PatientTitle,@PatientName)", connSQL) cmd.Parameters.Add("Code", SqlDbType.Int).Value = Max_Code_Form_Patients() + 1 cmd.Parameters.Add("RegistrationDate", SqlDbType.Date).Value = RegistrationDate cmd.Parameters.Add("ResultDate", SqlDbType.Date).Value = ResultDate cmd.Parameters.Add("RegistrationTime", SqlDbType.VarChar).Value = RegistrationTime cmd.Parameters.Add("ResultTime", SqlDbType.VarChar).Value = ResultTime cmd.Parameters.Add("@PatientTitle", SqlDbType.VarChar).Value = PatientTitle cmd.Parameters.Add("@PatientName", SqlDbType.VarChar).Value = PatientName If connSQL.State = 1 Then connSQL.Close() connSQL.Open() cmd.ExecuteNonQuery() connSQL.Close() cmd = Nothing End Sub
ثم اقوم باستدعائه في زر الاضافه
PHP كود :
Insert_Patient(LblCode.Text, DateTimePicker3.Text, DateTimePicker4.Text, lblRegDate.Text, lblResultDate.Text, ComboBox1.Text, ComboBox2.Text)
المشاركات : 765
المواضيع 131
الإنتساب : Feb 2018
السمعة :
64
الشكر: 1633
تم شكره 1074 مرات في 529 مشاركات
أنا بستخدم الكود دا وهو شغال معي 100%
كود :
Dim Cmd As New SqlCommand
With Cmd
.Connection = con
.CommandType = CommandType.Text
.CommandText = "Insert Into table (اسم_الخدمة,التكلفة)values('" & t1.Text & "','" & t2.Text & "')"
End With
If con.State = 1 Then con.Close()
con.Open()
Cmd.ExecuteNonQuery()
con.Close()
MsgBox("تم إضافة السجل بنجاح", MsgBoxStyle.Information, "حفظ")
Cmd = Nothing
المبرمج لا يفكر في المشكلة بل في الحل!!
المشاركات : 281
المواضيع 74
الإنتساب : Sep 2018
السمعة :
5
الشكر: 228
تم شكره 325 مرات في 179 مشاركات
(30-07-19, 02:56 AM)اسامه الهرماوي كتب : أنا بستخدم الكود دا وهو شغال معي 100%
كود :
Dim Cmd As New SqlCommand
With Cmd
.Connection = con
.CommandType = CommandType.Text
.CommandText = "Insert Into table (اسم_الخدمة,التكلفة)values('" & t1.Text & "','" & t2.Text & "')"
End With
If con.State = 1 Then con.Close()
con.Open()
Cmd.ExecuteNonQuery()
con.Close()
MsgBox("تم إضافة السجل بنجاح", MsgBoxStyle.Information, "حفظ")
Cmd = Nothing
شكرا اخي اسامه
ولكن ان كنت ساستخدم هدا الكود مثلا مائة مرة .
سيكون الامر صعب ان اكتب الكود كاملا في كل مره وخاصة ان كان عد السجلات كثيرا
فهل ينفع اعمله في Sub ثم اقوم باستدعائه حينما اشاء
كيف دلك وجزاك الله خيرا
المشاركات : 765
المواضيع 131
الإنتساب : Feb 2018
السمعة :
64
الشكر: 1633
تم شكره 1074 مرات في 529 مشاركات
نعم ضعة عي sub واستدعية كما تشاء أو ضعة في موديل وحول كلمة Dim الي متغير عام إن كانت عملية الحفظ من نفس الفورم.
وسيكون الكود هكذا:
Public Cmd As New SqlCommand
المبرمج لا يفكر في المشكلة بل في الحل!!
المشاركات : 281
المواضيع 74
الإنتساب : Sep 2018
السمعة :
5
الشكر: 228
تم شكره 325 مرات في 179 مشاركات
(30-07-19, 03:21 AM)اسامه الهرماوي كتب : نعم ضعة عي sub واستدعية كما تشاء أو ضعة في موديل وحول كلمة Dim الي متغير عام إن كانت عملية الحفظ من نفس الفورم.
وسيكون الكود هكذا:
Public Cmd As New SqlCommand
اسف اخي اريد منك ان تعمله في Sub وتقوم باستدعائه
لاني عملته ولم ينجح معي
جزاك الله خيرا
المشاركات : 137
المواضيع 2
الإنتساب : Dec 2017
السمعة :
40
الشكر: 45
تم شكره 384 مرات في 134 مشاركات
جرب أن تغير نوع الحقل في SQL من VarChar إلى NVarChar
المشاركات : 2,055
المواضيع 49
الإنتساب : Oct 2017
السمعة :
538
الشكر: 10589
تم شكره 5330 مرات في 2095 مشاركات
30-07-19, 03:43 AM
(آخر تعديل لهذه المشاركة : 30-07-19, 03:52 AM {2} بواسطة ابراهيم ايبو.)
السلام عليكم اخي الكريم
لديك الخمس الحقول الاولى وعند اضافة الباراميترات لم تضع اشارة (الاروباص) اي هده الاشارة @
قم باضافتها للحقول الخمسة الاولى
لاحظ هنا
كود :
cmd.Parameters.Add("RegistrationDate", SqlDbType.Date).Value = RegistrationDate
يجب ان يكون هكذا
كود :
cmd.Parameters.Add("@RegistrationDate", SqlDbType.Date).Value = RegistrationDate
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات
المشاركات : 281
المواضيع 74
الإنتساب : Sep 2018
السمعة :
5
الشكر: 228
تم شكره 325 مرات في 179 مشاركات
30-07-19, 03:48 AM
(آخر تعديل لهذه المشاركة : 30-07-19, 03:56 AM {2} بواسطة Emam emam.)
(30-07-19, 03:40 AM)سامي محمد كتب : جرب أن تغير نوع الحقل في SQL من VarChar إلى NVarChar
نعم اخي نجحت بفضل الله ثم مساعدتك
بارك الله فيك
لا اعرف كيف اشكر اخي
ولا انسي اخي اسامه الهرماوي
تعبته معي كثيرا
بارك الله فيكم جميعا
(30-07-19, 03:43 AM)ابراهيم ايبو كتب : السلام عليكم اخي الكريم
لديك الخمس الحقول الاولى وعند اضافة الباراميترات لم تضع اشارة (الاروباص) اي هده الاشارة @
قم باضافتها للحقول الخمسة الاولى
لاحظ هنا
كود :
cmd.Parameters.Add("RegistrationDate", SqlDbType.Date).Value = RegistrationDate
يجب ان يكون هكذا
كود :
cmd.Parameters.Add("@RegistrationDate", SqlDbType.Date).Value = RegistrationDate
تمام اخي [url=http://vb4arb.com/vb/member.php?action=profile&uid=28150][/url]
بارك الله الله فيك تعبتك معي في اكثر من مشاركه
جزاك الله خير الجزاء وجعله الله في ميزان حسناتك
المشاركات : 2,055
المواضيع 49
الإنتساب : Oct 2017
السمعة :
538
الشكر: 10589
تم شكره 5330 مرات في 2095 مشاركات
30-07-19, 03:57 AM
(آخر تعديل لهذه المشاركة : 30-07-19, 04:03 AM {2} بواسطة ابراهيم ايبو.)
بالمناسبة مازال لديك خطأ حتى تكون صيغة كتابة الباراميتر صحيحة ولايظهر لك اخطاء
انظر الى هذا السطر وانهج مثله لباقي الحقول
كود :
cmd.Parameters.Add(New SqlParameter("@PatientTitle", SqlDbType.VarChar)).Value = PatientTitle
تفضل كود الحفظ خاصتك هكذا
PHP كود :
Public Sub Insert_Patient(ByVal Code As Integer, ByVal RegistrationDate As Date, ByVal ResultDate As Date, ByVal RegistrationTime As Date, ByVal ResultTime As Date, ByVal PatientTitle As String, ByVal PatientName As String) 'إضافة البيانات Dim cmd As New SqlCommand("Insert into Patients (Code,RegistrationDate,ResultDate,RegistrationTime,ResultTime,PatientTitle,PatientName) values(@Code,@RegistrationDate,@ResultDate,@RegistrationTime,@ResultTime,@PatientTitle,@PatientName)", connSQL) cmd.Parameters.Add(New SqlParameter("@Code", SqlDbType.Int)).Value = Max_Code_Form_Patients() + 1 cmd.Parameters.Add(New SqlParameter("@RegistrationDate", SqlDbType.Date)).Value = RegistrationDate cmd.Parameters.Add(New SqlParameter("@ResultDate", SqlDbType.Date)).Value = ResultDate cmd.Parameters.Add(New SqlParameter("@RegistrationTime", SqlDbType.VarChar)).Value = RegistrationTime cmd.Parameters.Add(New SqlParameter("@ResultTime", SqlDbType.VarChar)).Value = ResultTime cmd.Parameters.Add(New SqlParameter("@PatientTitle", SqlDbType.VarChar)).Value = PatientTitle cmd.Parameters.Add(New SqlParameter("@PatientName", SqlDbType.VarChar)).Value = PatientName
If connSQL.State = 1 Then connSQL.Close() connSQL.Open() cmd.ExecuteNonQuery() connSQL.Close() cmd = Nothing End Sub
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات
المشاركات : 281
المواضيع 74
الإنتساب : Sep 2018
السمعة :
5
الشكر: 228
تم شكره 325 مرات في 179 مشاركات
(30-07-19, 03:57 AM)ابراهيم ايبو كتب : بالمناسبة مازال لديك خطأ حتى تكون صيغة كتابة الباراميتر صحيحة ولايظهر لك اخطاء
انظر الى هذا السطر وانهج مثله لباقي الحقول
كود :
cmd.Parameters.Add(New SqlParameter("@PatientTitle", SqlDbType.VarChar)).Value = PatientTitle
تفضل كود الحفظ خاصتك هكذا
PHP كود :
Public Sub Insert_Patient(ByVal Code As Integer, ByVal RegistrationDate As Date, ByVal ResultDate As Date, ByVal RegistrationTime As Date, ByVal ResultTime As Date, ByVal PatientTitle As String, ByVal PatientName As String) 'إضافة البيانات Dim cmd As New SqlCommand("Insert into Patients (Code,RegistrationDate,ResultDate,RegistrationTime,ResultTime,PatientTitle,PatientName) values(@Code,@RegistrationDate,@ResultDate,@RegistrationTime,@ResultTime,@PatientTitle,@PatientName)", connSQL) cmd.Parameters.Add(New SqlParameter("@Code", SqlDbType.Int)).Value = Max_Code_Form_Patients() + 1 cmd.Parameters.Add(New SqlParameter("@RegistrationDate", SqlDbType.Date)).Value = RegistrationDate cmd.Parameters.Add(New SqlParameter("@ResultDate", SqlDbType.Date)).Value = ResultDate cmd.Parameters.Add(New SqlParameter("@RegistrationTime", SqlDbType.VarChar)).Value = RegistrationTime cmd.Parameters.Add(New SqlParameter("@ResultTime", SqlDbType.VarChar)).Value = ResultTime cmd.Parameters.Add(New SqlParameter("@PatientTitle", SqlDbType.VarChar)).Value = PatientTitle cmd.Parameters.Add(New SqlParameter("@PatientName", SqlDbType.VarChar)).Value = PatientName
If connSQL.State = 1 Then connSQL.Close() connSQL.Open() cmd.ExecuteNonQuery() connSQL.Close() cmd = Nothing End Sub
والله يا اخي لا اعرف كيف اشكرك
تعبتك كثيرا سامحني
|