IMPORTAR TABELA MYSQL PARA DELPHI, INTRAWEB
30/09/2016
0
BOM DIA,
ESTOU TENTANDO MOSTRAR NO DELPHI A MINHA TABELA MYSQL, USEI ESSE CODIGO, MAS ESTA DANDO O ERRO:" ACCESS VIOLATION AT ADDRESS 004080D2 IN MODULE "NOMEPROJETO.EXE'.WRITE OF ADDRESS 00000000"
ALGUEM ME AJUDA POR FAVOR!
procedure Tfrmtabela.bttnvertabelaClick(Sender: TObject);
var
numeroalunos, cont, i, j, m, k: integer;
a: string;
vetDados: array of array of string;
begin
with UserSession.ZQuery2 do // encontrando o numero de alunos na tabela
begin
SQL.Text := 'SELECT count(*) FROM alunoss;';
ExecSQL;
Open;
m := 0;
numeroalunos := FieldByName('count(*)').AsInteger;
close;
end;
SetLength(vetDados, numeroalunos, numeroalunos);
with UserSession.ZQuery2 do // encontrando o numero de alunos na tabela
begin
SQL.Text := 'SELECT * FROM alunoss;';
ExecSQL;
Open;
First;
k := 0;
while not Eof do
begin
{ SetLength(vetIdAlunos, m + 1); // determina o tamanho do vetor
vetIdAlunos[m] := UserSession.ZQuery2.FieldByName('id').AsInteger;
// vetor recebe os ids do banco de dados
m := m + 1;
next; }
vetDados[0, k] := UserSession.ZQuery2.FieldByName('id').AsString;
vetDados[1, k] := UserSession.ZQuery2.FieldByName('nome').AsString;
vetDados[2, k] := UserSession.ZQuery2.FieldByName('sobrenome').AsString;
vetdados[3,k]:= usersession.zquery2.fieldbyname('disciplina').asstring;
k := k + 1;
next;
end; // while
close;
end;
grdtabela.RowCount := (numeroalunos + 1);
grdtabela.ColumnCount := 4;
grdtabela.Cell[0, 0].Text := 'ID';
grdtabela.Cell[0, 1].Text := 'NOME';
grdtabela.Cell[0, 2].Text := 'SOBRENOME';
grdtabela.Cell[0, 3].Text := 'DISCIPLINA';
For i := 1 to numeroalunos do
begin
grdtabela.Cell[i, 0].Text := vetDados[0, i ];
grdtabela.Cell[i, 1].Text := vetDados[1, i ];
grdtabela.Cell[i, 2].Text := vetDados[2, i ];
grdtabela.Cell[i, 3].Text := vetDados[3, i ];
end;
end;
ESTOU TENTANDO MOSTRAR NO DELPHI A MINHA TABELA MYSQL, USEI ESSE CODIGO, MAS ESTA DANDO O ERRO:" ACCESS VIOLATION AT ADDRESS 004080D2 IN MODULE "NOMEPROJETO.EXE'.WRITE OF ADDRESS 00000000"
ALGUEM ME AJUDA POR FAVOR!
procedure Tfrmtabela.bttnvertabelaClick(Sender: TObject);
var
numeroalunos, cont, i, j, m, k: integer;
a: string;
vetDados: array of array of string;
begin
with UserSession.ZQuery2 do // encontrando o numero de alunos na tabela
begin
SQL.Text := 'SELECT count(*) FROM alunoss;';
ExecSQL;
Open;
m := 0;
numeroalunos := FieldByName('count(*)').AsInteger;
close;
end;
SetLength(vetDados, numeroalunos, numeroalunos);
with UserSession.ZQuery2 do // encontrando o numero de alunos na tabela
begin
SQL.Text := 'SELECT * FROM alunoss;';
ExecSQL;
Open;
First;
k := 0;
while not Eof do
begin
{ SetLength(vetIdAlunos, m + 1); // determina o tamanho do vetor
vetIdAlunos[m] := UserSession.ZQuery2.FieldByName('id').AsInteger;
// vetor recebe os ids do banco de dados
m := m + 1;
next; }
vetDados[0, k] := UserSession.ZQuery2.FieldByName('id').AsString;
vetDados[1, k] := UserSession.ZQuery2.FieldByName('nome').AsString;
vetDados[2, k] := UserSession.ZQuery2.FieldByName('sobrenome').AsString;
vetdados[3,k]:= usersession.zquery2.fieldbyname('disciplina').asstring;
k := k + 1;
next;
end; // while
close;
end;
grdtabela.RowCount := (numeroalunos + 1);
grdtabela.ColumnCount := 4;
grdtabela.Cell[0, 0].Text := 'ID';
grdtabela.Cell[0, 1].Text := 'NOME';
grdtabela.Cell[0, 2].Text := 'SOBRENOME';
grdtabela.Cell[0, 3].Text := 'DISCIPLINA';
For i := 1 to numeroalunos do
begin
grdtabela.Cell[i, 0].Text := vetDados[0, i ];
grdtabela.Cell[i, 1].Text := vetDados[1, i ];
grdtabela.Cell[i, 2].Text := vetDados[2, i ];
grdtabela.Cell[i, 3].Text := vetDados[3, i ];
end;
end;
Giovanna
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)