Grunnlag

Bruk

Når du vil ha tilgang til numerisk eller alfanumerisk innhold i en tabell eller vil manipulere tabellene (f.eks. gi nytt navn til kolonner eller linjer), kan du bruke de tilgjengelige SQL-kommandoene.

Syntaksen til SQL-kommandoene som er tilgjengelige internt i styringen, er basert på programmeringsspråket SQL, men stemmer likevel ikke fullstendig overens med det. I tillegg støtter ikke styringen hele omfanget til SQL-språket.

Forutsetninger

  • Nøkkeltall 555343
  • Tabell tilgjengelig
  • Egnet tabellnavn
  • Navnene på tabeller og tabellkolonner, må begynne med en bokstav og må ikke inneholde noen regnetegn, f.eks. +. Disse tegnene kan føre til problemer på grunn av SQL-kommandoer ved innlesing eller utlesing av data.

Funksjonsbeskrivelse

I NC-programvaren får du tilgang til tabellene via en SQL-server. Denne serveren blir styrt med de tilgjengelige SQL-kommandoene. Du kan definere SQL-kommandoene direkte i et NC-program.

Serveren er basert på en transaksjonsmodell. En transaksjon består av flere trinn som utføres samtidig, og som dermed garanterer en ordnet og definert behandling av tabellpostene.

SQL-kommandoene fungerer i driftsmodus Programkjøring og applikasjonen Slett.

  • Eksempel på en transaksjon:
  • Tilordne Q-parametere til tabellkolonnene for lese- og skrivetilgang med SQL BIND
  • Velg data med SQL EXECUTE med setningen SELECT
  • Les, endre eller legg til data med SQL FETCH, SQL UPDATE eller SQL INSERT
  • Bekreft eller forkast interaksjonen med SQL COMMIT eller SQL ROLLBACK
  • Frigi bindinger mellom tabellkolonner og Q-parametere med SQL BIND
 
Tip

Avslutt alle begynte transaksjoner, også selv om du bare har lesetilgang. Det er bare avslutningen av transaksjonene som sikrer at endringene og utvidelsene blir overført, at sperrene blir opphevet og at de brukte ressursene blir frigitt.

Resultatsettet beskriver resultatmengden til en tabellfil. En forespørsel med SELECT definerer resultatmengden.

Resultatsettet oppstår når forespørselen utføres i SQL-serveren og opptar ressurser der.

Denne forespørselen fungerer som et filter for tabellen og gjør bare en del av datapostene synlige. For å gjøre det mulig å utføre forespørselen må tabellfilen nødvendigvis leses på dette punktet.

For å identifisere resultatsettet ved lesing og endring av data og når transaksjonen skal avsluttes, tilordner SQL-serveren en Handle. Handle viser resultatet til forespørselen som er synlig i NC-programmet. Verdien 0 indikerer en ugyldig Handle. Det betyr at det ikke kunne opprettes et resultatsett for en forespørsel. Når ingen linjer oppfyller den angitte betingelsen, blir det opprettet et tomt resultatsett under en gyldig Handle.

Oversikt over SQL-kommandoer

Styringen har følgende SQL-kommandoer:

Syntaks

Funksjon

Mer informasjon

SQL BIND

SQL BIND oppretter eller sletter forbindelser mellom tabellkolonner og Q- eller QS-parametere

SQL SELECT

SQL SELECT leser ut en enkeltverdi fra en tabell, men åpner ikke en transaksjon

SQL EXECUTE

SQL EXECUTE åpner en transaksjon ved valg av tabellkolonner og tabellinjer eller muliggjør bruk av ytterligere SQL-setninger (tilleggsfunksjoner)

SQL FETCH

SQL FETCH overfører verdiene til de bundne Q-parameterne

SQL ROLLBACK

SQL ROLLBACK forkaster alle endringer og lukker transaksjonen

SQL COMMIT

SQL COMMIT lagrer alle endringer og lukker transaksjonen

SQL UPDATE

SQL UPDATE utvider transaksjonen med endringen av en eksisterende linje

SQL INSERT

SQL INSERT oppretter en ny tabellinje

Tips:

 
Merknad
Kollisjonsfare!
Lese- og skrivetilgang ved hjelp av SQL-kommandoer skjer alltid med metriske enheter, uavhengig av den valgte måleenheten til tabellen og NC-programmet.
Hvis du f.eks. lagrer en lengde fra en tabell i en Q-parameter, er verdien deretter alltid metrisk. Hvis denne verdien deretter blir brukt til programmering i et Inch-program (L X+Q1800), fører det til en feil posisjon.
  1. Omregn de leste verdiene før bruk i Inch-programmene
  • For å oppnå maksimal hastighet med HDR-disker i tabellprogrammer og for å skåne regnefunksjonen, anbefaler HEIDENHAIN å bruke SQL-funksjoner i stedet for FN 26, FN 27 og FN 28.