![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-08 05:13 |
共 48,041 主题排行 / 350,128 发帖 / 今日 3 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 批处理,数据库,BCP IN 主键重复 的复杂问题 |
| 可打印版本 693 / 0 |
| 第1楼 zyz0304360 | 发表于 2008-01-07 19:39 |
| 中级用户 发帖 123 积分 257 来自 烟台 | |
|
批处理,数据库,BCP IN 主键重复 的复杂问题 在批处理中(.bat)
写了一个BCP IN 如果导入数据时主键重复 errorlevel 依然为0 如果BCP中加了 -e 参数,也不会生成errfile文件。 例: @echo off set date=%date% set fdate=%date:/=% set folder=D:\ set folder_bk=D:\test\ date /T >>test.log time /T >>test.log echo begin in ...... bcp "master.dbo.table1" in "table1.dat" -S. -Usa -P -n -E -e%folder_bk%%fdate%errfile.dat || goto :_error echo errorlevel: %errorlevel% if errorlevel 1 ( set errproc=Data IN set errsite=「table1 IN」 goto :_Error ) echo in succeeded!>>test.log pause copy test.log %folder_bk%%fdate%%time:~0,2%%time:~3,2%test.log goto :end :error time /T >>test.log echo here is an error >>test.log goto end :end time /T >>test.log echo ___________________END_______________>>test.log 在BCP IN主键重复报错的情况下 1.errorlevel依然是0(和BCP IN执行成功时一样) 2.|| goto :_error 没有执行(难道是BCP报错,但DOS不认为是错,反正是数据库和DOS没有直接关系,但是BCP就是批处理命令啊,太郁闷了) 3.BCP IN 中有 -e 参数,但主键重复时,不会生成errfile文件 请各位高手指点一下 怎么写,才能让BCP IN主键重复报错后,跳转到:error 谢谢大家 |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |