como usar um arquivo MS-Access do Linux?
então como posso usar um ficheiro de acesso ({[[0]}) no Linux? Por uso quero dizer mudar de mesa, escrever consultas e assim por diante.
Existem ferramentas para convertê-lo para outro formato de banco de dados (mysql, postgresql ou até gadfly)?
Também que problemas posso encontrar?7 answers
Embora um pouco datado, eu tive um bom sucesso com {[[1]} que é um conjunto de ferramentas de linha de comando para acessar e converter bases de dados de Acesso para outros formatos. Usei-o para importar bases de dados para o PostgreSQL.
Se estiver a correr uma variante do Ubuntu, pode instalá-la com:
sudo apt-get install mdbtools
Ou você pode baixá-lo de Aqui.
Da documentação: Ligação ao Microsoft Access . No entanto, isso parece indicar que você precisa de acesso rodando em uma máquina do windows e conectar via ODBC... Ver também Problemas conhecidos .
Se a sua tarefa é desenvolver uma aplicação de acesso com formulários etc, em vez de apenas usar e {[[0]} Base de dados como uma loja, então você pode tentar uma versão recente de vinho com uma versão de Acesso compatível (ver compatibilidade lista ) ou, melhor ainda, encontrar uma máquina do Windows onde você tem certeza que vai funcionar.
Para não ser esquecido, o uso de uma máquina Virtual carregada com Windows ajudá-lo-ia a alcançar a mesma coisa na sua caixa Linux.
Pode trabalhar com o Access através de uma ligação (ODBC ou OLEDB), desde que só tenha de gerir a dimensão "base de dados" do ficheiro (tabelas e vistas, que são chamadas de "consultas" no Access).
Logo que a ligação esteja aberta (veja aqui para cadeias de ligação), poderá enviar comandos SQL para a sua base de dados do mdb, como por exemplo (onde cn
está aqui um objecto de ligação):
cn.execute "CREATE TABLE myTableName (myTable_id autoNumber, myTable_code Text, ...)"
Por favor, note que o MsAccess usa um DDL específico que se parece com o padrão T-SQL mas não é a sério. Verifique a sintaxe no MsAccess help.
Dependendo do seu banco de dados (e suas restrições, valores padrão, chaves primárias usadas, relações, regras de validação de dados, aso), o acesso Transfer pode ser fácil e direto ou pode nem ser possível. Você vai encontrar um problema cada vez que seu banco de dados implementar uma regra de acesso específico/não-padrão SQL.
Se você realmente precisa converter seus dados de Acesso para outra coisa, eu adise você para (1) exportá-lo sob MS-SQL (o livre versão vai ser ok, um assistente de upsizing está disponível no Access ou neste site), (2)use uma ferramenta como esta para gerar uma "CRIAR BANCO de dados" SQL Script, incluindo, ou não, inserções de dados, (3) utilizar este script para tentar criar o banco de dados e seus dados em outro servidor de banco de dados.
Se a minha resposta anterior numa pergunta semelhante. É um guião para fazer isso.