Jump to content
dipacheco

Paradox... como ligar e fazer select?

Recommended Posts

dipacheco

Pessoal... tenho uma base de dados em Paradox 7.0 e gostava de ligar com o VB mas não estou a conseguir e a única alternativa que tive foi exportar para Excel, que não é muito prático. Será que alguém me pode ajudar a ligar ao Paradox e a consultar algo?

Exemplo:

Tenho tabela no Paradox com uma BD de livros em que todos têm um código. Quero ligar a essa tabela e fazer um select pelo código para ver qual o nome do livro, por exemplo.

Alguém faz a menor ideia? Abraço.

Share this post


Link to post
Share on other sites
bioshock

Se é chinês, porque raio não começas com uma base de dados mais..comum?

Whatever, a connectionString deve ser:

Dim cnn As New ParadoxConnection (?)("Provider=MSDASQL;Persist Security Info=False;Mode=Read;Extended Properties='DSN=Paradox;DBQ=C:\myDb;DefaultDir=C:\myDb;DriverId=538;FIL=Paradox 7.X;MaxBufferSize=2048;PageTimeout=600;';Initial Catalog=C:\myDb;")

Edit: tens é de alterar os devidos campos.

Share this post


Link to post
Share on other sites
dipacheco

porque a BD não é minha e já está feita... daí eu não estar por dentro desta BD! estou habituado ao VB mas nao ao paradox...

de qlq forma obrigado na mesma...

Share this post


Link to post
Share on other sites
dipacheco

Imports System.Data.Odbc

Public Class Form1

    Dim livros As OdbcConnection
    Dim comando As New OdbcCommand
    Public sDBString As String = "Provider=MSDASQL;Persist Security Info=False;Mode=Read;Extended Properties='DSN=Paradox;DBQ=C:\Users\Pacheco\Desktop\srfernandes;DefaultDir=C:\Users\Pacheco\Desktop\srfernandes;DriverId=538;FIL=Paradox 7.X;MaxBufferSize=2048;PageTimeout=600;';Initial Catalog=C:\Users\Pacheco\Desktop\srfernandes;"
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        livros = New System.Data.Odbc.OdbcConnection(sDBString)
        comando.CommandText = "SELECT * from Livros"
        comando.Connection = livros
        livros.Open()
        Dim dados As New System.Data.Odbc.OdbcDataAdapter(comando)
        Dim dados2 As New System.Data.DataSet()
        dados.Fill(dados2)
        livros.Close()
        livros = Nothing
    End Sub
End Class

este é o código que tenho para testar ... e o erro que me dá é "ERROR [iM002] [Microsoft][Gestor de controladores de ODBC] O nome da origem de dados não foi encontrado e não foi especificado nenhum controlador predefinido" na linha do clientes.open().

Share this post


Link to post
Share on other sites
dipacheco

Mudei para isto...

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim cnn As New ADODB.Connection
        Dim RsAdo As New ADODB.Recordset
        cnn.Open("Provider=MSDASQL;Persist Security Info=False;Mode=Read;Extended Properties='DSN=Paradox;DBQ=C:\Users\Pacheco\Desktop\srfernandes;DefaultDir=C:\Users\Pacheco\Desktop\srfernandes;DriverId=538;FIL=Paradox 7.X;MaxBufferSize=2048;PageTimeout=600;';Initial Catalog=C:\Users\Pacheco\Desktop\srfernandes;")
        RsAdo.Open("SELECT * from Clientes", cnn, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
    End Sub
End Class

e obtenho o seguinte erro:

[Microsoft][Gestor de controladores de ODBC] O nome da origem de dados não foi encontrado e não foi especificado nenhum controlador predefinido

Ou então assim:

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim cnn As New ADODB.Connection
        Dim RsAdo As New ADODB.Recordset
        cnn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Pacheco\Desktop\srfernandes;Extended properties=Paradox 7.x")
        RsAdo.Open("SELECT * from Clientes", cnn, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockOptimistic)
    End Sub
End Class.

E o erro é o seguinte:

Erro inesperado no controlador da base de dados externa (11265).

Share this post


Link to post
Share on other sites
bioshock

Pa, eu nem conhecia essa base de dados, mas uma coisa é certa, em nenhuma string que aí colocaste, referiste a base de dados, referiste sim apenas e só o caminho sem a base de dados. Tu dizes:

C:\Users\Pacheco\Desktop\srfernandes

Numa string normal, onde a base de dados seria Access ou SQL, o caminho completo seria:

C:\Users\Pacheco\Desktop\srfernandes\basededados.mdb » Access 2003

C:\Users\Pacheco\Desktop\srfernandes\basededados.mdf » SQL

Não sei se o problema pode advir daí. :P

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.