免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2847 | 回复: 8
打印 上一主题 下一主题

bcp in 出错 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-25 16:50 |只看该作者 |倒序浏览
bcp dbname..tablename out PATH -Uusername -Ppasswd -c
bcp dbname..tablename in PATH -Uusername -Ppasswd -c

cs_convert:cslib user api layer:common library error:The convert/operation was stopped due to a syntax error in the source field

说明:这张表是用户表.里有中文和加密的密码等信息

其他表这样做无问题

论坛徽章:
1
2017金鸡报晓
日期:2017-01-10 15:19:56
2 [报告]
发表于 2007-06-25 20:00 |只看该作者
不用-c 的参数,用-n 试试

论坛徽章:
0
3 [报告]
发表于 2007-06-26 15:36 |只看该作者
原帖由 chuxu 于 2007-6-25 20:00 发表
不用-c 的参数,用-n 试试


-n也一样错

苦恼中....................

论坛徽章:
0
4 [报告]
发表于 2007-06-27 09:14 |只看该作者
-t "||"  -r "##\r\n"

论坛徽章:
0
5 [报告]
发表于 2007-06-27 12:13 |只看该作者
原帖由 donniejeck 于 2007-6-27 09:14 发表
-t "||"  -r "##\r\n"


Starting copy...
Unexpected EOF encountered in BCP data-file.
bcp copy in failed


这个应该在bcp out的时候也加这些分割符吧,可惜现在无法bcp out,现在手上的表是直接bcp db..table out PATH -Usa -P -c出来的

[ 本帖最后由 Linuxcn.com 于 2007-6-27 12:14 编辑 ]

论坛徽章:
1
2017金鸡报晓
日期:2017-01-10 15:19:56
6 [报告]
发表于 2007-06-27 12:37 |只看该作者
bcp in 和out的时候加的参数本来就应该成对使用,out的时间加了什么参数,in的时候当然也得一样了。
out的时候是-c, in的时候只能-c了。
不行重新bcp out

论坛徽章:
0
7 [报告]
发表于 2007-06-27 14:28 |只看该作者
原帖由 chuxu 于 2007-6-27 12:37 发表
bcp in 和out的时候加的参数本来就应该成对使用,out的时间加了什么参数,in的时候当然也得一样了。
out的时候是-c, in的时候只能-c了。
不行重新bcp out


out的时候没加其他参数,只加了-c,in的时候同样只加-c参数出错的,在out的时候尝试过加-t"@#$%" -r"~!^&",in的时候也加,还是有错

关于加-t -r参数,有什么标准或者说明吗?看了下bcp 关于这2个参数的说明:
[-t field_terminator] [-r row_terminator]

那么,请教一下,这2个参数后面的值是如何确定的呢?
比如说楼上的,-t"||",-r"##\r\n"

双引号内的参数个数如何确定?

[ 本帖最后由 Linuxcn.com 于 2007-6-27 14:30 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2007-06-27 16:00 |只看该作者
bcp out的数据库版本是什么?bcp in的版本是什么?bcp的版本是什么?两边的表结构是否一致?
bcp in的时候可以加上-e选项,看看是哪一行数据出错。bcp in出错的原因一般是源数据的某些列中包含了tab或者回车键,这种情况下用-c方式做bcp是会出错的。

论坛徽章:
0
9 [报告]
发表于 2007-06-28 09:42 |只看该作者
原帖由 Sybase技术专家 于 2007-6-27 16:00 发表
bcp out的数据库版本是什么?bcp in的版本是什么?bcp的版本是什么?两边的表结构是否一致?
bcp in的时候可以加上-e选项,看看是哪一行数据出错。bcp in出错的原因一般是源数据的某些列中包含了tab或者回车键, ...


非常感谢sybase技术专家的回复.是我开始没有交代清楚这些问题,抱歉:
bcp out的数据库版本
  1. >isql -Usa -Ppasswd
  2. >select @@version
  3. >go
复制代码


显示的结果是sybase12.5.3

bcp in 的数据库版本:
  1. >isql -Usa -Ppasswd
  2. >select @@version
  3. >go
复制代码


显示的结果是sybase12.5.3

两边的表结构:

  1. >use dbname
  2. >go
  3. >sp_help tablename
  4. >go
复制代码


结果是一样的


bcp in出错的原因一般是源数据的某些列中包含了tab或者回车键

那么这样的问题应该如何处理?谢谢

[ 本帖最后由 Linuxcn.com 于 2007-6-28 09:44 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP