BCP是SYBASE公司提供专门用于数据库表一级数据备份的工具。
首先来个我自己使用过的命令:
导出数据:
bcp cnmsdb..tmp_ResPointCircuit out ./xuwb.dat -Ucnms -Pseenms -SSYBASE_TEST -c
导入数据:
bcp cnmsdb..tmp_ResPointCircuit in ./xuwb.dat -Ucnms -Pseenms -SZOOM193 -c
另外可以带参数:
-t'||' -r'&&\n'
另外补充一个,Sybase下如何查看数据库名:
select db_name()
下面是转载滴内容:
一般存放在所安装的ASE或者Open Client 的BIN目录中。
12版本以前的ASE,bcp存放目录为 $SYBASE/bin
12版本(含12版本)以后存放目录为 $SYBASE/OCS-12_x/bin
其中$SYBASE为SYBASE安装目录,12_x代表12.0、12.5版本,显示为12_0或者12_5
可执行文件名称为bcp.EXE
参数列表如下:(可用 bcp – 得到)
usage: bcp [[database_name.]owner.]table_name[:slice_number] {in | out} datafile
[-m maxerrors] [-f formatfile] [-e errfile]
[-F firstrow] [-L lastrow] [-b batchsize]
[-n] [-c] [-t field_terminator] [-r row_terminator]
[-U username] [-P password] [-I interfaces_file] [-S server]
[-a display_charset] [-q datafile_charset] [-z language] [-v]
[-A packet size] [-J client character set]
[-T text or image size] [-E] [-g id_start_value] [-N] [-X]
[-M LabelName LabelValue] [-labeled]
[-K keytab_file] [-R remote_server_principal]
[-V [security_options]] [-Z security_mechanism] [-Q]
常用数据备份格式为:
bcp dbname..tablename out c:\temp\filename -Usa -Ppassword –Sservername –c
即可。
其中 –U后为SYBASE登录名称,–P后为SYBASE登录口令,–S后为SYBASE服务名称,–c代表使用可见文本方式导出数据
如果为数据恢复只需要将out 替换为 in 即可。
可用如下方法生成一个可以一次导出一个数据库中所有表的数据的执行脚本。
编辑一个如下文本文件 文件名称例为 bcpscript:
use dbname 选中将要导出数据的数据库
go
select 'bcp dbname..' + name + ' out c:\temp\' + name + ' -Usa -P -Ssybcdsrv -c' from sysobjects where type = 'U' 在sysobjects系统表中type为U的表为用户表,系统表为S。
go
用如下格式执行:
isql –Usa –Ppassword –Sservername –i bcpscript –o bcpout.bat
i参数后为输入文件,o参数后文件为输入文件执行后得到的输出文件。
执行后可以得到一个后缀名为 BAT 的批处理文件(在unix下则生成一个shell文件并更改相应的执行权限),可直接执行。即在指定的目录下导出了相应的数据文件。一个表的数据为一个文件。如在UNIX下则可不用BAT后缀。
备份得到的数据文件如果需要重新往数据库中恢复,只需要将上面操作步骤中BCP命令中的out 参数换为in参数即可。
注意:在对正式数据做操作前最好先作一些测试。
另外,如果牵涉到使用bcp进行字符集的更改,可以采用 –J charset 参数进行
关于BCP等工具的具体使用指南,请参见SYBASE相关文档。
针对系统移植所需做的工作,应该有如下几个步骤:
1. 安装新环境的硬件环境,包括网络,硬盘状况;
2. 安装新环境的操作系统,包括Service Pack;
3. 安装相同版本的SYBASE数据库产品,包括补丁;
4. 添加数据库用户,设备等相关信息,应与老系统中一致
5. 创建新系统数据库;
6. 利用你所拥有的表脚本或者通过SYBASE CENTRAL中的生成DDL功能,将老系统中的建表脚本导出,生成数据库中的表.最好将建表脚本与建立表上约束(主键,外键等)的脚本分开,先在表上不建约束,在数据导入后,再加上.;
7. BCP OUT 老系统中数据,根据上面提到的方法;
8. 运行建立其他对象的脚本,包括索引,主键,外键及存储过程,触发器,缺省等;
9. 在新系统中对需要更改的表结构做更改,或者添加新表;
10. 测试应用系统是否工作正常.
分享到:
相关推荐
BCP 是 Sybase 数据库中的一个重要工具,用于导入和导出数据,但是如果不正确地使用 BCP,可能会出现各种错误和问题。 一、 BCP 错误 在使用 BCP 时,可能会遇到各种错误,例如: * ct_connect():network packet...
标题"sybase bcp命令详解"提到了`bcp`命令,这是Sybase数据库管理系统中一个非常重要的数据导入导出工具。它允许用户在数据库与操作系统文件之间批量复制数据,用于数据迁移、备份或数据处理等场景。 描述"bcp ...
### bcp导入导出数据:理解SQL Server与Sybase数据库数据迁移 在IT行业中,数据库管理与维护是一项至关重要的任务,特别是在数据迁移、备份或恢复过程中。`bcp`(Bulk Copy Program)作为SQL Server和Sybase数据库...
总的来说,"SybaseV15安装相关资料及bcp导入导出命令"这一资源包提供了全面的学习材料,涵盖了从安装Sybase数据库系统到利用bcp进行数据迁移的整个流程。无论是初次接触Sybase的新手还是有经验的DBA,都能从中受益,...
### Sybase IQ 数据的导入与导出...通过以上内容可以看出,Sybase IQ 提供了丰富的数据导入导出功能,用户可以根据实际需求选择合适的方法来进行数据迁移。同时,正确配置各种参数对于确保数据完整性和准确性至关重要。
Sybase bcp(Bulk Copy Program)是Sybase数据库系统提供的一种强大工具,用于高效地批量导入和导出数据。它允许用户在数据库和外部文件之间进行大规模的数据传输,极大地提高了数据操作的效率。在本文中,我们将...
Sybase BCP(Batch Copy Program)是Sybase Adaptive Server Enterprise (ASE) 提供的一个强大的数据导入导出工具,它允许用户将数据批量地从数据库复制到文件,或者从文件复制到数据库,极大地提高了数据处理的效率...
- 数据导入导出:使用`bcp`工具进行大量数据的导入导出操作。 - 表维护:进行表的重建、重组和碎片整理,以保持数据库的高效运行。 8. **最新特性** - 版本更新:了解v2.0版本相比前一版本的新特性及改进。 - ...
BCP(Bulk Copy Program)是SYBASE数据库管理系统中的一个非常强大的工具,主要用于批量导入导出数据。它能够将数据库表或视图中的数据以文本文件的形式导出或者将文本文件中的数据批量导入到数据库表中。BCP命令在...
综上所述,这个PB编写的程序是一个功能强大的数据迁移工具,能够在不同数据库系统之间高效地进行数据导入导出,确保数据的准确性和一致性。它的应用范围广泛,尤其适用于多数据库环境的企业,可以帮助优化数据管理,...
**逻辑备份**主要使用`bcp`命令进行数据导出。这种方式的优点在于灵活性高、技术实现简单、支持增量备份,并且可以根据需要备份特定的用户或表;但当数据量较大时,会对数据库造成较大的压力,且只能恢复到备份时的...
Sybase BCP(Bulk Copy Program)是Sybase数据库系统中一个强大的数据导入和导出工具。它允许用户高效地批量处理大量数据,无论是从文本文件导入到数据库,还是从数据库导出到文件。BCP在数据库管理和数据分析场景中...
- BCP命令可以通过不同的参数配置来完成数据的导入或导出操作。 - 示例命令格式为:`bcp [数据库名称].[表名] out [文件路径] -c -t '|' -U [用户名] -P [密码] -S [服务器名称]` - `-c` 指定字段为字符型。 - `...
Sybase IQ 数据库迁移实例是一个复杂的过程,需要对数据库的结构、数据、触发器、存储过程等进行导出和导入。需要对环境和软件版本进行检查,对表结构和视图进行导出,并对数据进行导出和导入。通过本文,我们可以...
Sybase数据库的处理方式与MySQL类似,使用`load data infile`命令,但需要注意的是,字段定义可能会根据不同的数据库方言有所不同,例如在Sybase中,字段NBXH和QYMC被定义在`<column name="...">`标记内。...
- **BCP (Bulk Copy Program):** 用于批量导入导出数据。 - **ISQL (Interactive SQL):** 提供交互式的SQL命令执行环境。 - **SHOWSERVER:** 显示当前数据库服务器的信息。 - **STARTSERVER:** 启动数据库服务器。 -...
- 用于批量导入导出数据的工具。 - **3.3 showserver** - 查看当前运行的数据库服务器信息。 - **3.4 startserver** - 启动数据库服务器的命令。 #### 四、Sybase有关概念 - **2.1 数据库设备** - 定义了数据...