isPrimary not found
28/10/2013
0
Olá pessoal,
estou tenando utilizar o cloneConnection de um TSQLConnection, porém estou tendo o seguinte problema.
Ao realizar o open o seguinte erro é exibido:
Field IsPrimary not found
Segue o codigo que estou usando para teste
a variavel con é um TSQLConnection do meu DataModule que já esta configurado a conexao com um banco Firebird 2.5.
Se eu retiro o cloneConnection tudo funciona.
Outra coisa que percebi é que caso a tabela que esteja sendo aberta não possua PK o erro não ocorre. (Obviamente não vou fazer isso no meu banco)
Desde já Obrigado.
estou tenando utilizar o cloneConnection de um TSQLConnection, porém estou tendo o seguinte problema.
Ao realizar o open o seguinte erro é exibido:
Field IsPrimary not found
Segue o codigo que estou usando para teste
var vaDs : TSQLDataSet; begin vaDs := TSQLDataSet.Create(nil); vaDs.SQLConnection := con.CloneConnection; vaDs.CommandText := 'select * from aluno'; vaDs.Open;
a variavel con é um TSQLConnection do meu DataModule que já esta configurado a conexao com um banco Firebird 2.5.
Se eu retiro o cloneConnection tudo funciona.
Outra coisa que percebi é que caso a tabela que esteja sendo aberta não possua PK o erro não ocorre. (Obviamente não vou fazer isso no meu banco)
Desde já Obrigado.
Rafael Costa
Curtir tópico
+ 0
Responder
Posts
17/04/2014
Rafael Costa
Então, já faz um tempão desde postei a dúvida, somente para ficar registrado, eu resolvi o problema criando meu próprio CloneConnection.
Segue o código:
Segue o código:
function fpuCloneConnection(ipConn: TSQLConnection): TSQLConnection; begin Result := TSQLConnection.Create(nil); Result.LoadParamsOnConnect := ipConn.LoadParamsOnConnect; Result.LoginPrompt := ipConn.LoginPrompt; Result.DriverName := ipConn.DriverName; Result.ConnectionName := ipConn.ConnectionName; Result.Name := ipConn.Name + 'Clone1';//caso necessite clonar a conexao varias vezes implemente uma lógica melhor aqui. Result.Params.AddStrings(ipConn.Params); Result.GetDriverFunc := ipConn.GetDriverFunc; Result.LibraryName := ipConn.LibraryName; Result.VendorLib := ipConn.VendorLib; end;
Responder
Clique aqui para fazer login e interagir na Comunidade :)