0

我有以下代码

String sqlQuery = "SELECT * FROM table";
SqlCeDataReader reader = ConectorSQLCE.consultar(rutaArchivo, sqlQuery);
String value = "";

try
{
            while (reader.Read())
            {
                for (int i = 0; i < reader.FieldCount; i++)
                {

                    if (reader.GetValue(i) == DBNull.Value)
                        value += "*";
                    else
                    {
                        value += reader.GetValue(i).ToString();
                    }
                }
            }
}

whenreader.GetValue(i)是一个datetime字段,有时返回,有时01/01/2014 0:00:00返回01/01/2014 12:00:00 a.m.

为什么会这样?然后将字符串值用于哈希码,因此我对同一行有不同的哈希值。

4

1 回答 1

0

不知道为什么会这样做,但是如果时间字段总是相同的,为什么不将其转换为 a .ShortDateString(),那么您不必担心不一致。如果您按名称调用所需的每一列并使用convert(varchar,dateField,101)

于 2014-05-17T15:14:14.163 回答