1 /* create table T1 with 10 fields.
2 * insert some records into it.
3 * noOfParamFields() should return zero.
4 * getParamFldInfo() for all fields and print the field info.
7 * Author : Jitendra Lenka.
10 #include<SqlStatement.h>
16 SqlConnection
*con
= new SqlConnection();
17 rv
= con
->connect("root","manager");
20 SqlStatement
*stmt
= new SqlStatement();
21 stmt
->setSqlConnection(con
);
23 strcpy(statement
,"CREATE TABLE T1(F1 INT,F2 SMALLINT,F3 CHAR(30),F4 FLOAT,F5 FLOAT,F6 DATE,F7 TIME,F8 TIMESTAMP,F9 INT,F10 BIGINT);");
26 rv
= stmt
->prepare(statement
);
34 rv
= stmt
->execute(rows
);
43 printf("Table created\n");
47 strcpy(statement
,"INSERT INTO T1 VALUES(?,?,?,?,?,?,?,?,?,?);");
51 char f3var
[20]="jitendra";
55 f6var
.set(2008,01,21);
61 f8var
.setDate(2008,01,21);
62 f8var
.setTime(12,29,30);
65 long long f10var
= 12000;
67 rv
= stmt
->prepare(statement
);
79 rv
= con
->beginTrans();
82 stmt
->setIntParam(1,f1var
);
83 stmt
->setShortParam(2,f2var
);
84 stmt
->setStringParam(3,f3var
);
85 stmt
->setFloatParam(4,f4var
);
86 stmt
->setFloatParam(5,f5var
);
87 stmt
->setDateParam(6,f6var
);
88 stmt
->setTimeParam(7,f7var
);
89 stmt
->setTimeStampParam(8,f8var
);
90 stmt
->setIntParam(9,f9var
);
91 stmt
->setLongLongParam(10,f10var
);
93 rv
= stmt
->execute(rows
);
99 printf("Total rows inserted %d\n",count
);
103 nop
= stmt
->noOfParamFields();
104 printf("Total parameter in the statement=%d\n",nop
);
106 FieldInfo
* field
= new FieldInfo();
113 char defaultValueBuf
[10];
117 rv
= stmt
->getParamFldInfo(1,field
);
118 if(rv
!=OK
)return -1;
119 printf("fldname of field is %s\n", field
->fldName
);
120 printf("data type of the field=%d\n",field
->type
);
121 printf("length of the field=%d\n",field
->length
);
122 printf("offset=%d\n",field
->offset
);
123 printf("default value=%s\n",field
->defaultValueBuf
);
124 printf("null field=%d\n",field
->isNull
);
125 printf("default value is set for the field=%d\n",field
->isDefault
);
129 //**********************************************************
133 strcpy(statement
,"SELECT * FROM T1;");
134 rv
= stmt
->prepare(statement
);
142 stmt
->bindField(1,&f1var
);
143 stmt
->bindField(2,&f2var
);
144 stmt
->bindField(3,f3var
);
145 stmt
->bindField(4,&f4var
);
146 stmt
->bindField(5,&f5var
);
147 stmt
->bindField(6,&f6var
);
148 stmt
->bindField(7,&f7var
);
149 stmt
->bindField(8,&f8var
);
150 stmt
->bindField(9,&f9var
);
151 stmt
->bindField(10,&f10var
);
154 rv
= con
->beginTrans();
157 while(stmt
->fetch() !=NULL
)
171 printf("Total row fetched=%d\n",count
);
175 strcpy(statement
,"DROP TABLE T1;");
176 rv
= stmt
->prepare(statement
);
183 rv
= stmt
->execute(rows
);
191 printf("Table dropped\n");