2011-09-02 134 views
0

我正在CppBB6中构建一个应用程序,用于从/在数据库中读取/写入数据。从名为Students的表中,我想使用给定的索引号(Name和Index是表Student中的字段)提取学生的姓名,之后我想将该姓名放入String或AnsiString变量中。C++ Borland Builder 6 SQL查询

我使用这个查询来选择名称:

AnsiString query; 
Query1->Close(); 
Query1->UnPrepare(); 
Query1->SQL->Clear(); 
query="SELECT Name FROM Students where Index='" + Edit1->Text + "'"; 
Query1->SQL->Add(query); 
Query1->Prepare(); 
Query1->Open(); 

,这一切检查了罚款,但我怎么把这个名字的变量? :/

回答

2

我猜是这样

Edit1->Text = Query1->FieldByName("Name")->AsString; 

或者如果你真的只有一个字段和/或专有领域(一个或多个),那么指数

Edit1->Text = Query1->Fields[0]->AsString; 

而且肯白色建议在评论 - 人们应该真的使用参数化查询的安全和性能的原因,像

Query1->SQL->Add("SELECT Name FROM Students where Index = :idx"); 
Query1->Prepare(); 
Query1->ParamByName("idx")->AsString = Edit1->Text; 
+0

+1。您应该添加一个使用参数化查询而不是字符串连接的提及,就像添加一样。 :) –

+0

thnx,解决了我的问题:) – sikac

相关问题