Пользовательское Datetime в SQL Server [dубликат]

Вы можете использовать SqlMethods.Like () .

Пример использования:

  var results = from u у пользователей, где  SqlMethods.Like (u.FirstName, "% John%") выберите u;   

5
задан Robin clave 3 March 2011 в 09:49
поделиться

3 ответа

В SQL Server тип данных DATETIME хранится в виде 2 4-байтовых целых чисел, поэтому у них нет определенного форматирования, подобного этому.

Если вы хотите вернуть дату в определенном формате, вам необходимо преобразовать ее в VARCHAR с указанным соответствующим идентификатором формата.

Если у вас есть datetime в VARCHAR и вы хотите сохранить это в поле DATETIME в SQL Server, тогда вы должны убедиться, что передаете это значение SQL в формате, который всегда будет безопасно интерпретировать. например Формат dd / mm / YYYY не является безопасным в зависимости от настроек, его можно рассматривать как mm / dd / yyyy, когда он входит. Безопасные форматы:

  yyyyMMdd yyyy-MM-ddThh:  mi: ss.mmm  

например

  INSERT MyTable (DateField) VALUES ('01 / 10/2010 ') - dd / MM / yyyy не безопасно INSERT MyTable (DateField) VALUES (' 20101001 ') - yyyyMMdd safe [  ! d1] 

Обновление: когда вы выбираете поле DATETIME (GETDATE (), поле, переменная ....), то, что вы видите в SSMS, является форматированным значением, так как это то, что полезно для вас, вместо этого из которого показано, что это фактическое внутреннее представление в 8 байт.

3
ответ дан AdaTheDev 15 August 2018 в 19:16
поделиться

Здесь он

  SELECT CONVERT (DATETIME, GETDATE (), 105)  

Just Changed VARCHAR to DATETIME

0
ответ дан Harsh Baid 15 August 2018 в 19:16
поделиться
  • 1
    это не то, что он ищет. – Muhammad Akhtar 3 March 2011 в 09:59
  • 2
    Да, позвольте мне отредактировать его – Harsh Baid 3 March 2011 в 10:01
  • 3
    он дает в формате YYYY-MM-MM чувак ... – Robin clave 3 March 2011 в 10:05
  • 4
    @Robinclave проверьте это anubhavg.wordpress.com/2009/06/11/… . Это может помочь, но я думаю, что формат даты возможен, но получение его в datetime datatype возможно только путем изменения настроек сервера SQL (например, системных настроек) – Harsh Baid 3 March 2011 в 10:09

Это вернет datetime

  SELECT GETDATE ()  
0
ответ дан Simon 15 August 2018 в 19:16
поделиться
  • 1
    здесь тип возврата является varchar правильно? Мне нужно это в datetime datatype – Robin clave 3 March 2011 в 10:04
  • 2
    @Robin Clave - нет, GETDATE () возвращает DATETIME – AdaTheDev 3 March 2011 в 10:06
  • 3
    Это правда. Я сказал для SELECT CONVERT (VARCHAR (10), GETDATE (), 105) – Robin clave 3 March 2011 в 10:41
Другие вопросы по тегам:

Похожие вопросы: