⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 csunittest.java

📁 Java写的TDS协议(JDBC/ODBC)实现
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
    stmt.execute("set dateformat ymd");
    dropTable("#t0027");
    String sql =
    "create table #t0027 (                                  " +
    " mybinary                   binary(5) not null,       " +
    " myvarbinary                varbinary(4) not null,    " +
    " mychar                     char(10) not null,        " +
    " myvarchar                  varchar(8) not null,      " +
    " mydatetime                 datetime not null,        " +
    " mysmalldatetime            smalldatetime not null,   " +
    " mydecimal10_3              decimal(10,3) not null,   " +
    " mynumeric5_4               numeric (5,4) not null,   " +
    " myfloat6                   float(6) not null,        " +
    " myfloat14                  float(6) not null,        " +
    " myreal                     real not null,            " +
    " myint                      int not null,             " +
    " mysmallint                 smallint not null,        " +
    " mytinyint                  tinyint not null,         " +
    " mymoney                    money not null,           " +
    " mysmallmoney               smallmoney not null,      " +
    " mybit                      bit not null,             " +
    " mytimestamp                timestamp not null,       " +
    " mytext                     text not null,            " +
    " myimage                    image not null,           " +
    " mynullbinary               binary(3) null,          " +
    " mynullvarbinary            varbinary(6) null,       " +
    " mynullchar                 char(10) null,            " +
    " mynullvarchar              varchar(40) null,         " +
    " mynulldatetime             datetime null,            " +
    " mynullsmalldatetime        smalldatetime null,       " +
    " mynulldecimal10_3          decimal(10,3) null,       " +
    " mynullnumeric15_10         numeric(15,10) null,      " +
    " mynullfloat6               float(6) null,            " +
    " mynullfloat14              float(14) null,           " +
    " mynullreal                 real null,                " +
    " mynullint                  int null,                 " +
    " mynullsmallint             smallint null,            " +
    " mynulltinyint              tinyint null,             " +
    " mynullmoney                money null,               " +
    " mynullsmallmoney           smallmoney null,          " +
    " mynulltext                 text null,                " +
    " mynullimage                image null)               ";

    int count = stmt.executeUpdate(sql);


    // Insert a row without nulls via a Statement
    sql =
    "insert into #t0027               " +
    "  (mybinary,                    " +
    "   myvarbinary,                 " +
    "   mychar,                      " +
    "   myvarchar,                   " +
    "   mydatetime,                  " +
    "   mysmalldatetime,             " +
    "   mydecimal10_3,               " +
    "   mynumeric5_4,              " +
    "   myfloat6,                    " +
    "   myfloat14,                   " +
    "   myreal,                      " +
    "   myint,                       " +
    "   mysmallint,                  " +
    "   mytinyint,                   " +
    "   mymoney,                     " +
    "   mysmallmoney,                " +
    "   mybit,                       " +
    "   mytimestamp,                 " +
    "   mytext,                      " +
    "   myimage,                     " +
    "   mynullbinary,                " +
    "   mynullvarbinary,             " +
    "   mynullchar,                  " +
    "   mynullvarchar,               " +
    "   mynulldatetime,              " +
    "   mynullsmalldatetime,         " +
    "   mynulldecimal10_3,           " +
    "   mynullnumeric15_10,          " +
    "   mynullfloat6,                " +
    "   mynullfloat14,               " +
    "   mynullreal,                  " +
    "   mynullint,                   " +
    "   mynullsmallint,              " +
    "   mynulltinyint,               " +
    "   mynullmoney,                 " +
    "   mynullsmallmoney,            " +
    "   mynulltext,                  " +
    "   mynullimage)                 " +
    " values                         " +
    "   (0x1213141516,               " + //   mybinary,
    "    0x1718191A,                 " + //   myvarbinary
    "    '1234567890',               " + //   mychar
    "    '12345678',                 " + //   myvarchar
    "    '19991015 21:29:59.01',     " + //   mydatetime
    "    '19991015 20:45',           " + //   mysmalldatetime
    "    1234567.089,                " + //   mydecimal10_3
    "    1.2345,                     " + //   mynumeric5_4
    "    65.4321,                    " + //   myfloat6
    "    1.123456789,                " + //   myfloat14
    "    987654321.0,                " + //   myreal
    "    4097,                       " + //   myint
    "    4094,                       " + //   mysmallint
    "    200,                        " + //   mytinyint
    "    19.95,                      " + //   mymoney
    "    9.97,                       " + //   mysmallmoney
    "    1,                          " + //   mybit
    "    null,                       " + //   mytimestamp
    "    'abcdefg',                  " + //   mytext
    "    0x0AAABB,                   " + //   myimage
    "    0x123456,                   " + //   mynullbinary
    "    0xAB,                       " + //   mynullvarbinary
    "    'z',                        " + //   mynullchar
    "    'zyx',                      " + //   mynullvarchar
    "    '1976-07-04 12:00:00.04',   " + //   mynulldatetime
    "    '2000-02-29 13:46',         " + //   mynullsmalldatetime
    "     1.23,                      " + //   mynulldecimal10_3
    "     7.1234567891,              " + //   mynullnumeric15_10
    "     987654,                    " + //   mynullfloat6
    "     0,                         " + //   mynullfloat14
    "     -1.1,                      " + //   mynullreal
    "     -10,                       " + //   mynullint
    "     126,                       " + //   mynullsmallint
    "     7,                         " + //   mynulltinyint
    "     -19999.00,                 " + //   mynullmoney
    "     -9.97,                     " + //   mynullsmallmoney
    "     '1234',                    " + //   mynulltext
    "     0x1200340056)              " + //   mynullimage)
    "";

    count = stmt.executeUpdate(sql);

    sql = "select * from #t0027";
    rs = stmt.executeQuery(sql);
    assertTrue(rs.next());
    output.println("mybinary is " + rs.getObject("mybinary"));
    output.println("myvarbinary is " + rs.getObject("myvarbinary"));
    output.println("mychar is " + rs.getString("mychar"));
    output.println("myvarchar is " + rs.getString("myvarchar"));
    output.println("mydatetime is " + rs.getTimestamp("mydatetime"));
    output.println("mysmalldatetime is " + rs.getTimestamp("mysmalldatetime"));
    output.println("mydecimal10_3 is " + rs.getObject("mydecimal10_3"));
    output.println("mynumeric5_4 is " + rs.getObject("mynumeric5_4"));
    output.println("myfloat6 is " + rs.getDouble("myfloat6"));
    output.println("myfloat14 is " + rs.getDouble("myfloat14"));
    output.println("myreal is " + rs.getDouble("myreal"));
    output.println("myint is " + rs.getInt("myint"));
    output.println("mysmallint is " + rs.getShort("mysmallint"));
    output.println("mytinyint is " + rs.getByte("mytinyint"));
    output.println("mymoney is " + rs.getObject("mymoney"));
    output.println("mysmallmoney is " + rs.getObject("mysmallmoney"));
    output.println("mybit is " + rs.getObject("mybit"));
    output.println("mytimestamp is " + rs.getObject("mytimestamp"));
    output.println("mytext is " + rs.getObject("mytext"));
    output.println("myimage is " + rs.getObject("myimage"));
    output.println("mynullbinary is " + rs.getObject("mynullbinary"));
    output.println("mynullvarbinary is " + rs.getObject("mynullvarbinary"));
    output.println("mynullchar is " + rs.getString("mynullchar"));
    output.println("mynullvarchar is " + rs.getString("mynullvarchar"));
    output.println("mynulldatetime is " + rs.getTimestamp("mynulldatetime"));
    output.println("mynullsmalldatetime is " + rs.getTimestamp("mynullsmalldatetime"));
    output.println("mynulldecimal10_3 is " + rs.getObject("mynulldecimal10_3"));
    output.println("mynullnumeric15_10 is " + rs.getObject("mynullnumeric15_10"));
    output.println("mynullfloat6 is " + rs.getDouble("mynullfloat6"));
    output.println("mynullfloat14 is " + rs.getDouble("mynullfloat14"));
    output.println("mynullreal is " + rs.getDouble("mynullreal"));
    output.println("mynullint is " + rs.getInt("mynullint"));
    output.println("mynullsmallint is " + rs.getShort("mynullsmallint"));
    output.println("mynulltinyint is " + rs.getByte("mynulltinyint"));
    output.println("mynullmoney is " + rs.getObject("mynullmoney"));
    output.println("mynullsmallmoney is " + rs.getObject("mynullsmallmoney"));
    output.println("mynulltext is " + rs.getObject("mynulltext"));
    output.println("mynullimage is " + rs.getObject("mynullimage"));
  }
  public void testCallStoredProcedures0028() throws Exception {
    Statement   stmt = con.createStatement();
    ResultSet   rs       = null;

    boolean isResultSet;
    int updateCount;

    int resultSetCount=0;
    int rowCount=0;
    int numberOfUpdates=0;


    isResultSet = stmt.execute("EXEC sp_who");
    output.println("execute(EXEC sp_who) returned: " + isResultSet);

    updateCount=stmt.getUpdateCount();

    while (isResultSet || (updateCount!=-1)) {
      if (isResultSet) {
        resultSetCount++;
        rs = stmt.getResultSet();

        ResultSetMetaData rsMeta =  rs.getMetaData();
        int columnCount = rsMeta.getColumnCount();
        output.println("columnCount: " +
        Integer.toString(columnCount));
        for(int n=1; n<= columnCount; n++) {
          output.println(Integer.toString(n) + ": " +
          rsMeta.getColumnName(n));
        }

        while(rs.next()) {
          rowCount++;
          for(int n=1; n<= columnCount; n++) {
            output.println(Integer.toString(n) + ": " +
            rs.getString(n));
          }
        }

      }
      else {
        numberOfUpdates += updateCount;
        output.println("UpdateCount: " +
        Integer.toString(updateCount));
      }
      isResultSet=stmt.getMoreResults();
      updateCount = stmt.getUpdateCount();
    }

    output.println("resultSetCount: " + resultSetCount);
    output.println("Total rowCount: " + rowCount);
    output.println("Number of updates: " + numberOfUpdates);


    assertTrue((rowCount>=1) && (numberOfUpdates==0) && (resultSetCount==1));
  }
  public void testxx0029() throws Exception {
    Statement   stmt = con.createStatement();
    int         i;
    int         j;
    int         count    = 0;
    ResultSet   rs       = null;

    boolean isResultSet;
    int updateCount;

    int resultSetCount=0;
    int rowCount=0;
    int numberOfUpdates=0;


    output.println("before execute DROP PROCEDURE");

    try {
      isResultSet =stmt.execute("DROP PROCEDURE #t0029_p1");
      updateCount = stmt.getUpdateCount();
      do {
        output.println("DROP PROCEDURE isResultSet: " + isResultSet);
        output.println("DROP PROCEDURE updateCount: " + updateCount);
        isResultSet = stmt.getMoreResults();
        updateCount = stmt.getUpdateCount();
      } while (((updateCount!=-1) && !isResultSet) || isResultSet);
    }
    catch(SQLException e) {
    }

    try {
      isResultSet =stmt.execute("DROP PROCEDURE #t0029_p2");
      updateCount = stmt.getUpdateCount();
      do {
        output.println("DROP PROCEDURE isResultSet: " + isResultSet);
        output.println("DROP PROCEDURE updateCount: " + updateCount);
        isResultSet = stmt.getMoreResults();
        updateCount = stmt.getUpdateCount();
      } while (((updateCount!=-1) && !isResultSet) || isResultSet);
    }
    catch(SQLException e) {
    }


    dropTable("#t0029_t1");

    isResultSet =
    stmt.execute(
    " create table #t0029_t1                       " +
    "  (t1 datetime not null,                     " +
    "   t2 datetime null,                         " +
    "   t3 smalldatetime not null,                " +
    "   t4 smalldatetime null,                    " +
    "   t5 text null)                             ");
    updateCount = stmt.getUpdateCount();
    do {
      output.println("CREATE TABLE isResultSet: " + isResultSet);
      output.println("CREATE TABLE updateCount: " + updateCount);
      isResultSet = stmt.getMoreResults();
      updateCount = stmt.getUpdateCount();
    } while (((updateCount!=-1) && !isResultSet) || isResultSet);


    isResultSet =
    stmt.execute(
    "CREATE PROCEDURE #t0029_p1 AS                " +

    " insert into #t0029_t1 values                " +
    " ('1999-01-07', '1998-09-09 15:35:05',       " +
    " getdate(), '1998-09-09 15:35:00', null)     " +

    " update #t0029_t1 set t1='1999-01-01'         " +

    " insert into #t0029_t1 values                " +
    " ('1999-01-08', '1998-09-09 15:35:05',       " +
    " getdate(), '1998-09-09 15:35:00','456')     " +

    " update #t0029_t1 set t2='1999-01-02'        " +

    " declare @ptr varbinary(16)                  " +
    " select @ptr=textptr(t5) from #t0029_t1      " +
    "   where t1='1999-01-08'                     " +
    " writetext #t0029_t1.t5 @ptr with log '123'  ");

    updateCount = stmt.getUpdateCount();
    do {
      output.println("CREATE PROCEDURE isResultSet: " + isResultSet);
      output.println("CREATE PROCEDURE updateCount: " + updateCount);
      isResultSet = stmt.getMoreResults();
      updateCount = stmt.getUpdateCount();
    } while (((updateCount!=-1) && !isResultSet) || isResultSet);


    isResultSet =
    stmt.execute(
    "CREATE PROCEDURE #t0029_p2 AS                " +

    " set nocount on " +
    " EXEC #t0029_p1                              " +
    " SELECT * FROM #t0029_t1                     ");

    updateCount = stmt.getUpdateCount();
    do {
      output.println("CREATE PROCEDURE isResultSet: " + isResultSet);
      output.println("CREATE PROCEDURE updateCount: " + updateCount);
      isResultSet = stmt.getMoreResults();
      updateCount = stmt.getUpdateCount();
    } while (((updateCount!=-1) && !isResultSet) || isResultSet);


    isResultSet = stmt.execute( "EXEC  #t0029_p2  ");

    output.println("execute(EXEC #t0029_p2) returned: " + isResultSet);

    updateCount=stmt.getUpdateCount();

    while (isResultSet || (updateCount!=-1)) {
      if (isResultSet) {
        resultSetCount++;
        rs = stmt.getResultSet();

        ResultSetMetaData rsMeta =  rs.getMetaData();
        int columnCount = rsMeta.getColumnCount();
        output.println("columnCount: " +
        Integer.toString(columnCount));
        for(int n=1; n<= columnCount; n++) {
          output.println(Integer.toString(n) + ": " +
          rsMeta.getColumnName(n));
        }

        while(rs.next()) {
          rowCount++;
          for(int n=1; n<= columnCount; n++) {
            output.println(Integer.toString(n) + ": " +
            rs.getString(n));
          }
        }

      }
      else {
        numberOfUpdates += updateCount;
        output.println("UpdateCount: " +
        Integer.toString(updateCount));
      }
      isResultSet=stmt.getMoreResults();
      updateCount = stmt.getUpdateCount();
    }

    output.println("resultSetCount: " + resultSetCount);
    output.println("Total rowCount: " + rowCount);
    output.println("Number of updates: " + numberOfUpdates);


    assertTrue((resultSetCount==1) &&
    (rowCount==2) &&
    (numberOfUpdates==0));
  }

  public void testDataTypesByResultSetMetaData0030() throws Exception {
    boolean passed = true;
    Statement   stmt = con.createStatement();
    int         count    = 0;
    ResultSet   rs;


    String sql = ("select " +
    " convert(tinyint, 2),  " +
    " convert(smallint, 5)  ");

    rs = stmt.executeQuery(sql);
    if (!rs.next()) {
      passed = false;
    }
    else {
      ResultSetMetaData meta = rs.getMetaData();

      if (meta.getColumnType(1)!=java.sql.Types.TINYINT) {
        output.println("tinyint column was read as "
        + meta.getColumnType(1));
        passed = false;
      }
      if (meta.getColumnType(2)!=java.sql.Types.SMALLINT) {
        output.println("smallint column was read as "
        + meta.getColumnType(2));
        passed = false;
      }
      if (rs.getInt(1) != 2) {
        output.println("Bogus value read for tinyint");
        passed = false;
      }
      if (rs.getInt(2) != 5) {
        output.println("Bogus value read for smallint");
        passed = false;
      }
    }
    assertTrue(passed);
  }
  public void testTextColumns0031() throws Exception {
    Statement   stmt = con.createStatement();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -