Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->Linux程序设计 ->正文

锋线上的冲杀——论Linux数据库大比拚

来源: 作者: 时间:2007-04-11 点击: [收藏] [投稿]

把客户带入mSQL的

mSQL和Mysql C API 之间的差别非常非常小。这样, 甚至可能有一个自动变换器。主要的差别是:

mSQL 不存储连接数据块, 仅存一个数字(int bookstore)

一些 mSQL 函数不拿连接作为一个参数

mSQL 函数名字是Pascal风格(他们使用大写首字符而不是下划线)

方便的MONEY数据类型是一个有2个的十进制位的固定精度小数类型。为了使mSQL正确地在MONEY列中把分币(cent)存入整数数字里,我需要转换他们,强制到float,分离他们并且在add_new_book()函数中的sprintf语句格式化他们。

这是list_books(), 移植到 mSQL :

void 
list_books(void) 
{ 
int count; 
m_result *result; 
msqlQuery(bookstore, "SELECT ARTICLE_NO, 
AUTHOR_FIRST_NAMES,AUTHOR_LAST_NAMES, 
TITLE, ISBN, WHOLESALE_PRICE,
RETAIL_PRICE,COPIES_AVAILABLE FROM BOOK"); 
result = msqlStoreResult(); 
for(count = msqlNumRows(result); count > 0; count--) 
{ 
m_row record; 
record = msqlFetchRow(result); 
printf("\nArticle no. %s\n", record[0]); 
printf("%s, %s:\n", record[2], record[1]); 
printf(" %s (%s)\n", record[3], record[4]); 
printf("Bought at %s; selling at %s; %s copies available\n\n", 
record[5], record[6], record[7]); 
}; 
msqlFreeResult(result); 
}
 

mSQL的 C API文档可以在mSQL 手册里找到,它以PostScript和一个大的HTML文件与mSQL一起发行。



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:Linux入门普及读物 解读Linux编程库   下一篇:Linux系统套接字编程中存在的五个隐患

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号