USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  vb6 com banco access 2007
Hendelcwb
CURITIBA
PR - BRASIL
ENUNCIADA !
Postada em 06/01/2012 22:45 hs         
VB6 Access 2007 using SEEK (after convert mdb to accdb)
'Code sample vb6 connecting with Ms-Access 2007/2010
'Exemplo vb6 conectando com Ms-Access 2007/2010
'--------------------------------------------------------
Global sDirInstall
Global sMyDB As String
Global sMyDBVENDAS As String
'---------------------------------------------------------
Sub UserInfo()

'PROJECT -> REFERENCE: Microsoft ActiveX Data Objects 2.8 Library

Dim con As ADODB.Connection
Dim rs As ADODB.Recordset

Set con = New ADODB.Connection
Set rs = New ADODB.Recordset

sDirInstall = App.Path
sMyDB = sDirInstall & "USER.accdb"
con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & sMyDB & ";Persist Security Info=False;Jet OLEDBDatabase Password="

rs.Index = "Primarykey"
rs.CursorLocation = adUseServer
rs.Open ("tb_User"), con, adOpenDynamic, adLockOptimistic, adCmdTableDirect

Do While Not rs.EOF
MsgBox rs.Fields("Userid") & " - " & rs.Fields("Nome")
rs.MoveNext
Loop

rs.Seek Array("NewUser"), adSeekMinEQ
If rs.EOF Then
rs.AddNew
rs.Fields("Userid") = "NewUser"
rs.Fields("Nome") = "USER NEW"
rs.Update
MsgBox "1 user added!"
Else
rs.Fields("Nome") = "USER NEW " & Now()
rs.Update
MsgBox "1 user changed!"
End If
rs.Close
con.Close
End Sub
----------------------------------------------------------
 



Saudações/Saludos/Regards,

HENDELCWB
   
Gustavo
não registrado
ENUNCIADA !
Postada em 23/03/2013 18:29 hs   
eu na verdade to ficando louco com o BD. Sigam os detalhes deste código:
Private Sub Form_Load()
   Public cnSQL As New ADODB.Connection
   Dim rs As New ADODB.Recordset
   Dim str As String
   Dim Caminho As String

  Caminho = App.Path & "Clientes.mdb"
    
    Set cnSQL = Nothing
    cnSQL.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Caminho & ";Persist Security Info=False"
    str = "SELECT * From CadCliente WHERE CodCliente = CodCliente  "
    rs.Open str, cnSQL, adOpenDynamic, adLockPessimistic

end sub

e quando o botão incluir chama a função incluir dados, eu faço:
With adCmdPaciente

    .ActiveConnection = cnSQL
    .CommandType = adCmdText
    .Prepared = True
    
    If CodCliente > 0 Then
    
        .CommandText = "UPDATE CadCliente set CodCliente = ?, Nome =?, etc...etc.... Where  CodCliente = " & CodCliente
        
        .Parameters.Append .CreateParameter("CodCliente", adVarChar, adParamInput, 30)

        .Parameters("CodCliente") = txtCodCliente.Text

If Err.Number <> 0 Then
        MostraErro
        End If
        
    Else
    
        .CommandText = "INSERT INTO CadCliente (CodCliente, Nome, etc,cetc...) Values (?, ?,
                                                
        .Parameters.Append .CreateParameter("CodCliente", adVarChar, adParamInput, 30)

        Parameters("CodCliente") = txtCodCliente.Text

        .Execute
        
     If Err.Number <> 0 Then
        MostraErro
        End If
    End If
              
End With
        
    Set adCmdPaciente = Nothing
    cmdNovo_Click

Então, o detalhe é que só não grava no BD. Ele tá sem erros, mas não grava.... Se alguem puder me dar uma luz(acho que preciso de um farol de milha mesmo) agradeço, pois já fuçei em todo tipo de conexão possivel e não acho o bendito erro.
Só pra lembrar, to usando vb6 com access 2007.
   
Teco
não registrado
ENUNCIADA !
Postada em 25/03/2013 11:57 hs   
O que posso dizer que grava sim.Este exemplo
do famigerado grava e atualizar e forma normal.
Esta e a condição para gravar
If CodCliente > 0 Then
Se for maior que zero UPDATE.
If CodCliente = 0 Then
Se for igual a zero INSERT.
Então para gravar,CodCliente sempre tem que ser igual a Zero
Quando clicar em novo coloque a variavél com zero
CodCliente = 0
   
Página(s): 2/2     « ANTERIOR  


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página