شباب السلام عليكم ورحمه الله وبركاته
انا لي فترة ادور عن امر البحث بين تاريخين في الاكسس واخيرا وجدت الامر هذا
commandtext = "SELECT ID, [Date], [Adj Close*] FROM NDXDailyImport WHERE ([Date] = #" + textBox1.Text + "#)"
ولكن احيانا يمشي واحيانا لا وبعدين بحثت في احد المواقع الانجليزيه وصادف ان احد يسال هذا السؤال وتم الرد عليه بنفس الجواب اللي فوق
ولكنه قال ان هذا الطريقة غير فعاله ومعرضة للهجوم وان افضل طريقة هي parametrised command.
طبعا السال سال ماهي parametrised command.
الاخر رد
بهذا الكود
this.oleDbSelectCommand1.CommandText = "SELECT ID, [Date], [Adj Close*] FROM
NDXDailyImport WHERE [Date]= ?";
this.oleDbSelectCommand1.Parameters.Add(new
System.Data.OleDb.OleDbParameter("Date", System.Data.OleDb.OleDbType.Date));
Make sure you set oleDbSelectCommand1.Parameters["Date"].Value to date prior
to doing select.بس صراحه مافهمت شي منه :(
هل في حد فهم الموضوع
وفي واحد حط برنامج مفتوح بنفس الموضوع
وهذا الكود
string strInsert = "INSERT INTO fDate (ID, firstDate) VALUES ( ";
//reset all the textboxes
int i=int.Parse(t_ID.Text);
System.DateTime ddt = DateTime.Parse(t_Dates.Text,System.Globalization.CultureInfo.CreateSpecificCulture("en-AU").DateTimeFormat);
string sNow = "";
sNow = ddt.ToShortDateString();
t_ID.Text=i.ToString();
t_Dates.Text = '#'+sNow+'#';
//NOTE for integers do not have apostrophe (') in the string text
strInsert += t_ID.Text+", ";
strInsert += "CDate("+t_Dates.Text+')'+")";
OleDbCommand inst = new OleDbCommand(strInsert,myConn);
//Execute the statement
inst.ExecuteNonQuery();
t_Dates.Text = "";
myConn.Close();
}وهذا البرنامج كامل
في حد فاهم عن هذا الموضوع لايبخل علينا بالله