C++ 从DB中选择客户端信息并存储到vector中
好的,所以我需要知道如何从21岁的数据库中选择所有人,并将他们的信息存储到一个向量中,这样我就可以在我的程序中将其呈现到一个列表中C++ 从DB中选择客户端信息并存储到vector中,c++,sql-server-2005,C++,Sql Server 2005,好的,所以我需要知道如何从21岁的数据库中选择所有人,并将他们的信息存储到一个向量中,这样我就可以在我的程序中将其呈现到一个列表中 SELECT Name, Age, State FROM ACCOUNT_DBF.dbo.CLIENTLIST Where Name=tom while( qry->Fetch() ) { Name = qry->GetInt("Name"); Age = qry->GetInt("Age");
SELECT Name, Age, State FROM ACCOUNT_DBF.dbo.CLIENTLIST Where Name=tom
while( qry->Fetch() )
{
Name = qry->GetInt("Name");
Age = qry->GetInt("Age");
State = qry->GetInt("State");
}
我有上面这样的东西来获取一个人的信息
我知道这对选择一个人的信息有效,但对于选择所有21岁的人,我不知道如何将其存储到一个向量中,在获取后我该怎么做我创建了以下结构
struct CURRENT_MEMBER
{
TCHAR Name[MAX_NAME];
int age;
int state;
};
我需要它像这样存储在向量中
汤姆2150
能够将所有客户端呈现到滚动列表框中
jane 21 15
max 21 25
Tom 21 50
sara 21 5
您需要使用数组。
更多信息。
如果您想要更具体的代码示例,请使用详细信息进行注释
CURRENT_MEMBER Members [MAX_MEMBER_COUNT];
for (int i=0; i<nMemberCount; i++)
{
Members[i].Name= <info from DB>;
Members[i].age= <info from DB>;
Members[i].state= <info from DB>;
}
当前成员[最大成员数];
对于(inti=0;i您是否尝试过类似的方法(如果您真的想使用向量)
公共类成员
{
TCHAR名称[最大名称];
智力年龄;
int状态;
//对于vector::push_返回工作状态(按值传递)
公共成员(施工成员和其他)
{
名称=新的TCHAR[最大名称];
对于(int i=0;i
vector yourVector=newvector();
while(qry->Fetch())
{
yourVector.push_back(新成员(qry->GetInt(“Name”),
qry->GetInt(“年龄”),qry->GetInt(“状态”);
}
<代码> >我如何找到Max成员MeCube计数?我是通过SQL或C++来做的吗?我不确定。that@420我假设你发明了MAX\u NAME
的值作为一个人名字的最大长度常量。MAX\u MEMBER\u COUNT
是一个类似的常量,你可以分配给你想要的任何东西:例如const int MAX\u MEMBER\u COUNT=50
或类似的内容。您只需确保像这样声明的数组的值是常量。如果您可以解释如何查找sql中返回的成员数量,我将检查此值作为答案statement@420另外,如果您需要能够在不知道数组(向量)的绝对长度的情况下执行此操作,然后有一种不同的方法,使用指针和动态内存分配来实现数组。在我为您链接的文章中有一个很好的代码示例。是的,我想选择所有21岁的成员,所以我不知道会找到多少
public class Member
{
TCHAR Name[MAX_NAME];
int age;
int state;
//for vector::push_back to work (pass by value)
public Member(const Member& other)
{
Name = new TCHAR[MAX_NAME];
for(int i = 0; i < MAX_NAME; i++)
{
Name[i] = other.Name[i];
}
age = other.age;
state = other.state;
}
public Member(TCHAR ar[],int a, int st)
{
Name = new TCHAR[MAX_NAME];
for(int i = 0; i < MAX_NAME; i++)
{
//careful!
Name[i] = ar[i];
}
age = a;
state = st;
}
}
vector<Member> yourVector = new vector<Member>();
while( qry->Fetch() )
{
yourVector.push_back(new Member(qry->GetInt("Name"),
qry->GetInt("Age"), qry->GetInt("State"));
}