`
microjava
  • 浏览: 309400 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

c语言编程基础之数据库操作

阅读更多
查询:
vi opsql.ec
EXEC SQL include sqlca.h;

#include <stdio.h>
#include <string.h>

int main(int argc,char **argv) 
{
  EXEC SQL BEGIN DECLARE SECTION;
    char name[50];
    char dbname[20];
  EXEC SQL END DECLARE SECTION;
  strcpy(dbname,"hostdb");

  EXEC SQL CONNECT TO :dbname;
  if(sqlca.sqlcode)
  {
    printf("opeb db error,code=%d\n",sqlca.sqlcode);
    return -1;
  }
  EXEC SQL DECLARE cur1 CURSOR FOR
  SELECT khxm FROM accoinfo;
  EXEC SQL OPEN cur1;
  if(sqlca.sqlcode)
  {
    printf("open cur1 error,code=%d\n",sqlca.sqlcode);
    return -1;
  }

  while(1) 
  {
    memset(name,0x00,sizeof(name));
    EXEC SQL FETCH cur1 INTO :name;
    if(sqlca.sqlcode==100)break;
    else if(sqlca.sqlcode){
        printf("open cur1 error,code=%d\n",sqlca.sqlcode);
        return -1;
    }
    printf("name is [%s]\n",name);
  }
  EXEC SQL CLOSE cur1;
  EXEC SQL DISCONNECT CURRENT;
  return 0; 
}



esql -o opsql opsql.ec
./opsql

新增
vi insql.ec
EXEC SQL include sqlca.h;

#include <stdio.h>
#include <string.h>

int main(int argc,char **argv) 
{
  EXEC SQL BEGIN DECLARE SECTION;
    char khzh[20];
    char name[50];
    char sfzh[18];
    int  zhye;
    char dbname[20];
  EXEC SQL END DECLARE SECTION;
  strcpy(dbname,"hostdb");

  EXEC SQL CONNECT TO :dbname;
  if(sqlca.sqlcode)
  {
    printf("opeb db error,code=%d\n",sqlca.sqlcode);
    return -1;
  }
  
  strcpy(khzh,"001");
  strcpy(name,"mcfeng");
  strcpy(sfzh,"1811");
  zhye=1000000;
  
  EXEC SQL INSERT INTO accoinfo VALUES(:khzh,:name,:sfzh,:zhye);
  
  if(sqlca.sqlcode)
  {
    printf("open cur1 error,code=%d\n",sqlca.sqlcode);
    return -1;
  }

  EXEC SQL DISCONNECT CURRENT;
  return 0; 
}


修改
EXEC SQL include sqlca.h;

#include <stdio.h>
#include <string.h>

int main(int argc,char **argv) 
{
  EXEC SQL BEGIN DECLARE SECTION;
    char khzh[20];
    char name[50];
    char sfzh[18];
    int  zhye;
    char dbname[20];
  EXEC SQL END DECLARE SECTION;
  strcpy(dbname,"hostdb");

  EXEC SQL CONNECT TO :dbname;
  if(sqlca.sqlcode)
  {
    printf("opeb db error,code=%d\n",sqlca.sqlcode);
    return -1;
  }
  
  strcpy(khzh,"001");
  strcpy(name,"mcfeng");
  strcpy(sfzh,"1811");
  zhye=1000000;
  
  EXEC SQL UPDATE accoinfo SET zhye=zhye+:zhye WHERE khzh=:khzh;
  
  if(sqlca.sqlcode)
  {
    printf("open cur1 error,code=%d\n",sqlca.sqlcode);
    return -1;
  }

  EXEC SQL DISCONNECT CURRENT;
  return 0; 
}


删除
EXEC SQL include sqlca.h;

#include <stdio.h>
#include <string.h>

int main(int argc,char **argv) 
{
  EXEC SQL BEGIN DECLARE SECTION;
    char khzh[20];
    char name[50];
    char sfzh[18];
    int  zhye;
    char dbname[20];
  EXEC SQL END DECLARE SECTION;
  strcpy(dbname,"hostdb");

  EXEC SQL CONNECT TO :dbname;
  if(sqlca.sqlcode)
  {
    printf("opeb db error,code=%d\n",sqlca.sqlcode);
    return -1;
  }
  
  strcpy(khzh,"001");
  strcpy(name,"mcfeng");
  strcpy(sfzh,"1811");
  zhye=1000000;
  
  EXEC SQL DELETE FROM accoinfo WHERE khzh=:khzh;
  
  if(sqlca.sqlcode)
  {
    printf("open cur1 error,code=%d\n",sqlca.sqlcode);
    return -1;
  }
  printf("ok\n");
  EXEC SQL DISCONNECT CURRENT;
  return 0; 
}
分享到:
评论

相关推荐

    mysql基于c语言编程教程

    mysql基于C语言开发的基础教程,适用于刚开始学习mysql的新手入门

    基于C语言的关系型数据库系统实现

    可以在这些基础上学习借鉴进行修改和扩展,实现其它功能。可下载学习借鉴,你会有所收获。 源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心...

    C语言设计的小型数据库系统。.zip

    可以在这些基础上学习借鉴进行修改和扩展,实现其它功能。可下载学习借鉴,你会有所收获。 源码是经过本地编译可运行的,下载完成之后配置相应环境即可使用。源码功能都是经过老师肯定的,都能满足要求,有需要放心...

    二级C语言公共基础知识

    最新二级公共基础知识填空40题+80选择题 (1) 算法的复杂度主要包括______复杂度和空间复杂度。 答:时间 (2) 数据的逻辑结构在计算机存储空间中的存放形式称为数据的______。 答:模式#逻辑模式#概念模式 (3) 若...

    基于C语言实现内存型数据库(kv存储).zip

    可以在这些基础上学习借鉴进行修改和扩展,实现其它功能。可下载学习借鉴,你会有所收获。 项目资源具有较高的学习借鉴价值,也可直接拿来修改复现。可以在这些基础上学习借鉴进行修改和扩展,实现其它功能。可下载...

    C语言和其他编程语言相比有什么优点,并举例说明C语言编写代码的过程.docx

    由于其高效性和广泛应用的情况,它在操作系统、嵌入式系统、游戏开发、网络编程、数据库等领域被广泛使用。 一个最显著的优点是C语言可以直接操作内存和硬件,这使得它成为编写高性能代码的理想选择。在其他语言中,...

    《C语言高级编程与实例剖析》源码

    6.2 Winsock编程基础 230 6.2.1 Winsock基本概念 230 6.2.2 Winsock基本API 230 6.2.3 关于Winsock的异步模式 234 6.3 Cscoket编程技术 238 6.4 串口编程 238 6.4.1 概念 239 6.4.2 串行接口...

    C语言基础面试题(08-网络编程).docx

    网络编程最主要的工作就是在发送端把信息通过规定好的协议进行组装包,在接收端按照规定好的协议把包进行解析,从而提取出对应的信息,达到通信的目的。中间最主要的就是数据包的组装,数据包的过滤,数据包的捕获,...

    C#2012数据库编程入门经典 第5版_13377848

    C# 2012数据库编程入门经典(第5版) 就是一本帮助具有C语言基础的程序员快速掌握数据库编程知识的书。书中包括了关系数据库的原理和用法,AD0.NET等常见的数据访问技术,以及丰富的T-SQL和C≠范例。总之,本书介绍了...

    c语言c++项目源代码_c语言图书管理系统源码.rar

    本资源提供了一个基于C语言的图书管理系统源码,旨在帮助读者学习和实践C语言编程的同时,掌握基本的数据库管理技能。系统采用结构化的设计方法,实现了图书信息的增删改查等基本功能,并提供了用户友好的界面和操作...

    数据库学习基础之名词解释

    在数据库画板中可以显示数据库中的所有数据表(即使不是用PowerBuilder创建的表),创建数据表,修改表的定义等数据表是数据库中一个非常重要的对象,是其他对象的基础。没有数据表,关键字、主键、索引等也就...

    C语言编程入门100题(实战编程)

    《C语言编程入门100题》实战编程,由WangTeacher精心制作,14+年专业程序员,精通多门编程语言,多年系统架构设计经验,从事网络安全行业,项目数过100,代码量过100W。 该课程将录制C语言入门编程100道编程题目,零...

    《精通LINUX C编程》书中源代码

    本书内容主要包括Linux基础知识介绍,Linux下的C语言编译器、调试器和程序维护工具的使用方法,Linux下通过c语言进行文件操作和目录操作的方法,标准I/O库函数,进程概念、进程操作以及进程间通信的方法,线程操作,...

    数据库原理及程序设计.doc

    数据库原理及程序设计 课程编号:16070011 课程名称:数据库原理及程序设计 学分:3 总学时:48 实验学时: 14 课内上机学时:14 先修课程要求:计算机文化基础,计算机实践(两周),C语言程序设计,C语言程序设 计...

    linux c编程

    《精通Linux C编程》内容主要包括Linux基础知识介绍,Linux下的C语言编译器、调试器和程序维护工具的使用方法,Linux下通过C语言进行文件操作和目录操作的方法,标准I/O库函数,进程概念、进程操作以及进程间通信的...

    北邮 数据库系统原理(SQL Server版) 实验四

    2.利用C语言(或其它支持ODBC接口的高级程序设计语言)编程实现简单的数据库应用程序,掌握基于ODBC的数据库访问的基本原理和方法。 3.尝试使用SQL Server上的工具以特定格式导出数据,初步了解现代程序设计辅助工具...

    车票管理系统c语言

     随着计算机技术的发展,可视编程技术占有了... 此次车票管理系统的开发目的是使我们用面向对象的方式来思考和解决问题的能力,并且可以掌握字符数组的使用、字符指针的使用、数据库的设计和文件使用以及C语言语法。

    北邮大三数据库实验四数据库接口实验.docx

    2、以实验二建立的学生数据库为基础,编写 C语言(或其它支持ODBC接口的高级程序设计语言) 数据库应用程序,按照如下步骤访问数据库 Step1. ODBC初始化,为ODBC分配环境句柄 Step2. 建立应用程序与ODBC

    毕业论文-基于Delphi开发的c语言学习系统设计与实现

    本系统在学习数据库的基础上,灵活运用数据库开 发软件 Delphi 和数据库管理软件 SQLServer ,开发出能供教学使用的 C语言学习系 统,以方便教学。本系统可供学生使用,学生可以通过使用本系统,巩固 C语言基础 知识...

Global site tag (gtag.js) - Google Analytics