SQLHiA SQL Syntaks
SQLHiA SQL SQL (Structured Query Language, uttales: sequel eller ess-que-ell) er et komplett sett av kommandoer for aksess til en relasjons-database. SQL er i dag standard database-språk for relasjons-databaser. SQL benyttes til: - Opprette datase-tabeller - Lagre data - Gjenfinne data - Endre data - Endre tabell-strukturer - Kombinere og beregne data - Ta hånd om database-sikkerhet SQL er mengde-orientert, dvs kan anvendes på en gruppe av records eller enkelt-record. SQL er ikke-prosedyrisk, men kan innebygges i prosedyre-språk.
SQLHiA Typer av SQL-kommandoer (1) Data Definition Commands ( DDL ) Data Manipulation Commands( DML ) Data Query Commands ( DQL ) Transaction Control Commands Data Administation Commands Data Control Commands
SQLHiA Typer av SQL-kommandoer (2) Data Definition Commands ( DDL ) CREATE EVENT CREATE INDEX CREATE SYNONYM CREATE TABLE CREATE TRIGGER CREATE VIEW PROCEDURE Data Manipulation Commands( DML ) DELETE INSERT UPDATE Data Query Commands ( DQL ) SELECT
SQLHiA Typer av SQL-kommandoer (3) Transaction Control Commands COMMIT ROLLBACK SAVEPOINT Data Administration Commands AUDIT MESSAGE START AUDIT STOP AUDIT
SQLHiA Typer av SQL-kommandoer (4) Data Control Commands (1) ALTER DATABASE ALTER DBAREA ALTER PASSWORD ALTER STOGROUP ALTERTABLE ALTERTRIGGER CHECK DATABASE CHECKTABLE COMMENTON
SQLHiA Typer av SQL-kommandoer (5) Data Control Commands (2) CREATE DATABASE CREATEDBAREA CREATEEVENT CREATEINDEX CREATE STOGROUP CREATESYNONYM CREATETABLE CREATETRIGGER CREATEVIEW
SQLHiA Typer av SQL-kommandoer (6) Data Control Commands (3) DBATTRIBUTE DEINSTALL DATABASE DROPDBAREA DROPEVENT DROPINDEX DROPSTOGROUP DROPSYNONYM DROPTABLE DROPTRIGGER DROPVIEW GRANT GRANTEXECUTE ON INSTALLDATABASE LABEL LOAD LOCK DATABASE
SQLHiA Typer av SQL-kommandoer (7) Data Control Commands (4) REVOKE REVOKEEXECUTE ON ROWCOUNT SET DEFAULT STOGROUP UNLOAD UNLOCKDATABASED UPDATE STATISTICS
SQLHiA CREATE TABLE Oppretter en tabell CREATE TABLE ( [ ], [ ],...) Tabell_1 Tabell_2 Tabell_3 Database
SQLHiA Data-typer( SQLBase ) Char(length)Max 254 tegn VarChar(length)Max 254 tegn Long VarCharVilkårlig lengde, tekst og binære data SmallInt[-32768, ]5 siffer Integer[ , ]10 siffer Decimal[(prec, scale)][ , ]15 siffer precision:Totalt ant siffer (5 default) scale:Ant desimaler (0 default) Float[prec]Vilkårlig tall opp til 15 siffer totalt NumberVilkårlig tall opp til 15 siffer totalt DateTimeFormat Day.Time Day ant dager siden Time = Frac part (0 = 12:00 AM) TimeStampSamme som DateTime (DB2 komp.) DateTime part = 0 TimeDate part = 0
SQLHiA INSERT Innsetter en rad i en tabell INSERTtable name view name, (column name ) VALUES(constant) bind variableADJUSTING cursor name system keyword subselect
SQLHiA SELECT SELECTSelectItem ALL, DISTINCT* FROMTableSpecification, WHERESearchCondition GROUP BYGroupingColumn, HAVINGSearchCondition ORDER BYSortSpecification,
SQLHiA UPDATE Oppdaterer en tabell UPDATEtable name view namecorrelation name SETcolumn name=expression NULL WHEREsearch conditionCHECK EXISTS CURRENT OF cursor name
SQLHiA DELETE Sletter rad(er) i en tabell DELETEtable name view namecorrelation name WHEREsearch condition CURRENT OF cursor name
SQLHiA SQL Funksjoner Aggregat funksjoner String funksjoner Date / Time funksjoner Logiske funksjoner Spesielle funksjoner Matematikk funksjoner Finans funksjoner
SQLHiA Aggregat-funksjoner AVGGjennomsnitt COUNTAntall MINMinimum avvik
SQLHiA String tegn til en desimal tegn til første tegn i en en string, gitt et to til string1 i (venstre) av en til små en string, gitt string/tall spesifisert ved y hvis x er av første bokstav i hvert ord til stor av en string med seg selv n tegn i en (høyre) en string etter gitt av tall til en del av en av blanke tegn (innledende og til store fra string til tall
SQLHiA Date / Time til en en i til i en i et dag i en Date / som representerer dag i et av et en date/time verdi fra av av en relativt til dag i år
SQLHiA @LNNaturlige logaritme
SQLHiA Finans perioder for å oppnå en fremtidig verdi av ekvidistante innbetalinger ved av ekvidistante for å vokse til gitt av et års innbetalings-perioder for gitt investering
SQLHiA Spesielle en verdi basert på verdi av en hexadesimal av et en string, gitt et string fra et basert på internasjonalt tegn-sett
SQLHiA Logiske og returnerer 1 hvis TRUE, 2 hvis TRUE hvis NULL
SQLHiA UNLOAD Laster data fra en database ut til en fil av gitt format UNLOADSQL‘file name’source table COMPRESSDATACONTROL ‘file name’OVERWRITE ALL ASCII‘file name’source table DATACONTROL ‘file name’OVERWRITE DIF‘file name’source table DATACONTROL ‘file name’OVERWRITE DATABASE‘file name’ COMPRESSSHEMACONTROL ‘file name’OVERWRITE ALL ONCLIENTLOG ‘logfile name’ SERVER
SQLHiA LOAD Laster data fra en fil av gitt format inn til en tabell i databasen LOADSQL‘file name’ COMPRESSCONTROL ‘file name’ ASCII‘file name’table name CONTROL ‘file name’ DIF‘file name’ CONTROL ‘file name’table name ONCLIENTLOG ‘logfile name’START AT line SERVER
SQLHiA ALTER TABLE Endrer på kolonne-strukturen i en tabell ALTER TABLEtable name, DROPcolumn name ADDcolumn namedata type (size)NOT NULL NOT NULL WITH DEFAULT, RENAMEcolumn namenew name TABLEnew name, MODIFYcolumn name data type (length)NULL NOT NULL NOT NULL WITH DEFAULT
SQLHiA ALTER TABLE (Referential Integrity) Endrer på PRIMARY KEY / FOREIGN KEY strukturen i en tabell ALTER TABLEtable name, PRIMARY KEY( column name) DROP, FOREIGN KEY ( column name ) REFERENCES parent table name DROPforeign key name ON DELETERESTRICT CASCADE SET NULL
SQLHiA ALTER TABLE (Error Message) Endrer på USERERROR strukturen i en tabell ALTER TABLEtable name ADDUSERERRORerror number DROP MODIFY FOR‘DELETE_PARENT’OFPRIMARY KEY ‘UPDATE_PARENT’FOREIGN KEYkey name ‘UPDATE_DEPENDENT’
SQLHiA ALTER TRIGGER Enable / Disable en trigger ALTERTRIGGERtrigger nameENABLE DISABLE
SQLHiA COMMIT Commits alle endringene til databasen siden forrige COMMIT eller ROLLBACK. Commits gjelder alle SqlHandles / Cursors som gjeldende applikasjon har koblet opp mot databasen. COMMIT WORKTRANSACTION FORCE
SQLHiA ROLLBACK Omgjør siste transaksjon ROLLBACK savepoint identifier TRANSACTION FORCE
SQLHiA SAVEPOINT Genererer SAVEPOINT til bruk ved ROLLBACK SAVEPOINT savepoint identifier
SQLHiA CREATE INDEX Oppretter en indeks CREATEINDEX index name UNIQUECLUSTERED HASHED, ON table name(column name) ASC DESC PCTFREE integer constantSIZE integer valueROWS BUCKETS Max size=6+number of+sum of<=255 columns inlength of all indexcolumns in index
SQLHiA CREATE SYNONYM Oppretter synonym (alias) navn til en tabell CREATESYNONYM synonym name PUBLIC FORtable name authorization IDview name
SQLHiA ROWCOUNT Returnerer antall rader i en tabell ROWCOUNT tablename
SQLHiA UNION Genererer resultatsett som union av multiple SELECT UNION ALL select command, ORDER BYinteger constant ASC DESC SELECT … UNION ALL SELECT … UNION ALL SELECT …... Duplikater blir ikke eliminert
SQLHiA UPDATE STATISTICS Oppdaterer statistikk-informasjon i databasen. Benyttes til å generere applikasjonsplan. Oppdaterer statistikk-informasjon i databasen. Benyttes til å generere applikasjonsplan. UPDATE STATISTICS INDEX index name, SETsystem catalog column name = expression, DISTINCTCOUNT (index key) = expression TABLE, SETsystem catalog column name = expression DATABASE
SQLHiA Authority Level SYSADM DBA RESOURCE CONNECT
SQLHiA Database Authority, GRANTRESOURCETOAuthID DBA,, CONNECT TOAuthIDIDENTIFIED BYPassword
SQLHiA Table Privileges, GRANTALL SELECT INSERT DELETE INDEX ALTER UPDATE, ( ColumnName ),, ONTableNameTOAuthID ViewNamePUBLIC
SQLHiA SAL funksjonalitet i SQLBase (1) SqlClearImmediateDisconnect Sql Handle benyttet av SqlImmediate SqlCloseLukker en navngitt cursor SqlCommitCommit gjeldende SQL transaksjon SqlConnectConnect en Sql Handle til en database SqlDisconnectDisconnect en Sql Handle fra en database SqlDropStoredCmdSletter en lagret kommando eller lagret prosedyre SqlErrorHenter gjeldende error kode for gitt Sql Handle SqlExecuteEksekverer et SQL statement, lagret kommendo eller lagret prosedyre SqlExistsSjekker eksistens av spesifisert(e) rad(er) SqlFetchNextHenter neste rad i et resultatsett SqlFetchPreviousHenter forrige rad i et resultatsett SqlFetchRowHenter gitt rad i et resultatsett SqlGetErrorPositionReturnerer offset i en error innen et SQL statement SqlGetErrorTextReturnerer error-tekst for et gitt SQL error number SqlGetModifiedRowsReturnerer antall endrete rader i en INSERT, UPDATE eller DELETE SqlGetParameterReturnerer en databaseparameter SqlGetParameterAllReturnerer en databaseparameter SqlGetResultSetCountReturnerer antall rader i et resultatsett SqlGetRollbackFlagReturnerer database rollback flag
SQLHiA SAL funksjonalitet i SQLBase (2) SqlImmediateKompilerer og eksekverer et SQL statement SqlOpenNavngir en cursor og eksekverer et SQL statement SqlPrepareKompilerer et SQL statement eller ikke-lagret prosedyre SqlPrepareAndExecuteKompilerer og eksekverer et SQL statement eller ikke-lagret prosedyre SqlRetrieveHenter en lagret kommando eller lagret prosedyre SqlSetIsolationLevelSetter isolasjonsnivå SqlSetLockTimeoutSetter timeout periode for venting på en lås SqlSetParameterSetter en database parameter SqlSetParameterAllSetter en database parameter SqlSetResultSetSetter resultatsett mode på/av SqlStorKompilerer og lagrer en kommando eller prosedyre
SQLHiA Relaterte SQLTalk kommandoer ERASESletter en lagret kommando eller lagret prosedyre EXECUTEEksekverer en lagret kommando eller lagret prosedyre PERFORMEksekverer enten en preparert SQL kommando / lagret prosedyre eller gjenfinner en lagret kommando / lagret prosedyre PREPAREKompilerer en SQL kommando eller ikke-lagret prosedyre SET TRACEEnable/Diasable statement tracing SET TRACEFILETrace output til server-fil eller servers aktivitets-skjerm SHOW TRACEViser enabling/disabling av TRACE SHOW TRACEFILEViser trace output (server-fil eller aktivitets-skjerm) STOREKompilerer og lagrer en kommando eller prosedyre i systemkatalogene (og dens eksekveringsplan for seinere eksekvering)
SQLHiA End