SQL Server: сбой преобразования - varchar в int - PullRequest
0 голосов
/ 24 июня 2019

Я пытаюсь выполнить SQL-запрос в ALM (который я успешно выполнял в прошлом), и я получаю следующую ошибку:

[Mercury] [Драйвер JDBC SQLServer] [SQLServer]
Не удалось выполнить преобразование при преобразовании значения varchar 'e2695' в тип данных int.

Странно, эта ошибка появляется только тогда, когда я изменяю строку and cast(au_time as date) <= cast('2019/06/19' as date) на дату, превышающую '2019/ 06/16 '

Select *
From 
    (Select  bg_bug_id           Task_ID,
             bg_summary          Task_Summary,
             bg_user_02          Task_Type,
             bg_user_20          Task_Status,
             bg_user_14          Task_Application,
             bg_user_09          Task_Functional_Tower,
             bg_user_24          Task_Assigned_Team,
             bg_user_27          Task_Assigned_To_Name,
             bg_user_12          Estimated_Fix_date,
             AU_ACTION_ID,
             AU_USER,
             AU_TIME,
             getdate()           CurrentDate,
             AP_PROPERTY_ID,
             AP_OLD_VALUE,
             AP_NEW_VALUE
         From 
             ecs_data_conversion_db.td.bug
         Left Join   
             ecs_data_conversion_db.td.audit_log  On (bg_bug_id = AU_ENTITY_ID)
         Left Join   
             ecs_data_conversion_db.td.audit_properties On (audit_log.AU_ACTION_ID = audit_properties.AP_ACTION_ID and AP_FIELD_Name = 'bg_user_20')
         Where 
             cast(au_time As Date) >=  cast('2019/01/01' As Date)
             and cast(au_time as date) <= cast('2019/06/19' as date)
             and cast(bg_user_20 as varchar) = cast('53 User Acceptance Testing' as varchar)
    ) d_table
Where  
    AP_PROPERTY_ID is not null
Order by 
    task_id, au_time

Может быть полезно узнать, что e2695 - это идентификационный код сотрудника.Возможно, менее важно, что этому пользователю был только что предоставлен доступ к инструменту, который я пытаюсь запросить.

...