Gostaria de saber qual o melhor banco a ser utilizado com Java, MySQL ou PostgreSQL? Quero desenvolver um sistema Desktop, mas nada com Servidor quero um arquivo local dentro da própria pasta do projeto.
Nenhum, nem outro.Use HSQLDB ou H2, se sua base de dados não é grande e local.Descreva mais sobre o seu projeto, quantos inserts/dia (ou mês) e o quanto(em MB) vc acha que sua base crescerá com o tempo.
Bem-vindo ao guj!
Nenhum, nem outro.Use HSQLDB ou H2, se sua base de dados não é grande e local.Descreva mais sobre o seu projeto, quantos inserts/dia (ou mês) e o quanto(em MB) vc acha que sua base crescerá com o tempo.
Bem-vindo ao guj!
[/quote]
Obrigado por me receber bem no GUJ!
Minha base vai ter praticamente duas ou três tabelas. Mas o volume de dados de cada uma vai ser grande, pois se trata de um sistema de gestão de livro caixa de despesas anual.
como vc vai começar do zero, recomendo já começar com um framework de persistência
por exemplo hibernate, vai te facilitar muito.
Você pode usar o Sqlite,que é portável e muito simples de se usar.
É, como foi dito você precisa de um banco de dados embarcado. PostgreSQL e MySQL neste caso não facilitam pois não são nativamente embarcados (ou seja, você vai precisar de um ambiente com o sgbd instalado para aí sim desenvolver um código que acesse e persista neste banco).
No seu caso eu faria uma experiência com o DB4O, que é um banco orientado a objetos. Você não vai precisar de framework nenhum nem aprender linguagens de consulta que você não conhece para fazer operações nele… Seu sistema é pequeno, quem sabe é uma alternativa a se pensar…
Para ter apenas um arquivo dentro do projeto use o HSQLDB ou Derby ou H2.
São fáceis de configurar e usar.
Primeiro, com qual deles você se sente mais confortável?
Segundo, está usando JDBC ou um framework ORM?
Terceiro, grande volume de dados = quanto?
Quarto, precisa de performance ou de robustez (que são coisas diferentes)?
O PostgreSQL é um banco para aplicações de porte maior.
O MySQL é o mais indicado para seu caso. Ele suporta o volume de dados mencionado por você e muito mais. Também é veloz para aplicações web.
Os dois são SGBDs.
wiliamps
As necessidades que ele passou são: projeto desktop com banco embarcado.
As opções são: SQLite, HSQLDB, Derby, H2.
Não tem oq rodar muito, escolha um e mande bala!
[]s
[quote=kleberdamasco]como vc vai começar do zero, recomendo já começar com um framework de persistência
por exemplo hibernate, vai te facilitar muito.[/quote]
Acho que JDBC para mim que sou iniciante está bom. Hibernate é para sistemas maiores.
Quando programava em Delphi tentei utiliza-lo, mas tive problemas com acentuação. Achei excelente, mais os acentos incomodava.
[quote=erico_kl]É, como foi dito você precisa de um banco de dados embarcado. PostgreSQL e MySQL neste caso não facilitam pois não são nativamente embarcados (ou seja, você vai precisar de um ambiente com o sgbd instalado para aí sim desenvolver um código que acesse e persista neste banco).
No seu caso eu faria uma experiência com o DB4O, que é um banco orientado a objetos. Você não vai precisar de framework nenhum nem aprender linguagens de consulta que você não conhece para fazer operações nele… Seu sistema é pequeno, quem sabe é uma alternativa a se pensar…[/quote]
Vou testa-lo sim.
[quote=drsmachado]Primeiro, com qual deles você se sente mais confortável?
Segundo, está usando JDBC ou um framework ORM?
Terceiro, grande volume de dados = quanto?
Quarto, precisa de performance ou de robustez (que são coisas diferentes)?[/quote]
1 - MySQL
2 - JDBC
3 - Despesas anuais, +100 cadastros por dia.
4 - Performance + Capacidade Relativa
[quote=willianxwillian][quote=drsmachado]Primeiro, com qual deles você se sente mais confortável?
Segundo, está usando JDBC ou um framework ORM?
Terceiro, grande volume de dados = quanto?
Quarto, precisa de performance ou de robustez (que são coisas diferentes)?[/quote]
1 - MySQL
2 - JDBC
3 - Despesas anuais, +100 cadastros por dia.
4 - Performance + Capacidade Relativa [/quote]
Então abraça o MySQL e vá em frente.
1 - Facilidade e tranquilidade para desenvolver é tudo
2 - JDBC é tranquilo com MySQL
3 - Volume de dados bastante pequeno (a documentação diz que o MySQL suporta tabelas com 50 milhões de registros)
4 - MySQL é mais performático, enquanto que Postgres é mais robusto.
cara usa um framework de persistencia tipo Hibernate
vai agilizar muito teu desenvolvimento.
[quote=kleberdamasco]cara usa um framework de persistencia tipo Hibernate
vai agilizar muito teu desenvolvimento.[/quote]
A curva de aprendizado do hibernate não é tão pequena, logo, se ele tem mais familiaridade com JDBC, não vejo por que aprender hibernate ou JPA para o que ele precisa.
Claro que é fundamental aprender um framework objeto relacional, mas não apenas para este projeto.
Aliás, a idéia de agilidade está mais ligada à conhecimento que ao uso deste ou daquele framework.
[quote=kleberdamasco]cara usa um framework de persistencia tipo Hibernate
vai agilizar muito teu desenvolvimento.[/quote]Se ele não souber, vai atrasar… Hibernate precisa de teoria. Se o cara começa a fazer e não estuda a aplicação dele vai ficar um terror.
[quote=drsmachado][quote=kleberdamasco]cara usa um framework de persistencia tipo Hibernate
vai agilizar muito teu desenvolvimento.[/quote]
A curva de aprendizado do hibernate não é tão pequena, logo, se ele tem mais familiaridade com JDBC, não vejo por que aprender hibernate ou JPA para o que ele precisa.
Claro que é fundamental aprender um framework objeto relacional, mas não apenas para este projeto.
Aliás, a idéia de agilidade está mais ligada à conhecimento que ao uso deste ou daquele framework.[/quote]
Apenas uma sugestão ainda mais que o sistema é pequeno. 8)
[quote=kleberdamasco][quote=drsmachado][quote=kleberdamasco]cara usa um framework de persistencia tipo Hibernate
vai agilizar muito teu desenvolvimento.[/quote]
A curva de aprendizado do hibernate não é tão pequena, logo, se ele tem mais familiaridade com JDBC, não vejo por que aprender hibernate ou JPA para o que ele precisa.
Claro que é fundamental aprender um framework objeto relacional, mas não apenas para este projeto.
Aliás, a idéia de agilidade está mais ligada à conhecimento que ao uso deste ou daquele framework.[/quote]
Apenas uma sugestão ainda mais que o sistema é pequeno. 8) [/quote]Sendo pequeno, aí que é mais fácil ainda finalizar com o JDBC q ele ja sabe…