分享

往DB2导入表结构,批量执行SQL文建表

 WindySky 2008-08-06
上次写到如何导出数据结构和数据之后([Tips]从DB2导出表结构与数据 ) ,现在终于抽时间写完如何导入表结构了。
  首先是新建数据库,可以使用Control Center,也可以使用Command line,不过对于本次新建,我更加愿意使用Command Editor。
  打开之后,可以直接写如下SQL文:
  CREATE DATABASE MyDB2
   ON 'D:'
   USING CODESET IBM-eucJP
   TERRITORY JP
   COLLATE USING SYSTEM;
  好像ON后面只识别到盘符,等成功以后,继续打开CE,在Target里选择‘MyDB2’,其实就是执行了‘connect to MYDB2 ;’,到了这里的目的是为了创建Schema,而Schema的概念即如每个家庭都有电视机,但是归属不同。
  写入如下SQL:
  CREATE SCHEMA UT001 AUTHORIZATION MyDB2;
  CREATE SCHEMA UT002 AUTHORIZATION MyDB2;
  至此,数据库及Schema都已经建立完毕,开始导入建表的SQL文件了。如下图:

  现在我们每就要开始执行建表文件了。这时可以用DB2 Command Line来操作。
  可以直接在CE中写SQL文,然后直接执行。而如果是DDL导出SQL文,再这样一个一个执行的话,就会很烦恼的,此时,我建议使用批量处理,我们可以写一个bat文件,放置于IBM\SQLLIB\BIN 下:
  db2 connect to MyDB2
  db2 set current schema UT001
  db2 -tvf D:\DATA\test.sql
  db2 commit work
  db2 terminate
  其中特别注意,第一,如果不是多个schema,则可以不用第二行。第二,第三行中的参数-tvf,解释如下,
  -f 读取输入文件
  -t 设置语句终止字符
  -v 回送当前命令
  如果文件中每个语句是直接以回车结尾,则用-vf即可,加上-t是表示没条语句以“;”结尾。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多