社区
C语言
帖子详情
C小菜鸟请问高手C语言怎么操作数据库?谁能提供代码(有注释的)
tometoo
2007-08-16 05:23:18
有2个问题,小弟先谢谢了
1. 请问C语言怎么操作数据库?谁能提供代码(有注释的),
2. 做这样的操作用TC写还是用VC写好?
...全文
514
15
打赏
收藏
C小菜鸟请问高手C语言怎么操作数据库?谁能提供代码(有注释的)
有2个问题,小弟先谢谢了 1. 请问C语言怎么操作数据库?谁能提供代码(有注释的), 2. 做这样的操作用TC写还是用VC写好?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aozhi
2008-07-23
打赏
举报
回复
柳下惠?男的?
柳下惠,姓展,名禽,采食柳下,谥号惠。
薛定谔之死猫
2008-07-23
打赏
举报
回复
ODBJ或者数据库特有的预编译C,如Oracle的Pro*C,或专门的C接口,如OCI,Mysql也有自己的C编程API,TC已经是古老的玩具,别再弄它了
aozhi
2008-07-23
打赏
举报
回复
哦,是没有预编译啊。
如果你装了oracle,直接用
proc iname=预编译前文件 oname=预编译后文件
进行预编译。
然后把预编译后的文件放在vc里编译即可。
aozhi
2008-07-23
打赏
举报
回复
[Quote=引用 9 楼 cypf2004 的回复:]
楼主,你编译过1楼的程序吗?我编译时怎么报错呢?
exec sql include sqlca;
这个语句无法编译通过。
[/Quote]
这是嵌入式SQL,意思是引入sql conmunication area。
如果你机器上安装过某些数据库(比如oracle)的时候,就会有一个sqlca.h的头文件。
进行嵌入式SQL编程必须引用它。
但小弟没用过C语言写过嵌入式SQL,所以不太清楚错在哪儿。
ly19850703
2008-07-23
打赏
举报
回复
还是用PROC写吧!不过个人感觉VC好些一点。
[Quote=引用 9 楼 cypf2004 的回复:]
楼主,你编译过1楼的程序吗?我编译时怎么报错呢?
exec sql include sqlca;
这个语句无法编译通过。
[/Quote]
需要用proc编译一下的。
cypf2004
2008-07-23
打赏
举报
回复
楼主,你编译过1楼的程序吗?我编译时怎么报错呢?
exec sql include sqlca;
这个语句无法编译通过。
lala_benben
2008-07-23
打赏
举报
回复
你要访问什么数据库。不同数据库接口不一样啊
wangtao641
2007-10-17
打赏
举报
回复
用ACCESS+VC怎样写呢???
laowang2
2007-10-16
打赏
举报
回复
up
oo_v_oo
2007-10-16
打赏
举报
回复
推荐使用MySQL 5.0(2 楼)
wangtao641
2007-10-16
打赏
举报
回复
wlim1982 大虾,你的代码,在我的VC++中不执行,报错是'EXEC' : missing storage-class or type specifiers
EXEC没有定义:( 这是为什么????应该怎样解决这个问题啊??
借别人的帖子,向您请教,别介意。谢谢先。。。。
wlim1982
2007-08-16
打赏
举报
回复
嵌入SQL
连接到SAMPLE数据库,查询LASTNAME为JOHNSON的FIRSTNAME信息。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "util.h"
#include <sqlca.h>
EXEC SQL INCLUDE SQLCA; (1)
main()
{
EXEC SQL BEGIN DECLARE SECTION; (2)
char firstname[13];
char userid[9];
char passwd[19];
EXEC SQL END DECLARE SECTION;
EXEC SQL CONNECT TO sample; (3)
EXEC SQL SELECT FIRSTNME INTO :firstname (4)
FROM employee
WHERE LASTNAME = 'JOHNSON';(4)
printf( "First name = %s\n", firstname );
EXEC SQL CONNECT RESET; (5)
return 0;
}
上面是一个简单的静态嵌入SQL语句的应用程序。它包括了嵌入SQL的主要部分:
(1)中的include SQLCA语句定义并描述了SQLCA的结构。SQLCA用于应用程序和数据库之间的通讯,其中的SQLCODE返回SQL语句执行后的结果状态。
(2)在BEGIN DECLARE SECTION和END DECLARE SECTION之间定义了宿主变量。宿主变量可被SQL语句引用,也可以被C语言语句引用。它用于将程序中的数据通过SQL语句传给数据库管理器,或从数据库管理器接收查询的结果。在SQL语句中,主变量前均有“:”标志以示区别。
(3)在每次访问数据库之前必须做CONNECT操作,以连接到某一个数据库上。这时,应该保证数据库实例已经启动。
(4)是一条选择语句。它将表employee中的LASTNAME为“JOHNSON”的行数据的FIRSTNAME查出,并将它放在firstname变量中。该语句返回一个结果。可以通过游标返回多个结果。当然,也可以包含update、insert和delete语句。
(5)最后断开数据库的连接。
从上例看出,每条嵌入式SQL语句都用EXEC SQL开始,表明它是一条SQL语句。这也是告诉预编译器在EXEC SQL和“;”之间是嵌入SQL语句。如果一条嵌入式SQL语句占用多行,在C程序中可以用续行符“\”。
转自:jixingzhong
xlbdan
2007-08-16
打赏
举报
回复
应该用VC更好一些
Seu_why
2007-08-16
打赏
举报
回复
#include <stdio.h>
#include <stdlib.h>
#include "/usr/include/mysql/mysql.h"
#define DB_HOST_NAME "localhost"
#define DB_USER_NAME "you"
#define DB_USER_PWD "you"
#define DB_DBAS_NAME "yourdb"
int main(int argc, char *argv[])
{
MYSQL my_connection;
int res;
char * sqlstr = "select * from .....";
mysql_init(&my_connection);
if (mysql_real_connect(&my_connection, DB_HOST_NAME, DB_USER_NAME, DB_USER_PWD,DB_DBAS_NAME,0,NULL,CLIENT_FOUND_ROWS))
{
printf("Connection success\n");
res = mysql_query(&my_connection, sqlstr);
if (!res)
{
printf("Inserted %lu rows\n",(unsigned long)mysql_affected_rows(&my_connection));
/*里头的函数返回受表中影响的行数*/
}
else
{
//分别打印出错误代码及详细信息
fprintf(stderr, "Insert error %d: %s\n",mysql_errno(&my_connection),mysql_error(&my_connection));
}
mysql_close(&my_connection);
}
else
{
fprintf(stderr, "Connection failed\n");
if (mysql_errno(&my_connection))
{
fprintf(stderr, "Connection error %d: %s\n",mysql_errno(&my_connection),mysql_error(&my_connection));
}
}
return EXIT_SUCCESS;
}
linux下 c操作 mysql数据库
xlbdan
2007-08-16
打赏
举报
回复
C操作数据库,就用过嵌入在C语言中的SQL来实现.写一小段吧:
exec sql include sqlca;
int main()
{
EXEC SQL CONNECT TO "test";
EXEC SQL CREATE TABLE mylib
(B_NUM INT UNIQUE,B_NAME CHAR(9),T_NUM INT,I_NUM INT,U_NAME CHAR(9));
if(sqlca.sqlcode==0)
{
printf("create mylib successed\n");
}
else
printf("create mylib failed\n");
EXEC SQL INSERT INTO mylib VALUES(1,'C',10,10,NULL);
EXEC SQL INSERT INTO mylib VALUES(2,'C++',20,20,NULL);
EXEC SQL COMMIT;
EXEC SQL DISCONNECT CURRENT;
return 0;
}
~
Skynet框架之
菜鸟
手册
Skynet框架之
菜鸟
手册,有PDF和DOC格式的.
从入门到精通:
C语言
Linux编程指南
C语言
是一种通用的高级编程语言,由美国贝尔实验室的Dennis Ritchie在1972年至1973年间为了编写Unix
操作
系统而开发出来。
C语言
凭借其简洁、高效、跨平台等特点,成为了一种广泛应用的编程语言。
C语言
既具备高级语言的抽象能力,也具备低级语言的
操作
硬件的能力。同时,
C语言
的语法简单,易于学习,且具有很强的灵活性,适用于编写多种类型的软件。
C语言
还具有广泛的应用领域,包括系统软件、游戏开发、嵌入式开发、科学计算、图像处理、
数据库
管理等等。在Linux
操作
系统中,
C语言
是一种非常重要的编程语言。
c语言
(http://c.biancheng.net/view/1714.html)
目录 1、编程基础 1.1 通俗地理解什么是编程语言 1.2
C语言
究竟是一门怎样的语言? 1.3
C语言
是
菜鸟
和大神的分水岭 1.4 英语和数学不好,能学编程吗? 1.5 进制详解:二进制、八进制和十六进制 1.6 二进制和八进制、十六进制的转换 1.7 数据在内存中的存储(二进制形式存储) 1.8 载入内存,让程序运行起来 1.9 ASCII编码,将英文存储到计算机...
数据结构中的
C语言
编程基础
C语言
进行编程时一脸懵?对于数据结构中的数据类型不会定义?基本的算法不会写、记不住?来看一看这篇文章,提前根据考研的要求进行算法的编写,帮助你在考研时轻松拿分!
C语言
:从入门到进阶笔记(完整版)
本系列适合已经接触过
C语言
或对
C语言
有基本的了解的读者观看,适合用来复习巩固和夯实基础。共18大章,每个章节分为若干个小节,部分章节备有配套的练习,并且本系列附带了三套
C语言
笔试题以及答案详细解析。第一章由于字数原因,以贴链接的方式展示。由于作者水平有限、时间仓促紧迫,本教学有错误和不准确之处在所难免,本人也很想知道这些错误,恳望读者批评指正!从第一章博客的更新到最后一章共历时四个月,难免会有排版、
代码
风格、图标运用的不一致的地方,还请谅解。文章内有很多表情包,目的是让读者在阅读过程中减少枯燥,并且有些表情
C语言
70,033
社区成员
243,245
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章