configurar o Tsimpledataset
28/08/2004
0
olá pessoal, como fazer para que uma trigger funcione como autoincremeto usando o tsimpledataset, usando o padraõ de conexaço com sqlconnection, sqlquery datasetprovider e clientdatset ao marcar o campo requerido como false funciona mas ao fazer o mesmo processo no simpledataset isto não ocorre e sempre pede para colocar ovalor no campo, se exixtir uma maneira de marcar o campo como requerido na tabela com false através de sql por favor me ajudem, estou usando tabelas em firebird, por favro uma luz se tiver como alterar esta tabela na escrita em sql. :?: :?:
Mhdragon-rs
Curtir tópico
+ 0
Responder
Posts
28/08/2004
Vinicius2k
Colega,
Eu deconheço* solução para este problema que, a meu ver, eh do componente, não eh à toa q quase ninguém usa SimpleDataSet ou SQLClientDataSet (Delphi 6)... eles são ´nativamente ruins´...
Bem, pelo que vejo não preciso lhe recomendar que vc use DataSet+Provider+ClientDataSet, pq notei que jah eh uma arquitetura conhecida por vc...
Vc ´pode´ setar o campo para aceitar nulos na criação da tabela, afinal, foi vc mesmo que setou para ´NOT NULL´ quando criou não é mesmo? Mas em chaves primárias vc não pode fazer isso...
* Serve ´gambiarra´ ? :lol:
Sete a propriedade ´DefaultValue´ do TField para 0...
Se sua trigger não faz nenhum teste antes de disparar a GEN_ID, blz não precisa alterá-la, mas se ela testa se eh NULL antes de disparar, inclua a condição de teste se eh ´0´ (Zero)...
Espero ter ajudado...
T+
Eu deconheço* solução para este problema que, a meu ver, eh do componente, não eh à toa q quase ninguém usa SimpleDataSet ou SQLClientDataSet (Delphi 6)... eles são ´nativamente ruins´...
Bem, pelo que vejo não preciso lhe recomendar que vc use DataSet+Provider+ClientDataSet, pq notei que jah eh uma arquitetura conhecida por vc...
Vc ´pode´ setar o campo para aceitar nulos na criação da tabela, afinal, foi vc mesmo que setou para ´NOT NULL´ quando criou não é mesmo? Mas em chaves primárias vc não pode fazer isso...
* Serve ´gambiarra´ ? :lol:
Sete a propriedade ´DefaultValue´ do TField para 0...
Se sua trigger não faz nenhum teste antes de disparar a GEN_ID, blz não precisa alterá-la, mas se ela testa se eh NULL antes de disparar, inclua a condição de teste se eh ´0´ (Zero)...
AS BEGIN IF ((NEW.ID IS NULL) OR (NEW.ID = 0)) THEN NEW.ID = GEN_ID(NOME_DO_GENERATOR,1); END
Espero ter ajudado...
T+
Responder
29/08/2004
Mhdragon-rs
Vinicius realmente estou me convencendo que o simlpedataset é uma furada e vou começar a usar o padrão de configuração com sqlconections e demais componentes eu apenas não queria no meu data module uma porção de objetos mas.... tb ñ vou colocar os objetos em cada form como meu professor de delphi ensinou mas mesmo asssim muito obrigado pela ajuda, afinal é conversando e trocando experiencias que podemos evoluir
um forte abraçço a toda comunidade
um forte abraçço a toda comunidade
Responder
Clique aqui para fazer login e interagir na Comunidade :)