Pergunta

Então, qual é a melhor maneira de criar novas tabelas em um banco de dados SQLite no Rails 2. Eu criei o banco de dados usando rake db: migrar comando. Então eu deveria escrever scripts SQL individuais para criar um banco de dados ou utilização de rake de alguma forma. Eu não preciso de andaimes.

Foi útil?

Solução

Basicamente usar migrações.

Alguns ajuda úteis sobre como usar as migrações está disponível em http: //wiki.rubyonrails. org / rails / pages / understandingmigrations e http://wiki.rubyonrails.org/ trilhos / pages / UsingMigrations . Um bom cheatsheet que eu uso também está disponível em http://dizzy.co.uk/ Ruby_on_rails / cheatsheets / rails-migrações .

Basicamente migrações usar código Ruby para criar suas tabelas de banco de dados para você. É muito mais fácil (na minha opinião, pelo menos) para usar bom código Ruby para fazer isso em vez de DDL SQL - ele também faz várias coisas automaticamente para você (como a adição de campos id a todas suas tabelas como trilhos exige). Você pode então usar tarefas rake para realmente aplicar as migrações para o seu banco de dados. A outra grande vantagem que as migrações dar-lhe é que eles são reverseable -. Para que o seu banco de dados é de versão e você pode saltar facilmente de uma versão para outra

Outras dicas

Tente evitar a escrita CRIAR / scripts ALTER TABLE e usar migrações ActiveRecord em seu lugar. Alguns primavera razões para ocupar-se:

  • Portabilidade: é muito mais fácil deixar AR acordo com sabor cruzada plataforma diferenças
  • Alterar controle: o seu migrações podem gerenciar mudanças na ambas as direcções com a versão = opção, algo que não é fácil fazer com SQL
  • É a maneira Rails: seguir as convenções de Rails a menos você tem uma razão convincente para não fazê-lo
  • Simplicidade: você não precisa se preocupar com id e timestamp colunas quando você usar as migrações, o que poupa ter que lembrar-lhes se você trabalha em SQL

Se você não estiver usando andaimes então você deve usar script/generate migration para criar um arquivo de migração para cada tabela. Não há necessidade de usar scripts SQL. Depois de criar algumas migrações você pode aplicá-las ao seu banco de dados usando rake db:. Migre

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top