Consulta através de Query
Olá...
Gostaria de saber se for possível como deve proceder para pegar um valor de um resultado de uma Query e joga-lo dentro de uma variável global.
Executo uma query qualquer e ela me retorna um ou mais registros. Eu quero pegar esse registro e jogar para dentro de uma variável :!:
Ok... :?:
Grato pela atenção :wink:
Gostaria de saber se for possível como deve proceder para pegar um valor de um resultado de uma Query e joga-lo dentro de uma variável global.
Executo uma query qualquer e ela me retorna um ou mais registros. Eu quero pegar esse registro e jogar para dentro de uma variável :!:
Ok... :?:
Grato pela atenção :wink:
* *
Curtidas 0
Respostas
Luizfernando777
07/01/2004
public
{ Public declarations }
end;
var
Form1: TForm1;
Variavel : String;
implementation
//////////////////////
Variavel := SuaQueryNome.Value; // no caso tem que ser do tipo String
{ Public declarations }
end;
var
Form1: TForm1;
Variavel : String;
implementation
//////////////////////
Variavel := SuaQueryNome.Value; // no caso tem que ser do tipo String
GOSTEI 0
Cyborg
07/01/2004
Opa,
Não sei se entendi direito, mas vou tentar ajudar...
Então depois de feita a consulta pela query você poderia fazer o seguinte:
var varglobal: String;
Qry.First;
varglobal:= Qry.Fields[0].asString + Qry.Fields[1].asString...;
Pronto o primeiro registro inteiro está na varglobal... Agora se quiser colocar todos os registros encontradas na string você poderia fazer um for i:= 0 to Qry.RecordCount - 1 e colocar um Qry.Next.... Caso não saiba a qtd de campos que tenha a sua query então faça um for i:= 0 to qry.FieldCount - 1 e assim vai...
Caso eu esteja viajando foi mal... Mas se entendi acho que é isso...
Bem é isso...
CyBorg
Não sei se entendi direito, mas vou tentar ajudar...
Então depois de feita a consulta pela query você poderia fazer o seguinte:
var varglobal: String;
Qry.First;
varglobal:= Qry.Fields[0].asString + Qry.Fields[1].asString...;
Pronto o primeiro registro inteiro está na varglobal... Agora se quiser colocar todos os registros encontradas na string você poderia fazer um for i:= 0 to Qry.RecordCount - 1 e colocar um Qry.Next.... Caso não saiba a qtd de campos que tenha a sua query então faça um for i:= 0 to qry.FieldCount - 1 e assim vai...
Caso eu esteja viajando foi mal... Mas se entendi acho que é isso...
Bem é isso...
CyBorg
GOSTEI 0
Marcelo.l
07/01/2004
Eu costumo fazer assim...
var
CopyData: Variant;
i: Integer;
begin
// Estoca os dados do registro corrente em um Variant Array...
CopyData := VarArrayCreate([0, SuaTabela.FieldCount - 1], varVariant);
for i := 0 to FieldCount - 1 do
CopyData[i] := SuaTabela.Fields[i].Value;
// Para ´jogar´ o registro para outra tabela com a mesma estrutura...
// Novo Registro...
OutraTabela.Insert;
for i := 0 to OutraTabela.FieldCount - 1 do
begin
// Ignora campos calculados ou AutoIncrementais...
if (OutraTabela.Fields[Counter].DataType <> ftAutoInc)
and (not OutraTabela.Fields[i].Calculated) then
OutraTabela.Fields[i].Value := CopyData[i];
end;
Vc só tem que repetir para quantos registros precisar.
Espero que seja isto que vc precise.
T+
var
CopyData: Variant;
i: Integer;
begin
// Estoca os dados do registro corrente em um Variant Array...
CopyData := VarArrayCreate([0, SuaTabela.FieldCount - 1], varVariant);
for i := 0 to FieldCount - 1 do
CopyData[i] := SuaTabela.Fields[i].Value;
// Para ´jogar´ o registro para outra tabela com a mesma estrutura...
// Novo Registro...
OutraTabela.Insert;
for i := 0 to OutraTabela.FieldCount - 1 do
begin
// Ignora campos calculados ou AutoIncrementais...
if (OutraTabela.Fields[Counter].DataType <> ftAutoInc)
and (not OutraTabela.Fields[i].Calculated) then
OutraTabela.Fields[i].Value := CopyData[i];
end;
Vc só tem que repetir para quantos registros precisar.
Espero que seja isto que vc precise.
T+
GOSTEI 0
* *
07/01/2004
Valeu... Galera !
A ajuda de vc´s me serviram bastante !!!
era isso mesmo que eu precisava entender !
muito Grato !
A ajuda de vc´s me serviram bastante !!!
era isso mesmo que eu precisava entender !
muito Grato !
GOSTEI 0