问一个数据库的问题???????急~~~~~~

qlqqlq1978 2003-10-11 08:40:07
我想用程序产生好多8位的16进制数序列然后一个个的加到ACESS数据库中,问如何实现,谢谢各位高手.
...全文
36 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
gyj_china 2003-10-12
  • 打赏
  • 举报
回复
把这句pointer.cat_sprintf("%X",random(16));

换成IntToHex((ceil)(random(16)));
qlqqlq1978 2003-10-12
  • 打赏
  • 举报
回复
代码
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString pointer;
ADOTable1->Open() ;
for(int j=0;j<StrToInt(Edit2->Text);j++)
{
for(int i=0;i<StrToInt(Edit1->Text);i++)
{
pointer.cat_sprintf("%X",random(16));
}
ADOTable1->Insert() ;
ADOTable1->FieldByName("K1")->AsString=pointer;
ADOTable1->Post() ;
pointer="";
}

}

当我在Edit1和Edit2中输入两数后,按下Button1出现以下错误.

Project Project1.exe raised exception class EVariantTypeCastError with message 'Could not convert variant of type (Null) into type (String)'.Process stopped.Use Step or Run to continue.
ljianq 2003-10-11
  • 打赏
  • 举报
回复
说说是什么错误?
qlqqlq1978 2003-10-11
  • 打赏
  • 举报
回复
同样有错,5555555555555
qlqqlq1978 2003-10-11
  • 打赏
  • 举报
回复
也不行啊,我已经用过了.
ljianq 2003-10-11
  • 打赏
  • 举报
回复
把这一句:ADOTable1->FieldByName("K1")->AsString=pointer.c_str();
改为:ADOTable1->FieldByName("K1")->AsString=pointer;
ljianq 2003-10-11
  • 打赏
  • 举报
回复
这一句有问题:pointer.c_str()="";

改为:pointer=“”;
qlqqlq1978 2003-10-11
  • 打赏
  • 举报
回复
楼上兄弟讲详细一点可以吗?
我没用过数据库,BCB也是个新手呀,谢谢帮忙.
qlqqlq1978 2003-10-11
  • 打赏
  • 举报
回复
我不知道怎么加入到数据库中啊,老有错,我以前没用过啊.

void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString pointer;
{
ADOTable1->Open() ;
for(int j=0;j<StrToInt(Edit2->Text);j++)
{
for(int i=0;i<StrToInt(Edit1->Text);i++)
{
pointer.cat_sprintf("%X",random(16));
}
ADOTable1->Insert() ;
ADOTable1->FieldByName("K1")->AsString=pointer.c_str();
ADOTable1->Post() ;
pointer.c_str()="";
}

}

}
我也不知道哪错了
谢谢帮忙看一下
CCLIS 2003-10-11
  • 打赏
  • 举报
回复
用BLOB字段来进行存取或转换成ASCII字符再存入数据库。
whitetiger8 2003-10-11
  • 打赏
  • 举报
回复
当然用循环for来做了.具体的还是自己想想吧对你有提高了。

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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