Concordo com o Osvaldo, e adiciono um conselho: use o MySQL. o HSQLDB
do OpenOffice é muito limitado
e tem suporte muito limitado a INNER JOINS, além de não suportar SUBQUERIES.
Bom, quanto a VIEWS, este foi um recurso que recentemente descobri no
MySQL que melhorou exponencialmente o tempo das minhas consultas
n:n, pois antes levava um, dois minutos (ou simplesmente travava e
tinha que reiniciar o micro) com SUBQUERIES, utilizando VIEWS nos
INNER JOIN a consulta retorna o resultado em menos de 0.01 segundo,
com mais de duzentos campos e uns vinte, trinta campos relacionados
n:n (tenho umas três tabelas que possuem relação n:n com a tabela
principal e outras tantas com relação 1:n).
Então, a não ser que o HSQLDB suporte VIEWS, recomendo usar o MySQL
com driver ODBC.
Pode ser que o HSQL suporte VIEW, não sei (pois as descobri depois de
ter mudado para o MySQL), mas se suportar, deve ser lenta de qualquer
forma.

bom, pra não ficar só no papo teórico deixo uns comandos
1. cria as tabela
CREATE TABLE EMPRESA( empresa_id int auto_increment, EMPRESA_NOME CHAR(255),
INDEX(empresa_NOME),PRIMARY KEY(empresa_id));

CREATE TABLE FATURA(FATURA_ID int auto_increment,VALOR
DECIMAL(15,2),DATA date , empresa_id int,
PRIMARY KEY(FATURA_ID));

CREATE TABLE EMP_FAT(fatura_id int, empresa_id INT,
FOREIGN KEY (FATURA_ID) references  FATURA(FATURA_ID),
FOREIGN KEY (EMPRESA_ID) references EMPRESA(EMPRESA_ID));

daí cria dois formulários, um pra inserir empresas, outro pra inserir
faturas, e um terceiro (que deve ser aprimorado) que coloca os id de
empresas e faturas na tabela EMP_FAT

e usa esta consulta pra exibir o relatório:
SELECT EMPRESA_NOME, FATURA_ID, VALOR,
DATA FROM EMP_FAT
INNER JOIN (
EMPRESA
)
USING ( EMPRESA_ID )
INNER JOIN (
FATURA
)
USING ( FATURA_ID )
dá pra criar uma view desta select apenas colocando "create view
faturas as" antes do "SELECT"
aí que tá, será que o HSQL suporta este create view? este comando é do MySQL.

e de lambuja uns dados fictícios pra quem quiser brincar
--
-- Extraindo dados da tabela `EMPRESA`
--

INSERT INTO `EMPRESA` (`empresa_id`, `EMPRESA_NOME`) VALUES
(1, 'SUPER EMPRESA FATUREIRA SA'),
(2, 'SIMPLATEC PLASTICOS');

--
-- Extraindo dados da tabela `EMP_FAT`
--

INSERT INTO `EMP_FAT` (`fatura_id`, `empresa_id`) VALUES
(1, 1),
(1, 2),
(2, 1),
(3, 2);

--
-- Extraindo dados da tabela `FATURA`
--

INSERT INTO `FATURA` (`fatura_id`, `VALOR`, `DATA`) VALUES
(1, 100.00, '2008-07-10'),
(2, 243.00, '2008-07-17'),
(3, 123.00, '2008-07-25');

Coloquei a estrutura+dados completas (nomes de tabelas, dados, em
minúsculas pra facilitar) em
http://jm.freeshell.org/dl/exemplo_mysql_1.txt

Abraços,
Juari
2008/7/9 Osvaldo Rosario Kussama <[EMAIL PROTECTED]>:
> Julio Franco escreveu:
>>
>> Pessoal.
>> Tenho uma tabela de empresas e uma de faturas.
>> uma empresa tem várias faturas.
>>  Tabela Empresa: Nome (chave primária)
>>  Tabela Faturas: Fatura, Empresa (chaves primárias)
>>  Tenho um formúlário empresa com um sub-formiário faturas.
>>  Quero relacionar 1 empresa para várias empresas.
>>  Como faço isso? rsrsrs
>>  Já tentei fazer o seguinte:
>>  Ferramenta Relações...
>> Inserir as tabelas Empresas e Faturas.
>> Arrastei o campo nome da empresa (da tabela empresas) para cima do campo
>> empresas da tabela faturas. Abre a janela e pedi para atualizar e excluir em
>> cascata. Salvei.
>>  Quando vou ao formulário e altero o nome da empresa e clico em salvar, dá
>> um erro e não altera o nome na tabela faturas.
>>
>
>
> Dúvida: "Quero relacionar 1 empresa para várias empresas."
>
> É isso mesmo?
>
> De qualquer forma um relacionamento n:n se implementa criando uma tabela
> auxiliar.
> Por ex. se queremos que uma empresa possa estar relacionada a n faturas e
> uma fatura possa estar relacionada a n empresas então criamos uma tabela
> auxiliar (por ex. emp-fat) cuja chave primária será composta pela chave
> estrangeira de empresa e pela chave estrangeira de fatura.
>
> Se for realmente um relacionamento de empresas para empresas você terá que
> definir qual o papel de cada uma no relacionamento.
>
> Osvaldo
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>



-- 
home rig:
E2160 [EMAIL PROTECTED] (9*333/1.42V)|XFX 8600GT 620Mhz GPU/1.6Ghz GDDR3|2*2Gb
Viper 1.066Ghz @5-5-5-15|Asus P5K SE|Zalman ZM360BAPS
mobile:
HP Pavillion DV6230BR|Turion MK-36 2Ghz|2*1Gb DDR2-667|802.11g Wi-Fi
work:
Celeron 2.4Ghz|256Mb DDR|{40Gb PATA, 680Gb network shares} disk
--> check jm.freeshell.org/dl - bash and Cell/BE programs! <--

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Responder a