سعاد نشر 28 فبراير 2016 أرسل تقرير نشر 28 فبراير 2016 عند اسعمالي لجملة الاستعلام التالية على #C: INSERT INTO tem (Telephone, Status, CreateDate) VALUES ('" + telephone + "','"+ status +"','" + DateTime.Now + "'); لكن أحصل على رسالة الخطأ : The conversion of a varchar data type to a datetime data type resulted in an out-of-range value. The statement has been terminated. ما الحل؟ اقتباس
0 E.Nourddine نشر 1 مارس 2016 أرسل تقرير نشر 1 مارس 2016 المشكل أنه في جمل الاستعلام من هذا النوع يجب استعمال 'parametrized queries' والتي تمكنك من استعمال القيم عن طريق علامات ومتغيرات تبدأ بعلامة@، مثلا 'Telephone@' على أن يتم إعطاء قيمة لهذه العلامة فيما بعد. حيث أقترح عليك لاستعمال هذا السكريبت عوض السابق:' // تعريف جملة الاستعلام string connectionStirng = "....."; string insertQry = "INSERT INTO tem (Telephone, Status, CreateDate) VALUES (@Telephone, @Status, @CreateDate);"; using (SqlConnection conn = new SqlConnection(connectionString)) using (SqlCommand cmd = new SqlCommand(insertQry, conn)) { // parameters العلامات cmd.Parameters.Add("@Telephone", SqlDbType.VarChar, 50).Value = telephone; cmd.Parameters.Add("@Status", SqlDbType.VarChar, 20).Value = status; cmd.Parameters.Add("@CreateDate", SqlDbType.DateTime).Value = DateTime.Now; // ، وتنفيذ حملة الاستعلام connection فتح conn.Open(); int rowsInserted = cmd.ExecuteNonQuery(); conn.Close(); } اقتباس
السؤال
سعاد
عند اسعمالي لجملة الاستعلام التالية على #C:
لكن أحصل على رسالة الخطأ :
ما الحل؟
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.