I have a date column in a DB tabel that I want to query using a date taken from textbox.text. the user selects a date from the calendar in the format dd/MM/yyyy. I want to use that date to put into a query. How do i format the date to be able to query the database?
Dim datefrom As String =txtDateFrom.Text
Dim dateto As String =txtDateTo.Text
The query will look like this:
WHERE (tblClient.ClientID = " & ClientID & ") AND (tblBackupArchive.BackupDate BETWEEN '" + datefrom + "' AND '" + dateto + "')"
I’m using MS SQL Server btw. Any help most appreciated.
Jonesy
NEVER USE STRING CONCATENATION LIKE THAT TO BUILD YOUR QUERIES!!!
And yes, I did mean to yell, because date formatting is the least of your problems. Imagine what would happen in your current code if something entered the following into one of your date textboxes:
Instead, use a parameterized query. That will fix your date issues and protect against sql injection attacks. Here’s an example:
You can think of it now as if you had run an sql statement more like this:
The “ImaginaryFunction” in that code is accomplished using the sp_executesql stored procedure, but the point is that the query string as seen by sql server will never substitute data directly into the query string. Code is code, data is data, and never the ‘twain shall meet.