já cheguei a pensar se o problema não seria do asp integrado ao flex. pq o
mesmo código feito apenas trabalhando com asp não teria problema e vejo mais
flex trabalhando com asp.NET

Em 5 de fevereiro de 2010 20:25, Júlio César Ködel <[email protected]>escreveu:

> A partir do momento que você está fazendo uma requisição HTTP acabou o
> mono-usuário e o mono-thread!
>
> Lembre-se que HTTP é multi-thread (já pensou o Google atender apenas a
> 1 usuário por vez?)
>
> E, pela sessão ser a mesma, qualquer acesso à base ferrará com o
> IDENTITY. IDENTITY deve ser retornado IMEDIATAMENTE após o Insert (por
> isso costuma-se fazer o Insert e o Select na mesma query e obter o
> resultado do "insert" via escalar). Ou usar procs com o mesmo
> propósito.
>
> 2010/2/5 Collin Peterson Mendes Chaves <[email protected]>:
>  > eu estou usando a linguagem asp com o flex. eu tenho vários arquivos
> asp
> > responsáveis por inserções no banco de dados, pois quando eu vou
> adicionar
> > um registro em uma tabela eu chamo (através do httpservice) os outros
> > arquivos asp contendo inserções em alguns bancos e no inicio desses
> arquivos
> > eu já busco o idmax da tabela principal. vi na documentação books online
> do
> > sql server o IDENT_CURRENT o qual coloquei no projeto. fazendo testes em
> um
> > ambiente mono-usuário percebo que os dados são inseridos às vezes
> > corretamente e em outros momentos vejo que alguma parte do registro se
> > vincula a um registro anterior e não ao correntemente inserido.
> >
> > é como se o flex as vezes não entendesse com esse comando que o registro
> é o
> > recentemente inserido e não o anterior a ele, sei lá por causa de cache
> ou
> > alguma coisa.
> > mas obrigado júlio pelas explicações. :)
> >
> >
> > Em 4 de fevereiro de 2010 19:12, Júlio César Ködel <[email protected]>
> > escreveu:
> >>
> >> SELECT @@IDENTITY ou SELECT SCOPE_IDENTITY() retorna o último ID
> >> inserido em qualquer tabela (dentro do escopo)
> >>
> >> SELECT IDENT_CURRENT( ' TableName ' ) retorna o último ID inserido na
> >> tabela 'TableName'
> >>
> >> Note que @@IDENTITY é igual a SCOPE_IDENTITY() e que ela pega o último
> >> ID inserido NA SESSÃO ATUAL, portanto, a menos que o teu SELECT não
> >> seja imediatamente após a query, não tem como falhar.
> >>
> >> Está usando qual linguagem no servidor? Se for .net, use Linq to SQL
> >> ou ADO Entities Framework e pare de se preocupar =)
> >>
> >> 2010/2/4 Matheus <[email protected]>:
> >> > Não entendi quando você diz que ele pega o maxid de uma tabela
> >> > anterior? Na verdade acho que você quis dizer de uma tupla anterior né
> >> > não? Se for isso verifique se você não está chamando a funcao de pegar
> >> > o maxId antes de cadastrar.
> >> > Abs
> >> >
> >> > On 4 fev, 12:25, Collin Peterson Mendes Chaves
> >> > <[email protected]> wrote:
> >> >> o ideal era que se tivesse esse @@identity podendo selecionar a
> tabela
> >> >> a
> >> >> qual tenha aquele valor
> >> >>
> >> >> Em 4 de fevereiro de 2010 10:48, Collin Peterson Mendes Chaves <
> >> >> [email protected]> escreveu:
> >> >>
> >> >> > oi Júlio, estou realmente usando sql server. eu estou usando
> >> >> > realmente o
> >> >> > select max(id). Agora esse select @@identity ele representa sempre
> o
> >> >> > valor
> >> >> > recentemente inserido. se eu adicionar um registro ele pega o id do
> >> >> > que foi
> >> >> > inserido, mas se no meio do codigo eu inserir em outra tabela dados
> >> >> > desse
> >> >> > registro ele assume o id mais recente o dessa outra tabela
> inserida?
> >> >> > Em 4 de fevereiro de 2010 10:22, Júlio César Ködel
> >> >> > <[email protected]>escreveu:
> >> >>
> >> >> > SELECT MAX(ID) functiona maravilhosamente bem...
> >> >>
> >> >> >> ...se estiver em um ambiente mono-usuário, mono-thread =P
> >> >>
> >> >> >> Diversas bases tem suporte para obter o último Identity inserido,
> >> >> >> vide
> >> >> >> e-mail da Gabriela.
> >> >>
> >> >> >> Para MSSQL, seria SELECT @@IDENTITY
> >> >>
> >> >> >> 2010/2/4 Collin Peterson Mendes Chaves <[email protected]
> >:
> >> >> >>  > fazendo um teste aqui, percebi que ele as vezes pega o max id
> não
> >> >> >> de
> >> >> >> uma
> >> >> >> > tabela que eu acabo de inserir, mas de uma imediatamente
> anterior
> >> >>
> >> >> >> > Em 4 de fevereiro de 2010 10:01, Collin Peterson Mendes Chaves
> >> >> >> > <[email protected]> escreveu:
> >> >>
> >> >> >> >> pessoal estou com um problema que acho ser grave. tenho uma
> >> >> >> >> aplicação
> >> >> >> que
> >> >> >> >> preenche informações em várias tabelas diferentes. na aplicação
> >> >> >> >> quando
> >> >> >> >> insiro um registro em uma tabela eu seleciono seu id (usando
> max
> >> >> >> >> id
> >> >> >> >> inserido) para pegar esse id e inserir em uma outra tabela
> outras
> >> >> >> >> informações. uso o mesmo procedimento para selecionar o id da
> >> >> >> >> primeira
> >> >> >> >> tabela inserida para preencher outras tabelas. na hora de
> >> >> >> >> consultar no
> >> >> >> banco
> >> >> >> >> de dados vejo que alguns registros inseridos não aparecem por
> >> >> >> >> completo.
> >> >> >> >> Eu aqui pensando no que poderia ser, eu acho que o problema que
> >> >> >> >> pode
> >> >> >> está
> >> >> >> >> ocorrendo é quando muita gente está inserindo dados ao mesmo
> >> >> >> >> tempo,
> >> >> >> pois na
> >> >> >> >> hora de selecionar o max id uma vez pode ser um valor e em
> outra
> >> >> >> >> vez
> >> >> >> pode
> >> >> >> >> ser outro já que outra pessoa tb está concorrentemente
> inserido.
> >> >> >> >> só que
> >> >> >> vejo
> >> >> >> >> o processo de inserção tão rápido que não sei se esse é o real
> >> >> >> problema. se
> >> >> >> >> for alguém pode me ajudar a resolver? (não sei se estou sendo
> >> >> >> >> claro)
> >> >>
> >> >> >> > --
> >> >> >> > Você recebeu esta mensagem porque está inscrito na lista
> "flexdev"
> >> >> >> > Para enviar uma mensagem, envie um e-mail para
> >> >> >> > [email protected]
> >> >> >> > Para sair da lista, envie um email em branco para
> >> >> >> > [email protected]
> >> >> >> > Mais opções estão disponíveis
> >> >> >> > emhttp://groups.google.com/group/flexdev
> >> >>
> >> >> >> --
> >> >> >> []
> >> >> >> Júlio César Ködel G.
> >> >> >> "Você pode ficar sem comer durante 3 dias, sem beber durante 2
> dias,
> >> >> >> mas não pode ficar sem respirar por mais de 5 minutos.
> >> >> >> Então, antes de imprimir isso, lembre-se que o oxigênio deste
> >> >> >> planeta
> >> >> >> vem da árvore morta para fazer o papel que irá utilizar."
> >> >>
> >> >> >> --
> >> >> >> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> >> >> >> Para enviar uma mensagem, envie um e-mail para
> >> >> >> [email protected]
> >> >> >> Para sair da lista, envie um email em branco para
> >> >> >> [email protected]
> >> >> >> Mais opções estão disponíveis
> >> >> >> emhttp://groups.google.com/group/flexdev
> >> >
> >> > --
> >> > Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> >> > Para enviar uma mensagem, envie um e-mail para
> [email protected]
> >> > Para sair da lista, envie um email em branco para
> >> > [email protected]
> >> > Mais opções estão disponíveis em
> http://groups.google.com/group/flexdev
> >>
> >>
> >>
> >> --
> >> []
> >> Júlio César Ködel G.
> >> "Você pode ficar sem comer durante 3 dias, sem beber durante 2 dias,
> >> mas não pode ficar sem respirar por mais de 5 minutos.
> >> Então, antes de imprimir isso, lembre-se que o oxigênio deste planeta
> >> vem da árvore morta para fazer o papel que irá utilizar."
> >>
> >> --
> >> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> >> Para enviar uma mensagem, envie um e-mail para [email protected]
> >> Para sair da lista, envie um email em branco para
> >> [email protected]
> >> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
> >
> > --
> > Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> > Para enviar uma mensagem, envie um e-mail para [email protected]
> > Para sair da lista, envie um email em branco para
> > [email protected]
> > Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>
>
>
> --
> []
> Júlio César Ködel G.
> "Você pode ficar sem comer durante 3 dias, sem beber durante 2 dias,
> mas não pode ficar sem respirar por mais de 5 minutos.
> Então, antes de imprimir isso, lembre-se que o oxigênio deste planeta
> vem da árvore morta para fazer o papel que irá utilizar."
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a