首页 > 其他分享 >【informix】数据导入导出操作

【informix】数据导入导出操作

时间:2023-03-22 22:35:46浏览次数:42  
标签:load crbt 导出 导入 informix home txt

目录

informix数据导入导出操作

1.表数据导出

可以采用在dbaccess工具环境直接输入

进入对应数据库:dbaccess database

  • 单表数据导出:(可导出3种不同的格式)
unload to fileName.txt select * from tableName

unload to ‘fileName.dmp’ select * from tableName;

unload to /opt/informix/fileName.csv delimiter "," select * from tableName;
  • 导出前十行数据:
unload to /home/informix/fileName.csv  delimiter "," select  first 10 * from tableName;

注意:其中的delimiter是用来定义分隔符的,分隔符默认是"| " 但是也可以写为" ,"

2.导入表数据

  • 单个表数据导入
load from table1.txt insert into table1;
load from /home/informix/lihewei/crbt_userringset.txt insert into crbt_userringset;

load from /home/informix/lihewei/tj/CRBT_USERRINGSET.unl insert into crbt_userringset;
load from /home/informix/lihewei/tj/crbt_rotate.unl insert into crbt_rotate;
load from /home/informix/lihewei/tj/crbt_rotatering.unl insert into crbt_rotatering;
load from /home/informix/lihewei/tj/crbt_user.unl insert into crbt_user;
load from /home/informix/lihewei/tj/crbt_ring.unl insert into crbt_ring;
load from /home/informix/lihewei/tj/crbt_userdepot.unl insert into crbt_userdepot;
load from /home/informix/lihewei/tj/crbt_usergroup.unl insert into crbt_usergroup;

load from /home/informix/lihewei/tj/crbt_user0925.unl insert into crbt_user;

truncate table tableName;
  • 批量导入:(方法一)
-- 第一步:编写命令文件/home/informix/load.txt
FILE table1.txt DELIMITER '|' 3;(此处的数字为表各中对应的字段数目)
INSERT INTO table1;
FILE table2.txt DELIMITER '|' 3;(此处的数字为表各中对应的字段数目)
INSERT INTO table2;
FILE table3.txt DELIMITER '|' 3;(此处的数字为表各中对应的字段数目)
INSERT INTO table3;

-- 第二步:通过输入如下的dbload命令批量的导入三个表格数据:
dbload -d database(数据库名字) -c /home/informix/load.txt -l aaa(随便输入的日志名字)
  • 批量导入:(方法二)
-- 第一步:编写导入脚步(load.sql)
load from table1.txt DELIMITER '|' INSERT INTO table1;
load from table2.txt DELIMITER '|' INSERT INTO table2;
load from table3.txt DELIMITER '|' INSERT INTO table3;

-- 第二步:在dbaccess工具环境下直接输入
dbaccess databaseName < load.sql

3.表结构导出

  • 备份整个数据库的表结构:
dbschema -d database > database.sql
  • 导出某个数据表的表结构
dbschema -d your_database_name -t your_table_name xxx.sql

注意: -d表示导出整个数据库的表结构,-t表示导出某一个数据表的表结构。

4.informix新建/删除表结构

  • 创建表,执行导出的sql脚本(xxx.sql为3中导出的表结构)
[informix@localhost ~]$ dbaccess 数据库名 xxx.sql
  • 删除表数据
delete from tableName;
truncate table tableName;

truncate:

  1. truncate在使用时,不能加where条件。
  2. truncate执行操作时,速度更快 且 不可回滚;是因为:TRUNCATE操作不会记录到事务日志中,而DELETE操作会记录到事务日志中,记录日志会耗时,所以TRUNCATE要快于DELETE 且 truncate不可回滚。
  3. truncate删除表数据是:先删除整张表包括数据,再重新创建表,因此,若果表中有自增长,会把自增长id 重置成1开始。 delete删除表数据时, 每次从表中删除一行。
  4. 表和索引所占空间。 当表被TRUNCATE 后,这个表和索引所占用的空间会恢复到初始大小,而DELETE操作不会减少表或索引所占用的空间。drop语句将表所占用的空间全释放掉。
  5. 应用范围。TRUNCATE 只能对TABLE;DELETE可以是table和view
  6. truncate、drop是DLL(data define language),操作立即生效,不会记录到事务日志中去
  7. 在没有备份情况下,谨慎使用 drop 与 truncate。要删除部分数据行采用delete且注意结合where来约束影响范围

5.informix存储过程执行方法

  • informix存储过程执行流程

(1)登录到数据库informix目录下;
(2)上传存储过程sync_user.sql;
(3)执行命令dbaccess 数据库名 sync_user.sql;
(4)执行命令echo 'execute procedure crbt_sync_user_ability()' | dbaccess 数据库名;

  • 绑定存储过程

    dbaccess database sync_user.sql

  • 删除绑定的存储过程

    drop procedure crbt_sync_user_ability

  • 执行存储过程中的方法(在dbaccess中执行)

    execute procedure crbt_sync_user_ability()

标签:load,crbt,导出,导入,informix,home,txt
From: https://www.cnblogs.com/lihw/p/17168725.html

相关文章

  • Cadence入门笔记(五):网表生成和导入
    检查封装在生成网表前要先确认器件封装和实际封装文件是否对应存在如下是之前设计好的封装文件.psm文件打开orcad,和元件属性中的封装内容对比确认一致如果实际封装和......
  • Java 使用 POI 导出Excel,设置同一个单元格的内容显示不同的文字颜色
    要在Java中导出Excel并设置同一单元格的内容显示不同的文字颜色,可以使用ApachePOI库来实现。下面是一个示例代码,演示如何在单元格中设置不同颜色的文本:1//创建......
  • shp导入postgre
    以前的工作,最近有点忘了记录一下   下载postgre 安装postgis    具体怎么安装的,我忘了 百度吧 然后导入就行了......
  • IDEA 如何快速重新导入 Maven 依赖
    当Module依赖的其它Module(需在IDEA内被加载)发生变更后,可以通过MavenHelper插件的Reimport功能快速重新导入步骤如下:使用Alt+Ctrl+Shift+R打开......
  • markdown分页导出pdf
    问题markdown不能分页导出pdf不美观方案在需要分页之处插入以下html代码,在导出pdf时生效<divSTYLE="page-break-after:always;"></div>......
  • Revit 机电模型导入 Unity(一)
    Revit机电模型导入Unity(一)目前存在问题1.Revit机电模型导出带材质的模型到Unity2.Revit机电模型颜色是通过过滤器(仅改变视图并未改变实际材质颜色)实现分类,......
  • springboot使用easyExcel导出Excel表格以及LocalDateTime时间类型转换问题
    以下内容仅供学习使用1.首先引入pom.xml依赖<dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId>......
  • 使用Jcom组件操作Visio批量导出图片
    [url]http://mncc.iteye.com/blog/367389[/url]在JAVA中使用JCOM和JXL注意要点:(1)在你的lib下要有jdom-1.0.jar,jxl-2.5.5.jar,jcom-2.2.4.jar,jcom.dl......
  • SQL Server 导出链接服务器用户名密码
    DACconnectivitytoMSSQLinstancesLocaladministratorprivileges(neededtoaccessregistrykey)SysadminprivilegestoMSSQLinstancesfunctionGet-MSSQLL......
  • excel导出大量数据
    项目上使用POI导出数据库大数据量为Excel时,发现代码运行时实例化工作簿失败!SXSSFWorkbookworkbook=newSXSSFWorkbook(100);trycatch问题代码后,在debug中也并未进入......