简单的数据库操作程序

   今天, 我写了个操作数据库并显示出来的程序。

我发现虽然与C#不同, 但都是连接数据库, 然后SQL查询得到结果, 再对结果进行操作。

  其次,  由于使用的是mysql提供的第三方的独立函数库,  所以在编译程序前, 要加上头文件的位置, 以及库文件的位置,  我的分别是-I/usr/include/mysql -L/usr/lib/mysql -lmysqlclientmysql, 第三个是在编译时需加入「-lmysqlclient」, 来告诉编译器我要用的库文件名字。 (下一行的这个链接详细的解释-I, -L, 以及-l 含义 http://www.cnblogs.com/benio/archive/2010/10/25/1860394.html )

   另外, MYSQL查询的结果都是字符串, 如果要获取数字,还要将其转换。

   最后, 贴出结果和代码。

  

  

  

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <mysql.h>
 4 void
 5 main ( void )
 6 {
 7         MYSQL the_conn;
 8         MYSQL_RES *mysql_result;
 9         MYSQL_ROW mysql_row;
10         int query_row;
11         int query_col;
12         int r,c;
13
14         /*
15         ** 获取本次连接的句柄
16         */
17         if( mysql_init( &the_conn ) == NULL ){
18                 fprintf( stdout, "Error at mysql_init\n" );
19                 exit( EXIT_FAILURE );
20         }
21
22         /*
23         ** 向mysql请求连接
24         */
25         if( mysql_real_connect( &the_conn, "localhost", "root", "iiiiii", "my_db", MYSQL_PORT, NULL, 0 ) == NULL ){
26                 fprintf( stdout, "Error at mysql_real_connect\n" );
27                 exit( EXIT_FAILURE );
28         }
29
30         /*
31         ** 操作数据库
32         */
33         if( mysql_query( &the_conn, "SELECT * FROM student_info" ) != 0 ){
34                 fprintf( stdout, "Fail at query\n" );
35                 exit( EXIT_FAILURE );
36         }
37         fprintf( stdout, "Succeed at query\n" );
38
39
40         /*
41         ** 获取查询结果
42         */
43         mysql_result = mysql_store_result( &the_conn );
44         query_row = mysql_num_rows( mysql_result );
45         query_col = mysql_num_fields( mysql_result );
46
47
48         fprintf( stdout, "Succeed at the connect!\n" );
49
50
51         /*
52         ** 显示出来
53         */
54         for( r = 0; r < query_row; r ++ ){
55                 mysql_row = mysql_fetch_row( mysql_result );
56                 fprintf( stdout, "学号:%s\t姓名:%s\t年龄:%s\n", mysql_row [0], mysql_row [1], mysql_row [2] );
57         }
58
59
60         /*
61         ** 释放掉mysql_result
62         */
63         mysql_free_result( mysql_result );
64
65         /*
66         ** 关闭mysql连接
67         */
68         mysql_close( &the_conn );
69         exit( EXIT_SUCCESS );
70 }

linux C mysql

时间: 2024-10-13 07:32:12

简单的数据库操作程序的相关文章

PHP实现的一个简单的数据库操作类

PHP实现的一个简单的数据库操作类 实现的功能: - 在实例化的时候能设置连接字符集 - 在实例化的时候能连接数据库 - 在实例化的时候能选择默认数据库 - 销毁对象时关闭数据库 代码如下: <?php // 数据库操作类MySQLDB class MySQLDB { // 声明属性 private $server; private $username; private $password; public $default_db; public $link; // 声明构造函数 public f

iOS 中级数据持久化——简单的数据库(Sqlite3)

sqlite是嵌入式的和轻量级的sql数据库.sqlite是由c实现的.广泛用于包括浏览器(支持html5的大部分浏览器,ie除外).ios.android以及一些便携需求的小型web应用系统. 数据库无非就是增,删,改,查四种.除了查询以为,其他的三种方法比较类似 //使用数据库之前,打开数据库 - (void)openDB { if (db != nil) { return; } //数据库存储在沙河中的caches文件夹下 NSString * cachesPath = [NSSearch

最简单的数据库“范式”教程

既然都叫最简单的数据库"范式"教程,我觉得它一定要满足这个要求:看完这篇博客,你一定会明白数据库的"范式"和那些诸如"完全函数依赖","部分函数依赖","传递函数依赖"等烦人的概念,前提是你得跟着我的思路认真的读完它,好,准备好你的半个小时了吗?我们开始. 目录 什么是范式? 贯穿全文的一个例子. 第一范式(1NF) 几个重要的概念. 第二范式(2NF) 第三范式(3NF) BC范式(BCNF) 第四范式(

java简单的数据库查询(SQLServer数据库)

1.数据库链接类 1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.SQLException; 4 5 public class DBHelper { 6 /** 7 * 获取数据库链接 8 * 9 * @return 数据库链接 10 */ 11 public static Connection getConnection() { 12 Connection conn = null;

PHP实现的一个简单的数据库操作类(修改版)

PHP实现的一个简单的数据库操作类 实现的功能: - 在实例化的时候能设置连接字符集 - 在实例化的时候能连接数据库 - 在实例化的时候能选择默认数据库 - 销毁对象时关闭数据库 代码如下: <?php // 数据库操作类MySQLDB class MySQLDB { // 声明属性 private $server; private $port; private $username; private $password; public $default_db; private $charset;

java实现简单的数据库的增删查改,并布局交互界面

一.系统简介 1.1.简介  本系统提供了学生信息管理中常见的基本功能,主要包括管理员.管理员的主要功能有对学生信息进行增加.删除.修改.查找等操作,对信息进行管理,对信息进行修改.查找等操作. 二.功能设计 2.1  需求分析 21世纪是信息化时代,信息化已更快捷更方便为目标来融入各行各业.学校也不例外.当前,我国的学校正在加紧实施信息化建设,其中学生信息管理是相对重要的 一部分. 目前,社会上信息管理系统发展飞快,各个企事业单位都引入了信息化管理软件来管理自己日益增长的各种信息,学生信息管理

Django_简单的数据库交互案例

https://www.jianshu.com/p/bd0af02e59ba 一.页面展示 做一个简单的数据库交换的练习案例 页面.png 二.创建mysql 表 (1)创建django (2)创建app文件python mange.py startapp cmdb (3)创建数据库,在project同名的配置的 init.py文件中配置mysql连接 import pymysql pymysql.install_as_MySQLdb() (4)在setting.py 中配置mysql 连接,找

Mybatis实现简单的数据库增删改查操作

Mybatis实现简单的数据库增删改查操作 框架:mybatis(3.5.2) 数据库:mysql 工具:idea 1.新建一个maven项目,在pom文件中添加mybatis依赖及MySQL依赖 <!-- mybatis核心依赖 --> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId&g

solr 简单搭建 数据库数据同步(待续)

原来在别的公司负责过文档检索模块的维护(意思就是不是俺开发的啦).所以就稍微接触和研究了下文档检索. 文档检索其实是全文检索,是通过一种技术把N多文档进行一定规律的切割归类,然后创建易于搜索的索引式文件,然后搜索具有某些规律的文档时,能够通过快速定位索引,然后根据索引提供的信息精确定位到文档从而实现迅速找到文档.这个文档一般成为条目. 上家公司的时候使用的是Lucene加上Zoie实现的.lucene是apache下的开源项目,不过并不是全文检索的实现,而是一个全文检索的引擎,是一个架构,是其他