Ganimed
Дата: 13.10.2003 14:46:46
Пытаюсь выполнить несложный запрос с подстановкой переменной @DT и не могу .Где ошибка?
declare @SQLQuery varchar(8000)
declare @DT smalldatetime
SET @SQLQuery = ' SELECT ' + "'" +@DT+"'" +'=CONVERT( smalldatetime, CONVERT( char(8), Дата, 10) + " " + CONVERT( char(20), Время, 8 ) ) FROM '
SET @SQLQuery = @SQLQuery + 'OPENROWSET(' + @provider_name + ',' + "'" + @filename + "'" + ';' + @user_id + ';' + @password + ', '+ @tablename + ')'
exec (@SQLQuery)
злой шаман
Дата: 13.10.2003 14:48:44
а если print @SQLQuery сказать, что кажет?
Предводитель команчей
Дата: 13.10.2003 14:49:26
Вы бы хоть сообщение об ошибке привели.
Ganimed
Дата: 13.10.2003 14:52:39
print @SQLQuery не удалось сделать !
Server выдал ошибку:
Syntax error converting character string to smalldatetime data type.
злой шаман
Дата: 13.10.2003 14:55:19
А кто будет все нестроковые переменные к строке приводить? Здесь вам не васик, здесь все по взрослому.
Ganimed
Дата: 13.10.2003 14:58:21
Мне , собственно , хотелось просто присвоить переменной @DT smalldatetime
результат , который без этой переменной нормально 'выплескивается'
на экран. При попытке присвоить @DT значение OPENROWSET
не удается выполнить запрос... :(
Ganimed
Дата: 13.10.2003 15:00:06
А как можно приводить нестроковые переменные ?
Использовать функции CAST и CONVERT ?
Ganimed
Дата: 13.10.2003 15:06:48
Все - получилось!
Спасибо всем кто ответил!
злой шаман
Дата: 13.10.2003 15:08:16
А, так это вы переменную @DT так инициализируете... интересный способ. Полистайте лучше
FAQ.