الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عندما احاول اضافة التاريخ لقاعدة البيانات يظهر لي هذا الإستثناء

بدأه عبد المعز في 24 ديسمبر 2006 · 12 رد · 1,888 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
System.Data.SqlClient.SqlException was unhandled by user code

  Class=15
  ErrorCode=-2146232060
  LineNumber=1
  Message="Incorrect syntax near '12'."
  Number=102
  Procedure=""
  Server="\\.\pipe\4256CD37-CD38-4F\tsql\query"
  Source=".Net SqlClient Data Provider"
  State=1
  StackTrace:
	   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
	   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
	   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
	   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
	   at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
	   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
	   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
	   at admin_regester.Button1_Click(Object sender, EventArgs e) in C:\Documents and Settings\Smart Solutions\My Documents\Visual Studio 2005\WebSites\websms\admin\regester.aspx.vb:line 69
	   at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
	   at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
	   at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
	   at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
	   at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
	   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

كيف يمكن ان اتجاوز هذا الإستثناء

تم تعديل هذه المشاركة بواسطة الغملاسي في 26 ديسمبر 2006 في 13:34

#2

يرجى وضع الكود الذي سبب الخطأ أو قم بإرفاق مثال تظهر فيه المشكلة حتى نستطيع مساعدتك

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#3
  account = "'" + TextBox11.Text + "'"
		username = "'" + TextBox1.Text + "'"
		password = "'" + TextBox2.Text + "'"

		firstname = "'" + TextBox4.Text + "'"
		lastname = "'" + TextBox5.Text + "'"
		age = TextBox6.Text
		gender = "'" + DropDownList2.SelectedValue + "'"
		country = "'" + DropDownList1.SelectedValue + "'"
		city = "'" + TextBox7.Text + "'"
		mobile = TextBox8.Text
		company = "'" + TextBox9.Text + "'"
		email = "'" + TextBox10.Text + "'"
		dat = Date.Now



		Dim str2 As String = "insert into [profile_td](account_id,user_name,first_name,last_name,country,city" + _
									   ",date,mobile_no,company,age,gender,email)values  " + _
			  "(" + account + "," + username + "," + firstname + "," + lastname + "," + country + "," + _
			  city + "," + dat + "," + mobile + "," + company + "," + age + "," + gender + "," + email + ")"

		Dim cn2 As New SqlConnection
		cn2.ConnectionString = ConfigurationManager.ConnectionStrings("sms.mdf").ConnectionString
		cn2.Open()
		Dim cmd2 As New SqlCommand(str2, cn2)
		MsgBox(str2)
		cmd2.ExecuteNonQuery()
		cmd2.Dispose()
		cn2.Close()

المشكلة عند محاولة خزن التاريخ لوحده يعمل لكن عندما احاول خزن التاريخ مع الساعة لا يعمل , حتى خزن التاريخ لوحده لا يعمل , هذا

ما اجده في حقل التاريخ 01/01/1900 12:00:00

تم تعديل هذه المشاركة بواسطة عبد المعز في 24 ديسمبر 2006 في 16:00

#4

وانا اعني من مشكلة في اضافة التاريخ لقاعدة البينات

افيدوني رحمكم الله

تم تعديل هذه المشاركة بواسطة alamor في 24 ديسمبر 2006 في 22:39

#5

ربما تكون المشكلة أن تنسيق التاريخ في قاعدة البيانات حسب التنسيق الأمريكي شهر/يوم/سنة

جرب تغيير

dat = Date.Now

إلى

dat = Date.Now.ToString("MM/dd/yyyy")

وخبرنا بالنتيجة

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#6

اخي جربت هذا , المشكلة انه لا يحفظ التاريخ , في القاعدة (نوع الحقل هو smalldattime)

وعندما احاول ادخال التاريخ مع الوقت يحدث الإستثناء

اتا اريد انا ادخل التاريخ مع الساعة والدقيقة , هل ينفع smalldatetime , وهل جملة الإدخال صحيحة .

#7

هذا مثال على عبارة Insert لإضافة قيمة لحقل smalldatetime أعتقد ستفيدك

INSERT INTO Table1
					  (da)
VALUES	 (CONVERT(DATETIME, '2006-01-14 15:35:00', 102))

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#8

اخي لو تشرح لي الجملة , ال datetime هو متغير ؟

وماذا يعني الرقم 102

#9

يستخدم التابع convert في التغيير الصريح لتعبير ما من نوع معطيات إلى نوع معطيات آخر ويمكن استخدامه في أي مكان يمكن استخدام التعبير فيه وصيغته العامة

CONVERT ( data_type [ ( length ) ] , expression [ , style ] )

طابق عبارة Insert السابقة على الصيغة العامة ستجد أن DATETIME هو نوع البيانات المحول إليه و ليس متغير و Style تأخذ عدة قيم مثل

102 ANSI yy.mm.dd 
103 British/French dd/mm/yy 
104 German dd.mm.yy 
105 Italian dd-mm-yy

يمكنك الاطلاع على كافة تفاصيل التابع convert في مكتبة MSDN في وثائق SQL Server

تم تعديل هذه المشاركة بواسطة samerselo في 25 ديسمبر 2006 في 12:27

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#10

اخي انحلت معي المشكلة , حولت نوع الحقل من smalldatatime إلى datetime

واستخدم هذه الصيغة

Date.Now.ToString("MM/dd/yyyy hh:mm")

اخي لدي سؤال خارج عن الموضوع هل يوجد جملة اضافة في اكثر من جدول في نفس الوقت

insert into

#11

لا لاأعتقد أنه يمكن استخدام insert to لإضافة بيانات لأكثر من جدول بنفس الوقت على حسب علمي

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#12

اخى العزيز بإمكانك قراءة هذا الموضوع واعتقد انه الحل لمشكلتك ان شاء الله

/index.php?showtopic=115041

#13

ممكن اخي عبد المعز توضيح طريقة حل مشكلة التاريخ بلتفصيل

شكرا

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…