CDX ou NTX

Fórum sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

Avatar do usuário
Ricardo Sales Ribeiro
Usuário Nível 3
Usuário Nível 3
Mensagens: 279
Registrado em: 13 Jul 2004 18:06
Localização: Fortaleza-Ceara

CDX ou NTX

Mensagem por Ricardo Sales Ribeiro »

Oi Amigos Clipeiros
Tudo Bem!

Gostaria de saber qual a diferença enter estes indices, CDX e NTX? Qual o melhor para se trabalhar ? Como fazer para gerar o CDX.? Quais as vantagens de um para o outro?

Um Grande Abraço a Todos
Ricardo Sales
Fortaleza-Ce
lodara53@yahoo.com.br
lodara53@hotmail.com
Stanis Luksys
Colaborador
Colaborador
Mensagens: 1329
Registrado em: 18 Jun 2005 03:04
Localização: São Paulo
Contato:

Mensagem por Stanis Luksys »

Olha, pode ser ignorância da minha parte, mas uso o NTX desde sempre e nunca tive nenhum problema, continuo com ele e nunca pensei muito seriamente em mudar...
Stanis Luksys
sites.google.com/hblibs

Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Avatar do usuário
Ricardo Sales Ribeiro
Usuário Nível 3
Usuário Nível 3
Mensagens: 279
Registrado em: 13 Jul 2004 18:06
Localização: Fortaleza-Ceara

CDX ou NTX

Mensagem por Ricardo Sales Ribeiro »

Agradeço sua opinião, más mesmo assim, gostaria de saber de quem usa CDX se é melhor do q NTX.
Ricardo Sales
Fortaleza-Ce
lodara53@yahoo.com.br
lodara53@hotmail.com
DORNELES
Usuário Nível 1
Usuário Nível 1
Mensagens: 19
Registrado em: 14 Out 2005 04:51

Mensagem por DORNELES »

Sem duvida o CDX, eu utilizo, ele é mais rapido para gerar os indices, e o tanho dele fica bem menor, em um arquivo.dbf de 1.6 mb no ntx fica 363kb e no CDX 11kb, você tambem pode utilizar a opcao TAG, com ela você cria varios indice em um só arquivo.
OK
clauber
Usuário Nível 3
Usuário Nível 3
Mensagens: 263
Registrado em: 22 Jul 2004 21:17
Localização: ceara

Mensagem por clauber »

amigo uso cdx, e com certeza eh bem melhor, vejamos em poucas palavras a diferença:

1 - no cdx vc tem somente um arquivo fisico, evita de vc ter q abrindo dentro de suas rotinas um monte de arquivos
2 - os indices se atualizao automaticamente, ntx tem abri-los para atualiza-los
3 - cdx mais rapido menos problema com arquivo conrompido
4 - as chaves saum criadas nas tags, tipico de bd relacionais

e outra ao usa as lib dbfcdx e _dbfcdx forcou q eu compilasse meus fontes com exospace no modo protegido, acabou-se problema de memoria convencional ...
""
Avatar do usuário
Ale SB
Usuário Nível 3
Usuário Nível 3
Mensagens: 201
Registrado em: 20 Jul 2004 17:30
Localização: Campo Grande / MS

Mensagem por Ale SB »

Para vc gerar arquivos CDX, faça isto:

// Coloque no inicio de seu Sistema Principal, p/Informar q tipo de Indice vc vai Trabalhar.
REQUEST DBFCDX
RddSetDefault("DBFCDX")

//Bem eu tenho uma Funçao só pra indexar, q eh mais pratico.

//Antes de indexar, use o FERASE(), explico: ele serve p/apagar os Indices antigos e criar novos, este eh o unico problema do CDX, q eu conheço, se vc nao apagar os indices, toda vez q iniciar seu sistema ele nao reindexa e sim cria um novo indice dentro do seu indice.

Ferase("iArqforn.cdx")
Ferase("iCart_ch.cdx")

USE ArqForne ALIAS Forne
INDEX ON codi TAG iCod TO iArqForn
INDEX ON Fant TAG iFant TO iArqForn

USE Cart_Chq alias Cart
Index on Banc TAG 1 to iCart_ch
Index on Agen TAG 2 to iCart_ch
Index on nChq TAG 3 to iCart_ch

CLOSE All

//Dentro de teu sistema vc pode abrir assim:

USE Cart_Chq alias Cart NEW EXCLUSIVE
dbSetIndex("iCart_ch.Cdx") // ou se preferir Set Index To iCart_ch.Cdx
OrdSetFocus("1") // Indica ao indice q Tag ele deve Usar
Cart->(dbGoTop())

//Nao esqueça de linkar com a LIB DBFCDX.LIB

Veja bem, pelo fato do CDX atualizar sozinho, nao há necessidade de vc cria-lo toda vez q entra no sistema, vc pode por uma condiçao p/ verificar se ele existe, ai neste caso vc nao precisaria do Ferase().

Aqui no forum temos bastante dicas e Post sobre o CDX, faça uma Busca q vc irá tirar muitas duvidas.

Mas, qualquer coisa eh o chamar !!!

@braços Ale
Imagemr]
Responder