Jump to content
Fivewin Brasil

SQLLib - Criação de Índice


macs

Recommended Posts

Pessoal, como eu faço para criar um índice de uma tabela criada a partir de uma consulta SQL.

Estou fazendo desta forma:

dbUseArea( .T., upper( ::cTipoBanco ), "*", cInstrucaoSql, .F., .T.,, ::nConexao )
IF ! empty( aIndices )
FOR nIndex := 1 TO LEN( aIndices )
cTagIndex := "ind_" + aIndices[ nIndex, 1 ] + strZero( nIndex, 2 )
cChave := aIndices[ nIndex, 2 ]
ordCondSet( ,,,,,, recno(),,,,,,,,,,, .T.,, )
ordCreate( Nil, cTagIndex, cChave )
NEXT
ENDIF
Ocorre o seguinte erro: SQLLIB/1000: MySQL RDD: COMPLEX SQL not suport INDEX.
Link to comment
Share on other sites

Olá

no caso de usar comandos/FUNÇÕES Clipper/xHB para criar o índice vc deve montar o índice sem utilizar funções como strzero, dtos, etc... ou seja deve ser somente campo + campo +campo, exemplo: nCodCliente + cNomeCliente

outra coisa: lembre-se que vc somente consegue criar índices para TABELAS existentes, nesse caso do USE SQL vc não está criando uma tabela, somente uma instrução ; vc poderia facilmente colocar um ORDER BY na sua instrução para resolver a questão, exemplo:

USE SQL "SELECT nCodCliente,cNomeCliente,cCidCliente,cUFCliente FROM TAB_CLI ORDER BY nCodCliente,cNomeCliente" ALIAS "CLI" NEW VIA "MySQL"

Abraço

Link to comment
Share on other sites

Olá

no caso de usar comandos/FUNÇÕES Clipper/xHB para criar o índice vc deve montar o índice sem utilizar funções como strzero, dtos, etc... ou seja deve ser somente campo + campo +campo, exemplo: nCodCliente + cNomeCliente

outra coisa: lembre-se que vc somente consegue criar índices para TABELAS existentes, nesse caso do USE SQL vc não está criando uma tabela, somente uma instrução ; vc poderia facilmente colocar um ORDER BY na sua instrução para resolver a questão, exemplo:

USE SQL "SELECT nCodCliente,cNomeCliente,cCidCliente,cUFCliente FROM TAB_CLI ORDER BY nCodCliente,cNomeCliente" ALIAS "CLI" NEW VIA "MySQL"

Abraço

Ok... neste exemplo que você colocou, como eu faço para criar um índice, exemplo: criar o índice por cCidCliente. Estou precisando realizar pesquisa através deste campo (caso do exemplo). Não quero criar uma consulta já ordenada ( ORDER BY nCodCliente,cNomeCliente" )

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...