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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Exibir campo de uma tabela SQL [:(]
claytonsantos
OSASCO
SP - BRASIL
ENUNCIADA !
Postada em 02/04/2007 18:53 hs            
Estou com um grande problema, estou criando um sistema de imigração de dados de um banco de dados DBF para SQL, estou precisando que o sistema exiba o nome do campo SQL...

  Dim TabCadastro as String
  nArquivo = TabCadastro
  
  Set db = New Connection
  db.CursorLocation = adUseClient
  db.Open "PROVIDER=MSDASQL;dsn=BDSistema;uid=;pwd=;"


  Set bancosql = New Recordset
  bancosql.Open "select * from " & nArquivo, db, adOpenStatic, adLockOptimistic
  
  PrimeiroCampoDaTabela =  bancosql.Fieldname

... Não quero que ele exiba o conteúdo mais sim o nome do campo na tabela...

Socorrooooo.....


Obrigado!!!!
   
Jose.Niz
CURITIBA
PR - BRASIL
ENUNCIADA !
Postada em 03/04/2007 01:50 hs         
Use a propriedade "name" da coleção Fields, quando não é informado nada a propriedade padrão é "value" (retornando o valor do campo).

For i = 0 To bancosql.Fields.Count -1
    MsgBox bancosql.Fields(i).Name
Next i

PS: Isso funciona com o ADO, com DBF nunca testei.
   
ghost_jlp
Pontos: 2843 Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
Postada em 03/04/2007 01:52 hs            
PrimeiroCampoDaTabela = BancoSql.Fields(0).Name 'primeiro campo da tabela
 
pra te facilitar faça um for:
 
for i = 0 to BancoSql.Fields.Count -1
'seu código...
next
 
qq dúvida postae
 
falows!
     
Jose.Niz
CURITIBA
PR - BRASIL
Postada em 03/04/2007 01:54 hs         
Use a propriedade "name" da coleção Fields, quando não é informado nada a propriedade padrão é "value" (retornando o valor do campo).

For i = 0 To bancosql.Fields.Count -1
    MsgBox bancosql.Fields(i).Name
Next i

PS: Isso funciona com o ADO, com DBF nunca testei.
     
claytonsantos
OSASCO
SP - BRASIL
Postada em 03/04/2007 13:27 hs            
Obrigado pela dica...
Para complementar esse código para quem precisar...
  Dim vConteudo As String
  Dim vCampo As String
  Dim I As Integer
  Dim IX As Integer
  
  
nArquivo = TabSQL

  Set bancosql = New Recordset
  bancosql.Open "select * from " & nArquivo, db, adOpenStatic, adLockOptimistic
    
  Set Dbfs = OpenDatabase(App.Path, False, False, "DBASE IV")
  Set dbfbanco = Dbfs.OpenRecordset(nArquivo, dbOpenTable)
  
  MsgBox "Quantidade de Registros: " & dbfbanco.RecordCount - 1
  
  vCampo = bancosql.Fields(1).Name
  Campo(0) = bancosql.Fields(0).Name
  For I = 2 To bancosql.Fields.Count - 1
   vCampo = vCampo & "," & bancosql.Fields(I).Name
   Campo(I - 1) = vCampo & "," & bancosql.Fields(I - 1).Name
  Next I

  For I = 1 To dbfbanco.RecordCount - 1
   vConteudo = "'" & dbfbanco.Fields(dbfbanco.Fields(1).Name) & "'"
   For IX = 2 To dbfbanco.Fields.Count - 1
    FieldType (dbfbanco.Fields(IX).Type)
    vConteudo = vConteudo & "," & xTipo & dbfbanco.Fields(dbfbanco.Fields(IX).Name) & xTipo
   Next IX
  Set bancosql = New adodb.Recordset
  insertsql = "insert into " & nArquivo & " (" & vCampo & ") values (" & vConteudo & ");"
  bancosql.Open insertsql, db, adOpenStatic, adLockOptimistic
  Next I
End Sub
Function FieldType(intType As Integer) As String

    Select Case intType
        Case dbBoolean
            'FieldType = "dbBoolean"
            xTipo = "'"
        Case dbByte
            'FieldType = "dbByte"
            xTipo = "'"
        Case dbInteger
            'FieldType = "dbInteger"
            xTipo = "'"
        Case dbLong
            'FieldType = "dbLong"
            xTipo = "'"
        Case dbCurrency
            'FieldType = "dbCurrency"
            xTipo = "'"
        Case dbSingle
            'FieldType = "dbSingle"
            xTipo = "'"
        Case dbDouble
            'FieldType = "dbDouble"
            xTipo = "'"
        Case dbDate
            'FieldType = "dbDate"
            xTipo = "'"
        Case dbText
            'FieldType = "dbText"
            xTipo = "'"
        Case dbLongBinary
            'FieldType = "dbLongBinary"
            xTipo = "'"
        Case dbMemo
            'FieldType = "dbMemo"
            xTipo = "'"
        Case dbGUID
            'FieldType = "dbGUID"
            xTipo = "'"
    End Select
End Sub
     
Página(s): 1/1    


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