Eu tenho uma duvida sobre HSQLDB

Galera seguinte estou utilizando o HSQLDB na minha aplicação , ma minha maquina roda direitinho, mais em outra maquina, aparece um erro estranho, sera que alguem sabe o pq desse erro???
Valewww pessoal???

Entao galera, o q sera???

Tu tá acessando a base de dados local ou na tua máquina?

Se for local, verifica se as tabelas e o banco estão criados corretamente aí nessa máquina…

cara pode ser o seguinte!!
se vc esta usando na sua persistencia para ela criar as tabelas, e vc trocar a persistencia logo a após para update, quando for rodar em outra máquina vc terá quer mandar criar novamente as suas tabelas repeitando os seus relacionamentos
vlw

pedrovds, a base de dados é local, na minha funciona direitinho, consigo inserir, editar, e excluir de boa, mas quando jogo minha aplicação pra outra maquina aparece aquele erro.

elugo Como faço pra mandar a minha aplicação criar a base de dados novamente.???

Pessoal, muito obrigado.

Pois é…

Então você terá que criar todas as tabelas e relacionamentos como fez na sua máquina…

Pra tua aplicação fazer isso, só com Hibernate (acredito eu)…
Caso contrário, é na mão mesmo… criar as tabelas lá no HSQLDB…

**Hibernate ou algum outro framework que faça mapeamento OR pra você…

Sera mesmo cara, sou bem iniciante com o HSQLDB, sempre utilizava o MySql, e migrei para o HSQL, pq ouvi dizer que com ele da pra colocar a base de dados junto com o .jar, com isso nao ia me encomodar mais com o banco.
Mais mano, acho q vc falou de criar tudo de novo cara, não faz muito sentido, sei la, desculpe-me se estiver errado, como falei, estou iniciando agora com o HSQL

[quote=marcelopacheco85]Sera mesmo cara, sou bem iniciante com o HSQLDB, sempre utilizava o MySql, e migrei para o HSQL, pq ouvi dizer que com ele da pra colocar a base de dados junto com o .jar, com isso nao ia me encomodar mais com o banco.
Mais mano, acho q vc falou de criar tudo de novo cara, não faz muito sentido, sei la, desculpe-me se estiver errado, como falei, estou iniciando agora com o HSQL[/quote]

Pois é Marcelo, eu também não conheço muito do HSQLDB, não sei se dá pra fazer algo do tipo nele…

A “vantagem” (diferença) do HSQLDB pro mySQL é que você não precisa instalar o banco de dados no cliente (ou em outras máquinas), porque você distribui o mesmo através dos .jars junto com a sua aplicação.

Mas acredito eu que você precisa ai menos de uma rotina pra criar a estrutura do banco quando abre o sistema em outra máquina.

Mas é fácil saber se é isso, basta localizar onde o HSQLDB salva a estrutura do banco (dados das tabelas e registros, etc…) e se isso ta indo junto com a sua aplicação. Caso esses dados estejam sendo salvos em um diretório separado da sua aplicação é esse o problema.

Solução:

  • Distribuir esse diretório junto com sua aplicação ou,
  • Criar uma rotina no seu sistema que cria a base de dados caso ela não exista (o que me parece que está acontecendo pela sua tela de erro)

*Eu nunca usei o HSQLDB

Nota: Veja que ainda assim você não vai precisar “instalar” o banco de dados em outras máquinas (o que aconteceria se você estivesse usando mySQL por exemplo), apenas vai precisar criar a estrutura do banco.

Daew pessoal, pelo q li aqui em cima vi, q terei criar o banco quando for rodar minha aplicação em outra maquina, vi tambem que o HSQLDB gera um arquivo .script e q nele esta contindo toda os scripts para a criação do banco de dados, agora faço outra pergunta.

Como faço pra q tinha aplicação crie o banco quando rodar pela primeira vez em uma maquina???

Desde ja, agradeço pela força de todos

:lol: :lol: :lol:

marcelo, tente isso

DatabaseMetaData md = conn.getMetaData(); ResultSet rs = md.getTables(cat,schem,name,types); if (rs.next()) { // tabela existe! }

esse metodo recupera as tabelas do banco.
quando o usuario acessar a aplicação pela primeira vez, vc faz o teste se a tabela existe.
se não existir, vc executa o script para criá-las.

mais informações nesse link.
http://osdir.com/ml/java.hsqldb.user/2003-07/msg00057.html

outra solução seria usar o IF EXISTS do sql, mas não sei se o HSQLDB suporta.
[]'s

Daew pessoal, to desistindo do HSQLDB, queria utililizar ele pra nao ficar me encomodando de ter q ficar criando a base no My sql, toda fez q eu quiser rodar minha aplicação na universidade. Mais ta muito complicado,
vou deixxar a minha aplicação nesse link se alguem tiver curiosidade, pra tentar resolver.
o jeito é voltar pro My sql, valeu a força de todos.
http://www.steekr.com/n/50-17/share/LNK71724900ce8268cb7/