导读:为了将MySQL数据库集成到用户的应用程序中去,MySQL数据库系统为用户提供了一个C语言的API库和一个解释器:w3—msql,通过C语言的API库,你可以将MySQL集成到用标准C语言开发的应用程序中去。而有了w3—msql这个工具,你可以通过编写类C语言脚本语言将mSQL数据库嵌入到html文件中,下面举一程序实例进行说明。
下面的程序片段要完成的功能是将浏览器页面上提交上来的用户名和口令与表registered—user中的用户名和口令相比较,如果用户名和口令正确,将在页面上显示注册成功的信息,否则提示用户注册失败。采用C语言实现的方法如下所示:
以下为引用的内容:
voidmain(intargc,charargv[])
{
//解析用户提交上来的用户名和口令并保存到变量username和password—usr中
…
//创建与本机的mSQL数据库系统的套接字
sock=msqlConnect(NULL);
//选择数据库test
if(msqlSelectDB(sock,″test″)==-1)
{
//输出数据库选择失败信息
…
}else
{
sprintf(buff,″select??fromregistered—userwhereusername=′%s′″,username);
//以username查询表registered—user中的记录
if(msqlQuery(sock,buff)==-1)
{
//输出查询失败的错误信息
…
}
//将查询结果保存到m—result类型的指针变量res
res=msqlStoreResult();
//得到查询结果的记录数
numrow=msqlNumRows(res);
if(numrow==1)
{
//得到当前记录,类型为:m_row
row=msqlFetchRow(res);
//将保存在表中的口令和用户输入的口令相比较
if(!strcmp(password_ur,row[2]))
{
//输出注册成功信息
}else
{
//输出口令不对的提示信息
}
}else
{
//输出用户名输入出错信息
}
}
//释放查询结果的指针
msqlFreeResult(res);
//关闭数据库系统的套接字
msqlClose(sock);
return;
}
以上的例子包含有将MySQL集成到C语言程序中用到的主要函数,这些函数基本能满足应用程序的需要。如果采用w3—msql能解释的类C语言嵌入到html文件中,可以达到同样的功能。与C语言编写的CGI程序需要编译不同,脚本语言不需要编译,该脚本由MySQL数据库系统提供的CGI程序w3—msql来解释执行。脚本中主要的代码段如下所示:
以下为引用的内容:
〈HTML〉
〈HEAD〉
〈METAHTTP-EQUIV=″Content-Type″CONTENT=″text/html;charset=iso-8859-1″〉
〈/HEAD〉
〈bodyTEXT=″#000000″BACKGROUND=″/icon/back.jpg″topmargin=″10″〉
〈!
//解析用户提交上来的用户名和口令并
保存到变量username和password—usr中
…
//创建与本机的mSQL数据库系统的套接字
$sock=msqlConnect();
//选择数据库test
if(msqlSelectDB($sock,″test″)==-1)
{
//输出数据库选择失败信息
fatal(″错误:无法与数据库连接n″);
}else
{
$buff=″select??fromregistered—userwhereusername=′$username′″;
//以username查询表registered—user中的记录
if(msqlQuery($sock,$buff)==-1)
{
//输出查询失败的错误信息
fatal(″查询错误n″);
}
//将查询出来的结果保存到查询结果的指针变量res中
$res=msqlStoreResult();
//得到查询结果的记录数目
$numrow=msqlNumRows($res);
if($numrow==1)
{
//得到当前记录的指针
$row=msqlFetchRow($res);
//将保存在表中的口令和用户输入的口令相比较
if(!strcmp($password—ur,$row[2]))
{
//输出注册成功信息
echo(″〈center〉注册成功〈/center〉″);
}else
{
//输出口令不对的提示信息
echo(″〈center〉您输入的口令不正确〈/center〉″);
}
}else
{
//输出用户名输入出错信息
echo(″〈center〉您输入的用户名不正确〈/center〉″);
}
}
//释放查询结果占用的内存
msqlFreeResult($res);
//关闭数据库系统的套接字
msqlClose($sock);
〉
〈/BODY〉
〈/HTML〉
以上介绍了在Linux下以MySQL数据库系统作为后台数据库开发应用系统的方法。有了这些基本的方法,我们就能开发出各种基于mSQL数据库的应用系统。上文给出了Linux下MySQL数据库开发技术的详细过程,希望大家能够从中收获有用的知识,上文中内容仅供大家参考。
【编辑推荐】