Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Identity
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Titre:
Divers
Thread ID:
00944509
Message ID:
00945210
Vues:
20
Alex,

Aproveitando o o assunto, veja se consegue me ajudar :

Eu estou tentando recuperar o valor do Meu campo autoInc, com ADO. Se eu usar o @@IDENTITY funciona perfeitamente, mas se a tabela que eu estou inserindo os dados tiver uma trigger que insere dados em outra tabela, este valor me retorna errado. Então pelo query analyzer verifiquei que se eu utizar o SCOPE_IDENTITY(), me retorna o Valor desejado.

Com SQLEXEC, funciona perfeitamente. Mas com ADO o Retorno é sempre Null. Vc sabe se o VFP tem algum problema para executar esta função ?


segue o meu código :
PUBLIC oFa  as CursorAdapter 

oFa = CREATEOBJECT('_ca_familia')   && minha Classe CA salva o Objecto Connection na propriedade _screen.__sqlconexao 
oFa.CursorFill()
 = CURSORSETPROP("Buffering",5,"familia")

INSERT INTO familia (cd_familia,ds_familia) values([0001],[teste])
llRet = TABLEUPDATE(.T.,.T.,"familia")


LOCAL oRs AS 'ADODB.RecordSet'
LOCAL lnRet


oRs = CREATEOBJECT('ADODB.RecordSet')
oRs.CursorLocation = 2  && adUseServer
oRs.CursorType = 0  && adOpenForwardOnly
oRs.LockType = 1  && adLockReadOnly
oRs.Open("SELECT scope_identity() AS 'id'",_screen.__sqlconexao )
lnRet = oRs.Fields(0).value   && retorna NULL
oRs.Close() 
oRs = NULL

RETURN lnRet
Paulo Cesar Carneiro
desenvolvimento@controplan.com.br


"My God, what have we done?"
-- Capt. Robert Lewis, co-pilot of the Enola Gay, recalling the moment the atomic bomb exploded over Hiroshima

At 8:15 a.m. on August 6 1945
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform