Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
SQL SQL Syntaks SQL HiA 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. SQL HiA 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 SQL HiA Typer av SQL-kommandoer (2) • Data Definition Commands CREATE EVENT CREATE INDEX CREATE SYNONYM CREATE TABLE CREATE TRIGGER CREATE VIEW PROCEDURE ( DDL ) • Data Manipulation Commands ( DML ) DELETE INSERT UPDATE • Data Query Commands SELECT SQL ( DQL ) HiA Typer av SQL-kommandoer (3) • Transaction Control Commands COMMIT ROLLBACK SAVEPOINT • Data Administration Commands AUDIT MESSAGE START AUDIT STOP AUDIT SQL HiA Typer av SQL-kommandoer (4) • Data Control Commands (1) ALTER DATABASE ALTER DBAREA ALTER PASSWORD ALTER STOGROUP ALTER TABLE ALTER TRIGGER CHECK DATABASE CHECK TABLE COMMENT ON SQL HiA Typer av SQL-kommandoer (5) • Data Control Commands (2) CREATE DATABASE CREATE DBAREA CREATE EVENT CREATE INDEX CREATE STOGROUP CREATE SYNONYM CREATE TABLE CREATE TRIGGER CREATE VIEW SQL HiA Typer av SQL-kommandoer (6) • Data Control Commands (3) DBATTRIBUTE DEINSTALL DATABASE DROP DBAREA DROP EVENT DROP INDEX DROP STOGROUP DROP SYNONYM DROP TABLE DROP TRIGGER DROP VIEW GRANT GRANT EXECUTE ON INSTALL DATABASE LABEL LOAD LOCK DATABASE SQL HiA Typer av SQL-kommandoer (7) • Data Control Commands (4) REVOKE REVOKE EXECUTE ON ROWCOUNT SET DEFAULT STOGROUP UNLOAD UNLOCK DATABASED UPDATE STATISTICS SQL HiA CREATE TABLE Oppretter en tabell CREATE TABLE <TableName> (<ColumnName> <DataType>[<Size>], <ColumnName> <DataType>[<Size>], ...) Database Tabell_1 Tabell_2 Tabell_3 SQL HiA Data-typer ( SQLBase ) Char(length) VarChar(length) Long VarChar Max 254 tegn Max 254 tegn Vilkårlig lengde, tekst og binære data SmallInt Integer Decimal[(prec, scale)] [-32768, +32767] 5 siffer [-2147483648, + 2147483647] 10 siffer [-999....., + 999.....] 15 siffer precision: Totalt ant siffer (5 default) scale: Ant desimaler (0 default) Vilkårlig tall opp til 15 siffer totalt Vilkårlig tall opp til 15 siffer totalt Format Day.Time Day ant dager siden 10.12.1899 Time = Frac part (0 = 12:00 AM) Samme som DateTime (DB2 komp.) Time part = 0 Date part = 0 Float[prec] Number DateTime TimeStamp Date Time SQL HiA INSERT Innsetter en rad i en tabell INSERT VALUES table name view name ( , ( column name ) constant bind variable system keyword ) ADJUSTING cursor name subselect SQL HiA SELECT SELECT ALL DISTINCT FROM SelectItem , * TableSpecification , WHERE SearchCondition GROUP BY GroupingColumn , HAVING SearchCondition ORDER BY SQL SortSpecification , HiA UPDATE Oppdaterer en tabell UPDATE SQL table name view name correlation name SET column name = expression NULL WHERE search condition CURRENT OF cursor name CHECK EXISTS HiA DELETE Sletter rad(er) i en tabell DELETE WHERE SQL table name view name correlation name search condition CURRENT OF cursor name HiA SQL Funksjoner • • • • • • • SQL Aggregat funksjoner String funksjoner Date / Time funksjoner Logiske funksjoner Spesielle funksjoner Matematikk funksjoner Finans funksjoner HiA Aggregat-funksjoner AVG COUNT MAX @MEDIAN MIN SUM @SDV SQL Gjennomsnitt Antall Maksimum Middelverdi Minimum Sum Standard avvik HiA String funksjoner @CHAR @CODE @DECODE @EXACT @FIND @LEFT @LENGTH @LOWER @MID @NULLVALUE @PROPER @REPEAT @REPLACE @RIGHT @SCAN @STRING @SUBSTRING @TRIM @UPPER @VALUE SQL ASCII tegn til en desimal kode ASCII tegn til første tegn i en string Returnerer en string, gitt et uttrykk Sammenligner to stringer Posisjon til string1 i string2 Første (venstre) substring Lengden av en string Omgjøring til små bokstaver Returnerer en string, gitt startpunkt Returnerer string/tall spesifisert ved y hvis x er NULL Omgjøring av første bokstav i hvert ord til stor bokstav Konkatenering av en string med seg selv n ganger Erstatter tegn i en string Siste (høyre) substring Søker en string etter gitt mønster Omgjøring av tall til string Returnerer en del av en string Redusering av blanke tegn (innledende og multiple) Omgjøring til store bokstaver Omgjøring fra string til tall HiA Date / Time funksjoner @DATE @DATETOCHAR @DATEVALUE @DAY @HOUR @MICROSECOND @MINUTE @MONTH @MONTHBEG @NOW @QUARTER @QUARTERBEG @SECOND @TIME @TIMEVALUE @WEEKBEG @WEEKDAY @YEAR @YEARBEG @YEARNO SQL Konvertering til dato Edit en dato Edit en dato Dag i måneden Time til en dag Mikrosekund Minutt i en time Måneden i et år Første dag i en måned Gjeldende Date / Time Tall som representerer kvartal Første dag i et kvartal Sekunder av et minutt Returnerer date/time Returnerer en date/time verdi fra hh:mm:ss Mandag av uke Dag av en uke År relativt til 1900 Første dag i året Kalender år HiA Matematikk funksjoner @ABS @ACOS @ASIN @ATAN @ATAN2 @COS @EXP @FACTORIAL @INT @LN @LOG @MOD @PI @ROUND @SIN @SQRT @TAN SQL Absolutt-verdi Arcus cosinus Arcus sinus Arcus tangens To-kvadrant arcus tangens Cosinus Eksponential-funksjon Fakultet Heltallsdel Naturlige logaritme 10’er logaritme Divisjonsrest Tallet Pi (=3.14159265...) Avrunding Sinus Kvadratrot Tangens HiA Finans funksjoner @CTERM @FV @PMT @PV @RATE @SLN @SYD @TERM SQL Antall perioder for å oppnå en fremtidig verdi Fremtidig verdi av ekvidistante innbetalinger Periodiske innbetalinger ved nedbetaling Verdi av ekvidistante innbetalinger Renter for å vokse til gitt beløp Rettlinjet verdi-foringelse Sum av et års verdi-foringelse Antall innbetalings-perioder for gitt investering HiA Spesielle funksjoner @CHOOSE @DECIMAL @DECRYPT @DECODE @HEX @LICS SQL Velger en verdi basert på korrelasjon Desimal verdi av en hexadesimal string Dekrypting av et passord Returnerer en string, gitt et uttrykk Hexadesimal string fra et desimal-tall Sortering basert på internasjonalt tegn-sett HiA Logiske funksjoner @IF @ISNA SQL Tester og returnerer 1 hvis TRUE, 2 hvis FALSE Returnerer TRUE hvis NULL HiA UNLOAD Laster data fra en database ut til en fil av gitt format UNLOAD SQL COMPRESS DATA ASCII DATA DIF DATA COMPRESS ON SQL CLIENT SERVER ‘file name’ CONTROL ‘file name’ OVERWRITE ‘file name’ CONTROL ‘file name’ ‘file name’ CONTROL ‘file name’ DATABASE SHEMA ALL source table ALL source table OVERWRITE source table OVERWRITE ‘file name’ CONTROL ‘file name’ OVERWRITE LOG ‘logfile name’ HiA LOAD Laster data fra en fil av gitt format inn til en tabell i databasen LOAD SQL COMPRESS ON SQL ‘file name’ CONTROL ‘file name’ ASCII ‘file name’ CONTROL ‘file name’ DIF ‘file name’ CONTROL ‘file name’ CLIENT SERVER LOG ‘logfile name’ table name table name START AT line HiA ALTER TABLE Endrer på kolonne-strukturen i en tabell ALTER TABLE table name DROP , column name ADD column name data type (size) RENAME , column name TABLE NOT NULL NOT NULL WITH DEFAULT new name new name , MODIFY column name data type (length) SQL NULL NOT NULL NOT NULL WITH DEFAULT HiA ALTER TABLE (Referential Integrity) Endrer på PRIMARY KEY / FOREIGN KEY strukturen i en tabell ALTER TABLE table name PRIMARY KEY , ( column name ) DROP , , ( column name ) REFERENCES parent table name FOREIGN KEY SQL DROP foreign key name ON DELETE RESTRICT CASCADE SET NULL HiA ALTER TABLE (Error Message) Endrer på USERERROR strukturen i en tabell ALTER TABLE table name ADD DROP MODIFY USERERROR FOR SQL error number ‘DELETE_PARENT’ ‘UPDATE_PARENT’ ‘UPDATE_DEPENDENT’ OF PRIMARY KEY FOREIGN KEY key name HiA ALTER TRIGGER Enable / Disable en trigger ALTER TRIGGER SQL trigger name ENABLE DISABLE HiA 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 WORK SQL TRANSACTION <id> FORCE HiA ROLLBACK Omgjør siste transaksjon ROLLBACK savepoint identifier TRANSACTION <id> FORCE SQL HiA SAVEPOINT Genererer SAVEPOINT til bruk ved ROLLBACK SAVEPOINT savepoint identifier SQL HiA CREATE INDEX Oppretter en indeks CREATE INDEX index name UNIQUE ON table name CLUSTERED HASHED , ( column name ) ASC DESC PCTFREE integer constant SIZE integer value Max size = 6 + number of + sum of columns in length of all index columns in index SQL ROWS BUCKETS <= 255 HiA CREATE SYNONYM Oppretter synonym (alias) navn til en tabell CREATE SYNONYM synonym name PUBLIC FOR authorization ID SQL table name view name HiA ROWCOUNT Returnerer antall rader i en tabell ROWCOUNT tablename SQL HiA UNION Genererer resultatsett som union av multiple SELECT UNION ALL select command ORDER BY , integer constant ASC DESC SELECT … UNION ALL SELECT … UNION ALL SELECT … ... SQL Duplikater blir ikke eliminert HiA UPDATE STATISTICS Oppdaterer statistikk-informasjon i databasen. Benyttes til å generere applikasjonsplan. UPDATE STATISTICS INDEX index name SET , system catalog column name = expression , DISTINCTCOUNT (index key) = expression TABLE SET , system catalog column name = expression DATABASE SQL HiA Authority Level SYSADM DBA RESOURCE CONNECT SQL HiA Database Authority GRANT RESOURCE TO , AuthID DBA , CONNECT TO AuthID SQL IDENTIFIED BY , Password HiA Table Privileges , GRANT ALL SELECT INSERT DELETE INDEX ALTER UPDATE , ( ColumnName ) ON , TableName ViewName SQL TO , AuthID PUBLIC HiA SAL funksjonalitet i SQLBase (1) SqlClearImmediate SqlClose SqlCommit SqlConnect SqlDisconnect SqlDropStoredCmd SqlError SqlExecute SqlExists SqlFetchNext SqlFetchPrevious SqlFetchRow SqlGetErrorPosition SqlGetErrorText SqlGetModifiedRows SqlGetParameter SqlGetParameterAll SqlGetResultSetCount SqlGetRollbackFlag SQL Disconnect Sql Handle benyttet av SqlImmediate Lukker en navngitt cursor Commit gjeldende SQL transaksjon Connect en Sql Handle til en database Disconnect en Sql Handle fra en database Sletter en lagret kommando eller lagret prosedyre Henter gjeldende error kode for gitt Sql Handle Eksekverer et SQL statement, lagret kommendo eller lagret prosedyre Sjekker eksistens av spesifisert(e) rad(er) Henter neste rad i et resultatsett Henter forrige rad i et resultatsett Henter gitt rad i et resultatsett Returnerer offset i en error innen et SQL statement Returnerer error-tekst for et gitt SQL error number Returnerer antall endrete rader i en INSERT, UPDATE eller DELETE Returnerer en databaseparameter Returnerer en databaseparameter Returnerer antall rader i et resultatsett Returnerer database rollback flag HiA SAL funksjonalitet i SQLBase (2) SqlImmediate SqlOpen SqlPrepare SqlPrepareAndExecute SqlRetrieve SqlSetIsolationLevel SqlSetLockTimeout SqlSetParameter SqlSetParameterAll SqlSetResultSet SqlStor SQL Kompilerer og eksekverer et SQL statement Navngir en cursor og eksekverer et SQL statement Kompilerer et SQL statement eller ikke-lagret prosedyre Kompilerer og eksekverer et SQL statement eller ikke-lagret prosedyre Henter en lagret kommando eller lagret prosedyre Setter isolasjonsnivå Setter timeout periode for venting på en lås Setter en database parameter Setter en database parameter Setter resultatsett mode på/av Kompilerer og lagrer en kommando eller prosedyre HiA Relaterte SQLTalk kommandoer ERASE EXECUTE PERFORM PREPARE SET TRACE SET TRACEFILE SHOW TRACE SHOW TRACEFILE STORE SQL Sletter en lagret kommando eller lagret prosedyre Eksekverer en lagret kommando eller lagret prosedyre Eksekverer enten en preparert SQL kommando / lagret prosedyre eller gjenfinner en lagret kommando / lagret prosedyre Kompilerer en SQL kommando eller ikke-lagret prosedyre Enable/Diasable statement tracing Trace output til server-fil eller servers aktivitets-skjerm Viser enabling/disabling av TRACE Viser trace output (server-fil eller aktivitets-skjerm) Kompilerer og lagrer en kommando eller prosedyre i systemkatalogene (og dens eksekveringsplan for seinere eksekvering) HiA End SQL HiA