Princípios básicos

Aplicação

Se desejar aceder a conteúdos numéricos ou alfanuméricos de uma tabela ou manipular as tabelas (p. ex., mudar o nome de colunas ou linhas), utilize os comandos SQL à disposição.

A sintaxe dos comandos SQL disponíveis internamente no comando baseia-se, em larga medida, na linguagem de programação SQL, embora não seja plenamente coincidente. Além disso, o comando não suporta todo o âmbito da linguagem SQL.

Condições

  • Código 555343
  • Tabela existente
  • Nome de tabela adequado
  • Os nomes das tabelas e das colunas das tabelas devem começar por uma letra e não podem conter operadores aritméticos, p. ex., +. Devido aos comandos SQL ao importar ou exportar dados, estes símbolos podem causar problemas.

Descrição das funções

No software NC, os acessos a tabelas efetuam-se através de um servidor SQL. Este servidor é controlado através dos comandos SQL disponíveis. Os comandos SQL podem ser definidos diretamente num programa NC.

O servidor baseia-se num modelo de transação. Uma transação é composta por vários passos, que são executados em conjunto e, deste modo, asseguram um processamento definido e ordenado das entradas da tabela.

Os comandos SQL atuam no modo de funcionamento Exec. programa e na aplicação MDI.

Exemplo de uma transação:

  • Atribuir parâmetros Q a colunas da tabela para acessos de leitura ou escrita com SQL BIND
  • Selecionar dados com SQL EXECUTE com a instrução SELECT
  • Ler, alterar ou inserir dados com SQL FETCH, SQL UPDATE ou SQL INSERT
  • Confirmar ou rejeitar a interação com SQL COMMIT ou SQL ROLLBACK
  • Ativar as ligações entre colunas da tabela e parâmetros Q com SQL BIND
 
Tip

Finalize incondicionalmente todas as transações iniciadas, também os acessos exclusivamente de leitura. Apenas a finalização das transações garante a aceitação de alterações e extensões, a supressão de bloqueios e a ativação dos recursos utilizados.

O Result-set descreve o conjunto de resultados de um ficheiro de tabelas. Uma consulta com SELECT define o conjunto de resultados.

O Result-set forma-se ao executar a consulta no servidor SQL, onde ocupa recursos.

Esta consulta atua como um filtro na tabela que torna visível apenas uma parte dos blocos de dados. Para possibilitar a consulta, o ficheiro de tabelas tem obrigatoriamente de ser lido neste ponto.

Para identificar o Result-set ao ler e alterar dados e ao encerrar a transação, o servidor SQL atribui uma Handle. A Handle mostra o resultado da consulta visível no programa NC. O valor 0 identifica uma Handle inválida, pelo que não foi possível criar um Result-set para uma consulta. Se nenhumas linhas cumprem a condição indicada, é criado um Result-set vazio numa Handle válida.

Vista geral dos comandos SQL

O comando oferece os seguintes comandos SQL:

Sintaxe

Função

Mais informações

SQL BIND

SQL BIND cria ou suprime a ligação entre as colunas da tabela e os parâmetros Q ou QS

SQL SELECT

SQL SELECT lê um valor individual de uma tabela, não abrindo nenhuma transação

SQL EXECUTE

SQL EXECUTE abre uma transação com escolha de colunas e linhas da tabela ou permite a utilização de outras instruções SQL (funções auxiliares)

SQL FETCH

SQL FETCH transmite os valores aos parâmetros Q associados

SQL ROLLBACK

SQL ROLLBACK rejeita todas as alterações e encerra a transação

SQL COMMIT

SQL COMMIT guarda todas as alterações e encerra a transação

SQL UPDATE

SQL UPDATE aumenta a transação com a alteração de uma linha existente

SQL INSERT

SQL INSERT cria uma nova linha de tabela

Avisos

 
Aviso
Atenção, perigo de colisão!
Os acessos de leitura e escrita através de comandos SQL realizam-se sempre em unidades métricas, independentemente da unidade de medição escolhida para a tabela e do programa NC.
P. ex., se é guardado um comprimento de uma tabela num parâmetro Q, o valor será sempre métrico em seguida. Se este valor for utilizado posteriormente num programa em polegadas (L X+Q1800), daí resulta uma posição errada.
  1. Nos programas em polegadas, converter sempre os valores lidos antes da utilização
  • Com discos rígidos HDR, para alcançar a máxima velocidade em aplicações de tabelas e favorecer o desempenho do cálculo, a HEIDENHAIN recomenda o emprego de funções SQL em lugar de FN 26, FN 27 e FN 28.