SQL语句拼接中 单撇要变成双撇 双撇要变成四撇
declare @sql nvarchar(2000)
set @sql = N'
insert into hp(个人编号,身份证号,姓名,性别,民族,出生日期,工作日期,养老参保状态,
养老缴费基数,失业参保状态,失业缴费基数,医疗参保状态,医疗缴费基数,
工伤参保状态,工伤缴费基数,生育参保状态,生育缴费基数,时间,地点)
select rtrim(ltrim(str(个人编号) )) ,身份证号,姓名,性别,民族,出生日期,工作日期,养老参保状态,
养老缴费基数,失业参保状态,失业缴费基数,医疗参保状态,医疗缴费基数,
工伤参保状态,工伤缴费基数,生育参保状态,生育缴费基数,' + @date + ',' + @didian + N'
from
openrowset
(
''Microsoft.Jet.OLEDB.4.0'',
''Excel 8.0;Database=D:\公司共享文件\人力资源管理软件数据导入\回盘信息\' + @wenjian +''' ,
''select * from [sheet1$]''
)'
PRINT @sql
3点注意项:
1,原本是单撇则需要变双撇, 双撇则变成四撇, 都是双倍的关系
2.变量的话, 要用 + 进行拼接
3.Declare @Sql应该为 Nvarchar, varchar是不识别中文的, 而且在需要包含中文的语句前要加 N