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

📄 conntest11.c

📁 b树实现源码,linux和unix下运行,速度快,极好用
💻 C
字号:
/*  create table T1 , insert  and update *  then rollback,  *  Author : Jitendra Lenka */#include<AbsSqlStatement.h>#include<SqlFactory.h>int main(){   DbRetVal rv = OK;   AbsSqlConnection *con = SqlFactory :: createConnection(CSqlAdapter);   rv = con->connect("root","manager");   if(rv !=OK)return 1;   printf("Connection opened\n");      AbsSqlStatement *stmt = SqlFactory :: createStatement(CSqlAdapter);   stmt->setConnection(con);   char statement[200];   strcpy(statement,"CREATE TABLE T1(F1 INT,F2 INT);");      int rows = 0;   rv = stmt->prepare(statement);   if(rv!=OK)   {     delete stmt;     delete con;     return 1;   }   rv = stmt->execute(rows);   if(rv!=OK)   {     delete stmt;     delete con;     return 2;   }   stmt->free();   printf("Table T1 CREATED\n");         strcpy(statement,"INSERT INTO T1 VALUES(1,1);");   rv = stmt->prepare(statement);   if(rv!=OK)   {     delete stmt;     delete con;     return 3;   }   rv = con->beginTrans();   if(rv!=OK)   {     delete stmt;     delete con;     return 4;   }      rv = stmt->execute(rows);   if(rv!=OK)   {     delete stmt;     delete con;     return 5;   }         printf("1 Record inserted\n");   stmt->free();   strcpy(statement,"UPDATE T1 SET F2=100;");      rv = stmt->prepare(statement);   if(rv !=OK)   {      delete stmt;      delete con;      return 6;   }        rv = stmt->execute(rows);    if(rv!=OK && rows !=1)return 7;    printf("1 Record updated\n");     //  ROLLBACK          rv  = con->rollback();    if(rv!=OK)return 8;        stmt->free();    strcpy(statement,"SELECT F2 FROM T1 ;");    rv = stmt->prepare(statement);    if(rv!=OK)    {      delete stmt;      delete con;      return 9;    }    int id=10;    stmt->bindField(1,&id);    rv = con->beginTrans();    if(rv!=OK)return 1;    stmt->execute(rows);    int count=0;    while(stmt->fetch()!=NULL)    {      printf("F2= %d\n",id);      count++;    }    stmt->close();    rv = con->commit();    if(rv!=OK)return 10;    printf("Total record fetched =%d ,Because transaction rollbacked\n",count);    stmt->free();    strcpy(statement,"DROP TABLE T1;");    rv = stmt->prepare(statement);    if(rv!=OK)    {      delete stmt;      delete con;      return 11;    }    rv = stmt->execute(rows);    if(rv!=OK)    {      delete stmt;      delete con;      return 12;    }    printf("Table droped\n");    stmt->free();    delete stmt;    delete con;    return 0;}      

⌨️ 快捷键说明

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