我在動態sql中將字符串(以12 \ 11 \ 2013格式)轉換爲日期時間('YYYY-MM-DD'格式)時出現問題。創建動態sql到rpelace數據庫前綴但獲取錯誤錯誤時出錯msg
可以看到有關示例,並導致以下: DECLARE @dbPrefix VARCHAR(2), @cob VARCHAR(20), @sql VARCHAR(200) DECLARE @m_cobMinusOne日期時間,
@m_cobEOM varchar(20),
@m_cobEOY varchar(20),
@m_cobFUN varchar(20)
set @cob = '12/11/2013'
set @dbPrefix='q_'
set @m_cobMinusOne = convert(varchar(20),@m_cobMinusOne,103)
set @m_cobEOM = convert(varchar(20),@m_cobMinusOne,103)
exec(N'select ' + @m_cobMinusOne + '= bdh_prev_bus_d ,' + @m_cobEOM + '= bdh_prev_mo_end_d
from ' [email protected]+'dbbdm005..bdh_bus_date_ref where bdh_bus_d = ''' + @cob + '''')
「設置m_cobMinusOne =轉換(VARCHAR(20),m_cobMinusOne,103)」? m_cobMinusOne是一個日期時間,爲什麼將一個varchar設置爲日期時間? – esdebon
提示更改exec('...')打印('...')看看它會試圖做什麼。@ m_cobMinusOne將始終爲空,它是否意味着要轉換@cob? –
是的,你是對的,它沒有顯示任何結果和取空值 – user2481687