|
Postada em 06/10/2008 14:47 hs
PESSOAL O QUE A DE ERRADO NESTE SELECT: Private Sub Form_Load() '## Instancia Set conexao = New ADODB.Connection Set rs = New ADODB.Recordset Dim SQL conexao.CursorLocation = adUseClient '## Faz conexão com o banco conexao.Open "Provider=msdaora;Data Source=ISLPROD;" SQL = SQL & "SELECT a.tip_razao_social||'-FONE:'||a.tip_fone_ddd||'-'||a.tip_fone_num,'CNPJ: '||a.tip_cgc_cpf," SQL = SQL & "b.esch_nro_nota," SQL = SQL & "b.esch_ser_nota," SQL = SQL & "b.esit_codigo||b.esit_digito," SQL = SQL & "c.tip_cgc_cpf, " SQL = SQL & "b.entsai_quanti_un " SQL = SQL & "FROM aa2ctipo a, " SQL = SQL & "ag1fensa b, " SQL = SQL & "aa2ctipo c " SQL = SQL & "WHERE a.tip_codigo = txt_loja AND " SQL = SQL & "c.tip_codigo = txt_cod_fornecedor AND " SQL = SQL & "esch_nro_nota2 = txt_nf AND " SQL = SQL & "esch_ser_nota2 = txt_serie AND " SQL = SQL & "esit_codigo2 = txt_cod_produto AND " SQL = SQL & "b.eschlj_codigo2 = c.tip_codigo" & ", " & conexao & ", " & adOpenStatic & ", " & adLockOptimistic
rs.Open SQL End Sub
ESTÁ DADO ESSE ERRO: run-time '3709' A conexao nao pode ser usada para realizar essa operacao. Ela está fechada ou é invalida neste contexto.
"Se fizeres o bem, não é certo que serás aceito? E se não fizeres o bem, o pecado jaz à porta, e sobre ti será o seu desejo; mas sobre ele tu deves dominar - Gênesis 4.7"
|
|
|
|
zeuzebio
|
CRICIÚMA SC - BRASIL
|
|
ENUNCIADA !
|
|
|
Postada em 06/10/2008 15:05 hs
Um exemplo (supondo que txt_loja seja uma variável ou campo text)
Você usou... SQL = SQL & "WHERE a.tip_codigo = txt_loja AND "
Troque para... SQL = SQL & "WHERE a.tip_codigo = '" & txt_loja & "' AND "
Observe que depois do sinal de igual e antes de AND existe uma aspa simples.
Espero ter ajudado.
|
|
|
|
Postada em 07/10/2008 10:24 hs
Kra obrigado por responder, FIZ ASSIM: Private Sub SQL() Dim SQL SQL = SQL & "SELECT a.tip_razao_social, " SQL = SQL & "a.tip_fone_ddd, " SQL = SQL & "a.tip_fone_num, " SQL = SQL & "a.tip_cgc_cpf, " SQL = SQL & "b.esch_nro_nota, " SQL = SQL & "b.esch_ser_nota, " 'SQL = SQL & "b.esit_codigo||b.esit_digito, " SQL = SQL & "b.esit_codigo, b.esit_digito, " SQL = SQL & "c.tip_cgc_cpf, " SQL = SQL & "b.entsai_quanti_un " SQL = SQL & "FROM aa2ctipo AS a, ag1fensa AS b, aa2ctipo AS c " SQL = SQL & "WHERE a.tip_codigo = '" & txt_loja & "' AND " SQL = SQL & "c.tip_codigo = '" & txt_cod_fornecedor & "' AND " SQL = SQL & "esch_nro_nota2 = '" & txt_nf & "' AND " SQL = SQL & "esch_ser_nota2 = '" & txt_serie & "' AND " SQL = SQL & "esit_codigo2 = '" & txt_cod_produto & "' AND " SQL = SQL & "b.eschlj_codigo2 = c.tip_codigo" rs.Open SQL, conexao, adOpenStatic, adLockOptimistic End Sub MAS TÁ DANDO ERRO: Run-Time error '-2147217900 (80040e14)': ORA-00933: comando SQL não encerrado adequadamente HELP POR FAVOR!
"Se fizeres o bem, não é certo que serás aceito? E se não fizeres o bem, o pecado jaz à porta, e sobre ti será o seu desejo; mas sobre ele tu deves dominar - Gênesis 4.7"
|
TÓPICO EDITADO
|
|
|
|
|
Postada em 07/10/2008 14:52 hs
Cara, o Oracle não utiliza "AS" para chamar Alias. A tua SQL ficaria assim:
SELECT a.tip_razao_social, a.tip_fone_ddd, a.tip_fone_num, a.tip_cgc_cpf, b.esch_nro_nota, b.esch_ser_nota, b.esit_codigo, b.esit_digito, c.tip_cgc_cpf, b.entsai_quanti_un FROM aa2ctipo a, ag1fensa b, aa2ctipo c WHERE a.tip_codigo = '' AND c.tip_codigo = '' AND esch_nro_nota2 = '' AND esch_ser_nota2 = '' AND esit_codigo2 = '' AND b.eschlj_codigo2 = c.tip_codigo Sugiro que vc baixe um programa chamado TOAD, que é ótimo para trabalhar com bancos Oracle. Abraço!
|
|
|
|
Postada em 08/10/2008 14:29 hs
Kara era isso mesmo..... brigadao
|
|
|
|