读书人

C++ Builder 数据库编程解决办法

发布时间: 2012-03-17 19:06:27 作者: rapoo

C++ Builder 数据库编程
从来没接触过数据库编程,现在想学学 C++ Builder 数据库编,请各位给点建议,或者推荐点参考资料,基础的最好

[解决办法]
http://www.ccrun.com/view.asp?id=514

[解决办法]

探讨
http://www.ccrun.com/view.asp?id=514


[解决办法]
BCB有自带的DEMO,都很不错,比如“\Borland\CBuilder6\Examples\Ado”
[解决办法]
咦这些小红花又是什么东东?
[解决办法]
搞数据库开发,如果你弄界面过多,比较复杂劝你莫用BCB,因为到后来你会发现编译慢....还有...
用D吧,快多了...
[解决办法]
探讨
搞数据库开发,如果你弄界面过多,比较复杂劝你莫用BCB,因为到后来你会发现编译慢....还有...
用D吧,快多了...

[解决办法]
探讨
搞数据库开发,如果你弄界面过多,比较复杂劝你莫用BCB,因为到后来你会发现编译慢....还有...
用D吧,快多了...

[解决办法]
C/C++ code
//---------------------------------------#include <vcl.h>#pragma hdrstop#include "Mainform.h"//---------------------------------------#pragma package(smart_init)#pragma resource "*.dfm"TForm1 *Form1;//---------------------------------------__fastcall TForm1::TForm1(TComponent* Owner)        : TForm(Owner){}//---------------------------------------#include <DB.hpp>#include <DBTables.hpp>void __fastcall TForm1::BitBtn1Click(TObject *Sender){ //创建数据库  try  {   TTable* newTable = new TTable(this);   newTable->Active = false;   newTable->DatabaseName =""; //数据库文件存放位置   newTable->TableName ="MyDatabase.db"; //数据库文件名   newTable->TableType = ttParadox;   //数据库类型   //定义数据表字段类型   newTable->FieldDefs->Clear();   newTable->FieldDefs->Add("PID",ftInteger,0,true); //定义字段、类型、长度等   newTable->FieldDefs->Add("No",ftString,50,false);   newTable->FieldDefs->Add("Name",ftString,50,false);   newTable->FieldDefs->Add("Age",ftString,50,false);   newTable->FieldDefs->Add("Phone",ftString,50,false);   newTable->FieldDefs->Add("Address",ftString,50,false);   newTable->FieldDefs->Add("IDCode",ftString,50,false);   newTable->IndexDefs->Add("","PID", TIndexOptions() <<ixPrimary << ixUnique); //定义关键字   newTable->CreateTable(); //创建数据表   delete newTable;  }  catch(...)  {     MessageBox(Handle,"创建数据库操作失败!","信息提示",MB_OK);     return;  }  MessageBox(Handle,"创建数据库操作成功!","信息提示",MB_OK);}//---------------------------------------void __fastcall TForm1::BitBtn2Click(TObject *Sender){ //增加数据库记录 try {  Table1->DatabaseName="";  Table1->TableName="MyDatabase.db";  Table1->Active=true;  Table1->Last();  int iPID=1;  if(Table1->IsEmpty())     iPID=1;  else    iPID=Table1->FieldValues["PID"]+1;  Table1->Append();  Table1->FieldValues["PID"]=iPID;  Table1->FieldValues["No"]=this->Edit1->Text;  Table1->FieldValues["Name"]=this->Edit2->Text;  Table1->FieldValues["Age"]=this->Edit3->Text;  Table1->FieldValues["Phone"]=this->Edit4->Text;  Table1->FieldValues["Address"]=this->Edit5->Text;  Table1->FieldValues["IDCode"]=this->Edit6->Text;  Table1->ApplyUpdates();  Table1->CommitUpdates(); } catch(...) {    MessageBox(Handle,"增加数据库记录操作失败!","信息提示",MB_OK);    return; } MessageBox(Handle,"增加数据库记录操作成功!","信息提示",MB_OK);}//---------------------------------------void __fastcall TForm1::BitBtn3Click(TObject *Sender){//查询数据库记录  AnsiString StrName=InputBox("输入查询条件","请输入查询姓名:         ","");  Table1->DatabaseName="";  Table1->TableName="MyDatabase.db";  Table1->Close();  Table1->Filter="Name=\'";  Table1->Filter+=StrName;  Table1->Filter+="\'";  Table1->Filtered=true;  Table1->Active = true;  if(Table1->IsEmpty())  {   this->Edit1->Text="";   this->Edit2->Text="";   this->Edit3->Text="";   this->Edit4->Text="";   this->Edit5->Text="";   this->Edit6->Text="";   MessageBox(Handle,"没有找到!","信息提示",MB_OK);  }  else  {    this->Edit1->Text=Table1->FieldValues["No"];    this->Edit2->Text=Table1->FieldValues["Name"];    this->Edit3->Text=Table1->FieldValues["Age"];    this->Edit4->Text=Table1->FieldValues["Phone"];    this->Edit5->Text=Table1->FieldValues["Address"];    this->Edit6->Text=Table1->FieldValues["IDCode"];  }}//---------------------------------------void __fastcall TForm1::BitBtn4Click(TObject *Sender){//删除数据库记录;   if(MessageBox(Handle,"是否确认删除当前数据库记录?","信息提示",MB_YESNO)==IDNO)      return;   try   {    this->Table1->Delete();    this->Table1->CommitUpdates();    this->Table1->ApplyUpdates();   }   catch(...)   {    MessageBox(Handle,"请首先创建数据库!","信息提示",MB_OK);    return;   }  MessageBox(Handle,"删除数据库记录操作成功!","信息提示",MB_OK);}//---------------------------------------void __fastcall TForm1::BitBtn5Click(TObject *Sender){   this->Close();}//--------------------------------------- 

读书人网 >C++ Builder

热点推荐