testT10.ec
上传用户:dgyhgb
上传日期:2007-01-07
资源大小:676k
文件大小:2k
源码类别:

SQL Server

开发平台:

Unix_Linux

  1. /*
  2.  * $Id$
  3.  *
  4.  * This file is a part of GNU SQL Server
  5.  *
  6.  * Copyright (c) 1996, Free Software Foundation, Inc
  7.  * Developed at Institute of System Programming of Russian Academy of Science
  8.  *
  9.  * This program is free software; you can redistribute it and/or modify it under
  10.  * the terms of the GNU General Public License as published by the Free
  11.  * Software Foundation; either version 2 of the License, or (at your option)
  12.  * any later version.
  13.  *
  14.  * This program is distributed in the hope that it will be useful, but WITHOUT
  15.  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  16.  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
  17.  * more details.
  18.  *
  19.  * You should have received a copy of the GNU General Public License along with
  20.  * this program; if not, write to the Free Software Foundation, Inc.,
  21.  * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
  22.  *
  23.  * Contacts: gss@ispras.ru
  24.  */
  25. #include <stdio.h>
  26. #include <stdlib.h>
  27. #include "tests.h"
  28.    
  29. int
  30. main(void)
  31.   char str[100];
  32.   long cnt;
  33.   int j, j_ind, str_ind;
  34.   $ WHENEVER SQLERROR GOTO errexit;
  35.  EXEC SQL
  36.  INSERT INTO TBL0 ( k1, t1)
  37.  VALUES ( 140, '' )
  38. ;
  39. /**/
  40.  EXEC SQL
  41.  INSERT INTO TBL0 ( k1, t1)
  42.  VALUES ( 160, 'MSU' )
  43. ;
  44.  EXEC SQL
  45.  INSERT INTO TBL0 ( k1, t1)
  46.  VALUES ( 141,NULL )
  47. ;
  48.  EXEC SQL
  49.    INSERT INTO TBL0  
  50.    VALUES ( 42,USER )
  51.    ;
  52.  
  53.  EXEC SQL
  54.    INSERT INTO TBL0 (k1) 
  55.    VALUES ( 43 )
  56.    ;
  57.  
  58.  EXEC SQL
  59.    INSERT INTO TBL0 ( k1, t1)
  60.    SELECT UNTABID, TABNAME 
  61.    FROM DEFINITION_SCHEMA.SYSTABLES
  62. --     WHERE UNTABID < 8
  63. --         AND
  64. --    TABNAME > 'aa'
  65. ;
  66. /**/
  67.  EXEC SQL
  68.  INSERT INTO TBL0 (k1, t1)
  69.    SELECT k1+100, 'NEW'
  70.     FROM TBL0
  71. ;
  72. */
  73. /**/
  74.   EXEC SQL
  75.  INSERT INTO TBL0 ( k1, t1)
  76.    (SELECT UNTABID, TABNAME
  77.     FROM DEFINITION_SCHEMA.SYSTABLES
  78. --     WHERE UNTABID > 8
  79. --       AND
  80. --  TABNAME > 'aa'
  81.    )
  82.     ;
  83.  EXEC SQL
  84.   DECLARE CURS1 CURSOR FOR
  85.     (
  86.       SELECT  k1, t1
  87.       FROM TBL0
  88.     )
  89.     
  90. ;
  91.   $ WHENEVER NOT FOUND GOTO exit;
  92.  
  93.   $ open CURS1;
  94.   while(1)
  95.     {
  96.       $ fetch CURS1 into :j :j_ind, :str :str_ind;
  97.       PRINT_ID (j, "k1");
  98.       PRINT_IS (str, "t1");
  99.       PRINT_END;
  100.     }
  101.  exit:
  102.   fprintf(stderr,"End of Table TBL0n");
  103.   $ commit work;
  104.   return 0;
  105. errexit:
  106.   fprintf(stderr,"Error occured in test 34n");
  107.   return 0;
  108. }