zoukankan      html  css  js  c++  java
  • informix dbaccess 常用执行方式及常见技巧

    假设:

    A.数据库servername: testserver

    B.数据库名:testdb

    C.SQL脚本文件:

       sqlfile.sql

       create table test_table(c1 integer);

       insert into test_table(c1) values(12);

       update test_table set c1=0;

       delete test_table where 1=1;

       drop table test_table;

       

       sqlfile2.sql

       create table test_table(c1 integer);

       insert into test_table(c2) values(12);

       insert into test_table(c1) values(12);

       update test_table set c1=0;

       delete test_table where 1=1;

       drop table test_table;


    一.执行SQL脚本文件方式

    1.调用dbaccess执行SQL脚本文件

      A.简单执行SQL文件

         dbaccess testdb sqlfile.sql 或者  dbaccess testdb@testserver sqlfile.sql

         Database selected.
         Table created.
         1 row(s) inserted.
         1 row(s) updated.
         1 row(s) deleted.
         Table dropped.
         Database closed.

      B.执行输出打印执行语句及执行结果

         dbaccess -e testdb sqlfile.sql

         create table test_table(c1 integer);
           Table created.
         insert into test_table(c1) values(12);
           1 row(s) inserted.
         update test_table set c1=0;
           1 row(s) updated.

         delete test_table where 1=1;
           1 row(s) deleted.

         drop table test_table;
           Table dropped.
         Database closed.

      C.将执行结果重定向到文件(shell: bash)

         dbaccess -e testdb sqlfile.sql > output.log > 2&1

         cat output.log

         create table test_table(c1 integer);
           Table created.
         insert into test_table(c1) values(12);
           1 row(s) inserted.
         update test_table set c1=0;
           1 row(s) updated.

         delete test_table where 1=1;
           1 row(s) deleted.

         drop table test_table;
           Table dropped.
         Database closed.

    二.交互模式执行语句

        dbaccess - -
        > database testdb;

            Database selected.

         > create table test_table(c1 integer);
            Table created.

         > insert into test_table(c1) values(12);
            1 row(s) inserted.
         > update test_table set c1=0;
            1 row(s) updated.

         > delete test_table where 1=1;
            1 row(s) deleted.

         > drop table test_table;
            Table dropped.

         >^D

    三.菜单模式执行

        进入数据库

       dbaccess  选择数据库

       或者

        dbaccess testdb

        dbaccess testdb@testserver

       按菜单操作执行SQL语句,其中可以使用vi进行脚本文件的编辑

    四.几个小技巧

      1.执行SQL脚本文件时,当出错时打印详细的错误信息

        dbaccess -e -m testdb sqlfile2.sql

       

     Database selected.
     
    create table test_table(c1 integer);
       Table created

     
    insert into test_table(c2) values(1212);
      217: Column (c2) not found in any table in the query (or SLV is undefined).
    Error in line 2
    Near character position 26
     
       insert into test_table(c1) values(12);
    1 row(s) inserted.
          update test_table set c1=0;
    1 row(s) updated.
             delete test_table where 1=1;
    1 row(s) deleted.
                drop table test_table;
    Table dropped.
    Database closed.

      2.执行SQL脚本文件时,当出错时打印详细的错误信息并在出现第一个错误时,停止继续执行后续的语句

        dbaccess -e -m -a testdb sqlfile2.sql

        Database selected.
     
    create table test_table(c1 integer);
    Table created.
     
    insert into test_table(c2) values(1212);
      217: Column (c2) not found in any table in the query (or SLV is undefined).
    Error in line 2
    Near character position 26
     
    Database closed.

  • 相关阅读:
    unity 用LineRender画四边形并测面积
    unity读取Texture文件并转为Sprit
    unity shader入门(四):高光
    unity shader入门(三)逐像素光照,Blinn-Phong模型
    unity shader入门(二)语义,结构体,逐顶点光照
    unity shader入门(一):基本结构话痨版
    好多坑,好多好多坑(1)
    点击按钮收缩功能
    unity 实现技能释放
    ugui用户定义操作按键
  • 原文地址:https://www.cnblogs.com/equation/p/5572968.html
Copyright © 2011-2022 走看看