#include <afxdb.h>
/* 连接数据库 */
CDatabase db
BOOL bRtn
try {
bRtn = db.OpenEx("DSN=数据源名UID=sa", CDatabase::noOdbcDialog)
}catch (CDBException *pDBEx) {
pDBEx->ReportError()
}catch (CMemoryException *pMemEx) {
pMemEx->ReportError()
}
if (!bRtn)
printf("连接数据库失败!")
/* *** 作结束后,关闭数据库 */
db.Close()
添加记录 *** 作
#include <afxdb.h>
CDatabase db
BOOL bRtn
CString sql
/* 1、连接数据库,见(1) */
/* 2、生成INSERT语句,赋给sql,例如: */
sql = "insert into student_table (s_sID, s_sName, s_sAge) values (‘001’, ‘ZhangSan’, 20)"
/* 3、往数据库中添加纪录 */
try {
db.ExecuteSQL(sql)
} catch (CDBException *pDBEx) {
pDBEx->ReportError()
}
/* 4、关闭数据库 */
db.Close()
删除记录 *** 作
#include <afxdb.h>
CDatabase db
BOOL bRtn
CString sql
/* 1、连接数据库,见(1) */
/* 2、生成DELETE语句,赋给sql,例如: */
sql = "delete from student_table where s_SID =’001’"
/* 3、从数据库中删除纪录 */
try {
db.ExecuteSQL(sql)
} catch (CDBException *pDBEx) {
pDBEx->ReportError()
}
/* 4、关闭数据库 */
db.Close()
修改记录 *** 作
#include <afxdb.h>
CDatabase db
BOOL bRtn
CString sql
/* 1、连接数据库,见(1) */
/* 2、生成UPDATE语句,赋给sql,例如: */
sql = "update from student_table set s_sName=‘LiSi’,s_sAge=21 where s_SID =‘001’"
/* 3、更新数据库中的纪录 */
try {
db.ExecuteSQL(sql)
} catch (CDBException *pDBEx) {
pDBEx->ReportError()
}
/* 4、关闭数据库 */
db.Close()
查询、统计 *** 作
#include <myRecordset.h>
CDatabase db
BOOL bRtn
CString sql
/* 1、连接数据库,见(1) */
/* 2、生成查询/统计语句,赋给sql,例如: */
sql = "Select * From student_table where s_sAge=20"
/* 3、打开记录集,查询/统计 */
CMyRecordset rs(&db)
try {
bRtn = rs.Open(CRecordset::snapshot,sql)
} catch(CDBException *pDBEx) {
pDBEx->ReportError()
} catch(CMemoryException *pMemEx) {
pMemEx->ReportError()
}
if(!bRtn) {
AfxMessageBox("Query table failed!",MB_OK|MB_ICONERROR)
return
}
/* 4、逐条获取查询结果 */
for(rs.MoveFirst()!rs.IsEOF()rs.MoveNext()) {
// TODO: Add code here
}
/* 5、关闭记录集、数据库 */
rs.Close()
db.Close()
注:对连接查询,可以先创建视图,再对视图进行查询。
首先在控制器中读取数据库中的数据,把相应的变量绑定到相应的参数上,再分配给相应的模板,然后在模板中遍历即可。比如:
控制器中代码:
<?php
class FormController extends Controller {
public function insert(){
$form = M('table')
$result = $form->select()
$this->assign('data',$result)
$this->display('show.html')
}
}
?>
模板文件代码:
<foreach name="data" item="vo">
{$key}:{$vo.id}--{$vo.title}<br>
</foreach>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)