De vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML

Relaterede dokumenter
Views etc. Databaser

DB undervisning 01-01

Introduktion til programmering

Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach 2002

Begrænsninger i SQL. Databaser, efterår Troels Andreasen

1. Basal select med (stjerne)

Introduktion til SQL queries

Data lagring. 2. iteration (implement backend)

Anne Randorff Højen

En opsamling af artefakter for Hotel Databasen som REST-service Bygger på Hotel opgaven i 8 trin

3. semester, 2. projekt: Database

Eksamen, DSDS, efterår 2008

Databaseadgang fra Java

Eksamen, DSDS, efterår 2007

Tagwall med Php & MySQL

En Kort Introduktion til Oracle

Listen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:

Opgave 1. Opret de 4 tabeller i FTSFrontend programmet. Indsæt mindst 3 forskellige tabelværdier i kunder, målerstatus, byer og regning..

Database. lv/

SQL for MySQL-begyndere

Projekt 1 Database. Cphbusiness Lyngby Multimediedesigner, 3. semester mul-a12e, gruppe 1

Øvelse 9. Klasser, objekter og sql-tabeller insert code here

Indholdsfortegnelse Databaser og PHP... 3 Opgave... 4 Opgave... 5 Opgave... 6 Sidste opgave er en lille gæstebog... 7 Kilder og nyttige links:...

Trin 1 INSERT INTO Debitor (DebitorNr, KundeKategori, KreditMax, SidstRykket, Sælger ) VALUES (20121, 10, 40000, NULL, "Bjarne Larsen");

Manglende konsistens i datamodellen og upræcise SQLsætninger er årsagen til, at mange IT-systemer fejler.

Kursus/workshop: SQL

Projekt Database, Gruppe 4A. Projekt 1, 3. Semester D A T A B A S E. Klasse MulA13 Gruppenummer: A4

Projekt 1 - Database. Cphbusiness Lyngby Multimediedesigner, 3. semester. MulB13e, gruppe 4

Jayne Alice Jensen [Link til portfolio]

Skriftlig eksamen i kurset. Informationssystemer

Databasesystemer. Databaser, efterår Troels Andreasen. Efterår 2002

PHP 3 UGERS FORLØB PHP, MYSQL & SQL

Dataanalyse og databaser

PHP Snippets. De små korte. Skrevet af Daniel Pedersen

Sådan får du en kirkegård på nettet i DKI-modellen!

Projekt titel. Projekt navn. Gruppe medlemmer. Klasse/Gruppenummer. Databaseprojekt 1. Ferrari

DOCUMENTATION FULLY DRESSED USE-CASE. 29. oktober 2012 [ TEMA PERSISTENS DOKUMENTATION] Use-case: Process Order

Modul 2 Database projekt Multimediedesign 3. semester Gruppe 3 IRF/TUJE

SQL Server 2016 Data Adgang

SQL Server 2008 Spatiale eksempler. Plan & Miljø, GIS

Eksempel på en database: studenter, kurser, eksamener

MsSQL: Basal performance tuning, part 1

The Design Diaries Project 3 2. Semester. Blog om designprincipper

(fig.1. Eksempel på en almindelig entity)

Håndbog Til CPR services. Bilag 8 GCTP-standard m.m. CPR-kontoret

SQL-opgaver 5 løsning

Database programmerings tips

Gæstebog med validering opbygget med MySQL

Bemærk! Et PHP script har kun brug for at forbinde én gang til databaseserveren. Det kan så sagtens udføre flere kommandoer vha. denne forbindelse.

Relationel Algebra og SQL

Databasesystemer. IT Universitetet i København 8. juni 2006

Selection Udvælgelse. For at markere mere end en polygon, holdes Ctrl samtidig. Klik på næste polygon. Gentag for i alt 5 polygoner.

Projekt database. 3 Semester - Mul a Projekt 1. Yaser Osman cph-mo102@cphbusiness.dk. Dan Eskildsen cph-de32@cphbusiness.dk

MapBasic brugergruppe. Geografiske objekter. Peter Horsbøll Møller Senior Systems Engineer April 2013

Databaser Obligatorisk opgave 1

FKG datamodellen Version Implementeringsguidelines. FKG datamodellen Version Implementeringsguidelines

Database design for begyndere

Database tips. Den forudsætter lidt kendskab til SQL men er for mindre erfarne. Denne guide er oprindeligt udgivet på Eksperten.dk

Søren Løbner (lobner) ddb Databaser

Hvad er en relationsdatabase? Odense, den 19. januar Version 1.0

Database optimering - Indeks

Karens lille vejledning til Access

! Kia Dahlen. Kamilla Klein, Pia Jensen og Maria Korshøj Andersen.

Anvisning i aflevering af bitemporale data

Skriftlig eksamen i Databaser, Vinter 2001/2002. Pa opfordring har jeg udarbejdet mulige lsninger pa eksamensopgaverne, men

Integration af Postfix, Courier-imap og MySQL

Transkript:

SQL kap 6-7 + 17-20 DDL og DML 1 De vigtigste SQL-sætninger Data Definition Language (DDL) create table: opretter en ny tabel create unique index: tilføjer et index til en tabel drop table : sletter en tabei alter table: tilføjer, sletter eller ændre en tabels kolonne Data Manipulation Language (DML) select: udtrækker, kombinerer og beregner data insert into... values (...): indsætter en række delete from: fjerner rækker fra en tabel update: ændre en række i en tabel 2 Oprette database En database består af en samling af tabeller. CREATE DATABASE databasenavn; Eks: CREATE DATABASE Forening; Flere databaser på samme server, så skal kunne skifte mellem databaser. USE databasenavn; Eks: USE Forening; server foren ing patie nt 3 1

Oprette tabeller Generel syntaks: CREATE TABLE tabelnavn ( attributnavn attributtype [PRIMARY KEY] [AUTO_INCREMENT] [ NOT NULL], attributnavn attributtype [DEFAULT værdi],.. ); 4 De mest anvendte attributtyper Type Indhold Eks. værdi int heltal 107 double reelle 10.1415 varchar(40) tekst (max 40 karakterer) text tekst (ubegrænset, næsten) Lis Jensen Tina Jensen date dato 2007-09-10 time tidspunkt 20:39:01 datetime Dato og tidspunkt 2007-09-10 20:39:01 5 Oprette tabeller eksempel 1 CREATE TABLE postby( postnr SMALLINT UNSIGNED NOT NULL PRIMARY KEY, bynavn VARCHAR(30) NOT NULL ); 6 2

Oprette tabeller eksempel 2 CREATE TABLE medlem( medlemsnr INT PRIMARY KEY AUTO_INCREMENT, navn VARCHAR(40) NOT NULL, vejnavn VARCHAR(30), husnr VARCHAR(5), postnr SMALLINT UNSIGNED, FOREIGN KEY (postnr) REFERENCES postby(postnr) ) ENGINE=INNODB; 7 Ændring af tabeller Tilføj kolonne ALTER TABLE medlem ADD COLUMN telefonnr VARCHAR(8); Slet kolonne ALTER TABLE medlem DROP COLUMN telefonnr; Ændre kolonne ALTER TABLE medlem MODIFY COLUMN telefonnr INT; 8 Vise tabelbeskrivelse og Slette tabeller Vise tabelbeskrivelse DESCRIBE medlem; Slet tabeller DROP TABLE IF EXISTS medlem; DROP TABLE IF EXISTS postby; 9 3

Indsætte data i tabeller Generel syntaks INSERT INTO tabelnavn( kolonne 1, kolonne 2,. VALUES( værdi til kolonne 1, værdi til kolonne 2,. ); 10 Indsætte data eksempel INSERT INTO postby( postnr, bynavn) VALUES( 4500, Køge ); 11 Opdatere data Generel syntaks UPDATE tabelnavn SET kolonne 1 = værdi, kolonne 2 = værdi,.. WHERE betingelse; 12 4

Opdatere tabel eksempel UPDATE postby SET bynavn = KOEGE WHERE postnr = 4500; Update kan ændre Et enkelt felt i en række Flere felter i en række Et eller flere felter i mange rækker Et eller flere felter i alle rækker 13 Slette data Generel syntaks DELETE FROM tabelnavn WHERE betingelse; Delete kan slette En række Flere rækker Alle rækker 14 Slette eksempel DELETE FROM medlem WHERE medlemsnr = 5; 15 5

Udtræk af data Generel syntaks SELECT attributter FROM tabelnavne WHERE betingelser; 16 Udtræk eksempler Udtrækker medlemsnr og navn på alle medlemmer SELECT medlemsnr, navn FROM medlem; Udtrækker alle attributter på alle medlemmer FROM medlem; 17 Udtræk eksempler Udtrækker alle atrributter for medlemmer i Køge FROM medlem WHERE postnr = 4500; 18 6

Absolut adressering og alias Absolut adressering SELECT medlem.medlemsnr, medlem.navn FROM medlem; Alias SELECT m.medlemsnr, m.navn FROM medlem AS m; 19 Sortering af data Postnummer tabel i alfabetisk orden FROM postby ORDER BY bynavn; Postnummer tabel i faldende alfabetisk orden FROM postby ORDER BY bynavn DESC; 20 Intervalbaserede sammenligninger Udtrækker byer med postnumre mellem 4000 og 5000 FROM postby WHERE postnr BETWEEN 4000 and 5000; Kan også laves med: WHERE postnr >= 4000 AND postnr <=5000; 21 7

Listebaserede sammenligninger Udtrækker byer på bestemte postnumre FROM postby WHERE postnr in (4100,4200, 4300); Kan også laves med: WHERE postnr=4100 OR postnr=4200 OR postnr=4300; 22 Parenteser ved kombination af AND og OR Udtræk musik CD fra forlag 1 eller 10 der koster mere en 100 kr FROM musikcd WHERE (forlagid =1 OR forlagid=10) AND pris >100; 23 Søgning på dele af ord Søg alle medlemmer der hedder Thomas til fornavn og bor i Nordjylland FROM medlem WHERE navn LIKE Thomas% and postnr >9000; 24 8

Brug af script-fil I stedet for at skrive SQL kommandoerne som kommando-sprog: Mysql> insert into med mulighed for fejl ;-) Så opret en textfil (f.eks på skrivebordet) med sql koden (brug notesblok) Fra sql prompten kaldes og udføres koden med Mysql> \. filnavn 25 9