一个简单的sql语句无论如何改都说语法异常!
一个简单的sql语句无论怎么改都说语法错误!!
use wangning868hexun
declare @num int
set @num=0
WHILE @num<=30
begin
exec master.dbo.xp_cmdshell
'bcp "SELECT * FROM (SELECT *, ROW_NUMBER() OVER(ORDER BY [时间]) AS RowIndex FROM wangning868hexun.dbo.和讯博客5 ) TableIndex WHERE TableIndex.RowIndex BETWEEN @num + 1 AND @num + 2" queryout d:\123\778899.txt -c -T'
set @num=@num+2
END
投降啊!!!怎么都找不出错误来!以下是错误信息图片:
1···BETWEEN' + @num + 1 + 'AND' + @num + 2 + ' " queryout···和
2···BETWEEN' + @num + '+1 AND' + @num + '+ 2" queryout···都试过了,都不行!就说+号附近有错误
3···BETWEEN'+ cast(@num as varchar(3)) + '+ 1 AND'+ cast(@num as varchar(3)) + ' + 2 " queryout···还是说+附近语法错误!到底是哪里错啊啊!!
------解决思路----------------------
------解决思路----------------------
参照一下语法格式
use wangning868hexun
declare @num int
set @num=0
WHILE @num<=30
begin
exec master.dbo.xp_cmdshell
'bcp "SELECT * FROM (SELECT *, ROW_NUMBER() OVER(ORDER BY [时间]) AS RowIndex FROM wangning868hexun.dbo.和讯博客5 ) TableIndex WHERE TableIndex.RowIndex BETWEEN @num + 1 AND @num + 2" queryout d:\123\778899.txt -c -T'
set @num=@num+2
END
投降啊!!!怎么都找不出错误来!以下是错误信息图片:
1···BETWEEN' + @num + 1 + 'AND' + @num + 2 + ' " queryout···和
2···BETWEEN' + @num + '+1 AND' + @num + '+ 2" queryout···都试过了,都不行!就说+号附近有错误
3···BETWEEN'+ cast(@num as varchar(3)) + '+ 1 AND'+ cast(@num as varchar(3)) + ' + 2 " queryout···还是说+附近语法错误!到底是哪里错啊啊!!
------解决思路----------------------
use wangning868hexun
declare @num int,@sql Nvarchar(max)
set @sql =''
set @num=0
WHILE @num<=30
begin
set @sql='bcp "SELECT * FROM (SELECT *, ROW_NUMBER() OVER(ORDER BY [时间]) AS RowIndex FROM wangning868hexun.dbo.和讯博客5 ) TableIndex WHERE TableIndex.RowIndex BETWEEN '+ltrim(@num)+' + 1 AND '+ltrim(@num)+' + 2" queryout d:\123\778899.txt -c -T';
print @sql
exec(' master.dbo.xp_cmdshell '''+@sql+'''')
set @num=@num+2
END
------解决思路----------------------
参照一下语法格式
EXEC master..xp_cmdshell 'bcp "test..make" in E:\roy.txt -c -S"SHAREPOINT" -U"sa" -P"wuxi"'
exec master..xp_cmdshell 'bcp "SELECT column1,column2 FROM 库..表名 where datediff(day,时间列,getdate())=0 " queryout c:\Authors.txt -c -t , -S Flysky -U sa -P 密码'