vc6.0+firebird用过的请指导一下

wgefcel 2013-05-19 04:51:21
#include <iostream>
#define IBPP_WINDOWS
#include "core/ibpp.h"
#include "core/all_in_one.cpp"
using namespace std;

//数据库名,根据你的情况更改。
const char* g_szDBName = "d:\\test.fdb";
//服务器名,针对服务器版本。对于嵌入式,它应该是""
const char* g_szServerName = "";

//这里的用户名和密码是FireBird默认值,对于服务器版,用你自己的密码
//对于嵌入式,就是这个(FireBird嵌入式版没有加密功能)。
const char* g_szUserName = "SYSDBA";
const char* g_szPassword = "masterkey";

void main()
{
DeleteFile(g_szDBName);
IBPP::Database db = IBPP::DatabaseFactory(g_szServerName,
g_szDBName,
g_szUserName,
g_szPassword);
//建立数据库
db->Create(3);
//连接数据库
db->Connect();

//编译通过,执行到这这一句出错
IBPP::Transaction tr = IBPP::TransactionFactory(db);

tr->Start();
try{
IBPP::Statement st = IBPP::StatementFactory(db,tr);
//建立数据表
st->Execute(
"CREATE TABLE TESTTABLE("
" ID INTEGER NOT NULL PRIMARY KEY,"
" RNO VARCHAR(10) NOT NULL UNIQUE,"
" SHIFT VARCHAR(5) NOT NULL"
" CHECK(SHIFT IN('A','B','C','D')),"
" LINE CHAR(20) NOT NULL,"
" SL COMPUTED BY(SHIFT||'.'||LINE),"
" EMP CHAR(20)"
" )"
);
tr->CommitRetain();
//插入数据,华安和小强
st->Execute(
"INSERT INTO TESTTABLE(ID,RNO,SHIFT,LINE,EMP)"
"VALUES(1,'B9527','B','DAZHA','Hua,An')"
);
st->Execute(
"INSERT INTO TESTTABLE(ID,RNO,SHIFT,LINE,EMP)"
"VALUES(2,'B9528','B','ZHUANGSI','Xiao,Qiang')"
);

tr->CommitRetain();
//插入数据,石榴和祝枝山
st->Execute(
"INSERT INTO TESTTABLE(ID,RNO,SHIFT,LINE,EMP)"
"VALUES(3,'B9525','A','DAZHA','Shi,Liu')"
);
//SHIFT只能是ABCD,看看写X会有什么情况发生
st->Execute(
"INSERT INTO TESTTABLE(ID,RNO,SHIFT,LINE,EMP)"
"VALUES(4,'B9526','X','DAZHA','Zhu,ZiShang')"
);
tr->Commit();
}
catch(IBPP::SQLException &e){
cerr << e.what() << endl;
tr->Rollback();
}

tr->Start();
try{
IBPP::Statement st = IBPP::StatementFactory(db,tr);
st->Execute("SELECT RNO, EMP FROM TESTTABLE");
//显示SELECT得到的数据
while(st->Fetch())
{
string rno, emp;
st->Get("RNO",rno);
st->Get("EMP",emp);
cout << "RNO:" << rno << " EMP:" << emp << endl;
}
tr->Commit();
}
catch(IBPP::SQLException &e){
cerr << e.what() << endl;
tr->Rollback();
}
}


是什么原因,如何解决?
...全文
128 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiruixue123 2013-09-17
  • 打赏
  • 举报
回复
我也是到这一步出错 不知道为什么? 希望楼主搞定了 告诉下 谢谢 不胜感激

2,209

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 其他数据库
社区管理员
  • 其他数据库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧