C# – SQL Server 2005 compare dates

c++sql-servertsql

I'm having a problem with some T-SQL in a SP on SQLServer 2005 comparing dates. I'm running the stored procedure from c# with ADO.Net and passing a the native c# datetime datatype(could this be my issues as I know the ranges are slightly different). I do the following to compare 2 DateTime values in my SP.

CREATE PROCEDURE [dbo].[spGetLikelyMatchedIndividuals_v1]
    @ID BIGINT = NULL,
    @DOB DATETIME = NULL, ...

WHERE ISNULL(CONVERT(CHAR(8),Ind.[DateOfBirth],112),'') = ISNULL(CONVERT(CHAR(8),@DOB,112),'')

This works fine in most cases but from some reason will fail with some Datetime. This is one datetime value that fails:

1925-07-04

Does anyone have anyidea why this may fail? Also what is the best way to compare two date values without the time component?

Best Solution

Seems like your date compare is correct. It may be other logic that is causing this issue. Perhaps you should paste in more of your stored procedure to find the likely problem.