当前位置: 首页 > 图文教程 > 开发语言 > VC++ > VC++:小编谈用ODBC创建表
下编要和大家分享的是用ODBC创建表,大家知道由于ODBC类不支持DDL,所以只有通过ODBC API来创建表。程序需要调用Cdatabase :: ExecuteSQL来直接执行SQL语句。
下面小编给出了创建表的一个例子,该程序先自动注册了一个名为MYDB的FoxPro 2.5数据源,然后创建了一个名为OFFICES的表(OFFICES.DBF文件),在这个表中有OfficeID和OfficeName两个TEXT型字段,长度分别为4和10个字节。注意,如果要使用这段代码,则需要包含afxdb.h和odbcinst.h。
#include “afxdb.h”
#include "odbcinst.h"
. . .
CDatabase db;
if(!SQLConfigDataSource(NULL,ODBC_ADD_DSN, "Microsoft FoxPro Driver (*.dbf)",
"DSN=MYDB\0"
"DefaultDir=c:\\mydir\0"
"FIL=FoxPro 2.5\0"
"DriverId=280\0"))
{
AfxMessageBox("Can't add DSN!");
return ;
}
TRY
{
db.Open("MYDB");
db.ExecuteSQL("CREATE TABLE OFFICES (OfficeID TEXT(4)"
",OfficeName TEXT(10))"); }
CATCH(CDBException, e)
{
AfxMessageBox(e->m_strError);
return;
}
END_CATCH
ExecuteSQL执行了一个实实在在的SQL语句CREATE来创建表,看来用户应该找本SQL方面的书研究研究。要注意一个数据库中的表名必须是唯一的,如果要创建的表已经存在,则ExecuteSQL会产生一个异常。希望小编的总结能够带给大家帮助。
评论 (0) All