6.7 客户机程序5—交互式查询程序 让我们把迄今为止研究的诸多内容整理一下,编写一个简单的交互式客户机程序。它的功能包括可以进入查询,用通用目标查询处理程序process_query 执行查询,并用前面研究过的显示格式process_result_set() 显示查询结果。 客户机程序5在某些方面与mysql 类似,虽然在几个特征上还是有所不同。客户机程序5在输入上有几个约束条件: ■ 每个输入行必须包括一个完整的查询。 ■ 查询不会以分号或‘ \ g’为终止。 ■ 不识别类似quit 的命令;而是用Control-D 结束程序。客户机程序5的编写几乎是完全微不足道的(不到1 0行的新代码)。客户机程序框架(client4.c)和写过的其他代码几乎提供了所需的每一件事,我们唯一要增加的是搜集输入行并执行它们的循环。为了建造客户机程序5,首先把客户机程序框架client4.c 拷贝到client5.c 中,然后把代码增加到process _ query( )、process_result_set() 和print_dashes() 中,最后在client5.c 的main( )中寻找标有下列字符的行: /* do the real work here */ 然后用下面的循环替换它:
(点击查看原图)
编译client5.c 产生client 5 . o ,将client5.c 与common.o和客户机库连接,生成客户机程序5,到此就全部完成了。您就拥有了一个可执行任意查询并显示结果的交互式MySQL 客户机程序。