Catalog vs Schema

Pessoal,

estou desenvolvendo uma aplicação utilizando Hibernate3, porém nesta aplicação, precisei trabalhar com um banco de dados legado.
Para facilitar o trabalho, utilizei o Hibernate Tools para realizar engenharia reversa das tabelas para criar minhas Entity Beans.

Ao tentar utilizar uma das entidades, tive o seguinte problema:
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax

Logo, fui verificar o SQL gerado pelo hibernate para tentar entender o problema e encontrei a seguinte instrução:
Hibernate: insert into tutorial_db.tutorial_db.tutorial_table (employeeName, entryDate, hoursWorked) values (?, ?, ?)

No SQL acima, pude perceber o seguinte: tutorial_db.tutorial_db.tutorial_table
Pude perceber que foi duplicado o nome do meu schema e por curiosidade troquei a annotation da minha Entity de:
@Table(name = “tutorial_table”, catalog = “tutorial_db”)
para
@Table(name = “tutorial_table”, schema = “tutorial_db”)

Após trocar, o problema foi solucionado, mas aí vem a pergunta:

alguém poderia me explicar a diferença entre utilizar catalog ou schema na annotation @Table da definição da minha Entity?

Obrigado

* quis explicar com o máximo de detalhes possível, para que caso alguém tenha a mesma dúvida, esse texto possa fornecer palavras chave suficientes em uma busca. :slight_smile: