Dúvida de Conexão do ASp.net com Firebird
2 - Estou conseguindo conectar NORMALMENTE no
FIREBIRD2.1 e no INTERBASE2007,
escolhendo SQLDATASOURCE e DBEXPRESS.
Somente não funcionam os parâmetros do GRIDVIEW, em
NENHUM DOS 2.
Dúvida
:
Através da linha
marcada AZUL abaixo, consigo com um FBDataReader
recuperar o valor de um registro filtrado no select em vermelho .
Como fazer o mesmo no SQLDataSource, único
objeto que consegui conectar perfeitamente
no FIREBIRD 2.1 e INTERBASE 2007
?
procedure TDefault.BtIncluir_Click(sender: System.Object; e: System.EventArgs);
Var
FbDataReader_Select : FBDataReader;
Qtde_Reg_JahExiste : LongInt;
begin
FbConnection1.Open; FbCommand1.CommandText :=
'select count(*) From COUNTRY '+
'where Upper(COUNTRY)='+ QuotedStr( Uppercase(TxtCOUNTRY_Incluir.Text) ) ; // As 2 linhas abaixo "ABREM" a query;
FbDataReader_Select:= FbCommand1.ExecuteReader();
FbDataReader_Select.Read; // Dv := SqlDataSource1.Select(DataSourceSelectArguments.Empty); // Armazena a qtde de registros que já existe,
// com a MESMA chave primária que tenta INCLUIR
Qtde_Reg_JahExiste := StrToInt( FbDataReader_Select.GetValue(0).ToString );
FbConnection1.Close; // Se o REGISTRO já existir, EMITE MENSAGEM :
if Qtde_Reg_JahExiste=1 then
Begin
Lb_Mensagem.Text := 'Registro já EXISTENTE !';
Lb_Mensagem.Visible := True;
TxtCOUNTRY_Incluir.Focus;
Exit;
End; SqlDatasource1.InsertCommand :=
'Insert into COUNTRY(COUNTRY,CURRENCY) '+
'VALUES ('+QuotedStr(TxtCOUNTRY_Incluir.Text) +
','+QuotedStr(TxtCURRENCY_Incluir.Text)+')'; SqlDatasource1.Insert; FiltrarPor( TxtCOUNTRY_Incluir.Text, SqlDatasource1 ) ;
GridView1.SelectedIndex := -1;
Lb_Mensagem.Text := '';
Lb_Mensagem.Visible := False; TxtCOUNTRY_Incluir.Focus
end;
______________________
Grata,
Luana T. P. Ferreira
Ferreira & Souza Informática Ltda.
procedure TDefault.BtIncluir_Click(sender: System.Object; e: System.EventArgs);
Var
FbDataReader_Select : FBDataReader;
Qtde_Reg_JahExiste : LongInt;
begin
FbConnection1.Open; FbCommand1.CommandText :=
'select count(*) From COUNTRY '+
'where Upper(COUNTRY)='+ QuotedStr( Uppercase(TxtCOUNTRY_Incluir.Text) ) ; // As 2 linhas abaixo "ABREM" a query;
FbDataReader_Select:= FbCommand1.ExecuteReader();
FbDataReader_Select.Read; // Dv := SqlDataSource1.Select(DataSourceSelectArguments.Empty); // Armazena a qtde de registros que já existe,
// com a MESMA chave primária que tenta INCLUIR
Qtde_Reg_JahExiste := StrToInt( FbDataReader_Select.GetValue(0).ToString );
FbConnection1.Close; // Se o REGISTRO já existir, EMITE MENSAGEM :
if Qtde_Reg_JahExiste=1 then
Begin
Lb_Mensagem.Text := 'Registro já EXISTENTE !';
Lb_Mensagem.Visible := True;
TxtCOUNTRY_Incluir.Focus;
Exit;
End; SqlDatasource1.InsertCommand :=
'Insert into COUNTRY(COUNTRY,CURRENCY) '+
'VALUES ('+QuotedStr(TxtCOUNTRY_Incluir.Text) +
','+QuotedStr(TxtCURRENCY_Incluir.Text)+')'; SqlDatasource1.Insert; FiltrarPor( TxtCOUNTRY_Incluir.Text, SqlDatasource1 ) ;
GridView1.SelectedIndex := -1;
Lb_Mensagem.Text := '';
Lb_Mensagem.Visible := False; TxtCOUNTRY_Incluir.Focus
end;
______________________
Grata,
Luana T. P. Ferreira
Ferreira & Souza Informática Ltda.
Rogério Souza
Curtidas 0
Respostas
Rodrigo Mourão
31/03/2009
Olá Rogério !
Sua dúvida é: Como fazer o mesmo no SQLDataSource, único objeto que consegui conectar perfeitamente no FIREBIRD 2.1 e INTERBASE 2007 ?
Isso não será possível e vou lhe expicar por que !! Estamos falando de bancos de dados diferentes. O fato dos programadores delphi (digo isso pois todos usam drive win32 do interbase para acessar firebird mas nem a code gear nem a comunidade firebird admitem tal compatibilidade) utilizaram o drive de um para o outro nao significa ser compatível. Isso ficou calro a partir do 2007 com o DBX 4.
Se tratando de .Net ai é que fica muito mais claro. Cada banco tem seu provider em .Net. Sendo assim para executar um select no Interbase terá que usar as classes do interbase, para acessar o firebird o provider do firebird. Obvio que temos classes que são comuns a todos os providers mas as principais que são. Connection, Command e reader são especificos do banco.
E por esso motivos que programadores mais experientes ja criam suas classes de conexão e trabalham em cima de interfaces para abstrair o banco de dados.
Espero ter ajudado !!!
Abs !!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
Sua dúvida é: Como fazer o mesmo no SQLDataSource, único objeto que consegui conectar perfeitamente no FIREBIRD 2.1 e INTERBASE 2007 ?
Isso não será possível e vou lhe expicar por que !! Estamos falando de bancos de dados diferentes. O fato dos programadores delphi (digo isso pois todos usam drive win32 do interbase para acessar firebird mas nem a code gear nem a comunidade firebird admitem tal compatibilidade) utilizaram o drive de um para o outro nao significa ser compatível. Isso ficou calro a partir do 2007 com o DBX 4.
Se tratando de .Net ai é que fica muito mais claro. Cada banco tem seu provider em .Net. Sendo assim para executar um select no Interbase terá que usar as classes do interbase, para acessar o firebird o provider do firebird. Obvio que temos classes que são comuns a todos os providers mas as principais que são. Connection, Command e reader são especificos do banco.
E por esso motivos que programadores mais experientes ja criam suas classes de conexão e trabalham em cima de interfaces para abstrair o banco de dados.
Espero ter ajudado !!!
Abs !!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
GOSTEI 0
Rodrigo Mourão
31/03/2009
Olá Amigo, há mais alguma dívida ?
Estamos no aguardo para encerrar o chamado !!
abs !!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
Estamos no aguardo para encerrar o chamado !!
abs !!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
GOSTEI 0
Rodrigo Mourão
31/03/2009
Olá Rogerio !!!
Vi o seu feedback e gostaria de saber qual parte da explicação não conseguiu entender !!
Fico no aguardo !!!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
Vi o seu feedback e gostaria de saber qual parte da explicação não conseguiu entender !!
Fico no aguardo !!!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
GOSTEI 0
Devmedia
31/03/2009
Olá Rogério,
precisamos saber em que vc ainda tem dúvidas para podermos solucionar da melhor maneira possível. Nossos consultores estão prontos a tirar todas as suas dúvidas, mas precisamos saber quais são, ok!
precisamos saber em que vc ainda tem dúvidas para podermos solucionar da melhor maneira possível. Nossos consultores estão prontos a tirar todas as suas dúvidas, mas precisamos saber quais são, ok!
GOSTEI 0
Rogério Souza
31/03/2009
1) Conecto perfeiramente ao
FIREBIRD e ao INTERBASE, utilizando SQLDATASOURCE.
2) Desejaria apenas saber, com
SQLDATASOURCE, como fazer um SELECT
e recuperar uma COLUNA retornada.
Somente isto.
Pode ser inclusive conectado ao
SQL SERVER 2005 EXPRESS. Sem problema algum (no mais estou conseguindo aqui)
Grato, aguardo resposta.
FIREBIRD e ao INTERBASE, utilizando SQLDATASOURCE.
2) Desejaria apenas saber, com
SQLDATASOURCE, como fazer um SELECT
e recuperar uma COLUNA retornada.
Somente isto.
Pode ser inclusive conectado ao
SQL SERVER 2005 EXPRESS. Sem problema algum (no mais estou conseguindo aqui)
Grato, aguardo resposta.
GOSTEI 0
Rodrigo Mourão
31/03/2009
Olá Rogério !!!!
Estarei gravando uma video para lhe mostar o funcionamento do Ado. Net dentro da framework !!!!
Hoje a noite estarei postando !!!
Abs !!!!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
GOSTEI 0
Rodrigo Mourão
31/03/2009
Segue Video com fontes:
http://video.devmedia.com.br/RodrigoCarreiro/Consultoria/WebApplication4.rar
Abs !!
[#VIDEO-93#]
[#VIDEO-93#]
GOSTEI 0
Rodrigo Mourão
31/03/2009
Olá Amigo !!
Há mais alguma dúvida ?? As vídeos foram suficientes ??
Estamos aguardando para encerrar o chamado !!!
Abs !!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
Há mais alguma dúvida ?? As vídeos foram suficientes ??
Estamos aguardando para encerrar o chamado !!!
Abs !!
Atenciosamente,
Rodrigo Carreiro Mourão
Borland Instructor Certified
Coordenador da Consultoria em Delphi
GOSTEI 0
Devmedia
31/03/2009
Rogério,
a resposta do consultor solucionou a sua dúvida? Podemos fechar o chamado?
a resposta do consultor solucionou a sua dúvida? Podemos fechar o chamado?
GOSTEI 0
Devmedia
31/03/2009
Rogério,
precisamos saber em que ainda tem dúvida para que possamos lhe ajudar. O objetivo da consultoria é resolver os problemas dos seus clientes. Aguardamos seu feedback.
GOSTEI 0
Devmedia
31/03/2009
Rogério,
o chamado será colocado como concluido. Caso ainda tenha dúvidas com relação ao assunto abordado, por favor, poste sua dúvida que o consultor voltará a lhe atender.
o chamado será colocado como concluido. Caso ainda tenha dúvidas com relação ao assunto abordado, por favor, poste sua dúvida que o consultor voltará a lhe atender.
GOSTEI 0