1
IT
højskolen
i
København
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Uddannelser
10
Forskning
11
Erhvervsliv
12
Presse
13
Om
IT
højskolen
14
Links
15
Kontakt
inter
menu
bund
gif
Aktuelt
på
IT
højskolen
i
København
16
Tilmeld
elektronisk
nyhedsbrev
Informationsmøde
om
diplom
master
og
enkeltfag
17
Læs
IT
på
universitetsniveau
Kom
til
18
informationsmøde
på
IT
højskolen
tirsdag
den
15
maj
kl
19
21
og
hør
mere
om
vores
Åben
Uddannelsesprogram
Nyhed
oprettet
27
04
01
Informationsdag
om
kandidatuddannelsen
19
Læs
IT
på
universitetsniveau
Kom
til
20
informationsdag
på
IT
højskolen
fredag
den
18
maj
og
hør
mere
om
vores
kandidatuddannelse
Nyhed
oprettet
27
04
01
Virksomhedsregnskab
2000
21
IT
højskolens
virksomhedsregnskab
2000
er
nu
at
finde
her
på
websiderne
Nyhed
oprettet
25
04
01
Kursusevalueringen
22
Resultaterne
er
tilgængelige
for
alle
Intranetbrugere
Nyhed
oprettet
23
04
01
Ph
d
kursus
23
Topics
in
Language
Based
Security
v
Assistant
Professor
Greg
Morrisett
Cornell
University
June
11
15
2001
Nyhed
oprettet
20
04
01
Ph
d
kursus
24
Streaming
video
for
wireless
networks
v
Professor
K
J
Ray
Liu
University
of
Maryland
17
5
23
5
2001
Nyhed
oprettet
19
04
01
Ph
d
kursus
25
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
v
Professor
James
Damon
University
of
North
Carolina
14
5
17
5
2001
Nyhed
oprettet
07
03
01
LinuxLab
dk
26
LinuxLab
dk
på
IT
højskolen
er
Danmarks
største
Open
Source
initiativ
27
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
28
wwwadm
it
c
dk
1
IT
højskolen
Stillinger
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
13
Associate
or
Assistant
Professorships
10
Datalog
civilingeniør
inter
menu
bund
gif
Stillinger
Stillinger
på
IT
højskolen
Her
kan
du
se
en
oversigt
over
opslåede
stillinger
på
IT
højskolen
Alle
stillinger
på
IT
højskolen
opslås
her
på
hjemmesiden
11
13
Associate
or
Assistant
Professorships
12
Datalog
civilingeniør
13
Information
om
Ph
D
studiet
Under
de
enkelte
stillinger
er
der
angivet
kontaktperson
vilkår
ansøgningsfrister
o
lign
Hvis
du
har
generelle
spørgsmål
om
stillinger
ved
IT
højskolen
kan
du
kontakte
personalechef
Kirsten
Talbro
Laraignou
på
telefon
38
16
88
03
eller
på
mail
14
ktl
it
c
dk
Eventuelle
uopfordrede
ansøgninger
bedes
sendt
til
IT
højskolen
Personaleafdelingen
Glentevej
67
2400
København
NV
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
i
København
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Uddannelser
10
Forskning
11
Erhvervsliv
12
Presse
13
Om
IT
højskolen
14
Links
15
Kontakt
inter
menu
bund
gif
Aktuelt
på
IT
højskolen
i
København
16
Tilmeld
elektronisk
nyhedsbrev
Informationsmøde
om
diplom
master
og
enkeltfag
17
Læs
IT
på
universitetsniveau
Kom
til
18
informationsmøde
på
IT
højskolen
tirsdag
den
15
maj
kl
19
21
og
hør
mere
om
vores
Åben
Uddannelsesprogram
Nyhed
oprettet
27
04
01
Informationsdag
om
kandidatuddannelsen
19
Læs
IT
på
universitetsniveau
Kom
til
20
informationsdag
på
IT
højskolen
fredag
den
18
maj
og
hør
mere
om
vores
kandidatuddannelse
Nyhed
oprettet
27
04
01
Virksomhedsregnskab
2000
21
IT
højskolens
virksomhedsregnskab
2000
er
nu
at
finde
her
på
websiderne
Nyhed
oprettet
25
04
01
Kursusevalueringen
22
Resultaterne
er
tilgængelige
for
alle
Intranetbrugere
Nyhed
oprettet
23
04
01
Ph
d
kursus
23
Topics
in
Language
Based
Security
v
Assistant
Professor
Greg
Morrisett
Cornell
University
June
11
15
2001
Nyhed
oprettet
20
04
01
Ph
d
kursus
24
Streaming
video
for
wireless
networks
v
Professor
K
J
Ray
Liu
University
of
Maryland
17
5
23
5
2001
Nyhed
oprettet
19
04
01
Ph
d
kursus
25
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
v
Professor
James
Damon
University
of
North
Carolina
14
5
17
5
2001
Nyhed
oprettet
07
03
01
LinuxLab
dk
26
LinuxLab
dk
på
IT
højskolen
er
Danmarks
største
Open
Source
initiativ
27
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
28
wwwadm
it
c
dk
1
IT
højskolen
Aktiviteter
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
inter
menu
bund
gif
Aktivitetskalender
03
05
2001
IT
højskolen
Glentevej
65
Karrieredag
for
dimmitender
IT
Højskolen
får
besøg
af
en
række
førende
IT
virksomheder
som
kan
diskutere
jobprofiler
muligheder
med
kommende
dimmitender
15
05
2001
19
21
IT
højskolen
Glentevej
65
Informationsmøde
for
åben
uddannelse
Hør
om
mulighederne
for
master
diplom
og
enkeltfagsuddannelser
på
IT
Højskolen
18
05
2001
IT
højskolen
Glentevej
65
Informationsdag
for
kandidatuddannelserne
Der
vil
for
og
eftermiddag
være
mulighed
for
at
høre
om
IT
Højskolen
uddannelser
og
linjer
om
adgangskrav
om
ansøgningsprocedure
og
mulighed
for
at
tage
en
snak
med
en
studievejleder
15
06
2001
Kl
12
00
IT
højskolen
Glentevej
65
Ansøgningsfrist
for
kandidat
master
og
diplomuddannelserne
01
08
2001
Kl
12
00
IT
højskolen
Glentevej
65
Ansøgningsfrist
for
enkeltfagskurserne
9
USEMAP
inter
icon2top
gif
opdateret
30
04
2001
10
wwwadm
it
c
dk
1
IT
højskolen
Find
person
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Hvem
underviser
på
hvilke
linier
inter
menu
bund
gif
Find
medarbejder
e
Ændringer
og
rettelser
vedr
ansatte
send
email
til
10
Bianca
Small
Fornavn
efternavn
eller
dele
heraf
Stilling
Alle
Ansættelsessted
Alle
Afdeling
Alle
afdelinger
Søg
Find
studerende
Ændringer
og
rettelser
vedr
studerende
send
email
til
11
Annette
Linvald
Fornavn
efternavn
eller
dele
heraf
Immatrikuleret
Alle
Linie
Alle
Søg
Søgning
i
indhold
Brug
enten
SiteMap
eller
lav
fritekstsøgning
i
dokumentet
med
12
det
samlede
site
indhold
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
SiteMap
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
inter
menu
bund
gif
Oversigt
over
IT
C
siten
9
Stillinger
10
13
Associate
or
Assistant
Professorships
11
Datalog
civilingeniør
12
Kontakt
13
Uddannelser
14
Kandidatuddannelser
o
15
Design
Kommunikation
og
Medier
16
John
Paulin
Hansen
17
DKM
Design
Kommunikation
og
Medier
18
Studiet
på
DKM
19
Projekter
20
Ansatte
ved
DKM
21
DKMs
Fakultetsklub
22
DKMs
Fagudvalg
23
DKM
s
faglighed
o
24
Elektronisk
Handel
25
Kim
Viborg
Andersen
26
Læs
mere
om
Elektronisk
handel
o
27
Internetteknologi
28
Thomas
T
Hildebrandt
29
Internetteknologilinien
30
Studiet
på
Internetteknologilinien
31
Fagområderne
på
Internetteknologilinien
32
Semesterets
gang
33
Studiets
struktur
34
Kernekurser
på
Internetteknologi
foråret
2001
35
Specialeforberedende
kurser
på
internetteknologi
foråret
2001
36
Anbefalede
studieforløb
37
De
studerende
38
Fagudvalg
39
Erhvervsmuligheder
40
Internetværktøjer
med
mere
41
Internetteknologiseminarer
42
Internetteknologiseminar
E2000
43
Internetteknologiseminar
F2000
44
Projekter
på
Internetteknologi
o
45
Softwareudvikling
46
Søren
Lauesen
linjeleder
SWU
47
Fritz
Henglein
underviser
på
SWU
48
Læs
mere
om
Softwareudvikling
o
49
Multimedieteknologi
50
John
Aa
Sørensen
51
Læs
mere
om
Multimedieteknologi
o
52
Tværfaglig
IT
53
Læs
mere
om
Tværfaglig
IT
o
54
Søg
om
optagelse
o
55
Informationsdag
om
kandidatuddannelsen
o
56
Enkeltfag
o
57
Uddannelseskatalog
58
En
bred
vifte
af
IT
uddannelser
og
enkeltfag
for
erhvervsaktive
o
59
Masteruddannelser
60
Design
Kommunikation
og
Medier
61
John
Paulin
Hansen
62
Mere
om
DKM
63
Internetteknologi
64
Thomas
Hildebrandt
65
Mere
om
INT
66
Multimedieteknologi
67
Mads
Nielsen
68
Læs
mere
om
Multimedieteknologi
69
Softwareudvikling
70
Søren
Lauesen
71
Fokus
på
principper
72
Læs
mere
om
Softwareudvikling
73
Fleksibel
undervisning
74
Kurser
efterår
2000
75
Kurser
foråret
2001
76
Optagelsesbetingelser
op
masteruddannelserne
o
77
Diplomuddannelsen
78
Fagligt
indhold
i
diplomuddannelsen
i
informationsteknologi
79
Diplomuddannelsens
struktur
80
Fleksibel
undervisning
81
Kurser
forår
2001
82
Optagelsesbetingelser
på
diplomuddannelsen
83
Jens
Christian
Godskesen
o
84
Enkeltfag
under
Åben
Uddannelse
o
85
Uddannelseskatalog
o
86
Informationsmøde
o
87
Fleksibel
undervisning
88
Kurser
o
89
Kursusbog
o
90
Kursernes
hjemmesider
o
91
Kursusevaluering
o
92
Tidligere
kurser
93
Kurser
efteråret
2000
94
Ph
D
95
IT
højskolens
vision
o
96
Socialt
liv
o
97
Studenterprojekter
o
98
Praktik
o
99
Udenlandsophold
o
100
Studerende
fortæller
101
Har
ikke
fortrudt
102
Høj
energi
og
hårdt
arbejde
103
I
det
teknologiske
grænseland
104
Jeg
vælger
mine
egne
udfordringer
105
Får
nye
input
106
Studievejledning
o
107
Ofte
stillede
spørgsmål
o
108
Uddannelseskatalog
109
Love
og
regler
o
110
Uddannelseskatalog
o
111
Udenlandsophold
o
112
Praktikpladser
o
113
ECTS
114
Søg
om
optagelse
o
115
Optagelsesregler
116
Forskning
117
Visioner
og
mål
118
Publikationer
119
Eksterne
undervisere
o
120
Ekstern
lektor
Lise
Jensen
121
Lars
Birkedal
122
Ph
D
studies
o
123
Lisbeth
Klastrup
o
124
Application
o
125
The
Academic
Board
for
Ph
D
studies
126
Mødekalender
o
127
Funding
o
128
Ph
D
courses
129
Course
in
advanced
data
structures
130
Ph
D
seminar
in
information
theory
131
DAIMI
IT
C
Meeting
Series
132
Topics
in
Language
Based
Security
133
Avanceret
algoritmik
134
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
135
Constructive
Logic
Project
F2001
136
Streaming
video
for
wireless
networks
137
Erhvervssamarbejde
138
Vision
og
mål
139
Forskningssamarbejde
140
Projekter
specialer
og
praktik
o
141
IT
højskolens
Projektbørs
o
142
Projektbørs
efterår
2000
o
143
Eksempler
på
relevante
projekter
o
144
Praktikpladser
145
BuzzTalks
åbne
foredrag
o
146
Program
efterår
2000
o
147
Program
forår
2001
148
Patent
på
software
International
trussel
eller
dansk
mulighed
149
Beyond
e
magination
go
wireless
150
Softwareudvikling
en
videnskab
og
et
håndværk
151
Personalized
search
on
the
web
152
De
gamle
vinder
i
den
nye
økonomi
153
Hvordan
opdager
man
et
hacker
angreb
Om
forskningsproblemer
ved
intrusion
detection
154
Evaluator
effekten
Et
ubehageligt
faktum
om
teknikker
til
test
af
brugervenlighed
155
Mobile
Internet
OBS
Aflyst
pga
sygdom
156
IBM
Research
Global
Technology
Outlook
157
5
tips
til
at
undgå
IT
fiasko
158
The
problematic
of
using
IT
for
pedagogic
purposes
159
XML
Visionen
160
Superchannel
og
Karlskrona2
Relationel
kunst
på
Internettet
161
Pressemeddelelser
og
pressekontakt
162
Pressearkiv
o
163
Flere
kvinder
på
IT
uddannelser
o
164
LinuxLab
på
IT
højskolen
165
Fakta
og
nøgletal
166
Bestyrelse
og
direktion
167
Baggrunden
for
IT
højskolen
168
Billedarkiv
169
Om
IT
højskolen
170
Vision
171
Kontakt
172
Uddannelser
173
IT
højskolens
ny
bygning
i
Ørestaden
o
174
Vinderprojektet
for
IT
højskolens
ny
domicil
i
Ørestaden
o
175
Dommerbetænkning
176
Nøgletal
177
Virksomhedsregnskaber
178
Vedtægter
for
IT
højskolen
i
København
179
Billedarkiv
180
At
finde
IT
C
181
The
IT
University
of
Copenhagen
182
Find
staff
and
Ph
D
students
at
the
IT
C
183
Links
184
Dokumentoversigt
185
Find
medarbejder
e
186
Hvem
underviser
på
hvilke
linier
187
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
188
wwwadm
it
c
dk
1
IT
højskolen
2
Stillinger
13
Associate
or
Assistant
Professorships
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
13
Associate
or
Assistant
Professorships
The
IT
University
of
Copenhagen
invites
applications
for
13
vacant
Associate
or
Assistant
Professorships
The
IT
University
was
created
by
the
Danish
Ministry
of
Research
in
1999
to
boost
research
and
higher
education
in
Information
Technology
in
the
Oresund
Region
The
IT
University
offers
graduate
studies
post
graduate
studies
and
Open
University
using
e
learning
The
first
students
were
admitted
September
1999
By
now
more
than
700
graduate
students
have
been
admitted
More
than
130
people
teach
or
conduct
research
at
the
IT
University
There
are
currently
20
PhD
students
and
the
Faculty
consists
of
19
Assistant
and
Associate
Professors
The
IT
University
continues
to
expand
rapidly
Each
new
Assistant
or
Associate
Professor
shall
belong
to
one
of
the
following
four
research
departments
The
Department
of
Design
and
Use
of
IT
conducts
research
in
systems
development
and
the
interplay
between
IT
its
users
and
their
work
practice
The
Department
of
Digital
Aesthetics
and
Communication
addresses
aesthetic
cultural
social
and
communicative
aspects
of
IT
phenomena
The
Department
of
Innovation
conducts
research
in
various
areas
of
computer
science
with
the
aim
of
taking
the
research
all
the
way
to
being
new
innovative
technology
Subjects
include
computer
vision
and
graphics
multimedia
technology
programming
language
technology
formal
verification
embedded
software
and
interaction
technologies
The
Theory
Department
conducts
research
in
algorithms
and
complexity
theory
and
in
semantics
of
logic
and
programming
languages
Faculty
is
wanted
primarily
within
the
following
areas
Mobility
theory
of
mobility
software
platforms
security
m
business
cultural
and
social
impact
mobile
usability
Media
and
Communication
design
of
interactive
systems
digital
media
digital
aesthetics
convergence
of
technologies
digital
discourse
interaction
technologies
Software
technology
databases
programming
and
programming
languages
software
engineering
operating
systems
software
tools
and
architectures
component
based
systems
embedded
software
verification
Software
applications
design
methodologies
IT
and
organisations
IT
strategies
diffusion
and
adoption
of
IT
computer
supported
co
operative
work
human
computer
interaction
and
usability
Theory
application
of
mathematical
logic
and
category
theory
to
computer
science
especially
concerning
the
semantics
of
programming
languages
and
type
theories
and
algorithms
and
complexity
theory
Virtual
Reality
VR
infrastructure
basic
technologies
contents
and
use
Scientific
Leader
of
Lab
We
seek
an
Associate
Professor
who
will
establish
and
run
a
new
virtual
reality
laboratory
within
the
Department
of
Innovation
The
Associate
Professorship
is
a
tenured
position
and
the
Assistant
Professorship
is
an
untenured
position
for
a
3
year
period
Both
positions
are
with
research
and
teaching
obligations
The
teaching
may
involve
diploma
students
MSc
students
and
PhD
students
Some
of
the
courses
are
specifically
for
part
time
students
at
the
Open
University
The
positions
can
be
filled
at
either
Assistant
or
Associate
Professor
level
depending
on
the
qualifications
of
the
applicants
Since
the
IT
University
is
young
we
seek
candidates
who
are
dedicated
to
the
task
of
building
a
new
organisation
Associate
professor
level
Responsibilities
Research
including
responsibility
for
the
academic
development
of
the
research
field
in
question
Research
management
initiation
and
management
of
research
projects
pedagogical
instruction
supervision
of
PhD
students
and
Assistant
Professors
and
assessment
work
Teaching
preparation
and
participation
in
examinations
at
the
IT
University
of
Copenhagen
Educational
development
and
other
relevant
assignments
at
the
IT
University
of
Copenhagen
Work
of
administrative
nature
The
Associate
Professor
is
expected
to
contribute
to
the
development
of
the
research
profile
of
the
IT
University
Furthermore
the
Associate
Professor
is
expected
to
participate
in
maintaining
and
improving
the
international
research
level
of
the
IT
University
and
in
the
building
of
a
new
organisation
Qualifications
Qualifications
must
correspond
to
the
level
of
Assistant
Professor
with
teaching
obligations
based
on
previous
employment
or
the
equivalent
Applicants
must
be
able
to
document
an
unusually
strong
record
within
university
level
research
and
teaching
as
well
as
research
production
at
an
international
level
Emphasis
is
placed
on
the
applicant
s
research
qualifications
in
relation
to
the
research
area
Furthermore
applicants
must
document
pedagogical
qualifications
or
other
material
for
the
evaluation
of
the
pedagogical
level
Assistant
Professors
who
apply
for
a
position
as
Associate
Professor
must
enclose
an
evaluation
of
the
pedagogical
qualifications
obtained
during
the
employment
as
Assistant
Professor
Applicants
without
teaching
experience
at
the
Associate
Professor
level
or
the
equivalent
will
be
appointed
on
a
probationary
period
of
up
to
1
year
Assistant
Professor
level
Responsibilities
Research
including
responsibility
for
the
academic
development
of
the
research
field
in
question
Teaching
preparation
and
participation
in
examinations
at
the
IT
University
of
Copenhagen
Educational
development
and
other
relevant
assignments
at
the
IT
University
of
Copenhagen
Work
of
administrative
nature
Qualifications
Qualifications
must
correspond
to
the
PhD
level
based
on
previous
employment
or
the
equivalent
Emphasis
is
placed
on
the
applicant
s
research
potential
which
means
that
the
researcher
with
a
large
research
potential
may
be
preferred
to
the
researcher
with
a
large
research
production
The
applicant
is
obliged
to
participate
in
the
Assistant
Professor
development
program
of
teaching
principles
and
methods
at
the
IT
University
in
order
to
elaborate
a
written
evaluation
of
the
pedagogical
qualifications
at
the
termination
of
the
employment
as
Assistant
Professor
For
further
information
please
contact
For
the
Department
of
Design
and
Use
of
IT
Associate
Professor
PhD
Peter
Carstensen
phone
45
3816
8830
e
mail
10
carstensen
it
c
dk
For
the
Department
of
Digital
Aesthetics
and
Communication
Associate
Professor
PhD
Anker
Helms
Jørgensen
phone
45
3816
8888
e
mail
11
anker
it
c
dk
For
the
Department
of
Innovation
Associate
Professor
PhD
Henrik
Reif
Andersen
phone
45
3816
8827
e
mail
12
hra
it
c
dk
For
the
Theory
Department
Assistant
Professor
PhD
Lars
Birkedal
phone
45
3816
8868
e
mail
13
birkedal
it
c
dk
Appointment
and
salary
will
be
in
accordance
with
the
Ministry
of
Finance
s
agreement
with
the
Central
Academic
organisation
with
the
possibility
of
negotiating
extra
allowances
based
on
qualifications
Applications
must
include
1
A
complete
numbered
list
of
publications
with
asterisks
marking
those
publications
to
be
taken
into
account
at
the
evaluation
If
you
apply
for
an
Associate
Professorship
you
can
mark
a
maximum
of
10
publications
If
you
apply
for
an
Assistant
Professorship
only
you
can
mark
a
maximum
of
5
publications
2
Copies
of
those
publications
marked
with
an
3
Co
author
statements
clarifying
the
applicant
s
contribution
to
the
submitted
publications
with
more
than
one
author
4
Assistant
Professor
level
any
documentation
of
previous
teaching
experience
Associate
Professor
level
documentation
of
previous
teaching
experience
for
assessment
of
pedagogical
qualifications
Instruction
is
followed
by
the
job
advertisement
5
Transcripts
and
CV
An
Assessment
Committee
will
be
appointed
to
assess
the
applications
The
applicants
will
receive
only
the
part
of
the
final
recommendation
concerning
the
assessment
of
their
qualifications
The
application
in
Danish
or
English
must
state
explicitly
a
whether
the
application
is
for
Assistant
Professor
Associate
Professor
or
both
and
b
the
reference
number
s
of
the
research
department
s
with
whom
the
appointment
is
sought
see
below
The
application
including
enclosures
in
six
copies
and
the
marked
publications
in
six
copies
must
be
submitted
to
The
IT
University
of
Copenhagen
Att
Kirsten
Talbro
Laraignou
Glentevej
67
DK
2400
Copenhagen
NV
Denmark
Marked
Associate
Professorship
or
Assistant
Professorship
or
both
and
reference
number
s
see
below
For
the
Department
of
Design
and
Use
of
IT
ref
no
33
0525
For
the
Department
of
Digital
Aesthetics
and
Communication
ref
no
33
0522
For
the
Department
of
Innovation
ref
no
33
0523
For
the
Theory
Department
ref
no
33
0524
Application
deadline
1
May
2001
12
00
noon
Applications
received
electronically
will
not
be
taken
into
consideration
All
interested
researchers
irrespective
of
age
sex
race
religion
or
nationality
are
invited
to
apply
for
the
position
Documentation
and
information
on
pedagogical
qualifications
Associate
Professor
level
The
IT
University
of
Copenhagen
requests
that
the
application
is
provided
with
the
below
mentioned
information
for
the
assessment
of
the
applicant
s
pedagogical
qualifications
1
Outline
of
the
instruction
activities
over
the
last
3
years
at
least
Taught
subjects
and
level
Bachelor
Master
PhD
or
other
levels
Extend
of
the
instruction
periods
and
number
of
students
Sort
of
the
instruction
lectures
group
instruction
tutorials
Internet
based
instruction
distance
teaching
Applied
pedagogical
methods
Language
used
Evaluation
and
examination
forms
2
List
of
any
instructional
materials
the
applicant
may
have
written
3
Information
on
participation
in
development
of
teaching
elaboration
of
course
plans
etc
4
Management
and
supervision
of
part
time
instructors
5
Administration
of
the
instruction
including
administrative
responsibilities
6
Evaluation
of
the
pedagogical
qualifications
at
the
termination
of
the
employment
as
Assistant
Professor
in
case
7
Student
evaluations
of
the
instruction
other
kind
of
evaluations
from
colleagues
experts
or
others
8
Reflections
on
the
described
instruction
and
perspectives
for
future
instruction
with
regard
to
the
academic
content
course
and
pedagogics
9
Other
relevant
information
for
the
documentation
of
pedagogical
qualifications
The
information
may
be
organised
otherwise
but
the
same
level
of
details
is
requested
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Stillinger
Datalog
civilingeniør
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Datalog
civilingeniør
IT
højskolen
i
København
gennemgår
en
rivende
udvikling
og
søger
nu
til
snarlig
tiltrædelse
en
datalog
civilingeniør
eller
tilsvarende
der
kan
tage
del
i
udbygningen
af
IT
systemerne
og
netværksdriften
IT
højskolen
blev
oprettet
i
april
1999
og
er
nu
vokset
til
ca
150
medarbejdere
og
mere
end
800
studerende
IT
højskolen
har
som
en
af
sine
visioner
i
løbet
af
tre
år
at
blive
det
universitet
i
Danmark
der
er
længst
fremme
hvad
angår
brugen
af
informations
og
kommunikationsteknologi
til
at
udvikle
uddannelse
forskning
og
organisation
Du
får
mulighed
for
at
indgå
i
ambitiøse
softwareudviklingsprojekter
med
forskere
studerende
og
ledelsen
på
IT
højskolen
herunder
være
med
til
at
præge
udviklingen
i
LinuxLab
Du
skal
også
deltage
i
den
daglige
drift
af
IT
systemerne
på
lige
fod
med
andre
tekniske
specialister
på
IT
højskolens
IT
afdeling
herunder
systemprogrammering
på
Linux
og
NT
Du
skal
som
alle
andre
på
IT
højskolen
kunne
leve
med
at
man
i
en
opstartsfase
har
en
blanding
af
arbejdsopgaver
som
varierer
fra
det
rutinemæssige
til
det
banebrydende
Ansættelse
og
aflønning
sker
i
henhold
til
gældende
aftale
mellem
Finansministeriet
og
den
pågældende
relevante
organisation
Der
vil
til
stillingen
være
mulighed
for
at
opnå
kvalifikationstillæg
ligesom
en
fleksibel
arbejdstilrettelæggelse
indenfor
en
37
timers
arbejdsuge
er
en
naturlig
ting
Yderligere
oplysninger
om
stillingen
fås
hos
IT
chef
Keld
Kondrup
Jensen
telf
3816
8847
eller
e
mail
10
kkj
it
c
dk
Oplysninger
om
løn
og
ansættelsesforhold
kan
rettes
til
personalechef
Kirsten
Talbro
Laraignou
tlf
3816
8803
eller
e
mail
11
ktl
it
c
dk
ktl
it
c
dk
Alle
kvalificerede
og
interesserede
uanset
alder
køn
race
religion
eller
etnisk
tilhørforhold
opfordres
til
at
søge
Ansøgning
mrk
Datalog
civilingeniør
til
IT
afdelingen
samt
CV
og
dokumentation
for
uddannelse
og
tidligere
ansættelser
bedes
fremsendt
til
IT
højskolen
i
København
Att
Kirsten
Talbro
Laraignou
Glentevej
67
2400
København
NV
Ansøgningen
skal
være
IT
højskolen
i
hænde
senest
den
22
maj
2001
kl
12
00
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
Kontakt
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
inter
menu
bund
gif
Kontakt
Adresse
IT
højskolen
i
København
Glentevej
67
2400
København
NV
Telefon
38
16
88
88
Telefax
38
16
88
99
Studievejledning
Studievejledningen
Telefon
45
38
16
88
73
Træffetider
mandag
kl
10
14
tirsdag
kl
10
14
onsdag
kl
10
14
torsdag
kl
10
14
fredag
kl
10
14
9
Studievejledningen
it
c
dk
Erhvervssamarbejde
Mikael
Kjærbye
Telefon
45
38
16
88
80
10
mk
it
c
dk
Ledige
stillinger
Personalechef
Kirsten
Talbro
Laraignou
11
ktl
it
c
dk
BuzzTalks
Tanja
Danner
12
td
it
c
dk
Pressekontakt
Mikael
Kjærbye
Telefon
45
38
16
88
80
13
mk
it
c
dk
Bygninger
drift
og
intern
service
Afdelingsleder
Margit
Achen
14
margit
it
c
dk
Kommentarer
til
hjemmesiden
Webadministrationen
15
wwwadm
it
c
dk
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
Uddannelser
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Kandidat
10
Deltidsuddannel
ser
og
enkeltfag
11
Kurser
12
Ph
D
13
Studieliv
og
projekter
14
Studievejledning
15
Love
og
regler
16
Søg
om
optagelse
inter
menu
bund
gif
Uddannelser
IT
højskolen
udbyder
en
række
uddannelser
inden
for
IT
Kandidatuddannelser
Kandidatuddannelsen
cand
it
er
et
to
årigt
fuldtidsstudium
som
kan
tages
inden
for
linierne
17
Design
kommunikation
og
medier
18
Elektronisk
handel
19
Internetteknologi
20
Multimedieteknologi
21
Softwareudvikling
22
Tværfaglig
IT
Masteruddannelser
Masteruddannelserne
Master
of
Information
Technology
MIT
er
en
tre
årig
deltidsuddannelse
som
typisk
gennemføres
i
sammenhæng
med
erhvervsarbejde
Masteruddannelsen
kan
tages
inden
for
linierne
23
Design
kommunikation
og
medier
24
Internetteknologi
25
Multimedieteknologi
26
Softwareudvikling
Diplomuddannelse
IT
højskolen
tilbyder
en
to
årig
27
diplomuddannelse
Diploma
in
Information
Technology
DIT
på
deltid
Den
henvender
sig
primært
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
Enkeltfag
IT
højskolen
tilbyder
to
forskellige
muligheder
for
at
læse
enkeltfag
28
Enkeltfag
som
kandidatstuderende
ved
andre
universiteter
29
Enkeltfag
under
Åben
Uddannelse
for
alle
med
mindst
en
bacheloruddannelse
eller
tilsvarende
Kurserne
henvender
sig
til
erhvervsaktive
som
ønsker
et
bredere
kendskab
til
informationsteknologi
men
ikke
ønsker
at
tage
en
længerevarende
uddannelse
Hvis
du
har
spørgsmål
vedrørende
IT
højskolens
uddannelser
kan
du
altid
kontakte
30
studievejledningen
eller
lede
efter
informationen
her
på
siderne
31
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
32
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Kandidat
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Søg
om
optagelse
11
Informationsdag
12
Enkeltfag
13
Uddannelses
katalog
inter
menu
bund
gif
Kandidatuddannelser
IT
højskolen
tilbyder
seks
to
årige
kandidatuddannelser
14
Design
kommunikation
og
medier
15
Elektronisk
handel
16
Internetteknologi
17
Multimedieteknologi
18
Softwareudvikling
19
Tværfaglig
IT
Kandidatuddannelserne
er
SU
berettigede
fuldtidsstudier
der
i
kombination
med
en
bacheloruddannelse
resulterer
i
kandidatgraden
cand
it
Uddannelserne
er
bygget
op
af
en
række
obligatoriske
kurser
valgfrie
aktiviteter
og
projekter
samt
et
afsluttende
specialesemester
Alle
aktiviteter
på
uddannelserne
bliver
evalueret
individuelt
Alle
bacheloruddannelser
er
adgangsgivende
til
de
seks
kandidatuddannelser
Multimedie
og
internetteknologiuddannelserne
kræver
dog
matematik
på
A
niveau
fra
gymnasiet
eller
tilsvarende
Hvis
du
har
spørgsmål
vedrørende
IT
højskolens
uddannelser
bedes
du
kontakte
20
studievejledningen
21
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Studieleder
12
Mere
om
DKM
inter
menu
bund
gif
Design
Kommunikation
og
Medier
Kandidatuddannelsen
i
Design
Kommunikation
og
Medier
består
af
tre
områder
konstruktion
interaktionsdesign
og
medier
Uddannelsen
beskæftiger
sig
med
design
og
interaktivitet
og
med
IT
som
socialt
og
kulturelt
medie
Desuden
indeholder
uddannelsen
undervisning
i
mere
håndværksorienterede
fag
Nogle
af
nøgleordene
på
uddannelsen
er
abstraktionsevne
formidling
argumentation
og
refleksion
ligesom
der
lægges
stor
vægt
på
tværfaglig
orientering
Uddannelsen
gør
kandidaten
i
stand
til
at
bruge
den
nye
informationsteknologi
til
formidling
Det
kan
eksempelvis
være
konstruktion
og
design
af
web
og
multimedieproduktioner
3
D
animationer
og
spil
Desuden
giver
uddannelsen
indsigt
i
projektledelse
grafisk
design
organisation
brugervenlighed
og
interaktion
Kandidatuddannelsen
i
Design
Kommunikation
og
Medier
udbydes
af
IT
højskolen
i
samarbejde
med
Københavns
Universitet
og
Danmarks
Designskole
Undervisningen
foregår
dels
på
IT
højskolen
og
dels
på
Danmarks
Designskole
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Studieleder
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
John
Paulin
Hansen
Praktikere
med
indsigt
Studieleder
lektor
John
Paulin
Hansen
Design
kommunikation
og
medier
er
en
intensiv
overbygning
på
en
bachelorgrad
som
gør
kandidaten
i
stand
til
at
arbejde
med
alle
former
for
digitale
medier
siger
lektor
John
Paulin
Hansen
der
leder
linien
for
Design
kommunikation
og
medier
Samtidig
bliver
man
god
til
konceptudvikling
målgrupper
og
implementering
af
et
projekt
og
man
får
en
dybere
indsigt
i
de
digitale
mediers
muligheder
både
nu
og
i
fremtiden
På
design
kommunikation
og
medier
lægges
der
vægt
på
at
få
indsigt
i
teknologien
bag
de
mange
muligheder
og
på
evnen
til
at
reflektere
teknisk
og
analytisk
over
IT
som
medie
Endelig
er
det
vigtigt
at
få
en
viden
om
ITs
samfundsmæssige
sociologiske
og
organisatoriske
konsekvenser
og
muligheder
Uddannelsen
i
Design
kommunikation
og
medier
kan
i
høj
grad
bruges
inden
for
webkommunikation
men
kan
også
inden
for
andre
elektroniske
medier
så
som
DVD
CD
rom
film
lyd
og
video
Endelig
kan
kandidater
i
Design
kommunikation
og
medier
komme
til
at
arbejde
med
offentlige
edb
baserede
servicesystemer
og
store
databasesystemer
Det
har
været
utrolig
spændende
og
udfordrende
at
være
med
til
at
etablere
linien
i
Design
kommunikation
og
medier
på
IT
højskolen
lyder
det
fra
John
Paulin
Hansen
Og
så
er
det
inspirerende
og
motiverende
at
have
studerende
der
er
dygtige
og
engagerede
slutter
han
Kort
om
John
Paulin
Hansen
41
år
studieleder
og
lektor
på
IT
højskolen
cand
psyk
Århus
Universitet
1984
ph
d
Århus
Universitet
1992
forsker
og
seniorforsker
Forskningscenter
Risø
1992
rektor
multimedieskolen
Space
Invaders
1996
IT
højskolen
1999
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Mere
om
DKM
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Studiet
13
Projekter
14
Ansatte
15
Fakultetsklub
16
Fagudvalg
inter
menu
bund
gif
DKM
Design
Kommunikation
og
Medier
DKM
intro
aug2000
P1010198
small
jpg
Har
du
lyst
til
at
være
med
til
at
præge
den
digitale
udvikling
Har
du
lyst
til
at
arbejde
sammen
med
andre
højt
motiverede
og
højtuddannede
mennesker
med
fokus
på
IT
i
fremtidens
samfund
Linien
i
Design
Kommunikation
og
Medier
giver
dig
gode
muligheder
for
dette
Du
kommer
til
at
lære
om
design
og
interaktivitet
Du
kommer
til
at
lære
om
IT
som
socialt
og
kulturelt
medie
Du
kommer
også
til
at
lære
håndværket
Den
tværfaglige
udfordring
Du
kommer
til
at
kombinere
dine
kvalifikationer
fra
dit
bachelorstudium
med
dine
medstuderendes
og
opnår
dermed
den
tværfaglige
orientering
der
er
så
vigtig
idag
hvor
IT
er
et
organisatorisk
socialt
og
kulturelt
medie
Du
præsenteres
for
en
række
undervisningsformer
der
træner
dig
bredt
fra
værktøjsbeherskelse
til
udvikling
af
dine
akademiske
færdigheder
abstraktionsevne
formidling
argumentation
og
refleksion
Studiets
opbygning
DKM
intro
aug2000
P1010178
small
jpg
Du
kan
selv
sammensætte
din
uddannelse
fra
et
bredt
udsnit
af
kurser
i
bl
a
webudvikling
projektledelse
målgruppeanalyse
medieteori
3D
modellering
digital
video
og
lydredigering
og
grafisk
design
Dele
af
undervisningen
foregår
i
samarbejde
med
Danmarks
Designskole
og
Københavns
Universitet
Hvis
du
har
interesse
for
de
andre
fag
der
udbydes
på
IT
højskolen
kan
du
kombinere
dine
DKM
kurser
med
undervisning
i
programmering
systemanalyse
elektronisk
handel
computergrafik
mm
Erhvervsmuligheder
DKM
vil
give
dig
de
tekniske
designmæssige
og
teoretiske
forudsætninger
for
at
arbejde
med
fremtidens
medieformer
som
fx
producer
redaktør
projektleder
designer
tekstforfatter
innovatør
underviser
eller
systemudvikler
Elektronisk
handel
virtuelle
fællesskaber
WAP
tjenester
fjernundervisningssystemer
elektronisk
forvaltning
og
digital
kulturformidling
er
blandt
de
beskæftigelsesområder
som
vil
vokse
stærkt
i
de
kommende
år
Vedligeholdes
af
17
Sven
Bastrup
18
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
DKM
Studiet
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Studiet
på
DKM
Generelt
om
DKM
DKM
billeder
P2040342
jpg
DKM
er
et
teoretisk
og
anvendelsesorienteret
fag
hvor
humanistisk
samfundsvidenskabelig
og
teknologisk
forskning
gives
en
praktisk
og
æstetisk
orientering
Der
undervises
og
forskes
i
emner
indenfor
visuel
og
tekstbaseret
kommunikation
kunst
medie
og
kulturvidenskab
grafisk
design
og
interaktionsdesign
teknologifilosofi
psykologi
computermedierede
samarbejdsformer
og
læring
samt
aspekter
af
det
digitale
liv
i
bred
forstand
Studiets
struktur
For
at
opnå
en
master
eller
kandidatgrad
på
DKM
linien
skal
man
som
minimum
have
et
fag
indenfor
området
IT
som
medie
to
fag
indenfor
interaktionsdesign
og
to
fag
indenfor
konstruktion
Desuden
skal
man
vælge
fire
fag
som
kan
læses
på
de
andre
linier
af
IT
Højskolen
eller
som
kan
være
DKM
fag
De
tre
første
semestre
afsluttes
hver
med
en
fireugers
projektperiode
hvor
de
studerende
arbejder
i
tværfaglige
grupper
på
tværs
af
linier
og
årgange
For
at
blive
DKM
kandidat
skal
man
i
fjerde
semester
skrive
et
speciale
DKM
masterstudiet
er
et
treårs
deltidsstudium
der
afsluttes
med
et
projekt
i
6
semester
Fagene
DKM
udvider
og
reviderer
løbende
sit
fagudbud
I
forårssemesteret
2001
vil
der
med
forbehold
for
ændringer
blive
undervist
i
følgende
emner
Webdesign
3D
grafisk
design
interaktionsdesign
digital
lyd
designhistorie
IT
som
medie
digital
videoredigering
projektledelse
fremtidens
medier
tekstformidling
på
Internet
målgruppeanalyse
og
øjenbaseret
interaktion
Nogle
af
fagene
udbydes
på
forskellige
niveauer
og
vil
derfor
skulle
tages
i
en
bestemt
rækkefølge
Undervisningen
tilrettelægges
så
den
kan
følges
af
studerende
med
forskellige
niveauer
af
IT
kompetence
Der
kan
f
eks
være
forelæsninger
på
et
generelt
niveau
som
præsenterer
de
overordnede
aspekter
af
et
givet
fagområde
Forelæsningerne
efterfølges
i
de
fleste
fag
af
øvelser
hvor
de
studerende
får
mulighed
for
at
arbejde
konkret
med
emner
der
er
blevet
præsenteret
under
forelæsningerne
Forelæsninger
og
øvelser
strækker
sig
typisk
over
en
hel
dag
om
ugen
pr
fag
i
12
uger
Der
må
påregnes
en
arbejdsindsats
på
mindst
15
timer
om
ugen
pr
fag
De
kandidatstuderende
forventes
at
afslutte
tre
fag
pr
semester
og
de
masterstuderende
afslutter
to
IT
højskolens
computere
står
til
rådighed
for
studerende
hele
døgnet
Læs
mere
om
fagene
under
13
Kurser
De
studerende
DKM
billeder
P2040385
jpg
DKM
optager
hvert
semester
mellem
40
og
60
nye
studerende
Linjen
startede
i
foråret
1999
og
i
februar
2001
vil
der
være
omkring
200
DKM
studerende
Den
typiske
DKM
studerende
har
en
bachelorgrad
indenfor
humaniora
samfundsfag
eller
et
kreativt
område
Han
eller
hun
er
vant
til
at
studere
og
kan
kommunikere
i
skrift
og
billeder
tænke
selvstændigt
og
abstrakt
samt
læse
komplicerede
tekster
på
dansk
og
engelsk
De
fleste
behersker
IT
på
et
brugerniveau
eller
et
ekspertniveau
Gennemsnitsalderen
er
under
30
år
og
der
er
en
ligelig
kønsfordeling
De
fleste
ønsker
efter
endt
uddannelse
at
komme
til
at
arbejde
kreativt
med
informationsteknologi
indenfor
f
eks
web
og
multimediedesign
digital
billed
og
lyd
produktion
eller
med
3D
modellering
og
design
Erhvervsmuligheder
Informationsteknologien
og
de
nye
kompetenceområder
der
opstår
i
dens
kølvand
ændrer
sig
hele
tiden
Eksempler
på
aktuelle
jobtitler
i
stillingsannoncer
hvor
en
DKM
uddannelse
vil
være
relevant
er
webredaktør
3D
grafiker
tekstforfatter
webudvikler
informations
arkitekt
webmaster
art
director
programmør
projektleder
systemudvikler
animator
og
projektkoordinator
Det
forventes
at
nogle
studerende
gennem
studiet
vil
få
et
grundlag
for
at
starte
egen
virksomhed
Fremtidige
arbejdsområder
for
DKM
uddannede
kunne
findes
indenfor
f
eks
produktdesign
tv
og
filmproduktion
teletjenester
undervisningssystemer
markeds
og
brugeranalyse
web
journalistik
e
handel
organisationsudvikling
offentlig
og
privat
e
forvaltning
medierådgivning
virtuelle
digitale
netværk
underholdning
og
spil
Underviserne
DKM
har
tilknyttet
et
antal
faste
undervisere
der
også
driver
forskning
i
en
af
IT
højskolens
forskningsafdelinger
Desuden
underviser
et
stort
antal
faste
eksterne
lektorer
f
eks
fra
Danmarks
Radio
Teledanmark
og
andre
større
og
mindre
virksomheder
og
institutioner
samt
fra
Danmarks
Designskole
og
Københavns
Universitet
Forskning
IT
højskolens
forskning
drives
af
lektorer
professorer
og
Ph
D
studerende
i
forskningsafdelinger
på
tværs
af
IT
højskolens
studielinjer
DKM
s
forskere
arbejder
bl
a
med
Human
Computer
Interaction
digital
æstetik
virtuelle
verdener
designhistorie
og
grafisk
design
Andre
fremtidige
fokusområder
for
forskere
med
tilknytning
til
DKM
er
bl
a
IT
sociologi
Læs
mere
om
forskningen
hos
14
Forskningsafdelingen
for
Digital
Æstetik
og
Kommunikation
Mere
om
studiet
Du
kan
læse
mere
om
linien
Design
Kommunikation
og
Medier
i
vores
15
uddannelseskatalog
Samtidig
har
du
mulighed
for
at
læse
om
de
forskellige
kurser
der
udbydes
i
16
kursusbogen
Du
kan
desuden
indhente
flere
oplysninger
hos
DKM
s
sekretariat
Lise
Louv
Email
17
louv
it
c
dk
Telefon
45
38168860
og
hos
Studievejledningen
på
IT
højskolen
i
København
Email
18
studievejledningen
it
c
dk
Telefon
45
38168873
19
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
20
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
Kurser
forår
2001
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Kurser
foråret
2001
Elektronisk
kursusbog
Kurser
for
foråret
2001
er
beskrevet
i
den
elektroniske
11
kursusbog
Kursernes
hjemmesider
Du
kan
læse
mere
om
kurserne
på
kursernes
12
hjemmesider
for
foråret
2001
13
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Uddannelser
linjer
og
kurser
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Enkeltfag
11
Phd
studier
12
Kurser
forår
2001
13
Kurser
efterår
2000
14
Uddannelses
katalog
15
Optagelses
regler
og
studieordning
inter
menu
bund
gif
Bred
vifte
af
IT
uddannelser
IT
højskolen
udbyder
en
række
uddannelser
inden
for
IT
Kandidatuddanelser
Kandidatuddannelsen
er
et
to
årigt
fuldtidsstudium
som
kan
tages
inden
for
linierne
16
Design
kommunikation
og
medier
17
Elektronisk
handel
18
Internetteknologi
19
Multimedieteknologi
20
Softwareudvikling
21
Tværfaglig
IT
Kandidatuddannelsen
resulterer
i
titlen
cand
it
med
tilføjelse
af
betegnelsen
for
den
pågældende
linje
Kandidatuddannelsen
tages
på
baggrund
af
en
bachelorgrad
fra
en
anden
uddannelsesinstitution
Masteruddannelser
På
IT
højskolen
er
der
også
fire
tre
årige
masteruddannelser
Masteruddannelsen
kan
tages
inden
for
linierne
22
Design
kommunikation
og
medier
23
Internetteknologi
24
Multimedieteknologi
25
Softwareudvikling
Masteruddannelsen
er
en
deltidsuddannelse
som
typisk
gennemføres
i
sammenhæng
med
ens
erhvervsarbejde
Den
udbydes
under
lov
om
Åben
Uddannelse
Efter
endt
studium
for
man
betegnelsen
Master
of
Information
Technology
MIT
med
tilføjelse
af
betegnelsen
for
den
pågældende
linje
Diplom
uddannelse
IT
højskolen
tilbyder
en
to
årig
26
diplomuddannelse
på
deltid
Den
henvender
sig
primært
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
Den
udbydes
under
lov
om
Åben
Uddannelse
Efter
endt
studium
får
man
betegnelsen
Diploma
in
Information
Technology
DIT
Enkeltfag
IT
højskolen
tilbyder
nu
to
forskellige
muligheder
for
at
læse
enkeltfag
27
Enkeltfag
som
kandidatstuderende
ved
andre
universiteter
28
Enkeltfag
under
Åben
Uddannelse
for
alle
med
mindst
en
bacheloruddannelse
eller
tilsvarende
Kurserne
henvender
sig
i
høj
grad
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
men
ikke
ønsker
at
tage
en
længerevarende
kandidat
master
eller
diplomuddannelse
Hvis
du
har
spørgsmål
vedrørende
IT
højskolens
uddannelser
bedes
du
kontakte
29
studievejledningen
30
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
31
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
Enkeltfag
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
To
muligheder
for
at
læse
enkeltfag
IT
højskolen
tilbyder
nu
to
forskellige
muligheder
for
at
læse
enkeltfag
11
Enkeltfag
under
Åben
Uddannelse
NYT
NB
Ansøgningsfristen
til
enkeltfagskurser
under
Åben
Uddannelse
er
overskredet
og
der
kan
ikke
længere
ansøges
om
optagelse
på
enkeltfagskurser
i
forårssemesteret
2001
IT
højskolens
enkeltfagskurser
under
Åben
Uddannelse
henvender
sig
i
høj
grad
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
men
ikke
ønsker
at
tage
en
længerevarende
kandidat
master
eller
diplomuddannelse
For
at
blive
optaget
kræves
mindst
en
videregående
uddannelse
på
bachelorniveau
eller
tilsvarende
Klik
på
linket
12
enkeltfag
under
Åben
Uddannelse
for
at
læse
mere
om
kursusformen
kursusindhold
og
optagelsesbetingelser
Du
kan
her
se
en
13
samlet
liste
over
de
enkeltfagskurser
som
IT
højskolen
udbyder
under
Åben
Uddannelse
i
foråret
2001
men
hvor
ansøgningsfristen
var
den
15
19
eller
26
januar
2001
Der
kan
ikke
ansøges
om
optagelse
på
disse
kurser
mere
IT
højskolen
vil
i
løbet
af
foråret
og
sommeren
annoncere
de
enkeltfagskurser
som
der
kan
søges
optagelse
på
til
eftrårssemesteret
2001
Tilmeld
dig
evt
IT
højskolens
14
elektroniske
nyhedstjeneste
hvor
de
kommende
enkeltfagskurser
vil
blive
omtalt
15
Enkeltfag
som
kandidatstuderende
ved
et
andet
universitet
Hvis
du
er
bachelor
og
indskrevet
på
et
andet
kandidatstudium
kan
du
søge
om
optagelse
på
et
eller
flere
enkeltfag
på
IT
højskolen
i
København
Ansøgningsfristen
for
at
ansøge
om
optagelse
på
disse
enkeltfagskurser
var
15
januar
2001
Der
kan
ikke
ansøges
om
optagelse
på
disse
kurser
mere
En
samlet
liste
over
IT
højskolens
kurser
findes
i
den
16
elektroniske
kursusbog
Hvis
du
vil
vide
mere
Hvis
du
har
spørgsmål
vedrørende
enkeltfagskurser
så
kontakt
venligst
17
studievejledningen
18
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Alle
enkeltfag
i
foråret
2001
13
Optagelses
betingelser
Søg
om
optagelse
14
Kursus
information
15
Pris
inter
menu
bund
gif
Enkeltfagskurser
under
Åben
Uddannelse
Nyt
fra
forårssemesteret
2001
NB
Ansøgningsfristen
til
enkeltfagskurser
under
Åben
Uddannelse
er
overskredet
og
der
kan
ikke
længere
ansøges
om
optagelse
på
enkeltfagskurser
i
forårssemesteret
2001
IT
højskolen
vil
i
løbet
af
foråret
og
sommeren
annoncere
de
enkeltfagskurser
som
der
kan
søges
optagelse
på
til
efterårssemesteret
2001
Tilmeld
dig
evt
IT
højskolens
16
elektroniske
nyhedstjeneste
hvor
de
kommende
enkeltfagskurser
vil
blive
omtalt
Enkeltfagskurserne
foregår
på
universitetsniveau
For
at
blive
optaget
på
kurset
kræves
mindst
en
videregående
uddannelse
på
bachelorniveau
eller
tilsvarende
Kurserne
gennemføres
under
lov
om
Åben
Uddannelse
og
henvender
sig
primært
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
men
ikke
ønsker
at
tage
en
længerevarende
kandidat
master
eller
diplomuddannelse
IT
højskolens
enkeltfagskurser
foregår
enten
på
hverdage
i
dagtimerne
eller
uden
for
almindelig
arbejdstid
Nogle
af
kurserne
er
helt
eller
overvejende
teoretiske
mens
andre
er
en
blanding
af
teori
praktiske
øvelser
og
projekter
Tompladsordning
og
specielt
tilrettelagte
kurser
IT
højskolens
enkeltfagskurser
under
Åben
Uddannelse
udbydes
på
to
forskellige
måder
Enkeltfagskurser
under
tompladsordningen
Enkeltfagskurser
specielt
tilrettelagt
for
enkeltfagsstuderende
Enkeltfagskurser
under
tompladsordningen
Under
tompladsordningen
optages
enkeltfagsstuderende
på
IT
højskolens
ordinære
kurser
hvis
der
er
ledige
studiepladser
når
IT
højskolens
studerende
er
blevet
optaget
Blandt
de
evt
ledige
pladser
på
det
enkelte
kursus
vil
kvalificerede
ansøgere
få
tildelt
studiepladser
i
den
rækkefølge
ansøgningerne
modtages
på
IT
højskolen
først
til
mølle
princippet
Kurser
specielt
tilrettelagt
for
enkeltfagsstuderende
På
specielt
tilrettelagte
enkeltfagskurser
optages
primært
enkeltfagsstuderende
under
Åben
Uddannelse
Undervisning
gennemføres
uden
for
almindelig
arbejdstid
i
weekenden
eller
om
aftenen
Kvalificerede
ansøgere
får
tildelt
studiepladser
i
den
rækkefølge
ansøgningerne
modtages
på
IT
højskolen
først
til
mølle
princippet
17
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
Alle
enkeltfag
i
foråret
2001
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Oversigt
over
alle
de
enkeltfagskurser
som
udbydes
i
foråret
2001
under
Åben
Uddannelse
Her
finder
du
en
oversigt
over
de
enkeltfagskurser
som
IT
højskolen
i
København
udbyder
i
forårssemesteret
2001
under
lov
om
Åben
Uddannelse
Ansøgningsfristen
for
kurserne
var
den
15
19
eller
26
januar
2001
og
der
kan
ikke
ansøges
om
optagelse
på
disse
kurser
mere
13
Enkeltfagskurser
i
dagtimerne
på
hverdage
14
Enkeltfagskurser
på
lørdage
og
om
aftenen
15
Enkeltfagskurser
tilrettelagt
som
fleksibel
undervisning
fjernundervisning
Klik
på
det
enkelte
kursus
for
at
få
en
nærmere
beskrivelse
af
kursets
målsætning
faglige
indhold
forudsætninger
undervisningsform
undervisningssted
undervisningssprog
dansk
eller
engelsk
eksamensform
underviser
mm
Forudsætningerne
ud
over
bachelorniveau
for
at
blive
optaget
på
et
kursus
er
angivet
i
den
nedenstående
oversigt
De
angivne
forudsætninger
kan
være
opnået
via
formelle
uddannelser
kurser
eller
via
praktisk
erfaring
inden
for
området
Oversigt
over
enkeltfagskurser
i
dagtimerne
på
hverdage
Undervisningen
på
disse
kurser
gennemføres
på
en
hverdag
mandag
fredag
typisk
kl
9
00
16
00
Kurserne
gennemføres
under
16
tompladsordningen
Under
hvert
kursus
er
anført
kursets
titel
den
ugedag
hvor
undervisningen
finder
sted
og
de
kursusspecifikke
forudsætninger
for
det
enkelte
kursus
17
Tilmelding
til
kurserne
fandt
sted
online
18
Animation
Ugentlig
undervisningsdag
onsdag
Forudsætninger
19
Introduktion
til
Multimediesystemer
eller
et
af
følgende
kurser
20
Computergrafik
21
Signalbehandling
eller
22
Billedanalyse
23
Avanceret
algoritmik
Ugentlig
undervisningsdag
tirsdag
Forudsætninger
Kendskab
til
algoritmik
på
et
niveau
svarende
til
et
introducerende
kursus
f
eks
24
Introduktion
til
algoritmik
og
datastrukturer
25
Billedanalyse
Ugentlig
undervisningsdag
mandag
Forudsætninger
Matematik
A
26
Grundlæggende
Programmering
og
27
Signalbehandling
28
Brugerperspektiver
og
fremtidens
medier
Ugentlig
undervisningsdag
mandag
Forudsætninger
29
Målgruppeanalyse
Der
er
ikke
tale
om
specielle
forudsætninger
inden
for
programmering
30
Computergrafik
Ugentlig
undervisningsdag
torsdag
Forudsætninger
Matematik
på
A
niveau
og
31
Grundlæggende
Programmering
32
Cybertextuality
Ugentlig
undervisningsdag
fredag
Forudsætninger
Basic
skills
of
computer
use
required
33
Databasebaseret
Web
publicering
Ugentlig
undervisningsdag
tirsdag
Forudsætninger
34
Grundlæggende
Web
Design
Derudover
skal
du
være
motiveret
for
at
lære
at
programmere
35
Datasikkerhed
Ugentlig
undervisningsdag
fredag
Forudsætninger
36
Grundlæggende
Programmering
og
37
Netværk
og
Protokoller
38
Design
og
Designere
Ugentlig
undervisningsdag
torsdag
Forudsætninger
39
Grundlæggende
Programmering
og
40
Design
af
Brugergrænseflader
og
Data
41
Digital
Designhistorie
Ugentlig
undervisningsdag
tirsdag
Forudsætning
Kendskab
til
design
erhvervet
gennem
kurset
42
Interaktionsdesign
43
Grafisk
Design
1
eller
tilsvarende
44
Elements
of
Chryptography
and
Information
Theory
Ugentlig
undervisningsdag
fredag
Forudsætning
45
Grundlæggende
Programmering
46
Funktionelt
design
og
programmering
Ugentlig
undervisningsdag
mandag
Forudsætninger
47
Grundlæggende
Programmering
eller
mindst
en
bachelor
inden
for
matematik
science
eller
ingeniørområdet
48
Internetprogrammering
Ugentlig
undervisningsdag
tirsdag
Forudsætninger
Et
kursus
svarende
til
49
Grundlæggende
programmering
I
den
sidste
halvdel
af
kurset
vil
det
være
en
fordel
med
kendskab
til
Java
50
Internettets
rum
og
geografi
Ugentlig
undervisningsdag
mandag
Forudsætninger
Ingen
Kurset
vil
dog
være
en
naturlig
fortsættelse
af
kurserne
51
Virtuelle
Verdener
og
52
3D
begynder
53
Introduktion
til
algoritmik
og
datastrukturer
Ugentlig
undervisningsdag
onsdag
Forudsætninger
54
Grundlæggende
Programmering
55
Introduktion
til
multimediesystemer
Ugentlig
undervisningsdag
tirsdag
Forudsætninger
56
Grundlæggende
Programmering
57
IT
støttet
samarbejde
Ugentlig
undervisningsdag
onsdag
Forudsætninger
58
Grundlæggende
Programmering
Det
vil
være
en
fordel
med
basal
viden
om
datamodellering
og
net
teknologier
59
IT
tilgængelighed
Ugentlig
undervisningsdag
torsdag
Forudsætninger
Ingen
ud
over
bachelorniveau
60
Målgruppeanalyse
Ugentlig
undervisningsdag
torsdag
Forudsætninger
Ingen
ud
over
bachelorniveau
61
Netværk
og
protokoller
Ugentlig
undervisningsdag
onsdag
Forudsætninger
Matematik
på
A
niveau
eller
62
Grundlæggende
Programmering
63
Operativsystemer
og
Maskinnær
Programmering
Ugentlig
Undervisningsdag
mandag
Forudsætninger
64
Grundlæggende
Programmering
65
Parallelle
Systemer
Ugentlig
undervisningsdag
torsdag
Forudsætninger
66
Grundlæggende
Programmering
67
Signalbehandling
Ugentlig
undervisningsdag
onsdag
Forudsætninger
Matematik
på
A
niveau
68
Tekstformidling
på
Internet
Ugentlig
undervisningsdag
torsdag
Forudsætninger
Ingen
ud
over
bachelorniveau
speciel
ansøgningsfrist
19
januar
2001
Enkeltfagskurser
på
lørdage
og
om
aftenen
De
nedenfor
nævnte
enkeltfagskurser
som
udbydes
uden
for
almindelig
arbejdstid
på
lørdage
og
om
aftenen
er
69
specielt
tilrettelagt
for
enkeltfagsstuderende
under
Åben
Uddannelse
Under
hvert
kursus
er
anført
kursets
titel
den
ugedag
og
tidspunkt
hvor
undervisningen
finder
sted
og
de
kursusspecifikke
forudsætninger
for
det
enkelte
kursus
70
Tilmelding
til
kurserne
fandt
sted
online
71
IT
Platforme
og
Organisation
Ugentlig
undervisningsdag
lørdag
kl
9
00
13
00
Forudsætninger
Ingen
ud
over
bachelorniveau
speciel
ansøgningsfrist
26
januar
2001
72
Tekstformidling
på
Internet
Ugentlig
undervisningsdag
lørdag
kl
9
00
15
00
Forudsætninger
Ingen
ud
over
bachelorniveau
73
Tekstformidling
på
Internet
Ugentlig
undervisningsdag
onsdag
kl
16
00
21
30
Forudsætninger
Ingen
ud
over
bachelorniveau
speciel
ansøgningsfrist
19
januar
2001
Enkeltfagskursus
tilrettelagt
som
fleksibel
undervisning
Nedenfor
ses
IT
højskolens
kursus
med
fleksibel
undervisning
Tilstedeværelsesundervisningen
på
kurset
ligger
på
fem
lørdage
i
foråret
2001
Derudover
kommer
undervisning
over
Internettet
samt
studier
hjemmearbejde
uden
for
IT
højskolen
Kurset
udbydes
under
74
tompladsordningen
Beskrivelsen
indeholder
kursets
titel
den
ugedag
hvor
undervisningen
finder
sted
og
de
kursusspecifikke
forudsætninger
for
det
enkelte
kursus
75
Tilmelding
til
kurset
fandt
sted
online
76
Grundlæggende
Programmering
Undervisningsdage
fem
lørdage
samt
undervisning
via
Internettet
Forudsætninger
Ingen
ud
over
bachelorniveau
77
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
78
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
IT
Platforme
og
Organisation
Kursusbeskrivelse
Semester
Forårssemesteret
2001
Ugentlig
undervisningsdag
Lørdage
i
uge
9
14
og
uge
16
21
alle
dage
kl
9
00
13
00
Ansøgningsfrist
26
januar
2001
Ansøgning
13
Ansøgning
om
optagelse
på
kurset
kan
finde
sted
online
her
NB
Kurset
vil
blive
oprettet
og
har
stadig
ledige
pladser
Formelle
forudsætninger
Ingen
ud
over
bachelorniveau
Målsætninger
Målet
med
dette
kursus
er
at
give
dig
en
grundlæggende
forståelse
af
IT
verdenen
såvel
teknisk
som
arbejdsmæssigt
Efter
kurset
skal
du
kunne
snakke
fagligt
med
IT
folk
kunne
bruge
Windows
NT
og
Linux
til
filhåndtering
editering
og
oversættelse
af
software
kunne
bruge
grundlæggende
HTML
kunne
forklare
computerens
arkitektur
og
funktion
kunne
forklare
kapacitetsforhold
for
CPU
og
netværk
kunne
forklare
formålet
med
IT
i
virksomheder
kunne
forklare
udviklingsprocessen
af
IT
systemer
og
dens
problemer
Fagligt
indhold
Udgangspunktet
er
at
datamaten
ligesom
andre
komplekse
systemer
tre
fundamentale
egenskaber
Evnen
til
at
huske
til
at
beregne
og
til
at
kommunikere
Ideen
er
at
disse
egenskaber
i
praksis
realiseres
på
forskellige
niveauer
fra
den
fysiske
datamat
styresystemet
og
anvendelsesprogrammerne
til
de
organisatoriske
arbejdsprocesser
Detaljeret
indhold
Maskinarkitektur
Netværk
Operativsystemer
Windows
NT
og
Linux
IT
i
virksomheder
Udviklingsprocessen
ved
IT
systemer
Litteratur
Kursets
grundbog
vil
være
Introduction
to
Information
Systems
Essentials
for
the
Internetworked
E
Business
Enterprise
af
James
A
O
Brien
i
efteråret
2000
blev
9
udgave
brugt
men
der
skulle
nu
være
kommet
en
10
udgave
Endvidere
vil
der
være
noget
supplerende
materiale
noter
uddrag
af
andre
bøger
eventuelt
med
Computer
Science
an
overview
som
supplerende
lærerbog
dette
var
tilfældet
i
efteråret
2000
men
er
pt
under
genovervejelse
Kursusform
Forelæsninger
og
praktiske
øvelser
Sted
IT
højskolen
Glentevej
67
2400
København
NV
Eksamensform
Eksamensform
er
endnu
ikke
fastlagt
Eksamensdato
Ikke
fastlagt
Underviser
Mikkel
Arentoft
Hvis
du
har
spørgsmål
vedrørende
kurset
så
kontakt
venligst
14
studievejledningen
15
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Studievejledning
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Ofte
stillede
spørgsmål
11
Uddannelses
katalog
inter
menu
bund
gif
Studievejledning
IT
højskolen
har
fire
studievejledere
der
kan
svare
på
generelle
spørgsmål
om
IT
højskolen
uddannelser
optagelse
og
på
spørgsmål
der
knytter
sig
til
de
enkelte
uddannelser
og
enkelte
linier
på
IT
højskolen
Åbningstider
mandag
kl
10
14
tirsdag
kl
10
14
onsdag
kl
10
14
torsdag
kl
10
14
fredag
kl
10
14
Lukket
i
uge
32
6
10
august
2001
på
grund
af
samtaler
med
nye
studerende
Sådan
kan
du
kontakte
studievejledningen
Telefon
38
16
88
73
e
mail
12
studievejledningen
it
c
dk
Adresse
Studievejledningen
Glentevej
67
DK
2400
København
NV
Lokale
1
51
Studievejledere
Helle
Kjærsgaard
Jesper
Søndergaard
Jensen
Karen
Maria
Møller
Rikke
Vogelsang
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studievejledning
Ofte
stillede
spørgsmål
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Ofte
stillede
spørgsmål
Her
på
siden
finder
du
svar
på
de
spørgsmål
studievejledning
oftest
bliver
stillet
Finder
du
ikke
dit
svar
her
er
du
selvfølgelig
velkommen
til
at
kontakte
studievejledningen
på
38
16
88
73
eller
11
studievejledningen
it
c
dk
Optagelse
12
Hvad
er
optagelseskravene
på
IT
højskolen
13
Hvornår
er
der
ansøgningsfrist
14
Hvornår
får
jeg
besked
om
optagelse
Undervisning
15
Kan
man
have
arbejde
ved
siden
af
studierne
16
Hvordan
foregår
undervisningen
17
Kan
man
få
fjernundervisning
18
Kan
man
tage
masteruddannelsen
om
aftenen
19
Hvilket
sprog
undervises
der
på
Semesterplan
20
Hvordan
ser
semsterplanen
ud
Enkeltfag
21
Kan
jeg
tage
enkeltfag
på
IT
Højskolen
22
Hvordan
søger
jeg
om
enkeltfag
på
IT
højskolen
23
Hvordan
får
jeg
meritoverført
mit
enkeltfag
24
Hvornår
er
der
ansøgningsfrist
til
enkeltfag
25
Hvornår
får
jeg
besked
om
optagelse
på
enkeltfag
Diverse
26
Hvilke
andre
IT
uddannelser
findes
der
i
Danmark
27
Kan
jeg
få
SU
Optagelse
Hvad
er
optagelseskravene
på
IT
højskolen
For
at
kunne
blive
optaget
på
kandidatuddannelserne
skal
man
som
hovedregel
have
en
bachelorgrad
eller
tilsvarende
kvalifikationer
For
optagelse
på
Internetteknologi
og
Multimedieteknologi
kræves
desuden
matematik
på
A
niveau
Hvis
du
allerede
har
en
kandidateksamen
bliver
du
stillet
bagerst
i
køen
da
man
som
hovedregel
ikke
må
have
to
kandidatgrader
For
at
blive
optaget
på
masteruddannelsen
kræves
minimum
en
bachelorgrad
eller
tilsvarende
kvalifikationer
samt
to
års
relevant
erhvervserfaring
For
at
blive
optaget
på
diplomuddannelsen
kræves
der
som
hovedregel
en
videregående
uddannelse
eller
tilsvarende
kvalifikationer
samt
mindst
to
års
relevant
erhvervserfaring
Den
videregående
uddannelse
kan
være
en
kortere
videregående
uddannelse
en
mellemlang
videregående
uddannelse
eller
en
lang
videregående
uddannelse
f
eks
bachelor
eller
kandidatgrad
fra
et
universitet
Hvornår
er
der
ansøgningsfrist
Ansøgningsfristen
for
optag
på
IT
Højskolen
pr
1
september
2001
er
den
15
juni
2001
klokken
12
00
Ansøgningsmaterialet
bliver
offentliggjort
på
websitet
i
midten
af
maj
Hvornår
får
jeg
besked
om
optagelse
IT
højskolen
udsender
svar
medio
juli
2001
Undervisning
Kan
man
have
arbejde
ved
siden
af
studierne
IT
højskolen
råder
til
at
man
ikke
har
erhvervsarbejde
ved
siden
af
studierne
Det
er
dog
op
til
den
enkelte
selv
at
vurdere
om
man
kan
følge
studierne
og
samtidig
have
erhvervsarbejde
Hvordan
foregår
undervisningen
På
kandidatlinierne
er
undervisningen
i
et
semester
tilrettelagt
med
tre
sideløbende
kurser
i
en
10
12
ugers
periode
Herefter
er
der
en
projektperiode
Det
hele
afsluttes
med
eksamen
i
hvert
kursus
og
i
projektet
På
masteruddannelserne
og
diplomuddannelserne
er
strukturen
den
samme
med
kurser
og
projekter
men
antallet
af
kurser
er
mindre
Læs
mere
under
de
enkelte
28
uddannelser
Kan
man
få
fjernundervisning
Ja
det
kan
man
i
begrænset
omfang
Fra
foråret
2001
udbyder
It
højskolen
kurset
Grundlæggende
programmering
som
fleksibel
undervisning
Det
indebærer
udveksling
af
obligatoriske
opgaver
og
materialer
over
internettet
og
fem
lørdagsforelæsninger
af
fem
timers
varighed
fordelt
over
semestret
I
fremtiden
vil
flere
af
IT
højskolens
kurser
kunne
gennemføres
på
den
fleksible
måde
Kan
man
tage
masteruddannelsen
om
aftenen
Masteruddannelsen
foregår
som
regel
i
dagtimerne
men
enkelte
kurser
er
det
muligt
at
følge
fleksibelt
Se
ovenstående
spørgsmål
Hvilket
sprog
undervises
der
på
Undervisningen
foregår
hovedsageligt
på
dansk
Enkelte
fag
udbydes
på
engelsk
ligesom
gæsteforelæsninger
foregår
på
engelsk
Undervisningssprog
fremgår
af
kursusbeskrivelserne
under
de
enkelte
linier
Semesterplan
Hvordan
ser
semsterplanen
ud
Kursusperiode
29
januar
27
april
Påskeferie
10
16
april
Projektperiode
30
april
25
maj
Eksamen
28
maj
29
juni
Enkeltfag
Kan
jeg
tage
enkeltfag
på
IT
Højskolen
Du
kan
tage
enkeltfag
på
IT
højskolen
hvis
du
er
tilmeldt
en
kandidatuddannelse
på
en
anden
højere
læreanstalt
Som
noget
nyt
udbyder
IT
højskolen
fra
2001
desuden
en
række
kurser
for
eksterne
studerende
For
at
kunne
søge
optagelse
på
disse
kurser
skal
ansøgerne
minimum
have
en
bacheloruddannelse
bag
sig
Det
skyldes
at
de
udbudte
kurser
også
følges
af
skolens
kandidat
og
masterstuderende
så
det
er
vigtigt
at
deltagernes
niveau
stemmer
overens
for
at
få
et
godt
udbytte
at
undervisningen
Hvordan
søger
jeg
om
enkeltfag
på
IT
højskolen
Du
skal
udfylde
et
ansøgningsskema
som
er
tilgængeligt
via
skolens
hjemmeside
Sammen
med
ansøgningsskemaet
findes
en
udtømmelig
liste
over
de
kurser
der
kan
søges
om
plads
på
Hvis
du
finder
et
kursus
i
kursusbogen
som
ikke
er
på
listen
er
det
fordi
det
ikke
er
tilgængeligt
for
andre
end
IT
højskolen
primære
studerende
Det
er
vigtigt
at
du
undersøger
hvilke
krav
din
egen
institution
har
med
hensyn
til
meritoverførsel
af
fag
fra
et
andet
universitet
IT
højskolen
kræver
en
forhåndsgodkendelse
for
at
kunne
optage
kandidatstuderende
fra
andre
universiteter
Hvordan
får
jeg
meritoverført
mit
enkeltfag
Du
skal
forhøre
dig
på
din
egen
uddannelsesinstitution
Det
er
typisk
sådan
at
man
på
forhånd
søger
sit
studienævn
om
en
forhåndsgodkendelse
Hvornår
er
der
ansøgningsfrist
til
enkeltfag
Ansøgningsfristen
til
enkeltfag
i
efterårssemestret
2001
er
15
august
2001
Hvornår
får
jeg
besked
om
optagelse
på
enkeltfag
Ledige
pladser
på
kurser
fordeles
til
enkeltfagsstuderende
når
kandidat
og
masterstuderende
på
IT
højskolen
har
valgt
kurser
Ansøgere
der
har
søgt
enkeltfag
kan
forvente
at
få
svar
ultimo
august
til
kurserne
der
begynder
i
september
Diverse
Hvilke
andre
IT
uddannelser
findes
der
i
Danmark
Der
findes
en
lang
række
IT
uddannelser
i
Danmark
Nogle
er
korte
eller
mellemlange
uddannelser
mens
andre
er
længerevarende
akademiske
uddannelser
På
Undervisningsministeriets
hjemmeside
kan
du
søge
på
IT
relaterede
uddannelser
Adressen
er
29
www
uvm
dk
Kan
jeg
få
SU
Kandidatuddannelserne
er
SU
berettiget
mens
masteruddannelser
og
diplomuddannelsen
ikke
er
SU
berettigede
30
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
31
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studievejledning
Uddannelses
katalog
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Uddannelseskatalog
I
uddannelseskataloget
kan
du
finde
informationer
om
IT
højskolens
Kandidat
Master
og
Diplomuddannelser
11
I
word
format
12
I
PDF
format
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Tekstformidling
på
Internet
lørdag
Kursusbeskrivelse
Semester
Forårssemesteret
2001
Ugentlig
undervisningsdag
Lørdag
kl
9
00
15
00
Ansøgningsfrist
Mandag
den
15
januar
2001
kl
12
00
Ansøgning
13
Ansøgning
om
optagelse
på
kurset
kan
finde
sted
online
her
Formelle
forudsætninger
Ingen
ud
over
bachelorniveau
Målsætninger
De
studerende
skal
lære
at
skrive
og
redigere
tekstmateriale
til
interaktive
medier
især
Internettet
Kurset
henvender
sig
til
alle
der
ønsker
at
sætte
sig
ind
i
de
særlige
krav
som
Internet
og
andre
elektroniske
medier
stiller
til
tekstuel
formidling
Deltagerne
har
typisk
skriveerfaring
fra
universitetsopgaver
journalistisk
arbejde
eller
andet
og
ønsker
at
blive
stærke
i
beherskelsen
af
tekstformidling
til
de
nye
medier
Kursets
mål
er
at
give
deltagerne
et
solidt
teoretisk
og
praktisk
grundlag
for
at
formidle
via
elektroniske
medier
Fagligt
indhold
Kurset
beskæftiger
sig
med
indholdet
og
sproget
Hvordan
skriver
man
kort
klart
informativt
og
levende
Hvordan
giver
man
eksempelvis
videnskabelige
tekster
en
chance
for
at
blive
fundet
og
læst
på
nettet
Kurset
behandler
desuden
kommunikation
mellem
afsender
og
modtager
og
interaktion
mellem
menneske
og
maskine
Der
vises
eksempler
på
gode
og
mindre
gode
tekster
på
nettet
og
gøres
forsøg
på
at
defineret
nye
digitale
tekstgenrer
Deltagerne
vil
i
løbet
af
kurset
selv
producere
en
del
tekst
til
Internet
både
som
faste
opgaver
og
med
mulighed
for
at
arbejde
med
eget
tekstmateriale
Kurset
bestås
ved
aflevering
af
obligatoriske
opgaver
og
afsluttende
skriftlig
eksamen
Kursusform
Forelæsninger
og
praktiske
øvelser
Sted
IT
højskolen
Glentevej
67
2400
København
NV
Eksamensform
Skriftlig
eksamen
med
bedømmelse
efter
13
skalaen
og
ekstern
censur
Spørgsmål
Hvis
du
har
spørgsmål
vedrørende
kurset
så
kontakt
venligst
14
studievejledningen
15
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Tekstformidling
på
Internet
onsdag
kl
16
00
21
30
Kursusbeskrivelse
Semester
Forårssemesteret
2001
Ugentlig
undervisningsdag
Onsdag
kl
16
00
21
30
Ansøgningsfrist
Fredag
den
19
januar
2001
Ansøgning
13
Ansøgning
om
optagelse
på
kurset
kan
finde
sted
online
her
Formelle
forudsætninger
Ingen
ud
over
bachelorniveau
Målsætninger
De
studerende
skal
lære
at
skrive
og
redigere
tekstmateriale
til
interaktive
medier
især
Internettet
Kurset
henvender
sig
til
alle
der
ønsker
at
sætte
sig
ind
i
de
særlige
krav
som
Internet
og
andre
elektroniske
medier
stiller
til
tekstuel
formidling
Deltagerne
har
typisk
skriveerfaring
fra
universitetsopgaver
journalistisk
arbejde
eller
andet
og
ønsker
at
blive
stærke
i
beherskelsen
af
tekstformidling
til
de
nye
medier
Kursets
mål
er
at
give
deltagerne
et
solidt
teoretisk
og
praktisk
grundlag
for
at
formidle
via
elektroniske
medier
Fagligt
indhold
Kurset
beskæftiger
sig
med
indholdet
og
sproget
Hvordan
skriver
man
kort
klart
informativt
og
levende
Hvordan
giver
man
eksempelvis
videnskabelige
tekster
en
chance
for
at
blive
fundet
og
læst
på
nettet
Kurset
behandler
desuden
kommunikation
mellem
afsender
og
modtager
og
interaktion
mellem
menneske
og
maskine
Der
vises
eksempler
på
gode
og
mindre
gode
tekster
på
nettet
og
gøres
forsøg
på
at
defineret
nye
digitale
tekstgenrer
Deltagerne
vil
i
løbet
af
kurset
selv
producere
en
del
tekst
til
Internet
både
som
faste
opgaver
og
med
mulighed
for
at
arbejde
med
eget
tekstmateriale
Kurset
bestås
ved
aflevering
af
obligatoriske
opgaver
og
afsluttende
skriftlig
eksamen
Kursusform
Forelæsninger
og
praktiske
øvelser
Sted
IT
højskolen
Glentevej
67
2400
København
NV
Eksamensform
Skriftlig
eksamen
med
bedømmelse
efter
13
skalaen
og
ekstern
censur
Spørgsmål
Hvis
du
har
spørgsmål
vedrørende
kurset
så
kontakt
venligst
14
studievejledningen
15
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
Optagelses
betingelser
Søg
om
optagelse
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Optagelsesbetingelser
For
at
blive
optaget
som
enkeltfagsstuderende
på
et
kursus
under
Åben
Uddannelse
på
IT
højskolen
kræves
mindst
en
videregående
uddannelse
på
bachelorniveau
eller
tilsvarende
evt
specielle
IT
faglige
forudsætninger
I
kursusbeskrivelsen
er
angivet
de
eventuelle
specifikke
faglige
forudsætninger
som
er
gældende
for
det
enkelte
kursus
at
der
er
ledig
plads
på
kurset
Kvalificerede
ansøgere
får
tildelt
studiepladser
i
forhold
til
den
rækkefølge
ansøgningerne
inkl
dokumentation
for
adgangsgivende
uddannelse
og
kursusspecifikke
forudsætninger
modtages
på
IT
højskolen
først
til
mølle
princippet
at
ansøgningen
inkl
dokumentation
er
modtaget
før
ansøgningsfristens
udløb
IT
højskolen
forbeholder
sig
ret
til
ikke
at
oprette
et
kursus
hvis
der
er
for
få
studerende
tilmeldt
kurset
eller
hvis
andre
særlige
omstændigheder
opstår
13
Ansøgning
om
optagelse
på
kurserne
fandt
sted
online
her
Hvis
du
har
spørgsmål
vedrørende
optagelsesbetingelser
for
enkeltfagskurser
under
Åben
Uddannelse
så
kontakt
venligst
14
studievejledningen
15
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
Kursus
information
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Kursusinformation
Følgende
generelle
information
er
gældende
for
de
enkelte
kurser
Undervisningsperiode
Et
kursus
gennemføres
i
løbet
af
et
semester
og
afsluttes
med
eksamen
Forårssemesteret
starter
i
slutningen
af
januar
og
slutter
i
juni
mens
efterårssemesteret
starter
i
slutningen
af
august
og
slutter
i
januar
Omfang
Hvert
kursus
har
et
omfang
svarende
til
7
5
ECTS
point
European
Credit
Transfer
System
svarende
til
1
8
studieår
Ansøgningsfrist
NB
Ansøgningsfristen
til
enkeltfagskurser
under
Åben
Uddannelse
er
overskredet
og
der
kan
ikke
længere
ansøges
om
optagelse
på
enkeltfagskurser
i
forårssemesteret
2001
IT
højskolen
vil
i
løbet
af
foråret
og
sommeren
annoncere
de
enkeltfagskurser
som
der
kan
søges
optagelse
på
til
efterårssemesteret
2001
Tilmeld
dig
evt
IT
højskolens
13
elektroniske
nyhedstjeneste
hvor
de
kommende
enkeltfagskurser
vil
blive
omtalt
Undervisningsniveau
IT
højskolen
er
et
universitet
og
undervisningen
under
Åben
Uddannelse
foregår
på
universitetsniveau
Ansøgning
14
Online
ansøgning
fandt
sted
her
Pris
6
250
00
kr
pr
kursus
Uddannelsesstøtte
Enkeltfagsstuderende
er
ikke
SU
berettigede
Hvis
dit
samlede
uddannelsesforløb
er
på
mere
end
20
undervisningslektioner
pr
uge
kan
du
muligvis
søge
om
SVU
som
er
15
Statens
VoksenUddannelsesstøtte
Yderligere
information
Hvis
du
har
yderligere
spørgsmål
vedrørende
IT
højskolens
uddannelser
og
optagelse
bedes
du
kontakte
16
studievejledningen
17
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
4
Enkeltfag
5
Pris
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Pris
6
250
00
kr
pr
kursus
13
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
Phd
studier
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
Kurser
efterår
2000
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Kurser
efterår
2000
Elektronisk
kursusbog
Kurserne
for
efteråret
2000
er
beskrevet
i
den
elektroniske
11
kursusbog
Kursernes
hjemmesider
Kursernes
hjemmesider
for
efteråret
2000
findes
12
her
13
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
14
wwwadm
it
c
dk
1
IT
højskolen
Forskning
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Vision
10
Publikationer
11
Eksterne
undervisere
12
Interview
13
Ph
D
studies
inter
menu
bund
gif
Forskning
På
IT
højskolen
findes
fire
forskningsafdelinger
14
Afdelingen
for
Digital
Æstetik
og
Kommunikation
Afdelingen
for
Digital
Æstetik
og
Kommunikation
beskæftiger
sig
med
æstetiske
kulturelle
sociale
og
kommunikative
aspekter
af
IT
Med
udgangspunkt
i
humanistiske
og
samfundsvidenskabelige
forskningstraditioner
søger
vi
at
udvikle
teoretiske
og
tværvidenskabelige
forståelsesmodeller
af
digitale
fænomener
15
Teoriafdelingen
Teoriafdelingen
fokuserer
på
følgende
forskningsområder
algoritmer
og
kompleksitetsteori
semantik
for
logik
og
programmeringssprog
kategoriteoretisk
logik
og
typeteori
modeller
for
parallelle
systemer
verifikation
automatisk
testgenerering
mobilitet
16
Innovationsafdelingen
Innovationsafdelingen
arbejder
med
at
udvikle
nye
teknologier
gennem
forskning
af
høj
kvalitet
og
dennes
innovative
anvendelser
Aktuelt
har
vi
fokus
på
datasikkerhed
og
kompression
datamatsyn
og
grafik
interaktionsteknologi
og
softwareteknologi
17
Afdelingen
for
Design
og
Brug
af
Informationsteknologi
DuIT
engelsk
version
Afdelingen
for
Design
og
Brug
af
Informationsteknologi
DuIT
udvikler
begrebsdannelser
metoder
og
værktøjer
Der
fokuseres
på
forståelse
af
sammenhængen
imellem
IT
dens
brugere
og
deres
arbejdspraksis
samt
på
forståelse
og
understøttelse
af
design
og
udvikling
Forskningen
er
i
høj
grad
empirisk
og
eksperimentelt
drevet
og
der
bygges
på
både
teknisk
naturvidenskabelige
humanistiske
og
samfundsvidenskabelige
forskningstraditioner
18
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
Vision
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Visioner
og
mål
IT
højskolens
vision
IT
højskolen
vil
i
dialog
med
sine
omgivelser
skabe
et
attraktivt
og
levende
forsknings
og
uddannelsesmiljø
der
bidrager
til
vækst
og
udvikling
i
det
danske
og
internationale
samfund
ved
at
skabe
et
IT
miljø
der
favner
naturvidenskab
humaniora
design
og
erhverv
at
uddanne
personer
med
en
stor
og
bred
viden
om
IT
og
ITs
muligheder
gennem
forskning
at
skabe
ny
teknologi
og
bedre
anvendelse
af
eksisterende
teknologi
at
øge
samfundets
indsigt
i
IT
og
ITs
muligheder
Målsætning
for
forskning
IT
højskolen
vil
på
internationalt
niveau
og
på
et
vidtfavnende
akademisk
grundlag
bidrage
til
udvikling
af
og
indsigt
i
IT
ved
at
etablere
et
inspirerende
og
anerkendt
forskingsmiljø
drive
grundforskning
i
IT
og
IT
s
muligheder
skabe
ny
teknologi
og
nye
anvendelsesmuligheder
for
IT
rekruttere
velkvalificerede
og
anerkendte
forskere
og
undervisere
sikre
et
højt
fagligt
og
pædagogisk
niveau
i
undervisningen
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
Publikationer
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Publikationer
IT
højskolens
forskningspublikationer
findes
kun
på
engelsk
Klik
her
for
at
se
en
liste
over
10
publikationerne
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
English
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Find
employee
staff
and
Ph
D
students
inter
menu
bund
gif
The
IT
University
of
Copenhagen
Welcome
to
the
IT
University
of
Copenhagen
IT
C
10
Contact
Information
11
Research
Projects
12
Ph
D
studies
at
IT
C
13
Master
and
kandidat
courses
in
English
some
text
in
Danish
14
Vacant
positions
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
English
Find
employee
staff
and
Ph
D
students
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Find
staff
and
Ph
D
students
at
the
IT
C
Name
or
part
of
it
Type
of
position
all
staff
Affiliation
IT
C
and
partners
Find
person
s
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Kontakt
Contact
Information
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Contact
Information
Address
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
Denmark
Phone
45
38
16
88
88
Fax
45
38
16
88
99
Information
for
students
Student
information
office
10
Studievejledningen
it
c
dk
Press
relations
and
contacts
to
industry
President
Mads
Tofte
11
tofte
it
c
dk
Vacant
positions
Human
Resources
Officer
Kirsten
Talbro
Laraignou
12
ktl
it
c
dk
BuzzTalks
Tanja
Danner
13
td
it
c
dk
Buildings
and
Maintenance
Head
of
dept
of
Buildings
and
Internal
Service
Margit
Achen
14
margit
it
c
dk
Comments
and
suggestions
regarding
the
web
site
Webmaster
15
wwwadm
it
c
dk
16
USEMAP
inter
icon2top
gif
opdateret
11
04
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
Projekter
3
Uddannelser
4
Stillinger
5
Aktiviteter
6
Home
7
Personer
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Research
Projects
and
Research
Software
11
Algorithm
Group
3D
image
Analysis
12
3D
lab
Functional
Software
Technologies
13
Funtechs
Standard
ML
14
Moscow
ML
15
The
ML
Kit
Embedded
Software
16
RCES
Verification
of
embedded
systems
17
VERIS
Design
and
Use
of
Interaktive
Web
Applications
18
DIWA
19
Computation
of
Natural
Shape
20
Eye
Based
IT
21
Boolean
Expression
Diagrams
22
BuDDy
23
MuDDy
24
Difference
Decision
Diagrams
25
STTools
26
USEMAP
inter
icon2top
gif
opdateret
04
12
2000
27
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
Ph
D
studies
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Profile
11
Application
12
Academic
Board
13
Funding
14
Courses
inter
menu
bund
gif
Ph
D
studies
The
IT
C
has
19
Ph
D
students
enrolled
at
present
This
number
is
expected
to
increase
drastically
in
a
short
period
of
time
Information
about
available
Ph
D
scholarships
can
be
seen
at
15
vacancies
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
Profile
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Lisbeth
Klastrup
I
den
virtuelle
verden
Jeg
forsker
i
fortælling
og
læring
i
virtuelle
verdener
fortæller
ph
d
studerende
Lisbeth
Klastrup
Dels
læser
jeg
en
del
litteraturteori
blandt
andet
fortælleteori
Dels
bruger
jeg
en
del
tid
på
at
se
nærmere
på
virtuelle
verdener
og
endelig
så
bygger
jeg
også
mit
eget
virtuelle
univers
her
på
IT
højskolen
30
årige
Lisbeth
Klastrup
startede
på
ph
d
studiet
i
oktober
1999
og
er
tilknyttet
linien
design
kommunikation
og
medier
Inden
hun
begyndte
på
IT
højskolen
havde
hun
afsluttet
sit
speciale
i
litteraturvidenskab
om
interaktive
fortællinger
på
Københavns
Universitet
Jeg
søgte
stillingen
på
IT
højskolen
fordi
jeg
var
tiltrukket
af
et
tværfagligt
miljø
og
synes
det
kunne
være
spændende
at
være
med
til
at
bygge
et
nyt
forskningsmiljø
op
Stedet
er
præget
af
pionerånd
nytænkning
og
hårdt
arbejde
For
øjeblikket
kunne
jeg
godt
tænke
mig
nogle
flere
humanistiske
forskere
men
der
kommer
nye
til
og
skolen
lægger
vægt
på
et
bredt
fagligt
grundlag
blandt
lærerne
I
efteråret
udbyder
Lisbeth
Klastrup
et
kursus
i
virtuelle
samfund
Desuden
er
hun
ved
at
forberede
en
konference
om
computerspil
og
virtuelle
verdener
Konferencen
skal
forhåbentlig
foregå
på
IT
højskolen
Når
Lisbeth
Klastrup
er
færdig
med
sin
Ph
D
kunne
hun
godt
tænke
sig
at
kombinere
forskning
og
undervisning
med
et
privat
job
hvor
hun
enten
havde
et
multimedieforlag
eller
arbejdede
med
virtuelle
verdener
i
virksomheder
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
Application
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Application
11
Short
description
of
the
IT
University
further
information
in
Danish
can
be
obtained
from
the
12
homepage
Dansk
ansøgningspakke
i
forskellige
formater
skema
vejledning
Word
97
13
skemaDK
doc
14
vejlDK
doc
PostScript
15
skemaDK
ps
16
vejlDK
ps
Application
package
in
English
in
various
formats
form
guide
Word
97
17
skemaENG
doc
18
vejlENG
doc
PostScript
19
skemaENG
ps
20
vejlENG
ps
Questions
can
be
directed
to
the
Ph
D
school
at
e
mail
21
phdadm
it
c
dk
or
telephone
45
3816
8888
Maintained
by
22
Lotte
Møller
lm
it
c
dk
23
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
24
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
Academic
Board
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Mødekalender
inter
menu
bund
gif
The
Academic
Board
for
Ph
D
studies
12
Nyeste
udkast
til
studieordning
Skema
til
halvårsrapporter
o
Latex
kildetekst
13
halvaars
tex
til
udfyldelse
og
latex
oversættelse
o
Word
97
udgave
14
halvaars
doc
Generelle
spørgsmål
vedrørende
ph
d
studierne
kan
sendes
til
15
phdadm
itu
dk
Interrim
ph
d
studienævnet
Henrik
Hulgaard
16
henrik
it
c
dk
lektor
formand
Fritz
Henglein
17
henglein
it
c
dk
lektor
DoI
Anker
Helms
Jørgensen
18
anker
it
c
dk
lektor
DiAC
Mads
Nielsen
19
malte
it
c
dk
lektor
DoI
Stephen
Alstrup
20
stephen
it
c
dk
forskningsadjunkt
Teori
Kasper
Østerbye
21
kasper
it
c
dk
lektor
DUIT
Lisbeth
Klastrup
22
klastrup
it
c
dk
ph
d
studerende
Michael
Florentin
Nielsen
23
erik
it
c
dk
ph
d
studerende
suppleant
Lotte
Møller
24
lm
it
c
dk
AC
fuldmægtig
25
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
26
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Academic
Board
Mødekalender
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Mødekalender
I
forårssemestret
2001
vil
ph
d
studienævnets
ordinære
møder
være
torsdage
kl
13
14
i
lokale
2
31
Ordinære
møder
1
februar
22
februar
22
marts
19
april
17
maj
14
juni
Møder
vedr
studieordning
1
februar
kl
10
12
lok
2
31
8
februar
kl
10
12
lok
2
03
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
Funding
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Funding
Hver
ph
d
studerende
har
sammen
med
sin
vejleder
en
annuum
s
beløb
på
p
t
25000
kr
år
2001
dimse
kontoen
som
skal
benyttes
til
rejser
sommerskoler
småindkøb
bøger
specielle
PC
dimser
o
lign
Er
der
udgifter
herudover
kan
ph
d
studienævnets
formand
bevillige
mindre
beløb
op
til
5000
kr
Beløb
over
5000
kr
kræver
en
ansøgning
til
ph
d
studienævnet
I
begge
tilfælde
skal
der
afleveres
en
ansøgning
med
følgende
punkter
Ansøgernavn
ph
d
studerende
og
vejleder
Formål
f
eks
rejse
til
Californien
for
at
præsentere
en
artikel
Begrundelse
for
at
søge
ph
d
studienævnet
f
eks
jeg
har
fået
optaget
så
mange
artikler
i
år
at
jeg
har
opbrugt
hele
vejleder
puljen
til
rejser
allerede
Budget
krævet
deltaljeringsniveau
f
eks
billetten
koster
ca
8500
kr
iflg
rejsebureauet
plus
et
par
tog
billetter
studenterbetaling
for
konferencen
er
1200
kr
derudover
kommer
diæter
Underskrives
af
ph
d
studerende
og
vejleder
Vejlederen
dokumenterer
med
sin
underskrift
relevansen
af
aktiviteten
udgiften
Ansøgningen
vedlægges
en
udskrift
af
dimse
kontoen
Ansøgningen
indleveres
til
ph
d
studienævnsformanden
ph
d
studienævnet
via
Lotte
Møller
lok
1
38
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
Courses
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Advanced
data
structures
E2000
12
Information
theory
E2000
13
DAIMI
IT
C
Meetings
14
Topics
in
Language
Based
Security
F2001
15
Avanceret
algoritmik
F2001
16
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
F2001
17
Constructive
Logic
Project
F2001
18
Streaming
video
for
wireless
networks
F2001
inter
menu
bund
gif
Ph
D
courses
Here
is
a
list
of
available
Ph
D
courses
at
the
IT
University
of
Copenhagen
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
by
19
Professor
James
Damon
May
14
17
2001
Streaming
video
for
wireless
networks
by
20
Professor
K
J
Ray
Liu
May
17
23
2001
Topics
in
Language
Based
Security
by
21
Assistant
Professor
Greg
Morrisett
June
11
15
2001
Courses
at
other
universities
22
Aalborg
University
23
Danmarks
Tekniske
Universitet
24
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
25
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
Advanced
data
structures
E2000
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Course
in
advanced
data
structures
Kursets
navn
Avancerede
datastrukturer
Engelsk
navn
Advanced
data
structures
Semester
E2000
Formelle
forudsætninger
Kendskab
til
algoritmik
fra
et
introducerende
kursus
Sprog
Dansk
engelsk
Målsætninger
At
give
de
studerende
kendskab
til
kompleksitetet
af
avancerede
datastrukturer
og
nogle
af
dets
anvendelser
i
datalogi
Faglig
indhold
I
kurset
vil
vi
bygge
videre
på
introducerende
algoritmekurser
Vi
vil
fokusere
på
problemer
der
er
målrettet
mod
anvendelser
for
massive
data
sæt
I
90
erne
har
en
række
gennembrudsresultater
anvist
nye
avancerede
tekniske
muligheder
f
eks
at
sortering
kan
gøres
hurtigere
end
i
O
n
log
n
tid
For
de
stadigt
voksende
datamængder
man
i
dag
er
interesseret
i
at
behandle
er
det
ofte
mere
og
mere
essentielt
at
udnytte
sådanne
avancerede
teknikker
til
performanceforbedringer
Kurset
vil
præsentere
helt
nye
forskningsresultater
for
problemstillinger
i
denne
kontekst
Blandt
anvendelserne
for
disse
kan
nævnes
performance
relaterede
problemer
for
databaser
datawarehouses
konstruktion
af
dominanstræ
for
en
control
flow
graf
ruteteknikker
konstruktion
af
internet
søgemaskiner
og
DNA
RNA
sekvensanalyse
Blandt
de
mere
klassiske
algoritmiske
problemstillinger
der
vil
kunne
blive
inddraget
i
kurset
er
søgning
i
sublogaritmisk
tid
beregning
af
korteste
vej
i
lineær
tid
samt
helt
nye
endnu
ikke
publicerede
resultater
for
range
searching
Kurset
vil
således
præsentere
algoritmiske
state
of
the
art
teknikker
og
give
applikationer
af
disse
Kursusform
Forelæsninger
seminar
og
obligatoriske
opgaver
Sted
ITC
Glentevej
Kursusdag
Torsdag
Eksamensform
Obligatorisk
opgave
Eksamensdato
18
januar
2001
Bemærkninger
Såfremt
et
flertal
af
de
studerende
er
fra
DIKU
afholdes
kurset
på
DIKU
Fagkoordinator
Stephen
Alstrup
12
stephen
it
c
dk
Kursusansvarlig
Stephen
Alstrup
13
stephen
it
c
dk
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
Information
theory
E2000
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Ph
D
seminar
in
information
theory
This
seminar
is
organised
in
collaboration
between
the
KU
University
of
Copenhagen
with
the
Department
of
Mathematics
the
DIKU
Department
of
Computer
Science
and
the
IT
University
of
Copenhagen
Organisers
Flemming
Topsøe
main
responsible
Boris
Ryabko
and
Peter
Johansen
Click
12
here
for
more
information
about
this
seminar
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
DAIMI
IT
C
Meetings
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
DAIMI
IT
C
Meeting
Series
12
DAIMI
IT
C
Meeting
Series
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
Topics
in
Language
Based
Security
F2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Topics
in
Language
Based
Security
by
12
Assistant
Professor
Greg
Morrisett
June
11
15
2001
Preliminary
course
description
When
secure
operating
systems
emerged
in
the
early
1970
s
the
primary
goal
was
to
isolate
users
processes
from
one
another
to
mediate
access
to
files
and
to
facilitate
fair
sharing
of
resources
Back
then
OS
kernels
were
small
and
system
components
were
updated
infrequently
from
tape
or
disk
A
system
administrator
had
a
good
idea
as
to
what
software
components
were
installed
where
to
get
trustworthy
components
and
how
to
configure
the
system
In
short
operating
systems
provided
a
good
architecture
for
ensuring
the
secure
operation
of
systems
In
contrast
today
s
desktops
are
running
primarily
by
a
single
user
so
almost
all
applications
run
with
the
same
privileges
Desktops
are
connected
by
fast
networks
that
allow
new
software
components
to
be
installed
from
various
sites
with
the
click
of
a
button
Worse
some
components
are
installed
and
executed
without
the
user
s
consent
or
knowledge
Furthermore
modern
operating
systems
consist
of
tens
of
millions
of
lines
of
code
code
that
in
practice
has
proven
to
be
buggy
And
finally
because
operating
systems
know
so
little
about
the
semantics
of
the
applications
they
are
running
they
have
no
opportunity
to
intervene
when
something
bad
happens
outside
the
kernel
As
a
result
today
s
operating
systems
do
not
protect
desktops
against
relatively
simple
attacks
e
g
Melissa
the
Love
Bug
etc
and
it
s
only
a
matter
of
time
until
we
are
hit
with
a
really
bad
virus
Consequently
researchers
are
re
visiting
security
architectures
to
find
solutions
that
take
the
modern
networked
world
into
account
Certain
programming
language
based
technologies
have
emerged
as
exciting
contenders
Interpreters
just
in
time
compilers
partial
evaluators
program
analyzers
type
checkers
proof
checkers
binary
rewriters
and
certifying
compilers
have
all
been
suggested
as
security
enforcement
mechanisms
that
in
principle
a
can
enforce
a
wider
range
of
fine
grained
least
privilege
security
policies
than
traditional
OS
based
reference
monitors
b
can
achieve
superior
performance
and
c
require
only
small
trustworthy
components
The
most
widely
known
exemplar
is
the
Java
Virtual
Machine
and
its
associated
Security
Manager
The
recently
announced
Microsoft
IL
and
associated
NET
architecture
is
similar
But
the
JVM
and
MSIL
architectures
suffer
from
a
number
of
shortcomings
and
are
in
danger
of
evolving
towards
the
pitfalls
of
operating
systems
We
will
take
a
quick
survey
through
exciting
language
based
security
technologies
and
access
their
potential
for
moving
out
of
the
lab
and
into
the
real
world
Among
the
topics
that
we
will
cover
1
what
security
policies
can
we
hope
to
enforce
2
language
based
reference
monitors
3
the
role
of
type
systems
in
security
4
proof
carrying
code
and
certifying
architectures
Registration
Please
contact
13
Lotte
Møller
for
registration
and
help
for
booking
accommodation
The
lectures
are
free
of
charge
Credit
The
course
yields
2
ECTS
European
Credit
Transfer
System
Site
The
course
takes
place
at
14
the
IT
University
of
Copenhagen
Glentevej
67
DK
2400
NV
Copenhagen
Denmark
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
Avanceret
algoritmik
F2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Avanceret
algoritmik
Get
further
information
about
the
course
12
here
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
F2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
May
14
17
2001
at
the
IT
University
of
Copenhagen
This
series
of
lectures
will
concern
scale
based
geometry
as
applied
to
computer
images
For
various
problems
in
computer
imaging
we
wish
to
be
able
to
analyze
the
geometry
of
the
objects
in
the
image
In
order
that
geometric
structures
associated
to
objects
in
an
image
can
be
used
for
various
purposes
they
should
satisfy
certain
basic
properties
which
include
the
following
1
They
should
apply
to
discrete
real
world
objects
and
to
the
mathematical
objects
which
model
them
which
include
nondifferentiable
functions
measures
etc
2
Genericity
This
means
that
most
images
have
associated
geometric
structures
which
exhibit
local
properties
described
by
a
finite
catalogue
of
possibilities
3
Structural
Stability
These
structures
must
be
constructed
in
the
presence
of
noise
and
various
distortions
Hence
the
structure
should
be
robust
i
e
the
structural
properties
should
remain
unchanged
under
sufficiently
small
perturbations
4
Generic
Transitions
Variations
in
the
structure
occurring
for
images
changing
with
one
or
5
The
methods
should
be
applicable
to
features
as
well
as
raw
images
The
lectures
will
explain
how
the
introduction
of
scale
together
with
the
methods
of
singularity
theory
provide
rigorous
mathematical
results
establishing
the
list
of
properties
for
a
large
class
of
possible
geometric
structures
and
demonstrating
the
applicability
to
specific
ones
First
we
consider
what
exactly
genericity
means
and
what
it
doesn
t
mean
We
will
explain
how
the
traditional
methods
of
singularity
theory
using
transversality
theory
leads
to
generic
properties
However
genericity
requires
that
we
place
a
topology
on
the
space
of
functions
measures
etc
modeling
the
images
Even
for
images
defined
by
smooth
functions
the
topology
for
genericity
does
not
match
traditional
mathematical
ideas
for
closeness
of
images
More
generally
if
we
wish
to
allow
images
to
be
defined
by
general
nondifferentiable
functions
then
the
stability
in
the
classical
framework
will
fail
Both
of
these
problems
are
overcome
t
hrough
the
introduction
of
scale
The
method
of
Gaussian
blurring
introduces
the
notion
of
scale
and
is
the
prototype
for
a
large
class
of
scaling
kernels
for
which
we
can
apply
the
methods
of
singularity
theory
These
allow
us
to
pass
from
methods
designed
for
idealized
problems
involving
differentiable
functions
such
as
the
Blum
medial
axis
and
Canny
edges
to
more
general
versions
applicable
to
real
world
problems
We
explain
how
the
traditional
methods
of
singularity
theory
must
be
modified
and
what
they
yield
We
illustrate
with
a
number
of
explicit
examples
how
the
results
about
generic
properties
of
local
structures
stability
and
generic
transitions
can
be
obtained
These
include
both
edge
and
medial
scale
based
geometric
structures
Course
material
Ideas
from
the
following
book
and
papers
will
be
presented
at
the
course
Although
not
a
prerequisite
you
might
want
to
look
through
the
introduction
part
of
the
material
prior
to
the
course
The
course
will
not
scrutinize
every
detail
in
these
papers
but
will
explain
the
highlights
and
main
ideas
from
them
as
well
as
from
other
material
Bruce
and
Giblin
Curves
and
Singularities
ISBN
0
521
42999
4
J
N
Damon
Ridges
and
Cores
for
Two
Dimensional
Images
Jour
Math
Imag
and
Vision
10
1999
163
174
J
N
Damon
Generic
Structure
of
Two
Dimensional
Images
under
Gaussian
Blurring
SIAM
Jour
Appl
Math
59
1998
97
138
J
N
Damon
Singularities
with
Scale
Threshold
and
Discrete
Functions
Exhibiting
Generic
Properties
Proc
Int
Workshop
on
Real
and
Complex
Singularities
Sao
Carlos
Maria
Ruas
Ed
Math
Contemp
vol
12
1997
45
65
Lecturer
James
N
Damon
is
professor
in
Mathematics
at
University
of
North
Carolina
Chapel
Hill
since
1983
He
graduated
as
Ph
D
from
Harvard
with
John
Mather
as
supervisor
in
1972
He
has
developed
the
singularity
theory
of
solutions
to
differential
equations
This
constitutes
when
applied
to
the
heat
equation
the
mathematical
basis
of
feature
detection
in
Gaussian
scale
space
Please
see
12
http
www
math
unc
edu
Faculty
jndamon
Registration
Please
contact
13
Lotte
Møller
for
registration
and
help
for
booking
accommodation
The
lectures
are
free
of
charge
Credit
The
course
yields
2
ECTS
European
Credit
Transfer
System
Site
The
course
takes
place
at
14
the
IT
University
of
Copenhagen
Glentevej
67
DK
2400
NV
Copenhagen
Denmark
Further
information
Up
to
date
information
will
be
provided
at
15
http
www
it
c
dk
pub
db
425
html
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Projekter
specialer
og
praktik
Studenterprojekter
efterår
2000
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Projektbørs
efterår
2000
I
november
2000
vil
en
stor
del
af
vores
studerende
begynde
deres
studenterprojekter
for
efterårssemesteret
under
vejledning
af
deres
respektive
undervisere
Projekterne
er
planlagt
til
at
forløbe
over
fire
uger
og
være
færdige
inden
jul
Her
finder
du
en
kort
beskrivelse
af
de
indkomne
projektforslag
fra
ansatte
virksomheder
og
studerende
til
fire
ugers
projekterne
for
efteråret
2000
Hvis
du
som
studerende
ønsker
at
være
med
i
et
af
projekterne
så
send
en
mail
til
kontaktpersonen
for
projektet
Virksomheder
er
velkomne
til
at
sende
projektforslag
til
11
Mikael
Kjærbye
som
vil
sørge
for
at
de
bliver
annonceret
her
på
internettet
Her
er
en
liste
over
aktuelle
projektforslag
12
Portal
for
ITEK
og
interneterhvervet
13
Søgemaskiner
14
Planning
for
an
ever
open
and
accessible
Data
Warehouse
15
Fun
Facts
website
16
Embedded
Java
17
Automatisering
af
test
18
Wap
overvågning
og
styring
af
netværkselementer
19
Apparatsoftware
20
Animeret
sitcom
21
Interaktiv
benchmarking
22
Modkultur
dk
et
debatforum
med
fokus
på
et
tema
23
Online
registrering
af
studerendes
kursusønsker
24
Salg
af
biografbilletter
flere
billetluger
25
Fælles
beskedsystem
for
en
arbejdsplads
26
Udklipsbureau
27
Spil
og
rangliste
28
Webbaseret
diskussionsforum
29
Analyse
af
webserverlog
30
AgroDebat
31
Internetmesse
forår
2002
Øksnehallen
32
Web
designer
til
start
up
website
33
Politisk
design
34
Database
baseret
Web
publicering
35
Udvikling
af
skole
Community
36
Metoder
til
vurdering
af
brugervenlighed
37
Designforslag
til
Wushu
Kampskoles
nye
hjemmeside
38
www
uddannelseogjob
dk
39
3d
Biograf
information
på
nettet
40
Berømte
designere
41
DR
Tekst
TV
design
42
Operational
Semantics
and
Program
Equivalence
43
Constructive
Logic
44
Computation
and
Deduction
Logical
Frameworks
45
Visualisering
af
komplekse
informationsstrukturer
46
Systemudvikling
af
Web
baserede
informationssystemer
47
Systemer
til
vidensdeling
og
knowledge
management
48
Algol
like
languages
49
Intersection
types
in
programming
50
Categorical
Logic
51
DKM
forberedelseskursus
52
Webside
til
Lundehusskolen
53
WebDAV
som
grundlag
for
samarbejdsstøtte
på
Web
en
54
Elektronisk
dokumenthåndtering
55
Open
Source
Content
Manager
til
IT
C
56
Synkronisering
af
mobile
databaser
57
Distribueret
Emerald
Watchdog
58
Distributed
Time
Management
59
Distributed
Replication
Manager
for
Backup
60
Emerald
på
en
Palm
Pilot
61
Emerald
ovenpå
Java
62
Sliding
Window
Protocol
63
En
video
med
tænke
højt
metoden
64
Analyse
af
designmæssige
ændringer
MWR
65
Databasesystem
til
bestilling
og
håndtering
af
ordrer
via
internettet
Portal
for
ITEK
og
interneterhvervet
Beskrivelse
forudsætninger
Portaler
bliver
i
stigende
grad
et
helt
afgørende
træk
ved
internettets
udvikling
Virksomheder
opretter
fælles
portaler
og
forventningerne
er
at
e
handel
og
informationssøgning
på
internettet
kommer
til
at
foregå
via
de
nye
portaler
Det
interessante
er
imidlertid
at
interneterhvervet
ikke
har
sin
egen
portal
der
er
ingen
fælles
internetadgang
til
danske
internetvirksomheder
Den
skal
laves
hurtigst
muligt
Det
primære
formål
med
portalen
er
at
præsentere
det
samlede
danske
IT
tele
elektronik
og
kommunikationserhverv
på
nettet
over
for
kunder
leverandører
investorer
m
v
i
Danmark
og
i
udlandet
Det
vil
være
hensigtsmæssigt
at
begynde
med
at
designe
og
udvikle
en
protype
ITEK
der
er
Dansk
Industris
branchefællesskab
for
IT
Tele
Elektronik
og
Kommunikations
virksomhederne
har
i
sit
Internetudvalg
drøftet
interessen
for
at
få
etableret
ovennævnte
portal
Det
vil
være
hensigtsmæssigt
at
begynde
med
at
designe
og
udvikle
en
protype
Den
endelige
portal
Danmarks
første
portal
for
internetvirksomheder
vil
blive
udviklet
af
privat
firma
og
implementeret
i
den
virkelige
verden
66
Her
finder
du
en
mere
detaljeret
beskrivelse
af
projektforslaget
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
67
John
Sarborg
Pedersen
ITEK
DI
Søgemaskiner
Beskrivelse
forudsætninger
På
hvilke
IT
C
hjemmesider
finder
man
information
om
f
eks
fodbold
eller
oplysing
om
eksamensdatoer
Til
at
svare
på
et
sådan
spørgsmål
ville
det
være
rart
med
en
søgemaskine
til
IT
C
Projektet
henvender
sig
til
studerende
som
blot
har
haft
Grundlæggende
programmering
og
eller
Objekt
orienteret
programmering
samt
studerende
som
endvidere
har
haft
enten
Internetprogrammering
eller
Algoritmik
Alt
efter
den
studerendes
forudsætning
er
der
forskellige
krav
til
projektet
men
den
fælles
ramme
er
at
dele
af
eller
en
hel
søgemaskine
skal
implementeres
En
beskrivelse
af
de
forskellige
krav
og
forudsætninger
til
projektet
findes
på
68
denne
side
På
projektets
69
hjemmeside
finder
du
mere
detaljeret
information
om
projektet
Nuværende
medlemmer
af
gruppen
Se
70
projektets
hjemmeside
Kontakpersoner
Tre
lærer
fra
IT
C
hhv
71
Stephen
Alstrup
72
Jens
Chr
Godskesen
og
73
Theis
Rauhe
Planning
for
an
ever
open
and
accessible
Data
Warehouse
Beskrivelse
forudsætninger
During
the
last
5
years
more
and
more
operational
systems
have
been
deployed
to
allow
access
in
near
24
7
Even
as
many
warehouse
installations
are
used
in
almost
operational
fashion
we
still
succeed
in
reserving
a
substantial
portion
of
regular
time
for
warehouse
maintenance
in
which
periods
users
are
prohibited
from
accessing
the
warehouse
But
the
data
warehouse
user
profile
is
changing
requiring
world
wide
warehouse
access
forcing
a
warehouse
flexibility
which
has
not
been
required
in
the
past
Users
wants
to
have
24
7
access
to
their
eBusiness
warehouse
with
consistent
reads
of
data
and
cannot
accept
2
5
hours
scheduled
down
time
for
maintenance
anymore
This
forces
the
data
warehouse
architect
to
redesign
the
maintenance
strategy
Deliverable
Analyse
the
need
for
this
restriction
to
be
lifted
Describe
how
the
issue
may
be
addressed
possible
with
references
to
existing
tools
Prerequisites
Experience
on
Database
Administration
and
multi
user
systems
If
knowledge
on
Data
Warehousing
is
minimal
2
extra
weeks
should
be
added
to
obtain
the
nessesary
skills
Nuværende
medlemmer
af
gruppen
Ingen
Contact
Martin
Jensen
Oracle
Consulting
Email
address
74
Martin
Jensen
Fun
Facts
website
Et
større
firma
i
Danmark
ønsker
at
videreudvikle
deres
internetsite
Deres
nuværende
hjemmeside
har
i
dag
en
forretningsdel
som
tilbyder
kunder
at
kunne
gøre
en
del
af
deres
forretninger
via
hjemmesiden
mens
den
resterende
del
består
af
forskellige
informationer
og
nyhedsoplysninger
Firmaet
ønsker
i
fremtiden
at
tilbyde
besøgende
og
kunder
en
mulighed
for
ved
hjælp
af
Fun
Facts
at
skabe
interesse
for
deres
branche
Derfor
foreslår
firmaet
følgende
projekt
1
En
gruppe
studerende
udarbejder
et
oplæg
over
hvilke
features
sådan
et
Fun
Fact
kapital
kan
indeholde
understøttet
af
slides
enten
lavet
i
ppt
eller
html
som
firmaet
så
kan
analysere
og
evaluere
2
Baseret
på
udfaldet
af
analysefasen
ønsker
firmaet
hvis
af
interesse
at
de
studerende
så
udarbejder
prototyper
af
et
eller
flere
af
forslagene
Firmaet
vil
naturligvis
stille
de
fornødne
ressourcer
til
rådighed
så
de
sammen
med
de
studerende
kan
indgå
i
en
dialog
om
de
brancherelevante
spørgsmål
Nuværende
medlemmer
af
gruppen
Ingen
Kontakpersoner
Kontakt
IT
højskolens
webredatør
75
Mikael
Kjærbye
for
at
få
oplyst
kontaktpersonen
i
det
pågældende
firma
Embedded
Java
I
dag
benyttes
der
typisk
C
som
programmeringssprog
i
embedded
systemer
og
få
er
på
vej
til
C
Java
bliver
mere
og
mere
udbredt
til
bl
a
GUI
applikationer
men
har
Java
en
fremtid
inden
for
embedded
systemer
For
at
besvare
dette
spørgsmål
ønskes
der
en
undersøgelse
af
Java
til
embedded
systemer
Hvad
er
fordelene
og
ulemperne
ved
at
udvikle
med
Java
Hvilke
tekniske
fordele
er
der
med
Java
Hvad
kræver
det
af
CPU
RAM
og
operativsystem
sammenlignet
med
f
eks
C
og
C
Hvordan
integrerer
man
eksisterende
C
kode
med
Java
Nuværende
medlemmer
af
gruppen
Ingen
Kontakperson
76
Michael
Jacobsen
Tellabs
Danmark
A
S
Automatisering
af
test
Målet
med
projektet
er
at
opbygge
testprogrammer
til
automatisk
test
af
centrale
dele
af
Tellabs
Telecommunication
Management
System
TMN
Det
er
hensigten
dels
at
vise
i
hvilket
omfang
test
cases
kan
automatiseres
og
dels
at
give
et
bud
på
hvor
store
gevinsterne
er
ved
automatisering
af
test
Rapporten
skal
dels
beskrive
de
konstruerede
testprogrammer
og
dels
indeholde
en
sammenligning
af
mulighederne
med
manuelle
tests
contra
automatiske
tests
Den
teoretiske
sammenligningen
underbygges
med
de
praktiske
erfaringer
fra
forløbet
Hvis
du
har
kendskab
til
computersproget
Expect
eller
TCL
vil
det
være
en
fordel
men
det
er
ikke
en
betingelse
Du
skal
dog
have
et
generelt
kendskab
til
programmering
Kendskab
til
Unix
vil
også
være
nyttigt
Det
er
ligeledes
en
fordel
hvis
du
har
kendskab
til
objektorienterede
systemer
og
også
gerne
telekommunikationssystemer
specielt
SDH
Nuværende
medlemmer
af
gruppen
Ingen
Kontakperson
77
Michael
Jacobsen
Tellabs
Danmark
A
S
Wap
overvågning
og
styring
af
netværkselementer
I
televerdenen
overvåger
og
styrer
man
netværk
med
store
management
systemer
kørende
på
Unix
eller
NT
maskiner
Konfigurering
af
de
enkelte
netværkselementer
sker
enten
over
netværk
eller
over
serielt
kabel
Ud
fra
vores
eksisterende
GUI
skal
der
designes
et
nyt
interface
der
kan
benyttes
fra
en
WAP
telefon
Der
kan
evt
laves
en
prototype
Nuværende
medlemmer
af
gruppen
Ingen
Kontakperson
78
Michael
Jacobsen
Tellabs
Danmark
A
S
Apparatsoftware
projektkursus
Kunne
du
tænke
dig
at
vide
hvad
der
skal
til
at
f
eks
et
køleskab
kan
komme
sikkert
på
internettet
programmere
et
smartcard
en
ibutton
eller
et
simkort
som
der
sidder
i
en
mobiltelefon
lave
en
pålidelig
robot
Så
skal
du
deltage
i
Apparatsoftwareprojektkurset
ASW
i
4
ugersperioden
uge
48
51
efteråret
2000
Inden
projektperiodens
start
senest
29
november
skal
de
studerende
i
grupper
af
2
5
personer
vælge
et
af
følgende
projektemner
1
Apparatovervågning
79
IO
consulting
WebNet
2
Java
SmartCard
iButton
programmering
80
Gemplus
Java
Smartcards
og
81
Dallas
Semiconductor
Java
iButtons
3
Robotprogrammering
82
Lego
Mindstorm
For
alle
projekterne
vil
fysisk
afprøvning
være
mulig
idet
vi
har
adgang
til
en
WebNet
indlejret
webserver
der
gør
det
muligt
at
sætte
apparater
f
eks
en
Legorobot
på
internettet
stillet
til
rådighed
af
I
O
Consulting
omkring
20
Java
Smartcards
Gemplus
et
antal
Java
iButtons
Dallas
Semiconductor
og
Lego
MindStorms
robotter
Der
er
stor
mulighed
for
at
I
som
gruppe
tilpasser
projektet
jeres
forudsætninger
og
interesser
Mere
information
kan
findes
på
83
projektetkursets
hjemmeside
Nuværende
deltagere
i
projektet
Se
84
projektetkursets
hjemmeside
Kontakperson
85
Thomas
T
Hildebrandt
IT
højskolen
Animeret
sitcom
Podium
A
S
er
i
gang
med
at
producere
en
animeret
humor
serie
til
brug
på
Internet
Serien
bliver
af
så
høj
kvalitet
grafisk
og
indholdsmæssigt
at
den
evt
også
vil
kunne
sendes
på
tv
Vi
ønsker
i
første
omgang
hjælp
til
at
udarbejde
en
pilot
på
serien
Vi
har
manuskriptmateriale
og
overordnet
grafisk
design
klar
så
det
er
primært
den
praktiske
animation
af
piloten
som
vi
ønsker
hjælp
til
Det
er
altså
en
arbejdsopgave
som
involverer
praktiske
grafisk
design
tegneopgaver
og
praktiske
programmeringsopgaver
vi
forestiller
os
at
serien
skal
animeres
i
Flash
Hvis
kemi
og
know
how
passer
er
der
mulighed
for
ansættelse
i
forbindelse
med
den
efterfølgende
produktion
af
serien
Nuværende
medlemmer
af
gruppen
Ingen
Kontakperson
86
Mikkel
Thomassen
Podium
A
S
Interaktiv
benchmarking
Vær
med
fra
starten
i
nyt
innovationsprojekt
Der
vil
kunne
skrives
projekter
om
mange
aspekter
af
det
nye
IT
produkt
FrontFinder
et
nyt
interaktivt
benchmarking
system
Ideen
med
FrontFinder
er
at
integrere
kendte
benchmarking
og
produktivitetsanalyse
metoder
med
Internettets
muligheder
for
hurtig
informationsudveksling
og
individuel
tilpasning
FrontFinder
tænkes
anvendt
i
situationer
med
mange
relativ
ens
beslutningsenheder
fx
detailkæder
kommunale
forvaltninger
etc
Ved
brug
af
Internettet
gives
den
enkelte
beslutningstager
direkte
mulighed
for
online
benchmarking
I
stedet
for
at
udføre
benchmarking
analyser
på
centralt
hold
gives
den
enkelte
beslutningstager
mulighed
for
individuel
benchmarking
Med
FrontFinder
vil
en
given
beslutningsenhed
kunne
kortlægge
sine
muligheder
på
baggrund
af
de
bedste
i
branchen
Der
kan
laves
såvel
tekniske
som
marketingsorienterede
projekter
Et
teknisk
projekt
vil
kunne
indfatte
programmering
med
såvel
HTML
XML
JAVA
såvel
som
C
Der
vil
desuden
være
gode
muligheder
for
marketings
markeds
og
forretningsstrategiske
projekter
Nuværende
medlemmer
af
gruppen
Ingen
Kontakpersoner
87
Professor
Peter
Bogetoft
eller
88
Cand
oecon
agro
Kurt
Nielsen
Modkultur
dk
et
debatforum
med
fokus
på
et
tema
Modkultur
dk
skal
være
et
internet
debatforum
med
en
tydelig
profil
Derfor
er
et
vigtigt
spørgsmål
hvilke
emner
der
skal
indgå
i
hjemmesiden
Artikler
og
indlæg
skal
derfor
vurderes
af
en
redaktion
før
de
lægges
på
nettet
Diverse
skribenter
skal
opfordres
at
skrive
om
bestemte
temaer
Man
skal
kunde
indsende
indlæg
erhverve
medlemskab
Aktiver
produktet
indhold
leveres
af
brugerne
Indholdet
kunne
f
eks
være
inddelt
i
følgende
punkter
Artikler
Debat
Medlemsskab
Galleri
Links
Baggrund
Portrætter
Månedens
helt
Redaktion
Prisoverrækkelse
Kasserede
indlæg
Søgning
på
navn
og
emne
Nuværende
medlemmer
af
gruppen
Christian
Viktor
Rasmussen
2
semester
DKM
Bachelor
i
Sociologi
Denne
gruppe
er
nu
lukket
for
ny
medlemmer
Den
består
af
følgende
DKM
studerende
Chr
Viktor
Rasmussen
2
sem
Mette
Tandrup
3
sem
Torben
Dalhof
3
sem
og
Hanne
Beier
Sørensen
3
sem
Kontakpersoner
89
Christian
Viktor
Rasmussen
Online
registrering
af
studerendes
kursusønsker
Projektperioden
indledes
med
to
forelæsninger
den
27
11
og
28
11
om
databaseadgang
fra
Java
SQL
og
JDBC
og
om
webserver
skripts
servletter
i
Java
Her
finder
du
den
90
fælles
hjemmeside
for
dette
og
andre
projektforslag
Forudsætninger
Grundlæggende
Programmering
Databasesystemer
eller
Design
af
Brugergrænseflader
og
Data
er
også
nyttige
men
ikke
krævede
forudsætninger
Vejledere
91
Niels
Hallenberg
og
92
Peter
Sestoft
Salg
af
biografbilletter
flere
billetluger
Projektperioden
indledes
med
to
forelæsninger
den
27
11
og
28
11
om
databaseadgang
fra
Java
SQL
og
JDBC
og
om
webserver
skripts
servletter
i
Java
Her
finder
du
den
93
fælles
hjemmeside
for
dette
og
andre
projektforslag
Forudsætninger
Grundlæggende
Programmering
Databasesystemer
eller
Design
af
Brugergrænseflader
og
Data
er
også
nyttige
men
ikke
krævede
forudsætninger
Vejledere
94
Niels
Hallenberg
og
95
Peter
Sestoft
Fælles
beskedsystem
for
en
arbejdsplads
Projektperioden
indledes
med
to
forelæsninger
den
27
11
og
28
11
om
databaseadgang
fra
Java
SQL
og
JDBC
og
om
webserver
skripts
servletter
i
Java
Her
finder
du
den
96
fælles
hjemmeside
for
dette
og
andre
projektforslag
Forudsætninger
Grundlæggende
Programmering
Databasesystemer
eller
Design
af
Brugergrænseflader
og
Data
er
også
nyttige
men
ikke
krævede
forudsætninger
Vejledere
97
Niels
Hallenberg
og
98
Peter
Sestoft
Udklipsbureau
Projektperioden
indledes
med
to
forelæsninger
den
27
11
og
28
11
om
databaseadgang
fra
Java
SQL
og
JDBC
og
om
webserver
skripts
servletter
i
Java
Her
finder
du
den
99
fælles
hjemmeside
for
dette
og
andre
projektforslag
Forudsætninger
Grundlæggende
Programmering
Databasesystemer
eller
Design
af
Brugergrænseflader
og
Data
er
også
nyttige
men
ikke
krævede
forudsætninger
Vejledere
100
Niels
Hallenberg
og
101
Peter
Sestoft
Spil
og
rangliste
Projektperioden
indledes
med
to
forelæsninger
den
27
11
og
28
11
om
databaseadgang
fra
Java
SQL
og
JDBC
og
om
webserver
skripts
servletter
i
Java
Her
finder
du
den
102
fælles
hjemmeside
for
dette
og
andre
projektforslag
Forudsætninger
Grundlæggende
Programmering
Databasesystemer
eller
Design
af
Brugergrænseflader
og
Data
er
også
nyttige
men
ikke
krævede
forudsætninger
Vejledere
103
Niels
Hallenberg
og
104
Peter
Sestoft
Webbaseret
diskussionsforum
Projektperioden
indledes
med
to
forelæsninger
den
27
11
og
28
11
om
databaseadgang
fra
Java
SQL
og
JDBC
og
om
webserver
skripts
servletter
i
Java
Her
finder
du
den
105
fælles
hjemmeside
for
dette
og
andre
projektforslag
Forudsætninger
Grundlæggende
Programmering
Databasesystemer
eller
Design
af
Brugergrænseflader
og
Data
er
også
nyttige
men
ikke
krævede
forudsætninger
Vejledere
106
Niels
Hallenberg
og
107
Peter
Sestoft
Analyse
af
webserverlog
Projektperioden
indledes
med
to
forelæsninger
den
27
11
og
28
11
om
databaseadgang
fra
Java
SQL
og
JDBC
og
om
webserver
skripts
servletter
i
Java
Her
finder
du
den
108
fælles
hjemmeside
for
dette
og
andre
projektforslag
Forudsætninger
Grundlæggende
Programmering
Databasesystemer
eller
Design
af
Brugergrænseflader
og
Data
er
også
nyttige
men
ikke
krævede
forudsætninger
Vejledere
109
Niels
Hallenberg
og
110
Peter
Sestoft
AgroDebat
Hjemmeside
der
med
udgangspunkt
i
jordbruget
er
et
forum
et
sam
lingssted
for
debat
formidling
og
deling
af
viden
Beskrivelse
Debat
formidling
og
deling
af
viden
indenfor
jordbruget
foregår
helt
overvejende
i
den
trykte
presse
i
aviser
blade
magasiner
fag
og
videnska
belige
tidsskrifter
mv
der
har
hver
deres
målgrupper
Det
er
med
projektet
tanken
at
udvikle
et
alternativ
og
tilbyde
disse
aktiviteter
via
en
hjemmeside
Natur
liv
og
mad
er
emner
der
optager
de
fleste
og
det
er
emner
der
med
mange
indfaldsvinkler
har
direkte
relation
til
jordbruget
En
hjemmeside
der
samler
formidling
og
debat
indenfor
jordbruget
bredt
betragtet
giver
mulighed
for
at
skabe
en
levende
debat
på
tværs
af
faggrænser
mellem
praktikere
og
teoretikere
mellem
forbrugere
og
landbruget
samtidig
med
at
mediet
internettet
giver
mulighed
for
at
hver
enkel
målgruppes
særlige
interesse
også
kan
tilgodeses
Kontaktperson
Birthe
Stentebjerg
Olesen
B
Comm
Public
Affairs
111
bso
b
comm
dk
Du
kan
også
besøge
vores
hjemmeside
på
112
www
b
comm
dk
Internetmesse
forår
2002
Øksnehallen
Deltag
i
udviklingen
af
fremtidens
internetmesser
Beskrivelse
Messen
har
som
formål
at
øge
tilliden
og
brugen
af
internettet
Ligeledes
er
ideen
med
messen
at
virksomhederne
på
internettet
og
brugerne
får
mulighed
for
at
møde
hinanden
og
indgå
i
dialog
til
fælles
bedste
De
besøgende
på
messen
får
mulighed
for
at
afprøve
nye
produkter
services
med
forbindelse
til
internettet
Vi
har
lige
afholdt
en
messe
i
Forum
InternettetNu
og
her
gjort
os
erfaringer
der
skal
indgå
i
næste
messe
Projektet
skal
indeholde
overordnet
forretningsplan
markedsføringplan
on
line
og
alm
PR
idegrundlag
målgruppe
hvilke
aktiviteter
der
skal
afvikles
på
messen
hvilke
kurser
event
hvilket
set
up
messen
skal
have
hjemmeside
til
messen
databaser
udarbejdelse
af
salgsmateriale
overfor
virksomheder
samt
diverse
relevante
tiltag
i
forbindelse
med
messen
Messen
bliver
afholdt
primo
2002
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
Messeansvarlig
113
Bjarke
Schultz
Tlf
nr
3537
3707
2683
0000
Web
designer
til
start
up
website
Et
Internet
start
up
der
vil
levere
en
række
branche
fokuserede
ydelser
og
information
over
Internettet
til
både
forbrugere
og
mindre
service
virksomheder
søger
en
web
grafiker
web
designer
til
på
projekt
basis
at
hjælpe
til
med
design
og
design
implementering
her
i
opstartsfasen
Det
er
en
meget
dynamisk
virksomhed
med
et
ungt
team
og
det
går
rigtig
stærkt
Vi
har
internt
ressourcerne
til
at
klare
den
tekniske
udvikling
af
sitet
og
overordnede
design
filosofi
og
har
fået
en
grafisk
designer
til
at
udforme
en
corporate
identity
logo
m
v
Vi
har
imidlertid
i
løbet
af
den
næste
måneds
tid
brug
for
assistance
til
den
endelige
fastlæggelse
af
et
professionelt
men
utraditionelt
design
på
sitet
til
at
integrere
design
og
funktionalitet
på
en
brugervenlig
måde
samt
til
den
egentlige
implementering
af
designet
på
websitet
at
lægge
designet
op
på
sitet
Den
projekt
studerende
skal
beherske
de
nødvendige
grafik
og
web
design
programmer
og
må
være
kreativ
og
entusiastisk
omkring
projektet
Til
gengæld
får
du
muligheden
for
at
deltage
i
et
rigtigt
start
up
miljø
med
en
lille
og
dynamisk
organisation
og
med
masser
af
mulighed
for
indflydelse
på
hvordan
vores
virksomhed
bliver
implementeret
på
Internettet
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
114
Lotte
Bøjer
Gong
Gong
com
tlf
35
43
24
47
Politisk
design
En
hovedstadskreds
for
et
af
regeringspartierne
er
ved
at
køre
en
ung
og
yderst
dynamisk
kandidat
i
stilling
til
næste
folketingsvalg
Han
er
25
år
cand
mag
fra
KU
og
meget
bevidst
om
nettets
muligheder
i
politik
og
dets
demokratiske
potentiale
i
det
hele
taget
Hans
kampagne
vil
i
høj
grad
satse
på
Internet
som
medium
for
et
socialt
og
politisk
netværk
hvor
parlamentsmedlem
og
borger
kan
komme
i
direkte
kontakt
Første
fase
i
kampagnen
er
udvikling
af
en
nyskabende
personlig
hjemmeside
til
kandidaten
Den
skal
muliggøre
dialog
mellem
bruger
og
afsender
og
frem
for
alt
i
sit
design
være
et
modstykke
til
eksisterende
politiker
hjemmesider
Til
arbejdet
med
at
designe
et
sådant
politisk
website
søges
kreative
DKM
studerende
Opgavens
kerne
ligger
i
på
professionel
vis
at
kunne
tilsidesætte
egne
politiske
overbevisninger
og
fokusere
helt
og
holdent
på
klientens
partiet
og
kandidaten
behov
Da
der
forefindes
en
absolut
deadline
ultimo
januar
ønskes
et
nogenlunde
færdigimplementeret
produkt
Der
er
sørget
for
programmeringsmæssig
og
teknisk
assistance
så
gruppen
kan
fokusere
på
den
egentlige
designdel
Nogle
tekniske
færdigheder
må
du
dog
gerne
være
i
besiddelse
af
da
projektet
nødvendigvis
skal
ud
over
prototypestadet
på
de
fire
uger
Indtil
videre
har
grafiker
og
underviser
Klaus
Bjerager
sagt
ja
til
at
være
vejleder
på
projektet
Nuværende
medlemmer
af
gruppen
115
Klaus
Silberbauer
Andersen
DKM
Kontaktperson
116
Klaus
Silberbauer
Andersen
Database
baseret
Web
publicering
Projektet
går
ud
på
at
opbygge
et
speciale
website
for
IT
C
hvor
virksomheder
der
er
interesserede
i
at
lave
en
speciale
aftale
med
studerende
fra
IT
C
kan
henvende
sig
og
foreslå
speciale
emner
og
studerende
der
er
interesserede
i
at
lave
et
speciale
hos
en
virksomhed
kan
annoncere
deres
interesser
og
forudsætninger
Det
er
også
tanken
at
studerende
der
er
interesserede
i
at
skrive
speciale
i
grupper
kan
finde
samarbejdspartnere
og
i
det
hele
taget
kunne
det
være
en
oversigt
over
de
specialer
der
skrives
på
IT
C
Til
projektet
søges
1
2
andre
studerende
der
har
deltaget
i
kurset
Database
baseret
Web
publicering
Vejledere
på
projektet
er
Martin
Elsman
og
Niels
Hallenberg
Nuværende
medlemmer
af
gruppen
117
Lise
Bennedsen
John
Ukpo
og
Mathias
Johansen
From
Gruppen
er
nu
lukket
Kontaktperson
118
Lise
Bennedsen
Udvikling
af
skole
Community
Med
udgangspunkt
i
en
skole
og
en
community
ramme
Arsdigita
vil
jeg
forsøge
at
lave
en
model
for
hvordan
et
skole
community
kan
bygges
op
samt
se
på
fordele
og
konsekvenser
af
at
benytte
en
community
model
i
stedet
for
et
statisk
Website
til
repræsentation
af
en
skole
på
Internettet
Eventuelt
med
specielt
fokus
på
Internetbaseret
læringsperspektiver
Opgaven
skal
indeholde
overvejelser
inden
for
følgende
områder
Design
implementering
programmering
og
pædagogik
Nuværende
medlemmer
af
gruppen
119
Kenneth
Riis
studerende
3
semester
DKM
Kontaktperson
120
Kenneth
Riis
Metoder
til
vurdering
af
brugervenlighed
Der
findes
flere
måder
at
vurdere
brugervenligheden
af
websites
på
1
En
kritisk
ekspertgennemgang
af
sitet
2
Tænke
højt
forsøg
3
Pop
up
spørgsmål
til
besøgende
på
sitet
4
Elektroniske
spørgeskemaer
sendt
til
store
brugergrupper
5
Optagelser
af
brugeres
øjenbevægelser
under
besøg
på
sitet
I
samarbejde
med
2
webanalysefirmaer
Login
og
InterResearch
har
ITU
fået
mulighed
for
at
afprøve
disse
metoder
på
en
række
udvalgte
hjemmesider
Firmaerne
stiller
deres
professionelle
redskaber
og
metoder
til
rådighed
og
de
bekoster
udsendelsen
af
elektroniske
spørgeskemaer
til
flere
tusinde
respondenter
Man
kan
vælge
at
skrive
4
ugers
projekt
om
en
eller
flere
af
metoderne
Hvis
flere
grupper
arbejder
parallelt
med
forskellige
metoder
vælger
vi
de
samme
sites
til
testene
Derved
bliver
det
muligt
at
sammenligne
resultaterne
på
tværs
af
metoderne
og
at
afdække
deres
indbyrdes
styrker
og
svagheder
Vejledere
på
projekterne
kan
være
Anker
Helms
Jørgensen
eller
John
Paulin
Hansen
DKM
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
121
John
Paulin
Hansen
lektor
DKM
Designforslag
til
Wushu
Kampskoles
nye
hjemmeside
Beskrivelse
Wushu
Kampskole
i
Hvidovre
ønsker
designforslag
til
en
ny
hjemmeside
Skolen
har
omkring
100
elever
i
alderen
15
45
år
og
tre
undervisere
Eleverne
undervises
i
Wushu
bedre
kendt
som
Kung
Fu
en
kinesisk
kampsport
selvforsvarsteknik
som
er
opfundet
af
kinesiske
munke
fra
Shaolin
Templet
i
Kina
for
omkring
4000
år
siden
Der
ønskes
en
rapportdel
med
begrundelse
af
gruppens
forslag
til
sitets
design
og
indhold
herunder
valg
af
billedmateriale
tekst
og
grafik
samt
en
profil
af
skolen
og
kampsportens
historik
og
filosofi
Wushu
Kampskoles
ønske
er
gruppen
så
vidt
muligt
tilstræber
at
producere
et
designforslag
der
også
ville
tiltale
kvinder
idet
det
er
skolens
intentioner
at
forsøge
at
få
flere
kvindelige
elever
Derfor
er
det
en
god
ide
hvis
en
del
af
projektgruppens
medlemmer
er
kvinder
Wushu
Kampskole
stiller
en
af
sine
tre
undervisere
David
til
rådighed
som
gruppens
rådgiver
på
projektet
Designforslaget
kan
udarbejdes
som
skitser
i
PowerPoint
eller
i
html
web
format
Link
til
Wushu
Kampskoles
nuværende
hjemmeside
Skolens
nuværende
hjemmeside
besøges
ugentligt
af
40
50
personer
Gruppens
forudsætninger
At
have
gennemført
WEB1
samt
evt
Interaktionsdesign
eller
tilsvarende
ligesom
en
gennemførelse
af
mediefag
som
Målgruppeanalyse
eller
IT
som
medie
vil
være
en
fordel
Nuværende
medlemmer
af
gruppen
Martin
Jensen
DKM
2
semester
B
A
i
Forhistorisk
Arkæologi
Kontaktperson
122
Martin
Jensen
eller
123
David
Fainburg
www
uddannelseogjob
dk
Et
lille
nystartet
firma
ønsker
at
give
vejledning
på
nettet
om
valg
af
uddannelse
og
job
give
lektiehjælp
inden
for
matematik
og
naturvidenskabelige
fag
og
give
et
overblik
over
unge
profiler
under
uddannelse
At
stille
spørgsmål
til
studievejlederne
skal
være
gratis
for
den
unge
finansieringen
skal
ske
via
sponsorering
fra
uddannelsesinstituioner
og
virksomheder
der
leverer
ydelser
til
de
unge
Der
er
behov
for
at
få
udarbejdet
en
skitse
til
selve
hovedsitet
og
navigeringen
på
det
men
nok
så
meget
behov
for
at
få
designet
og
gennemtænkt
en
sammenhængende
eller
tre
adskilte
databaser
der
kan
styre
de
tre
hovedområder
som
er
nævnt
ovenfor
Besvarelsen
af
henvendelserne
skal
ske
i
et
netværk
af
tilknyttede
vejledere
eksperter
på
en
række
forskellige
områder
så
systemet
skal
også
kunne
håndtere
at
sprede
de
indkomne
emails
til
dem
der
skal
besvare
spørgsmålene
derefter
lægge
besvarelserne
på
nettet
så
nye
spørgere
kan
udnytte
de
allerede
givne
svar
Som
det
ses
minder
tankerne
noget
om
netvokat
netdoktor
og
e
psyk
Vi
er
to
initiativtagere
selv
studievejledere
med
bred
baggrund
i
vejledning
men
ikke
i
netarbejde
Tingene
er
ikke
sat
i
søen
endnu
men
vi
knokler
meget
for
at
få
ideerne
omsat
til
virkelighed
Så
hvis
en
gruppe
vil
udtænke
en
skitse
for
os
så
vil
det
være
velkomment
Men
først
bør
vi
holde
et
møde
for
at
vi
kan
være
sikre
på
at
alle
parter
forstår
ideerne
hele
vejen
igennem
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
124
Peter
Føge
Jensen
tlf
44
98
26
36
3d
Biograf
information
på
nettet
Beskrivelse
Vi
er
to
studerende
fra
DKM1
E2000
Vi
kommer
henholdsvis
fra
Arkitektskolen
og
Danmarks
Designskoles
institut
for
rum
og
vi
har
lyst
til
at
trække
lidt
på
vores
fortid
og
arbejde
med
rum
rumfremstilling
på
nettet
Som
baggrund
for
dette
har
vi
valgt
at
vi
vil
lave
et
site
for
en
biografkæde
Vi
forestiller
os
at
arbejde
i
3D
studie
max
og
VRML
og
kunne
godt
tænke
os
at
udvide
gruppen
med
en
eller
to
teknisk
orienterede
personer
Forudsætninger
Kendskab
til
3D
Studio
MAX
herunder
VRML
Cosmo
Builder
Nuværende
medlemmer
af
gruppen
Christian
G
ttler
Lea
Senderovitz
DKM1
Kontaktpersoner
125
Christian
G
ttler
og
126
Lea
Senderovitz
Berømte
designere
Fortæl
en
historie
om
berømte
designere
ud
fra
en
plakat
af
Alan
Kitching
Den
britiske
kunstner
typograf
og
grafiker
Alan
Kitching
har
lavet
en
plakat
der
på
en
meget
elegant
måde
introducerer
en
række
af
de
største
designere
gennem
tiden
fx
Raymond
Loewy
Ferdinand
Porsche
Charles
Eames
Paul
Rand
Kurt
Schwitters
Norman
Foster
Ludwig
Mies
van
der
Rohe
og
Alex
Issigonis
For
hver
designer
har
Alan
Kitching
udtrykt
et
af
designerens
væsentlige
produkter
ved
at
forme
designerens
initialer
så
det
ligner
produktet
For
Charles
Eames
som
skabte
stabelstolen
står
C
er
og
E
er
stablet
ovenpå
hinanden
og
ligner
grangiveligt
stablede
stole
For
Ferdinand
Porsche
som
skabte
Porsche
bilen
er
F
et
en
markant
fremadstræbende
figur
som
en
bil
mens
P
et
står
ovenpå
som
en
lille
spinkel
kølerfigur
For
Raymond
Loewy
som
skabte
Lucky
Strikes
cigaretpakning
er
initialerne
R
og
L
sat
ind
i
en
rød
og
en
sort
ring
For
Alex
Issigonis
som
skabte
Morris
Mascot
er
A
et
og
I
et
formet
til
en
Morris
Mascot
For
Paul
Rand
som
skabte
IBMs
markante
logo
ligner
P
et
og
R
et
dette
markante
logo
Denne
inspirerende
plakat
skal
opleves
den
hænger
på
døren
til
Anker
Helms
Jørgensens
kontor
2
22
Jeg
synes
at
plakaten
i
sig
selv
er
dybt
fascinerende
og
afslører
Alan
Kitchings
fantastiske
evne
til
at
lade
de
enkle
bogstaver
tale
et
ekspressivt
formsprog
der
rækker
langt
ud
over
deres
bogstavelige
formåen
Men
plakaten
kan
også
tjene
som
springbrædt
til
en
fortælling
om
de
store
designere
Det
er
her
4
ugers
projektet
kommer
ind
Skab
en
digital
produktion
der
med
udgangspunkt
i
Alan
Kitchings
plakat
introducerer
en
række
af
verdens
store
designere
Der
vil
måske
være
mulighed
for
at
få
Alan
Kitching
til
at
komme
til
København
i
forbindelse
med
projektet
så
han
kan
fortælle
om
sine
tanker
bag
plakaten
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
127
Anker
Helms
Jørgensen
DR
Tekst
TV
design
Beskrivelse
forudsætninger
DR
Online
udskriver
en
konkurrence
hvor
seks
udvalgte
design
og
IT
institutioner
kan
sende
bidrag
senest
ved
udgangen
af
marts
2001
Der
ønsket
et
bud
på
design
af
DR
Tekst
TV
evt
implementeret
i
Photoshop
og
Illustrator
indenfor
givne
rammer
som
fastlægges
i
samarbejde
mellem
DR
og
de
deltagne
institutioner
Der
er
afsat
pengepremier
på
hhv
15
000
7
000
og
3
000
kr
for
hhv
første
anden
og
trediepræmie
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
Indtil
videre
128
Lise
Louv
DKM
Operational
Semantics
and
Program
Equivalence
Prerequisites
Study
recent
operational
techniques
for
proving
programs
equivalent
This
project
can
be
tailored
to
your
background
if
you
don
t
know
about
operational
semantics
before
hand
you
can
focus
on
learning
the
basics
otherwise
we
can
build
on
top
of
your
existing
knowledge
to
study
recently
developed
techniques
for
proving
program
equivalences
Group
members
None
Contact
person
129
Lars
Birkedal
is
happy
to
advise
on
this
following
projects
and
other
semantics
projects
It
is
expected
that
you
have
an
interest
in
obtaining
a
precise
understanding
often
based
on
some
mathematical
concepts
of
some
selected
programming
concepts
This
project
can
be
seen
as
preliminary
project
for
a
master
s
thesis
project
Constructive
Logic
Prerequisites
This
project
can
be
tailored
to
your
background
if
you
don
t
know
about
constructive
logic
before
hand
you
can
focus
on
learning
the
basics
otherwise
we
can
build
on
top
of
your
existing
knowledge
to
study
more
advanced
topics
either
applications
to
formal
reasoning
or
realizability
models
of
logic
Group
members
None
Contact
person
130
Lars
Birkedal
is
happy
to
advise
on
this
following
projects
and
other
semantics
projects
It
is
expected
that
you
have
an
interest
in
obtaining
a
precise
understanding
often
based
on
some
mathematical
concepts
of
some
selected
programming
concepts
This
project
can
be
seen
as
preliminary
project
for
a
master
s
thesis
project
Computation
and
Deduction
Logical
Frameworks
Study
Frank
Pfenning
s
book
on
computation
and
deduction
Formalise
the
semantics
of
mini
ml
exceptions
or
something
similar
in
the
Twelf
system
Prerequisites
Knowledge
of
functional
programming
as
covered
in
the
course
on
functional
programming
Group
members
None
Contact
person
131
Lars
Birkedal
is
happy
to
advise
on
this
following
projects
and
other
semantics
projects
It
is
expected
that
you
have
an
interest
in
obtaining
a
precise
understanding
often
based
on
some
mathematical
concepts
of
some
selected
programming
concepts
This
project
can
be
seen
as
preliminary
project
for
a
master
s
thesis
project
Visualisering
af
komplekse
informationsstrukturer
For
at
styre
komplekse
systemer
skal
operatører
og
andre
ofte
forholde
sig
til
mange
og
komplicerede
informationer
Projektet
skal
omhandle
hvordan
information
bedst
repræsenteres
for
operatører
af
svejserobotter
Disse
betjenes
af
maskinarbejdere
mv
på
Lindø
skibsværft
Der
er
kontakt
til
et
firma
som
laver
disse
systemer
Der
er
også
interesse
for
et
projekt
som
diskuterer
usability
evaluering
af
sådanne
systemer
Begge
projekter
kan
eventuelt
føre
videre
til
speciale
projekter
Forudsætninger
Grundlæggende
Programmering
og
Design
af
Brugergrænseflader
eller
et
andet
fag
som
har
beskæftiget
sig
med
brugerfladedesign
vil
nok
være
nyttigt
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
132
Peter
Carstensen
Systemudvikling
af
Web
baserede
informationssystemer
Web
technologien
er
ved
at
være
så
moden
så
den
nu
bruges
til
design
af
større
interaktive
informationssystemer
altså
ikke
kun
publisering
Dette
betyder
en
lang
række
nye
krav
til
måden
vi
organiserer
udviklingen
og
til
de
ekspertiser
der
involveres
samt
til
de
metoder
og
værktøjer
der
bruges
Projektet
her
kan
enten
lave
egentlige
feltstudier
af
hvorledes
denne
udvikling
går
formulere
krav
og
behov
for
støtte
til
udviklingsprocessen
eller
udforme
egentlige
prototyper
på
værktøjer
som
understøtter
denne
form
for
udvikling
Der
kan
også
være
tale
om
et
rent
teoretisk
projekt
om
emnet
Projektet
kan
naturligt
knyttes
til
et
stort
forskningsprojekt
se
133
www
diwa
dk
som
pt
foregår
blandt
folk
på
KUA
DTU
RUC
og
Afdelingen
for
Design
and
Use
of
Information
Technology
på
IT
C
Projektet
vil
oplagt
kunne
bruges
som
for
projekt
til
et
speciale
projekt
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
134
Peter
Carstensen
Systemer
til
vidensdeling
og
knowledge
management
Meget
arbejde
handler
om
komplekse
situationer
hvor
flere
aktører
skal
udveksle
og
dele
viden
IT
er
et
oplagt
værktøj
til
dette
og
Knowledge
Management
er
blevet
et
buzzword
Men
hvordan
skal
vi
strukturere
disse
fælles
informationsrum
og
hvilke
former
for
dokumenter
viden
kategoriseringsskemaer
etc
etc
er
nødvendige
Projektet
her
kan
enten
lave
egentlige
feltstudier
af
hvorledes
vidensdeling
går
formulere
krav
til
knowledge
management
systemer
eller
udforme
egentlige
prototyper
på
værktøjer
som
understøtter
informationsudveksling
og
knowledge
management
Der
kan
også
være
tale
om
et
rent
litteraturstudie
af
emnet
Projektet
kan
naturligt
knyttes
til
et
stort
forskningsprojekt
se
135
www
diwa
dk
som
pt
foregår
blandt
folk
på
KUA
DTU
RUC
og
Afdelingen
for
Design
and
Use
of
Information
Technology
på
IT
C
Projektet
vil
oplagt
kunne
bruges
som
for
projekt
til
et
speciale
projekt
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
136
Peter
Carstensen
Algol
like
languages
Study
the
semantics
of
Algol
like
languages
with
a
particular
focus
on
syntactic
control
of
interference
Prerequisites
Knowledge
of
basic
domain
theory
as
seen
in
books
on
semantics
of
programming
languages
Group
members
None
Contact
person
137
Lars
Birkedal
is
happy
to
advise
on
this
following
projects
and
other
semantics
projects
It
is
expected
that
you
have
an
interest
in
obtaining
a
precise
understanding
often
based
on
some
mathematical
concepts
of
some
selected
programming
concepts
This
project
can
be
seen
as
preliminary
project
for
a
master
s
thesis
project
Intersection
types
in
programming
Study
intersection
types
as
in
Amadio
and
Curien
s
book
and
their
use
in
programming
as
in
Reynold
s
Forsythe
language
Prerequisites
Bachelor
in
computer
science
and
math
Group
members
None
Contact
person
138
Lars
Birkedal
is
happy
to
advise
on
this
following
projects
and
other
semantics
projects
It
is
expected
that
you
have
an
interest
in
obtaining
a
precise
understanding
often
based
on
some
mathematical
concepts
of
some
selected
programming
concepts
This
project
can
be
seen
as
preliminary
project
for
a
master
s
thesis
project
Categorical
Logic
Study
the
relationship
between
fragments
of
logic
and
category
theory
Prerequisites
An
introductory
course
in
category
theory
Group
members
None
Contact
person
139
Lars
Birkedal
is
happy
to
advise
on
this
following
projects
and
other
semantics
projects
It
is
expected
that
you
have
an
interest
in
obtaining
a
precise
understanding
often
based
on
some
mathematical
concepts
of
some
selected
programming
concepts
This
project
can
be
seen
as
preliminary
project
for
a
master
s
thesis
project
DKM
forberedelseskursus
Vi
er
nogle
DKM
re
som
har
drøftet
muligheden
for
et
fælles
projekt
der
omhandler
et
forberedelseskursus
til
IT
højskolens
DKM
linie
Kurset
vi
har
lyst
til
at
designe
omhandler
brugen
af
Photoshop
og
Dreamweaver
og
vil
givetvis
munde
ud
i
et
konkret
øvelseshæfte
manual
hjælp
til
selvhjælp
rapport
måske
en
CD
rom
eller
en
implementeret
on
line
fjernundervisnings
del
Opgaven
er
et
4
ugers
projekt
og
produktet
nemlig
en
bruger
manual
eller
et
øvelseshæfte
til
selvstudier
af
de
omtalte
programmer
tænkes
distribueret
til
alle
nye
studerende
på
DKM
i
fremtiden
for
ligesom
at
jævne
niveauet
og
give
alle
en
chance
for
at
etablerer
et
kendskab
til
teknikken
UDEfra
og
før
de
starter
som
studerende
på
IT
c
hvor
der
ikke
er
taget
tilstrækkelig
højde
for
undervisningsbehovet
Gruppen
består
p
t
af
4
personer
men
kan
godt
udbygges
til
at
omfatte
flere
deltagere
Bl
a
kan
man
med
projektet
tilsigte
en
høj
pædagogisk
indfaldsvinkel
sammen
med
en
teknisk
implementering
af
indholdet
Kontaktperson
140
Annette
Havlit
eller
141
Tina
Schwarz
eller
Rikke
eller
Peter
fra
DKM
E2000
Webside
til
Lundehusskolen
Lundehusskolen
har
brug
for
en
ny
webside
Selve
strukturen
til
siden
ligger
fast
men
det
som
vi
har
brug
for
er
opsætningen
af
siden
samt
ideer
til
at
gøre
den
brugervenlige
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
142
Trine
Jørgensen
og
Henrik
Halle
på
skolens
tlf
nummer
3920
1988
eller
privat
på
3833
2909
WebDAV
som
grundlag
for
samarbejdsstøtte
på
Web
en
Web
en
begynder
så
småt
at
blive
brugt
til
egentligt
samarbejdsværktøj
Men
det
kniber
med
at
bygge
systemer
som
effektivt
støtter
folk
som
er
fysisk
adskilt
i
at
arbejde
sammen
WebDAV
se
evt
143
http
www
webdav
org
er
et
af
de
bedre
bud
på
en
protokol
som
forsøger
at
understøtte
adskilte
folk
i
at
arbejde
på
de
samme
dokumenter
på
en
fornuftig
måde
Projektet
her
skal
undersøge
muligheder
og
eventuelt
eksperimentere
med
mulighederne
i
WebDAV
og
eventuelt
sammenligne
den
med
andre
Projektet
kan
gå
både
i
retninger
som
primært
diskutere
hvad
der
skal
undersøttes
fx
på
bagrund
af
case
studier
eller
i
retninger
af
konkrete
implementeringer
vha
WebDAV
eller
andre
protokoller
og
platforme
Projektet
kan
naturligt
knyttes
til
et
stort
forskningsprojekt
se
144
http
www
diva
dk
som
pt
foregår
blandt
folk
på
KUA
DTU
RUC
og
Afdelingen
for
Design
and
Use
of
Information
Technology
på
IT
C
Projektet
vil
oplagt
kunne
bruges
som
for
projekt
til
et
speciale
projekt
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
145
Peter
Carstensen
Elektronisk
dokumenthåndtering
Det
papirløse
kontor
har
været
en
drøm
længe
Men
elektronisk
dokumenthåndtering
giver
vanskeligheder
Projektet
her
skal
undersøge
muligheder
og
eventuelt
eksperimentere
med
værktøjer
til
elektronisk
dokument
håndtering
Hvad
er
mulighederne
og
hvad
er
problemerne
Projektet
kan
gøres
både
litteraturbaseret
og
være
baseret
på
konkrete
eksperimenter
og
implementeringer
Der
vil
muligvis
være
muligheder
for
at
arbejde
i
relation
til
en
af
de
virksomheder
i
København
som
har
specialiseret
sig
i
dette
område
Projektet
kan
naturligt
knyttes
til
andre
forskningsaktiviteter
i
Afdelingen
for
Design
and
Use
of
Information
Technology
DUIT
på
IT
C
Projektet
vil
oplagt
kunne
bruges
som
for
projekt
til
et
speciale
projekt
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
146
Peter
Carstensen
Open
Source
Content
Manager
til
IT
C
Projektet
går
ud
på
at
finde
en
linux
baseret
open
source
content
manager
der
kan
håndtere
IT
C
s
web
Projektgruppen
skal
finde
den
mest
velegnede
content
mangager
installere
den
og
dokumentere
hvordan
den
installeres
og
drives
Der
vil
fra
IT
C
s
side
på
forhånd
ligge
en
række
krav
den
valgte
løsning
skal
kunne
honorere
Projektet
vil
foregå
i
samarbejde
med
linuxlab
147
http
linuxlab
dk
og
projektdeltagerne
vil
få
stillet
en
linux
server
til
rådighed
til
at
eksperimenter
på
Yderligere
vil
en
medarbejde
i
IT
C
s
systemadministration
bruge
en
halv
dag
i
begyndelsen
af
projektperioden
på
at
forklare
hvordan
IT
C
s
web
hænger
sammen
og
hvilke
krav
der
stilles
til
fremtiden
Projektgruppen
vil
naturligvis
få
adgang
til
IT
C
s
skabeloner
osv
148
Krav
til
en
content
manager
til
IT
C
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
149
Keld
Kondrup
Synkronisering
af
mobile
databaser
Udviklingen
indenfor
IT
er
i
disse
år
i
høj
grad
præget
af
integration
mellem
traditionelle
edb
systemer
og
telekommunikation
Det
er
endnu
ikke
klart
hvad
der
vil
blive
den
dominerende
model
for
applikationer
på
de
nye
mobile
og
bærbare
enheder
som
opstår
i
kølvandet
af
integrationen
af
IT
og
telecom
mulighederne
spænder
fra
rene
server
baserede
modeller
i
stil
med
fx
Web
og
WAP
til
modeller
baseret
på
replikering
og
synkronisering
som
tillader
at
den
bærbare
mobile
enhed
kan
fungere
selv
når
den
ikke
er
forbundet
til
et
netværk
Soft
Design
er
i
forbindelse
med
dette
projekt
interesseret
i
at
få
foretaget
en
grundig
undersøgelse
og
beskrivelse
af
synkronisering
af
databaser
til
og
fra
mobile
bærbare
enheder
Undersøgelsen
skal
belyse
hvordan
det
sikres
at
data
holdes
up
to
date
i
hhv
det
centrale
system
og
den
bærbare
enhed
hvorledes
konflikter
håndteres
ved
samtidige
opdateringer
i
begge
systemer
partiel
replikering
osv
Beskrivelsen
af
problemstillingerne
skal
være
generel
dvs
der
kan
ikke
tages
udgangspunkt
i
specifikikke
database
skemaer
Projektet
forudsætter
kendskab
til
datamodellering
og
databaseteori
Projektet
er
rent
teoretisk
og
skal
resultere
i
en
rapport
som
beskriver
problemstillingen
og
dens
udfordringer
samt
helst
en
generel
model
for
hvordan
problemstillingen
kan
håndteres
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
150
Klaus
Harbo
eller
151
Eric
Jul
ekstern
lektor
Distribueret
Emerald
Watchdog
Emerald
er
et
Java
ligende
sprog
specielt
beregnet
til
at
køre
distribueret
Sproget
indeholder
faciliteter
til
transparent
fjernprocedurekald
RPC
og
til
at
flytte
objekter
mellem
maskiner
også
mens
disse
objekter
indeholder
kørende
processer
Systemet
er
også
beregnet
til
at
kunne
køre
selvom
en
eller
flere
maskiner
crasher
der
er
faciliteter
i
sproget
til
at
konstatere
at
andre
maskiner
er
gået
ned
og
kommer
op
igen
Skriv
et
program
Watchdog
der
vedligeholder
en
liste
over
alle
maskiner
der
er
oppe
og
som
opretter
en
kopi
af
sig
selv
på
disse
maskiner
Udvid
programmet
med
faciliteter
så
man
fx
kan
tilmelde
et
objekt
til
Watchdog
og
derefter
vil
Watchdog
sørge
for
at
en
klon
af
objektet
altid
kører
på
de
maskiner
der
er
oppe
Watchdog
vil
således
være
et
program
der
overlever
væsentligt
længere
end
den
maskine
der
startede
programmet
Forudsætninger
Forudsætninger
Grundliggende
Programmering
Netværk
og
Protokoller
vil
være
en
fordel
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
152
Eric
Jul
ekstern
lektor
Distributed
Time
Management
Emerald
er
et
Java
ligende
sprog
specielt
beregnet
til
at
køre
distribueret
Sproget
indeholder
faciliteter
til
transparent
fjernprocedurekald
RPC
og
til
at
flytte
objekter
mellem
maskiner
også
mens
disse
objekter
indeholder
kørende
processer
Systemet
er
også
beregnet
til
at
kunne
køre
selvom
en
eller
flere
maskiner
crasher
der
er
faciliteter
i
sproget
til
at
konstatere
at
andre
maskiner
er
gået
ned
og
kommer
op
igen
Skriv
et
program
EMT
der
vedligeholder
en
liste
over
alle
maskiner
der
er
oppe
og
som
opretter
en
kopi
af
sig
selv
på
disse
maskiner
Udvid
programmet
med
faciliteter
så
programmet
regelmæssigt
holder
styr
på
hvad
klokken
er
på
de
andre
maskiner
der
er
oppe
Tillige
skal
EMT
holde
styr
på
en
fælles
tid
EMT
som
skal
være
et
eller
andet
vægtet
gennemsnit
af
tiderne
på
alle
maskinerne
EMT
bør
ligge
så
tæt
på
GMT
som
muligt
Forudsætninger
Forudsætninger
Grundliggende
Programmering
Netværk
og
Protokoller
vil
være
en
fordel
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
153
Eric
Jul
ekstern
lektor
Distributed
Replication
Manager
for
Backup
Emerald
er
et
Java
ligende
sprog
specielt
beregnet
til
at
køre
distribueret
Sproget
indeholder
faciliteter
til
transparent
fjernprocedurekald
RPC
og
til
at
flytte
objekter
mellem
maskiner
også
mens
disse
objekter
indeholder
kørende
processer
Systemet
er
også
beregnet
til
at
kunne
køre
selvom
en
eller
flere
maskiner
crasher
der
er
faciliteter
i
sproget
til
at
konstatere
at
andre
maskiner
er
gået
ned
og
kommer
op
igen
Skriv
et
program
BM
der
vedligeholder
en
liste
over
alle
maskiner
der
er
oppe
og
som
opretter
en
kopi
af
sig
selv
på
disse
maskiner
Udvid
programmet
med
faciliteter
så
en
bruger
af
BM
kan
give
BM
en
liste
over
vigtige
filer
i
sit
hjemmekatalog
BM
skal
derefter
sørge
for
at
oprette
N
sikkerhedskopier
af
filerne
på
hver
sin
maskine
Antallet
af
kopier
N
skal
kunne
vælges
frit
af
brugeren
Hvis
en
maskine
går
ned
og
nogle
sikkerhedskopier
herved
mistes
skal
BM
sørge
for
om
muligt
at
oprette
yderligere
sikkerhedskopier
Forudsætninger
Forudsætninger
Grundliggende
Programmering
Netværk
og
Protokoller
vil
være
en
fordel
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
154
Eric
Jul
ekstern
lektor
Emerald
på
en
Palm
Pilot
Emerald
er
et
Java
ligende
sprog
specielt
beregnet
til
at
køre
distribueret
Sproget
indeholder
faciliteter
til
transparent
fjernprocedurekald
RPC
og
til
at
flytte
objekter
mellem
maskiner
også
mens
disse
objekter
indeholder
kørende
processer
Systemet
er
også
beregnet
til
at
kunne
køre
selvom
en
eller
flere
maskiner
crasher
der
er
faciliteter
i
sproget
til
at
konstatere
at
andre
maskiner
er
gået
ned
og
kommer
op
igen
Forudsætninger
Forudsætninger
Grundliggende
Programmering
Netværk
og
Protokoller
og
C
programmering
er
nødvendigt
Derimod
er
det
IKKE
nødvendigt
med
en
Palm
Pilot
en
sådan
vil
blive
udlånt
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
155
Eric
Jul
ekstern
lektor
Emerald
ovenpå
Java
Emerald
er
et
Java
ligende
sprog
specielt
beregnet
til
at
køre
distribueret
Sproget
indeholder
faciliteter
til
transparent
fjernprocedurekald
RPC
og
til
at
flytte
objekter
mellem
maskiner
også
mens
disse
objekter
indeholder
kørende
processer
Systemet
er
også
beregnet
til
at
kunne
køre
selvom
en
eller
flere
maskiner
crasher
der
er
faciliteter
i
sproget
til
at
konstatere
at
andre
maskiner
er
gået
ned
og
kommer
op
igen
Emerald
kører
med
sin
egen
lille
virtual
machine
ovenpå
C
Omskriv
Emerald
fortolkeren
til
Java
og
kør
fx
distribuerede
objekter
på
tværs
af
Internettet
Forudsætninger
Forudsætninger
Grundliggende
Programmering
Netværk
og
Protokoller
C
programmering
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
156
Eric
Jul
ekstern
lektor
Sliding
Window
Protocol
Implementer
en
sliding
window
protokol
fra
Tanenbaums
netværksbog
anvendt
i
kurset
NP
ovenpå
UDP
og
lav
performance
målinger
kan
I
få
den
til
at
fungere
bedre
end
TCP
Skriv
fx
en
FTP
ligende
applikation
der
anvender
jeres
protokol
Forudsætninger
Forudsætninger
Grundliggende
Programmering
Netværk
og
Protokoller
C
programmering
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
157
Eric
Jul
ekstern
lektor
En
video
med
tænke
højt
metoden
Tænke
højt
metoden
er
en
anerkendt
metode
til
at
evaluere
brugbarheden
af
IT
produkter
Metoden
består
groft
set
i
at
sætte
en
bruger
foran
produktet
for
at
teste
om
produktet
er
så
brugbart
at
brugeren
kan
anvende
det
på
den
tilsigtede
måde
Metoden
giver
gode
resultater
med
en
forholdsvis
beskeden
indsats
Den
har
yderligere
den
store
fordel
at
den
levendegør
mødet
mellem
brugeren
og
produktet
der
kommer
rigtigt
kød
og
blod
ind
over
teknikken
I
1986
lavede
Peter
Carstensen
IT
højskolen
og
Michael
Bruhn
Datacentralen
en
video
der
demonstrerede
styrken
i
tænke
højt
metoden
Systemet
Teledata
blev
anvendt
det
kan
opfattes
som
1980
ernes
WWW
Videoen
viser
en
bruger
der
skal
finde
ud
af
hvornår
der
afgår
SAS
fly
fra
København
til
Manchester
på
hverdage
det
lykkes
men
det
tager
14
minutter
Videoen
er
blevet
anvendt
ved
utallige
kurser
i
brugervenlighed
for
systemudviklere
siden
og
den
har
haft
stor
betydning
for
udviklingen
af
dette
felt
i
Danmark
idet
den
er
meget
levende
og
troværdig
Jeg
Anker
Helms
Jørgensen
viste
videoen
i
min
forelæsning
i
Grundlæggende
Webdesign
forleden
På
den
ene
side
går
budskabet
ind
og
på
den
anden
side
bærer
den
meget
præg
af
den
forældede
teknologi
Jeg
tog
tyren
ved
hornene
og
lavede
bagefter
et
eksperiment
til
forelæsningen
Jeg
bad
tre
studerende
løse
den
samme
opgave
ved
hjælp
af
tre
moderne
teknologier
WWW
en
mobiltelefon
og
en
Travel
Book
Det
viste
sig
at
det
faktisk
gik
hurtigere
idag
2
minutter
men
svaret
baseret
på
WWW
www
sas
dk
var
fejlbehæftet
idet
brugeren
ikke
opdagede
at
nogle
af
de
fundne
flytider
var
fra
Manchester
til
København
og
ikke
omvendt
Det
er
nok
ikke
tilsigtet
fra
SAS
s
side
Ideen
i
projektet
er
at
lave
en
videoproduktion
der
på
basis
af
dagens
WWW
teknologi
illustrerer
hvordan
mødet
mellem
brugere
og
systemer
ofte
falder
ud
noget
som
vores
højt
uddannede
og
IT
vante
studerende
ofte
glemmer
illustrerer
metodens
effektivitet
mht
til
fejlfinding
i
WWW
brugerflader
viser
designere
og
kommende
designere
hvordan
man
benytter
metoden
Fra
en
studiemæssig
synsvinkel
er
der
tre
relevante
aspekter
at
formidle
en
kompleks
problemstilling
visuelt
at
fordybe
sig
i
en
usability
metode
at
sælge
budskabet
til
både
studerende
og
praktikere
Nuværende
medlemmer
af
gruppen
Ingen
Kontaktperson
158
Anker
Helms
Jørgensen
DKM
Analyse
af
designmæssige
ændringer
MWR
Dette
projekt
henvender
sig
til
studerende
fra
DKM
SWU
INT
Alle
taler
om
at
dårlig
brugervenlighed
på
ehandelssites
er
årsagen
til
den
lave
rate
af
online
køb
på
bestemte
sites
Derfor
syntes
jeg
det
ville
være
interessant
at
lave
et
stykke
software
der
analyserer
hvordan
brugerens
adfærd
er
omkring
de
dele
af
sitet
der
er
kritisk
for
dets
brug
f
eks
omkring
indkøbskurven
disse
værktøjer
findes
ganske
enkelt
ikke
på
markedet
i
dag
Softwaren
kunne
måske
udformes
som
et
framework
samling
af
komponenter
der
kan
trækkes
ned
over
et
givet
website
Tilgangen
til
projektet
kunne
f
eks
være
en
forholdvis
ny
metode
der
hedder
Most
Wanted
Response
MWR
som
karakteriseres
som
den
handling
man
helst
ser
at
en
bruger
udfører
f
eks
tilmelder
sig
et
nyhedsbrev
eller
køber
en
vare
Udfra
MWE
kan
man
definere
konversationsraten
som
Antallet
der
udførte
MWR
Antallet
af
besøgende
Dette
vil
man
naturligvis
have
så
høj
som
muligt
Jeg
forstiller
mig
at
man
laver
et
stykke
software
der
løbende
logger
og
analyserer
hvad
der
sker
med
konvertionsraten
hvis
man
f
eks
ændrer
udformningen
af
en
knap
eller
at
sitet
bliver
nævnt
i
nyhederne
eller
lign
Videre
vil
softwaren
måske
kunne
trace
så
meget
data
fra
brugeren
at
man
vil
kunne
lave
et
datawarehouse
der
sammenligner
førstegangbrugere
vs
flere
gangsbrugeres
adfærd
og
finde
hvor
på
sitet
der
ligger
er
reelt
problem
etc
Rent
ud
sagt
et
godt
værktøj
til
at
kvantificere
kvaliteten
af
ændringer
på
sitet
Jeg
er
DKM
studerende
og
har
en
del
teknisk
indsigt
Videre
har
jeg
fulgt
4
fag
på
ehandel
Mit
bidrag
til
projektet
vil
være
de
rent
analystiske
overvejelser
udarbejdelse
af
brugergrænseflader
evaluering
af
data
samt
brugertests
Det
tekniske
indhold
kan
f
eks
bestå
af
design
og
implementering
af
et
framework
med
fornuftige
interfaces
og
abstraktionsflader
mellem
backend
web
serveren
og
vores
framework
dette
framework
skal
understøtte
de
processer
vi
opstiller
som
krav
til
måling
af
Konversationraten
og
andre
parametre
Vi
vil
altså
komme
godt
rundt
i
forskellige
dele
i
opbygningen
af
advancerede
web
baseret
analyse
værktøjer
Ideer
Du
skal
ikke
være
nybegynder
og
et
kendskab
til
statistik
vil
være
fedt
Nuværende
medlemmer
af
gruppen
Anders
Kragelund
DKM
Kontaktperson
159
Anders
Kragelund
Tlf
28143012
Databasesystem
til
bestilling
og
håndtering
af
ordrer
via
internettet
Projektet
består
i
at
konstruere
et
ordredatabasesystem
for
en
aktuel
lille
virksomhed
Systemet
skal
tillade
at
kunder
kan
foretage
bestillinger
via
en
hjemmeside
på
internettet
og
evt
følge
med
i
behandlingen
af
ordren
De
ansatte
i
virksomheden
skal
kunne
håndtere
ordrer
via
internettet
Systemet
skal
konstrueres
så
det
kræver
et
password
at
kunne
læse
og
håndtere
ordrer
Systemet
udvikles
ved
hjælp
af
php3
mySQL
gennemgået
i
kurset
Internetprogrammering
Nuværende
medlemmer
af
gruppen
Nada
Yahyah
Alzubeidi
INT
Kontaktperson
160
Nada
Yahyah
Alzubeidi
161
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
162
wwwadm
it
c
dk
1
IT
højskolen
Erhvervsliv
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Vision
10
Forskning
11
Projekter
specialer
og
praktik
12
Om
foredragsrækken
BuzzTalks
inter
menu
bund
gif
Erhvervssamarbejde
Samarbejde
er
vigtigt
IT
højskolens
samarbejde
med
erhvervsliv
organisationer
og
det
offentlige
har
høj
prioritet
For
på
IT
højskolen
ønsker
vi
at
forske
og
undervise
i
IT
i
et
dynamisk
samarbejde
med
omverdenen
Samarbejdet
har
åbenlyse
gensidige
fordele
Gennem
samarbejdet
skal
IT
højskolen
fremme
erhvervslivets
forretningsudvikling
På
den
anden
side
er
input
fra
virksomheder
og
offentlige
institutioner
om
erfaringer
muligheder
og
behov
særdeles
vigtige
for
både
forskning
og
undervisning
på
IT
højskolen
Samarbejdet
med
erhvervslivet
sker
på
flere
områder
og
udvikler
sig
løbende
Konkret
samarbejder
IT
højskolen
og
erhvervslivet
blandt
andet
gennem
forskningsaktiviteter
projektarbejde
praktikophold
workshops
og
seminarer
gæsteforelæsninger
og
de
såkaldte
13
BuzzTalks
Forslag
til
nye
former
for
samarbejde
er
velkomne
Kontakt
Mikael
Kjærbye
ansvarlig
for
virksomhedssamarbejde
på
mail
14
mk
it
c
dk
eller
på
telefon
38
16
88
80
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
Vision
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Vision
og
mål
IT
højskolens
vision
IT
højskolen
vil
i
dialog
med
sine
omgivelser
skabe
et
attraktivt
og
levende
forsknings
og
uddannelsesmiljø
der
bidrager
til
vækst
og
udvikling
i
det
danske
og
internationale
samfund
ved
at
skabe
et
IT
miljø
der
favner
naturvidenskab
humaniora
design
og
erhverv
at
uddanne
personer
med
en
stor
og
bred
viden
om
IT
og
ITs
muligheder
gennem
forskning
at
skabe
ny
teknologi
og
bedre
anvendelse
af
eksisterende
teknologi
at
øge
samfundets
indsigt
i
IT
og
ITs
muligheder
Mål
i
forhold
til
erhvervslivet
IT
højskolen
vil
i
dialog
med
virksomheder
organisationer
og
institutioner
fremme
erhvervslivets
forretningsudvikling
ved
på
højt
internationalt
niveau
at
bidrage
med
indsigt
i
IT
og
de
forretningsmæssige
muligheder
forståelse
for
og
indsigt
i
virksomhedernes
fremtidige
anvendelse
af
og
behov
for
IT
herunder
indsigt
i
ITs
betydning
som
ledelsesværktøj
udvikling
af
avancerede
og
forretningsorienterede
løsninger
attraktive
og
velkvalificerede
kandidater
med
et
tværfagligt
og
anvendelsesorienteret
syn
på
IT
innovation
og
erhvervsrelateret
forskning
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
Forskning
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Forskningssamarbejde
Et
godt
forskningssamarbejde
med
erhvervslivet
er
af
afgørende
betydning
for
IT
højskolen
og
IT
højskolen
er
involveret
i
flere
forskningsaktiviteter
med
erhvervslivet
Samarbejdet
kan
eksempelvis
være
helt
eller
delvist
finansierede
forskningsprojekter
og
stipendiater
eller
være
forskning
hvor
virksomhederne
stiller
medarbejdere
materiale
og
viden
til
rådighed
Eksempelvis
arbejder
IT
højskolen
for
Rigshospitalet
sammen
med
Image
House
3
D
Lab
Panum
Instituttet
om
at
udvikle
et
system
der
kan
lave
3
D
modeller
af
kvindelige
befrugtede
æg
celler
på
baggrund
af
et
antal
2
D
mikroskopibilleder
Målet
er
at
udvikle
et
system
der
kan
kombinere
objektive
data
med
statistisk
materiale
så
man
i
fremtiden
får
bedre
muligheder
for
at
udvælge
de
befrugtede
æg
der
er
bedst
egnet
til
kunstig
befrugtning
Derigennem
kan
man
øge
antallet
af
gennemførte
graviditeter
og
samtidig
nedbringe
omkostningerne
til
kunstig
befrugtning
I
projektet
der
løber
over
tre
år
arbejder
man
samtidig
også
på
at
øge
kendskabet
til
kvalitetskriterier
for
mandlig
sæd
Projektets
mål
er
at
lave
IT
systemer
som
kan
anvendes
på
alle
fertilitetsklinikker
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
Projekter
specialer
og
praktik
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Projektbørs
11
Studenterprojekter
efterår
2000
12
Eksempler
på
relevante
projekter
13
Praktikpladser
inter
menu
bund
gif
Projekter
specialer
og
praktik
Studenterprojekter
Studerende
ved
IT
højskolen
kan
samarbejde
med
erhvervslivet
gennem
projektsamarbejde
hvor
projektet
indgår
som
en
del
af
uddannelsen
på
IT
højskolen
Projektet
afsluttes
med
en
individuel
bedømmelse
Ideen
bag
projekterne
er
at
de
studerende
har
mulighed
for
at
arbejde
i
dybden
med
emner
der
er
relevante
for
deres
fag
Et
projekt
kan
vare
i
fire
uger
eller
i
12
uger
Et
projekt
kan
også
være
et
speciale
dvs
et
lille
forskningsprojekt
som
kan
resultere
i
en
rapport
og
eventuelt
i
en
produktion
så
som
et
program
eller
et
design
Den
næste
runde
af
fire
ugers
projekter
starter
mandag
den
30
april
2001
Virksomheder
er
velkomne
til
at
uploade
en
kort
beskrivelse
af
deres
projektforslag
på
IT
højskolens
14
projektbørs
Torsdag
den
19
april
2001
afholder
IT
højskolen
en
projektbørsdag
hvor
virksomheder
kan
holde
et
kort
mundligt
oplæg
om
deres
projektideer
Alle
virksomheder
som
har
uploadet
projektideer
på
vores
website
vil
automatisk
blive
inviteret
til
at
deltage
i
projektbørsdagen
Projektsamarbejdet
kan
bestå
af
undersøgelser
id
udvikling
tests
konkrete
løsninger
og
implementering
af
disse
evalueringer
eller
mere
fremtidsorienterede
projekter
Vi
lægger
stor
vægt
på
at
arbejdet
foregår
under
virkelighedstro
omstændigheder
hvilket
reelt
vil
sige
at
de
studerende
bliver
bedt
om
at
udføre
projektet
for
en
eksisterende
virksomhed
eller
offentlig
organisation
De
studerende
vil
som
regel
arbejde
i
grupper
3
4
personer
Eksempelvis
var
fire
studerende
på
IT
højskolen
i
efteråret
1999
med
i
et
projekt
hos
DR
De
studerende
var
en
del
af
et
team
med
bl
a
journalister
producenter
og
teknikere
som
kom
med
input
til
fremtidens
radio
Det
konkrete
produkt
fra
IT
højskolen
bestod
i
to
rapporter
med
scenarier
og
ideer
Det
var
spændende
for
os
og
DR
fik
en
masse
gode
ideer
til
fremtidens
radio
og
det
digitale
potentiale
De
var
især
imponeret
over
vores
forskellige
uddannelsesmæssige
baggrunde
og
dermed
forskellige
indfaldsvinkler
til
at
skitsere
fremtidens
muligheder
siger
Britt
Gadegaard
som
var
en
af
de
fire
studerende
Det
er
en
stor
udfordring
at
være
med
til
at
løse
konkrete
projekter
som
erhvervslivet
skal
have
sat
i
søen
og
virksomhederne
kan
have
god
gavn
af
os
fordi
vi
kommer
med
en
opdateret
viden
og
kan
se
forskellige
projekter
og
problemstillinger
med
friske
øjne
siger
Britt
Gadegaard
Praktik
Som
en
del
af
deres
uddannelse
kan
de
studerende
på
IT
højskolen
komme
i
praktik
i
en
virksomhed
på
tredje
semester
af
studiet
Hvis
du
ønsker
en
studerende
i
praktik
så
henvend
dig
til
studievejledningen
på
mail
15
studievejledningen
it
c
dk
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Projekter
specialer
og
praktik
Projektbørs
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
IT
højskolens
Projektbørs
IT
højskolens
11
Projektbørs
er
en
ressource
for
Virksomheder
der
er
interesserede
i
at
lave
projektaftaler
med
studerende
fra
IT
højskolen
Studerende
fra
IT
højskolen
der
søger
projektkontakter
i
erhvervslivet
forsknings
miljøet
eller
blandt
andre
studerende
Forskere
der
søger
studerende
til
projekter
Alle
der
interesserer
sig
for
prokekter
og
ny
forskning
på
IT
højskolen
i
København
12
Projektbørsen
er
designet
og
programmeret
af
tre
studerende
fra
IT
højskolen
i
København
som
en
del
af
et
fire
ugers
studenterprojekt
i
kurset
Databasebaseret
webpublisering
De
studerende
bag
projektet
er
13
John
Udo
Ukpo
fra
Softwareudviklingslinjen
14
Lise
Bennedsen
fra
linjen
i
Design
Kommunikation
og
Medier
og
15
Mathias
Johansen
From
fra
linjen
i
E
handel
Adjunkt
16
Martin
Elsman
var
vejleder
på
projektet
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Projekter
specialer
og
praktik
Eksempler
på
relevante
projekter
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Eksempler
på
relevante
projekter
Nedenfor
er
en
liste
over
hvilke
slags
projekttyper
der
egner
sig
som
studenterprojekter
inden
for
de
seks
uddannelseslinjer
1
Software
udvikling
SWU
De
SWU
studerendes
viden
og
interesser
spænder
vidt
Fra
konsulenten
der
samarbejder
med
brugerne
over
systemudvikleren
der
tilpasser
eksisterende
software
eller
udvikler
næste
version
til
den
tekniske
specialist
der
udvikler
special
software
fx
til
lynhurtig
søgning
eller
WAP
Som
eksempler
på
tidligere
projekter
kan
nævnes
En
WAP
portal
hvor
man
kan
se
hvor
mange
der
er
på
diskotekerne
lige
nu
og
hvor
der
er
gang
i
den
En
rekursiv
datamodel
for
Statens
Koncernregnskab
En
videndatabase
til
intern
brug
i
et
Web
firma
En
undersøgelse
af
hvorfor
Firma
X
anonymt
ikke
fik
succes
med
sit
nye
ERP
system
og
hvad
man
kan
gøre
ved
det
En
undersøgelse
af
hvordan
systemudvikling
til
Web
foregår
i
Firma
Y
hvordan
det
hænger
sammen
med
teorien
om
systemudvikling
og
om
det
er
teorien
eller
firmaets
metoder
der
bør
ændres
Kontakt
linjeleder
11
Søren
Lauesen
hvis
du
har
nogle
spørgsmål
vedrørende
egnede
studenterprojekter
inden
for
software
udvikling
2
Design
kommunikation
og
medier
Eksempler
på
projektemner
har
fx
været
fjern
undervisningsprogrammer
hjemmesider
for
kultur
og
kunstinstitutioner
design
af
3D
verdener
intranetløsninger
til
redigering
af
TV
programmer
elektroniske
nyhedsmagasiner
WAP
tjenester
og
musikportaler
Projekterne
er
ofte
blevet
defineret
af
en
ekstern
oplægssgiver
Fælles
for
projekterne
er
at
de
dels
bliver
illustreret
med
en
prototype
og
dels
bliver
teoretisk
begrundet
i
en
skriftlig
rapport
En
systematisk
og
akademisk
redegørelse
for
de
bevidste
valg
med
hensyn
til
design
metode
målgruppe
og
indhold
er
centralt
for
DKM
projekterne
Et
andet
vigtigt
aspekt
ved
emnearbejdet
er
at
give
de
studerende
en
praktisk
erfaring
med
planlægning
styring
og
produktion
af
større
digitale
projekter
Prototypen
anvendes
ofte
til
brugervenlighedstests
med
personer
fra
målgruppen
Kontakt
linjeleder
12
John
Paulin
Hansen
hvis
du
har
nogle
spørgsmål
vedrørende
egnede
studenterprojekter
inden
for
design
kommunikation
og
medier
3
Tværfaglig
IT
Kandidater
i
tværfaglig
IT
kombinerer
deres
viden
om
IT
med
faglig
viden
fra
deres
bacheloruddannelse
Uddannelsen
giver
indsigt
i
hvordan
IT
systemer
designes
konstrueres
og
anvendes
inden
for
udvalgte
faglige
brancher
Med
en
uddannelse
i
tværfaglig
IT
kan
kandidaten
med
basis
i
et
andet
fagområde
specialisere
sig
i
at
se
nye
muligheder
med
IT
og
bruge
IT
i
nye
sammenhænge
og
til
løsning
af
andre
og
nye
opgaver
Der
lægges
særlig
vægt
på
problemorienteret
projektarbejde
i
grupper
med
det
mål
at
opnå
særlige
kvalifikationer
til
teamwork
projektstyring
evne
til
problemformulering
og
til
at
lokalisere
og
analysere
specifikke
problemkomplekser
Kontakt
linjeleder
13
Jesper
Simonsen
hvis
du
har
nogle
spørgsmål
vedrørende
egnede
studenterprojekter
inden
for
tværfaglig
IT
4
Internet
Teknologi
Eksempler
på
egnede
studieprojekter
er
Internetsalg
udvikling
af
salgsdatabase
undersøgelse
af
sikkerhedsaspekter
concurrency
kontrol
Mobiltelefoner
trådløse
tjenester
mobilt
internet
WAP
Informationssøgning
på
internettet
søgealgoritmer
resultatdatabase
Apparatsoftware
smartcards
overvågning
apparater
på
internettet
Adgangskontrol
og
styring
alarmsystemer
homebanking
elektroniske
nøglesystemer
Kontakt
linjeleder
14
Thomas
Hildebrandt
hvis
du
har
nogle
spørgsmål
vedrørende
egnede
studenterprojekter
inden
for
internet
teknologi
5
Multimedie
Teknologi
Eksempler
på
projekter
inden
for
tekniske
multimedier
omfatter
billedanalyse
computergrafik
lyd
tale
og
musiksyntese
og
analyse
samt
multimediesystemer
Andre
eksempler
er
syntese
af
musikinstrumenter
ray
tracer
analyse
af
medicinske
scanninger
interaktiv
grafik
og
talesyntese
Projekter
vil
typisk
tage
udgangspunkt
i
at
der
foreligger
en
analyse
af
hvad
der
skal
implementeres
Det
vil
sige
at
opgaven
er
veldefineret
og
der
er
eventuelt
valgt
metode
Kontakt
linjeleder
15
Mads
Nielsen
hvis
du
har
nogle
spørgsmål
vedrørende
egnede
studenterprojekter
inden
for
multimedie
teknologi
6
E
handel
På
EBUSS
omfatter
e
handel
både
de
tekniske
løsninger
logistik
og
betalingssystemer
og
de
mere
markedsmæssige
så
som
markedsføring
og
salg
og
distributionen
af
serviceydelser
og
fysiske
eller
digitale
varer
En
kandidat
i
Elektronisk
handel
vil
vide
hvordan
elektronisk
handel
influerer
på
eksempelvis
forholdet
mellem
kunde
og
leverandør
og
han
eller
hun
vil
være
velbevandret
i
de
særlige
tekniske
problemer
der
er
forbundet
med
e
handel
En
kandidat
i
e
handel
vil
på
akademisk
niveau
således
kunne
bidrage
erhvervslivet
med
aktuelle
og
relevante
e
handelskompetencer
Kontakt
linjeleder
16
Kim
Viborg
Andersen
hvis
du
har
nogle
spørgsmål
vedrørende
egnede
studenterprojekter
inden
for
E
handel
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Projekter
specialer
og
praktik
Praktikpladser
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Praktikpladser
Her
er
en
liste
over
praktikpladser
11
Trema
Laboratories
France
ASP
Team
12
Reklame
og
internetbureauet
JustKidde
Reklame
og
internetbureauet
JustKidde
Reklame
og
internetbureauet
JustKidde
kan
tilbyde
unge
designere
og
IT
teknikere
en
spændende
og
lærerig
praktik
arbejdsplads
Vi
er
interesserede
i
at
hjælpe
og
uddanne
IT
højskolens
studerende
med
kommunikation
gennem
new
medias
Hvis
det
har
din
interesse
kan
du
se
mere
under
13
www
justkidde
dk
hvor
vi
foruden
præsentation
af
os
selv
også
hver
måned
promoverer
nye
Internet
ideer
studerende
er
meget
velkomne
til
at
indsende
ideer
Vi
er
26
mennesker
af
meget
blandet
baggrund
4
kommer
fra
Masters
of
Media
i
Malmø
7
fra
universitetet
mens
andre
er
selvlærte
Foruden
en
lærerig
og
spændende
tid
med
ansvar
for
de
studerende
tilbyder
vi
frokost
transport
og
en
rigtig
god
gave
som
tak
Contact
details
PR
director
Christian
Gregersen
tlf
32
966
001
eller
email
14
email
Trema
Laboratories
France
ASP
Team
The
Trema
Institute
is
offering
one
1
internship
in
its
development
department
with
the
ASP
team
The
challenge
Trema
recently
decided
to
expand
its
product
range
with
a
new
ASP
Application
Service
Provider
offer
Such
solution
will
enable
Trema
and
third
parties
to
offer
functionality
of
Trema
products
as
a
service
renting
functionality
to
clients
and
thus
to
expand
the
current
customer
base
To
emphasize
importance
of
the
solution
in
the
company
a
new
business
unit
was
formed
to
support
business
and
operational
part
of
the
concept
In
order
to
realize
this
idea
significant
development
effort
will
be
carried
in
the
Trema
Development
unit
This
effort
will
be
focused
to
the
design
and
development
of
a
new
development
channel
Web
and
to
alignment
enhancement
of
the
current
products
In
the
Web
part
the
company
will
evaluate
candidates
application
servers
for
the
Web
platform
will
design
application
and
technical
architectures
will
design
develop
and
test
functionality
enabling
usage
of
the
products
over
Internet
Architecture
designs
will
be
driven
by
ultimate
requirement
to
have
flexible
and
scalable
solution
based
on
the
current
evolving
market
standards
as
EJB
Corba
DOM
XML
and
others
The
work
will
be
carried
out
by
Trema
employees
with
third
parties
support
Since
the
work
will
involve
many
disciplines
and
parties
internal
and
external
there
is
a
strong
emphasis
on
the
work
co
ordination
This
includes
research
of
available
technology
options
work
planning
and
tracking
organization
and
preparation
of
milestones
events
as
well
as
other
activities
The
learning
experience
Such
experience
will
enable
the
candidate
to
touch
areas
seen
in
school
in
real
life
the
planning
requirements
gathering
and
analysis
design
development
testing
all
these
on
the
project
running
on
the
top
technologies
and
implementing
top
edge
Internet
solution
About
Trema
The
15
Trema
group
is
a
premier
provider
of
strategic
technology
solutions
and
best
practice
methodologies
to
the
financial
industry
Trema
s
flagship
product
Finance
KIT
is
a
straight
through
processing
treasury
risk
and
asset
management
system
for
UNIX
and
Microsoft
Windows
NT
Trema
s
clients
include
key
players
in
the
financial
markets
including
banks
corporate
treasuries
investment
management
firms
and
central
banks
in
Europe
the
Middle
East
Africa
Asia
and
North
America
Trema
s
clients
include
ABB
AEGON
Anglo
American
Corporation
British
Aerospace
Electrolux
Ericsson
European
Central
Bank
CIBA
Specialty
Chemicals
Hoechst
Johnson
Controls
South
African
Reserve
Bank
Unilever
and
Volvo
Founded
in
1992
Trema
has
an
international
staff
of
over
250
and
has
offices
in
Abu
Dhabi
Boston
Frankfurt
Helsinki
Johannesburg
Sophia
Antipolis
Stockholm
Zurich
Prague
and
Singapore
In
the
spring
of
1997
we
concentrated
our
R
D
activities
in
Sophia
Antipolis
southern
France
Our
team
is
made
of
candidates
with
high
energy
flexible
to
changing
priorities
and
driven
by
quality
and
pride
in
their
work
Trema
s
work
environment
is
dynamic
and
international
The
working
language
of
the
company
is
English
About
Sophia
Antipolis
The
Sophia
Antipolis
science
park
is
located
in
the
South
of
Europe
on
the
French
Riviera
between
Nice
and
Cannes
Sophia
Antipolis
is
established
on
a
vast
wooded
plateau
and
presently
covers
2
300
hectares
where
over
1000
international
corporations
employ
over
20000
professionals
from
all
over
the
world
Nicknamed
the
Silicon
Valley
of
Europe
the
biggest
of
its
kind
the
technology
park
enables
the
development
of
research
programs
in
all
the
most
advanced
scientific
fields
For
more
information
visit
the
16
sophia
antipolis
net
Contact
details
Director
Lars
Christian
Smith
on
tel
33
4
9238
8100
or
17
email
Trema
Laboratories
France
Project
Management
Team
The
Trema
Institute
is
offering
one
1
internship
in
its
development
department
with
the
project
management
team
The
challenge
The
information
management
within
the
development
department
at
Trema
is
a
key
component
of
its
growth
and
success
The
internship
gives
to
the
candidate
the
opportunity
of
covering
everything
from
web
design
to
database
administration
and
data
capture
enabling
him
her
to
learn
and
practice
business
critical
skills
fast
The
work
takes
place
in
close
cooperation
with
our
product
experts
developers
and
project
managers
and
acts
as
primary
contact
for
the
research
design
implementation
support
and
evolution
of
the
development
intranet
web
site
content
The
learning
experience
Such
experience
will
enable
the
candidate
to
touch
areas
seen
in
school
in
real
life
the
planning
requirements
gathering
and
analysis
design
development
testing
all
these
selecting
and
utilising
web
solutions
and
understanding
how
the
Intranet
can
be
used
to
successfully
manage
projects
within
the
product
development
environment
About
Trema
The
18
Trema
group
is
a
premier
provider
of
strategic
technology
solutions
and
best
practice
methodologies
to
the
financial
industry
Trema
s
flagship
product
Finance
KIT
is
a
straight
through
processing
treasury
risk
and
asset
management
system
for
UNIX
and
Microsoft
Windows
NT
Trema
s
clients
include
key
players
in
the
financial
markets
including
banks
corporate
treasuries
investment
management
firms
and
central
banks
in
Europe
the
Middle
East
Africa
Asia
and
North
America
Trema
s
clients
include
ABB
AEGON
Anglo
American
Corporation
British
Aerospace
Electrolux
Ericsson
European
Central
Bank
CIBA
Specialty
Chemicals
Hoechst
Johnson
Controls
South
African
Reserve
Bank
Unilever
and
Volvo
Founded
in
1992
Trema
has
an
international
staff
of
over
250
and
has
offices
in
Abu
Dhabi
Boston
Frankfurt
Helsinki
Johannesburg
Sophia
Antipolis
Stockholm
Zurich
Prague
and
Singapore
In
the
spring
of
1997
we
concentrated
our
R
D
activities
in
Sophia
Antipolis
southern
France
Our
team
is
made
of
candidates
with
high
energy
flexible
to
changing
priorities
and
driven
by
quality
and
pride
in
their
work
Trema
s
work
environment
is
dynamic
and
international
The
working
language
of
the
company
is
English
About
Sophia
Antipolis
The
Sophia
Antipolis
science
park
is
located
in
the
South
of
Europe
on
the
French
Riviera
between
Nice
and
Cannes
Sophia
Antipolis
is
established
on
a
vast
wooded
plateau
and
presently
covers
2
300
hectares
where
over
1000
international
corporations
employ
over
20000
professionals
from
all
over
the
world
Nicknamed
the
Silicon
Valley
of
Europe
the
biggest
of
its
kind
the
technology
park
enables
the
development
of
research
programs
in
all
the
most
advanced
scientific
fields
For
more
information
visit
the
19
sophia
antipolis
net
Contact
details
Director
Lars
Christian
Smith
on
tel
33
4
9238
8100
or
20
email
21
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
Om
foredragsrækken
BuzzTalks
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Efterår
2000
11
Forår
2001
inter
menu
bund
gif
BuzzTalks
åbne
foredrag
BuzzTalk
er
navnet
på
IT
højskolens
åbne
foredrag
Her
præsenterer
eksterne
foredragsholdere
et
emne
der
er
relateret
til
forskning
og
undervisning
på
IT
højskolen
Foredragene
er
offentlige
og
henvender
sig
til
såvel
IT
højskolens
studerende
ansatte
som
andre
interesserede
Formålet
med
foredragene
er
trefoldigt
At
supplere
IT
højskolens
undervisning
og
dermed
give
de
studerende
såvel
ajourført
kendskab
til
ny
teknologi
som
et
mere
alment
dannende
perspektiv
på
informationsteknologi
At
skabe
fundament
for
en
god
dialog
mellem
IT
højskolen
og
det
omkringliggende
samfund
herunder
erhvervslivet
At
skabe
et
socialt
miljø
der
bringer
studerende
og
undervisere
sammen
på
tværs
af
faglige
og
liniemæssige
skel
BuzzTalks
foregår
på
IT
højskolen
i
København
hver
fredag
kl
15
15
og
varer
ca
en
time
Hvis
du
er
interesseret
i
at
deltage
og
ikke
er
ansat
eller
studerende
på
IT
højskolen
beder
vi
blot
om
at
du
tilmelder
dig
på
12
buzztalk
it
c
dk
IT
højskolens
BuzzTalks
bliver
anbefalet
af
den
danske
afdeling
af
the
13
Institute
of
Electrical
and
Electronics
Engineers
IEEE
Program
for
BuzzTalks
14
forår
2001
15
efterår
2000
16
forår
2000
og
17
efterår
1999
Hvis
du
har
forslag
til
emner
eller
foredragsholdere
til
BuzzTalks
modtager
vi
gerne
dine
ønsker
Send
email
til
Tanja
Danner
18
td
it
c
dk
19
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
20
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
Efterår
2000
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Program
efterår
2000
1
9
11
Digital
filmredigering
v
Kris
Kolodziejski
12
Digital
Filmlab
8
9
13
Det
hyperkomplekse
samfund
uddannelser
organisationer
og
individer
v
Professor
Lars
Qvortrup
14
Syddansk
Universitet
15
9
15
Hvem
vil
være
millionær
Prøv
Lotto
eller
com
v
Partner
Ph
D
Carsten
Gomard
16
NetCompany
dk
22
9
17
Broadband
og
fremtidens
internet
v
Henrik
Werdelin
18
tripledash
com
tidl
Head
of
Interactive
Development
MTV
Networks
Europe
29
9
Aflyst
6
10
19
IT
sikkerhed
Et
voksende
problem
v
Udviklingschef
Claus
Dengsøe
Jensen
20
VIGILANTe
Neupart
Munkedal
A
S
13
10
21
Developing
for
the
Internet
on
its
way
Into
the
next
millennium
v
Programming
Director
Ph
D
Sebastian
B
ttrich
22
Icon
Medialab
20
10
Efterårsferie
27
10
23
Nye
samværsformer
i
en
virtuel
verden
v
Kultursociolog
Ph
D
Stine
Gotved
24
Københavns
Universitet
3
11
25
Open
Source
et
nyt
paradigme
i
IT
branchen
v
Projektkoordinator
Claus
Sørensen
26
Plomus
10
11
27
Kan
brugere
designe
Skal
de
v
Professor
Jacob
Buur
28
Syddansk
Universitet
16
11
29
Fordele
og
ulemper
ved
objektorienterede
programmeringssprog
v
Department
Head
Ph
D
Bjarne
Stroustrup
30
AT
T
Labs
17
11
31
Digital
tegnefilm
i
2D
bag
om
South
Party
v
Ph
D
stud
Theo
Engell
Nielsen
32
IT
højskolen
og
stud
Uffe
Friis
Lichtenberg
33
DIKU
24
11
34
Why
Functional
Programming
Matters
v
John
Hughes
Chalmers
University
of
Technology
1
12
35
Linux
i
undervisningssektoren
og
i
erhverslivet
v
Hanne
Munkholm
Leder
af
linuxlab
og
Flemming
Schmidt
Manager
Softwaremarketing
Nordic
IBM
36
Om
BuzzTalks
37
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
38
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Kris
Kolodziejski
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
Digital
filmredigering
Foredraget
handler
om
digitaliseringens
indflydelse
på
kvalitet
og
kreative
muligheder
i
filmproduktion
Der
vil
blive
vist
eksempler
fra
diverse
spillefilm
i
forskellige
formater
og
digitale
projektioner
Kris
Kolodziejski
er
Direktør
på
Digital
Filmlab
der
beskæftiger
sig
med
redigering
og
efterbehandling
af
biograffilm
Blandt
de
film
Digital
Filmlab
har
arbejdet
med
findes
Den
eneste
ene
og
I
Kina
spiser
de
hunde
Foredraget
foregår
i
Park
Bio
Østerbrogade
79
fredag
den
1
september
2000
kl
15
30
Busser
til
Park
Bio
afgår
fra
IT
højskolen
Glentevej
67
kl
14
45
til
15
10
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Lars
Qvortrup
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
Det
hyperkomplekse
samfund
uddannelser
organisationer
og
individer
I
1998
udgav
Lars
Qvortrup
bogen
Det
hyperkomplekse
samfund
Gyldendal
1998
billigbog
2000
Netop
nu
arbejder
han
videre
med
en
efterfølger
Hvis
samfundet
er
hyperkomplekst
hvilke
strategiske
konsekvenser
har
det
så
for
regionen
uddannelsessystemet
organisationer
og
individer
I
foredraget
sammenfattes
teorien
om
det
hyperkomplekse
samfund
og
de
strategiske
konsekvenser
diskuteres
Lars
Qvortrup
er
professor
i
multimedier
Efter
i
fire
år
at
have
ledet
Aalborg
Universitets
multimediecenter
InterMedia
Aalborg
er
han
d
1
september
tiltrådt
et
professorat
i
multimedier
på
Syddansk
Universitet
Fredag
d
8
9
2000
kl
15
15
i
lokale
0
19
på
Glentevej
65
København
NV
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Carsten
Gomard
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
Hvem
vil
være
millionær
Prøv
Lotto
eller
com
Der
er
en
række
tegn
på
at
Internettet
er
på
vej
ud
af
puberteten
Børsuroen
i
foråret
2000
har
taget
noget
af
luften
ud
af
IT
boblen
Ingen
gider
lytte
til
profeter
som
spiller
bordfodbold
imens
de
forkynder
at
Internettet
vil
ændre
alting
Virksomhederne
flytter
fokus
fra
flot
front
end
grafik
til
solide
systemer
som
kan
udføre
forretningstransaktioner
Venturekapital
uddeles
ikke
længere
til
3
mand
med
en
hund
og
en
god
ide
De
etablerede
virksomheder
begynder
at
tage
Internettet
alvorligt
og
lancerer
omsider
deres
egne
initiativer
Foredraget
vil
fortælle
om
hvad
der
skal
til
at
lykkes
med
Internet
initiativer
i
år
2000
Amatørernes
aften
er
forbi
Internettet
er
ved
at
blive
voksent
og
de
professionelle
aktører
rykker
ind
Carsten
Gomard
er
Ph
D
i
datalogi
og
partner
i
NetCompany
NetCompany
er
stiftet
i
1999
og
tilbyder
Internet
ydelser
ud
fra
3
grundprincipper
Gamle
dyder
i
nye
tider
Solidt
strategisk
og
teknologisk
håndværk
E
business
konsulentydelser
og
hjælp
til
com
initiativer
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Henrik
Werdelin
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
Broadband
og
fremtidens
internet
Engang
vil
folk
sikkert
grine
af
sætningen
Der
er
altså
ikke
noget
godt
på
fjernsynet
i
aften
Fremtidens
tv
billede
bliver
nemlig
digitalt
og
inkluderer
interaktive
elementer
multimedia
digiziner
og
agenter
der
sammensætter
dit
daglige
tv
program
Henrik
Werdelin
kigger
på
hvad
fremtiden
vil
bringe
for
fremtidens
tv
kanaler
new
media
producere
og
entertainment
kiggere
Henrik
Werdelin
MA
BSC
er
tidligere
New
Media
Development
Executive
på
MTV
Europe
hvor
han
var
ansvarlig
for
udviklingen
af
interaktive
elementer
på
TV
digital
TV
bredbånd
og
3
generation
mobil
telefoner
Nu
er
han
med
ejer
af
Tripledash
et
broadband
laboratorium
der
hjælper
tv
stationer
og
andre
content
providers
med
migration
af
deres
produkter
til
de
nye
distributions
former
Henrik
har
også
været
konsulent
for
Undervisningsministeriet
med
til
at
starte
ChiliRom
lavet
et
af
Danmarks
første
online
studenter
blade
samt
været
producer
for
BBC
og
MTV
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Claus
Dengsøe
Jensen
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
IT
sikkerhed
Et
voksende
problem
Er
internetsikkerheden
i
orden
Sikkerhedshuller
i
netværket
betyder
fare
for
tyveri
af
interne
data
og
dyr
nedetid
på
vitale
systemer
dermed
tab
af
goodwill
muligheder
og
indtjening
Mange
er
med
god
grund
ikke
sikre
på
om
deres
sikkerhedsmekanismer
er
gode
nok
Danske
firmaer
som
udfører
forretninger
på
Internettet
er
sårbare
overfor
sikkerhedsbrister
En
undersøgelse
VIGILANTe
Neupart
Munkedal
A
S
lavede
på
NTI2000
viser
at
70
af
de
adspurgte
firmaer
enten
har
oplevet
angreb
af
hackere
eller
ikke
var
klar
over
hvorvidt
de
havde
været
angrebet
Yderligere
40
af
firmaerne
har
oplevet
et
eller
flere
angreb
hvoraf
det
mest
almindelige
er
et
Ude
af
Drift
angreb
hvor
firmaets
server
bliver
udsat
for
ulovlige
datapakker
eller
bliver
bombarderet
med
datapakker
Desuden
er
20
overbeviste
om
at
deres
internetforbindelse
jævnligt
er
udsat
for
angreb
I
foredraget
på
IT
højskolen
gives
der
eksempler
på
hacking
og
hvad
der
kan
gøres
for
at
mindske
risikoen
for
hacking
Yderligere
vises
et
LIVE
attack
Claus
Dengsøe
Jensen
er
udviklingschef
hos
VIGILANTe
Neupart
Munkedal
A
S
der
har
specialiseret
sig
i
uvildigt
at
levere
services
og
produkter
der
kan
gennemteste
alt
udstyr
tilkoblet
internettet
for
sikkerhedsbrister
Fredag
d
6
10
2000
kl
15
15
lokale
0
19
Glentevej
65
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Sebastian
B
ttrich
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
Developing
for
the
internet
on
its
way
into
the
next
millennium
In
this
work
in
progress
talk
we
are
going
to
discuss
some
trends
and
issues
of
the
internet
on
its
way
into
the
21st
century
in
a
mix
between
science
fiction
and
hands
on
reality
technical
talk
and
feuilleton
Today
the
internet
is
commonly
assumed
to
be
growing
exponentially
extending
into
wireless
ubiquitous
and
persistent
online
presence
Net
fridges
body
area
networks
and
digital
angels
are
always
with
us
We
will
take
a
look
at
these
developments
and
the
connected
growth
paradigms
New
devices
have
implications
on
software
development
for
example
as
operating
systems
different
from
the
traditional
WIMP
Windows
Icons
Menu
Pointing
OS
move
into
focus
New
concepts
like
augmented
enhanced
reality
and
context
location
awareness
might
form
the
shape
of
tomorrow
s
user
services
These
new
devices
and
concepts
bring
new
questions
regarding
the
future
of
our
cultural
political
and
informational
realities
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Stine
Gotved
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
Nye
samværsformer
i
en
virtuel
verden
De
nye
computermedierede
samværsformer
der
er
opstået
med
internettets
udbredelse
fx
nyhedsgrupper
MUDs
og
chat
rum
er
en
udfordring
til
mere
traditionelle
tanker
om
fællesskab
og
socialitet
Som
anderledes
konstruktioner
i
både
tid
og
rum
genskaber
de
i
tekst
alligevel
så
genkendelige
temaer
som
tilknytning
normer
og
ritualer
Med
udgangspunkt
i
et
case
study
af
en
nyhedsgruppe
vises
hvordan
de
computermedierede
fællesskaber
kan
ses
også
i
en
større
samfundsmæssig
kontekst
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
BuzzTalks
4
Efterår
Claus
Sørensen
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
13
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
Open
Source
et
nyt
paradigme
i
IT
branchen
Open
Source
er
i
øjeblikket
ved
at
ændre
spillereglerne
i
IT
branchen
Programmer
og
systemer
er
gratis
og
kildeteksten
frit
tilgængelig
hvilket
bringer
kunden
tilbage
i
førersædet
De
reelle
fordele
og
ulemper
for
kunder
og
producenter
belyses
samt
en
generel
indføring
i
Open
Source
metoden
14
USEMAP
inter
icon2top
gif
opdateret
25
09
2000
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Efterår
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
inter
grey
vert
r
gif
inter
grey
bund
gif
Kan
brugere
design
Skal
de
Kan
brugere
designe
Skal
de
Om
brugerinvolvering
i
design
af
IT
produkter
Jacob
Buur
er
professor
i
bruger
orienteret
produktudvikling
ved
Mads
Clausen
Instituttet
for
Produktinnovation
Syddansk
Universitet
Han
kommer
fra
Danfoss
A
S
hvor
han
gennem
8
år
har
opbygget
User
Centred
Design
gruppen
Gruppen
er
kendt
for
en
eksperimenterende
form
for
brugerinddragelse
i
produktudvikling
som
bygger
på
drama
video
spil
mv
Fredag
d
10
11
2000
kl
15
15
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
13
buzztalk
it
c
dk
14
Om
BuzzTalks
15
USEMAP
inter
icon2top
gif
opdateret
30
10
2000
16
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Efterår
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
inter
grey
vert
r
gif
inter
grey
bund
gif
Fordele
og
ulemper
ved
objektorienterede
programmeringssprog
Hvis
god
programmering
var
det
samme
som
objekt
orienteret
programmering
ville
det
være
klart
at
et
godt
programmeringssprog
måtte
være
objektorienteret
og
intet
andet
end
objektorienteret
Men
sådan
er
det
jo
ikke
Hvilken
slags
problemer
er
bedst
klarede
med
00
sprogfaciliteter
Hvordan
kan
man
misbruge
00
faciliteter
Og
hvilke
slags
ikke
00
faciliteter
kan
være
nyttige
Hvordan
kan
man
organisere
et
program
der
har
00
og
ikke
00
dele
Eksemplerne
vil
blive
taget
fra
C
som
støtter
00
programmering
og
andre
programmeringsteknikker
Bjarne
Stroustrupopfandt
programmeringssproget
C
og
skrev
den
første
C
compiler
Han
er
forfatter
af
mange
tekniske
artikler
og
bøger
inkl
The
C
Programming
Language
og
The
Design
and
Evolution
of
C
Hans
tekniske
hovedinteresser
er
programmering
design
og
distribuerede
systemer
Bjarne
er
afdelingsleder
på
AT
T
Labs
AT
T
og
ACM
fellow
Han
er
Cand
Scient
fra
Århus
Universitet
og
Ph
D
fra
Cambridge
Torsdag
d
16
11
2000
kl
15
15
lokale
0
10
Glentevej
65
2400
København
NV
Tilmelding
13
buzztalk
it
c
dk
14
Om
BuzzTalks
15
USEMAP
inter
icon2top
gif
opdateret
20
10
2000
16
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Efterår
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
inter
grey
vert
r
gif
inter
grey
bund
gif
Digital
tegnefilm
i
2D
bag
om
South
Party
Med
spørgsmålene
Når
man
kender
sin
målgruppe
hvordan
skruer
man
så
en
succes
sammen
igen
og
Hvor
langt
kan
man
nå
når
man
vil
lave
det
hele
selv
i
C
samt
en
fascination
af
South
Park
tegnefilmene
gik
demogruppen
13
hybris
NEMESIS
igang
med
at
planlægge
historie
udseende
og
programmel
til
en
computergenereret
tegnefilm
der
skulle
deltage
i
wild
demo
konkurrencen
til
14
The
Party
Theo
Engell
Nielsen
og
Uffe
Friis
Lichtenberg
vil
til
denne
BuzzTalk
præsentere
dele
af
processen
der
på
3
uger
ledte
til
den
sytten
minutter
lange
tegnefilmsproduktion
South
Party
der
endte
med
at
tage
publikum
med
storm
Blandt
andet
vil
deres
egen
2D
tegnefilmsengine
og
deres
lipsync
program
blive
demonstreret
Målet
er
desuden
at
producere
en
simpel
20
30
sekunder
lang
tegnefilm
under
BuzzTalken
for
at
vise
hvor
hurtig
arbejdsgangen
blev
Som
afslutning
vil
South
Party
blive
vist
i
sin
fulde
længde
Fredag
d
17
11
2000
kl
15
15
lokale
0
10
Glentevej
65
2400
København
NV
Tilmelding
15
buzztalk
it
c
dk
16
Om
BuzzTalks
17
USEMAP
inter
icon2top
gif
opdateret
20
10
2000
18
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Efterår
2000
inter
vandret
gif
5
Uddannelser
6
Stillinger
7
Aktiviteter
8
Home
9
Personer
10
SiteMap
11
Intranet
12
English
inter
grey
vert
r
gif
inter
grey
bund
gif
Why
Functional
Programming
Matters
Sixteen
years
ago
I
wrote
an
article
with
the
very
same
title
in
which
I
argued
with
small
examples
that
so
called
functional
programming
languages
offered
substantial
benefits
for
structuring
software
Functional
languages
became
popular
among
researchers
yet
for
many
years
industrial
take
up
was
slow
Today
however
these
languages
are
in
daily
use
at
Intel
Motorola
and
Ericsson
among
others
and
the
first
fortunes
have
been
made
In
this
talk
I
will
explain
what
functional
programming
is
and
what
benefits
it
offers
I
will
correct
some
common
misconceptions
and
talk
about
some
of
the
industrial
applications
that
functional
languages
are
now
finding
Fredag
d
24
11
2000
kl
15
15
i
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
13
buzztalk
it
c
dk
14
Om
BuzzTalks
15
USEMAP
inter
icon2top
gif
opdateret
13
11
2000
16
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
Forår
2001
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Program
forår
2001
26
1
11
Hvordan
opdager
man
et
hacker
angreb
Om
forskningsproblemer
ved
intrusion
detection
ph
d
Jacob
Rehof
Microsoft
Research
Redmond
2
2
12
Patent
på
software
International
trussel
eller
dansk
mulighed
v
Patentkonsulent
Jacob
Pade
Frederiksen
Plougmann
Vingtoft
Partners
9
2
13
5
tips
til
at
undgå
IT
fiasko
v
ph
d
Seniorkonsulent
Morten
Heine
Sørensen
IT
Practice
16
2
14
Beyond
e
magination
go
wireless
v
Executive
Vice
President
Trygve
Skjøtskift
15
GoPinocchio
23
2
16
The
problematic
of
using
IT
for
pedagogic
purposes
v
Professor
Deryn
Watson
School
of
Education
Kings
College
London
2
3
17
Mobile
Internet
v
Senior
Sales
Specialist
Kaare
Birketoft
IBM
9
3
18
Personalized
search
on
the
web
v
Forskningsmedarbejder
Thomas
Rask
Thomsen
og
Forskningsmedarbejder
ph
d
stud
Rene
DePont
Christensen
19
Mindpass
16
3
20
IBM
Research
Global
Technology
Outlook
v
Dr
Phillippe
Janson
IBM
Academy
of
Technology
Zurich
23
3
21
De
gamle
vinder
i
den
nye
økonomi
v
Associate
Cand
polit
og
MBA
i
strategi
Steen
Lønberg
Jørgensen
22
McKinsey
Co
30
3
23
XML
visionen
v
Ph
D
Michael
I
Schwartzbach
Lektor
Århus
Universitet
6
4
24
Superchannel
og
Karlskrona2
Relationel
kunst
på
Internettet
v
Kunstergruppen
Superflex
og
ph
d
studerende
Troels
Degn
Johansson
20
4
25
Evaluator
effekten
Et
ubehageligt
faktum
om
teknikker
til
test
af
brugervenlighed
v
Usability
Specialist
ph
d
Niels
Ebbe
Jacobsen
Nokia
27
4
26
Softwareudvikling
en
videnskab
og
et
håndværk
v
Afdelingsleder
ph
d
Flemming
Damm
27
Maconomy
28
Om
BuzzTalks
Tilmelding
29
buzztalk
it
c
dk
30
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
31
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Patent
på
software
International
trussel
eller
dansk
mulighed
Danmark
er
paralyseret
og
forholder
sig
passivt
mens
udlandet
patenterer
for
fuld
udblæsning
også
i
Danmark
Software
kan
patenteres
og
bliver
det
Bare
næsten
ikke
af
danskere
En
patentportefølje
er
også
når
det
gælder
software
et
strategisk
ledelsesværktøj
Jakob
Pade
Frederiksen
European
Patent
Attorney
civilingeniør
Patentkonsulent
og
Business
Unit
Manager
hos
Plougmann
Vingtoft
Partners
Arbejder
med
rådgivning
inden
for
patentering
af
software
relaterede
opfindelser
herunder
med
tilrettelæggelse
af
patenteringsstrategier
udarbejdelse
og
procedering
af
patentansøgninger
håndhævelse
af
rettigheder
samt
bistand
ved
retssager
i
ind
og
udland
Fredag
d
2
2
kl
15
15
lokale
0
10
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Beyond
e
magination
go
wireless
Om
få
år
vil
der
være
flere
smartphones
end
PC
er
til
og
med
TV
er
Denne
trend
tænkes
der
over
i
dagens
topvirksomheder
fordi
om
få
år
vil
forbrugerne
købe
flere
varer
over
det
mobile
Internet
end
over
det
traditionelle
Internet
GoPinocchio
s
fokus
er
Mobile
Business
inden
for
B2B
segmentet
Vi
ser
Mobile
Business
som
spektrummet
af
muligheder
inden
for
kommunikation
transaktion
og
underholdning
I
dag
ser
man
de
første
integrerede
Mobile
Business
løsninger
i
Europa
som
er
baseret
på
teknologier
som
WAP
og
SMS
inden
for
kort
tid
vil
dette
marked
udvikle
sig
eksplosivt
Vi
vil
diskutere
det
stigende
menneskelige
behov
for
at
kunne
arbejde
lære
leve
og
lege
hvor
som
helst
når
som
helst
Dette
emne
vil
vi
samtidig
relatere
til
hvad
som
teknologisk
er
muligt
i
dag
Trygve
Skjøtskift
er
Executive
Vice
President
i
GoPinocchio
Fredag
d
16
2
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Softwareudvikling
en
videnskab
og
et
håndværk
Maconomys
udviklingsafdeling
beskæftiger
ca
40
dataloger
og
civilingeniører
og
konkurrerer
med
softwareudvikingsafdelinger
med
10
100
gange
så
mange
ansatte
og
klarer
sig
godt
i
denne
konkurrence
Hvad
er
hemmeligheden
Hos
Maconomy
lægger
vi
vægt
på
at
softwareudvikling
er
både
en
videnskab
og
et
håndværk
Behændighed
er
en
vigtig
egenskab
for
en
håndværker
men
først
når
det
kombineres
med
et
solidt
kendskab
til
materialernes
muligheder
et
sæt
gode
værktøjer
og
fortrolighed
med
værktøjernes
anvendelsesmuligheder
opnås
de
rigtig
gode
resultater
I
tillæg
hertil
er
en
dygtig
håndværker
kendetegnet
ved
at
han
ikke
bare
er
metodisk
og
struktureret
men
også
at
han
laver
et
nyt
stykke
værktøj
hvis
det
sætter
ham
i
stand
til
at
løse
en
opgave
bedre
Med
matematikkens
systematik
og
præcision
og
ingeniørfagets
metodik
hører
datalogien
naturligt
hjemme
blandt
de
naturvidenskabelige
fag
Softwareudvikling
er
imidlertid
ikke
kun
et
stykke
skrivebordsarbejde
men
også
et
stykke
praktisk
kontruktionsarbejde
der
skal
udføres
Maconomys
erfaring
er
at
netop
når
de
teoretiske
og
praktiske
færdigheder
forenes
opnås
exceptionelle
resultater
med
både
høj
produktivitet
og
høj
kvalitet
Behovet
for
slidsomt
vedligholdelses
og
fejlretningsarbejde
samt
omstændige
tests
begrænses
til
et
minimum
hvorved
udviklerne
kan
koncentrere
sig
om
det
de
er
gode
til
og
finder
sjovt
nemlig
nyudvikling
Fredag
d
27
4
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Personalized
search
on
the
web
Mindpass
com
is
driven
by
the
vision
To
help
our
customers
create
the
most
attractive
places
in
the
networked
global
society
Based
on
the
experience
of
years
of
development
on
a
scalable
Internet
search
engine
we
present
a
set
of
problems
and
solutions
related
to
searching
the
web
and
scaling
with
the
web
Thomas
Rask
Thomsen
er
Cand
Scient
i
datalogi
og
matematik
fra
Aalborg
Universitet
og
er
ansat
ved
Mindpass
som
forskningsmedarbejder
og
softwaredesigner
Rene
DePont
Christensen
er
ph
d
studerende
ved
IMADA
og
ansat
ved
Mindpass
som
forskningsmedarbejder
Fredag
d
9
3
kl
15
15
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
De
gamle
vinder
i
den
nye
økonomi
Den
nye
økonomi
styres
af
20
årige
med
ring
i
næsen
og
hestehale
Forkert
Spektakulære
startup
fiaskoer
har
flyttet
fokus
over
på
de
store
klassiske
virksomheder
som
vil
sætte
dagsordenen
i
de
nye
tider
De
etablerede
virksomheder
er
blevet
mere
risiko
villige
og
eksperimenterer
med
et
stigende
antal
nye
forretningsideer
At
udvikle
en
ide
fra
koncept
til
en
bæredygtig
business
er
imidlertid
ikke
nemt
For
at
lykkes
i
den
nye
økonomi
må
de
klassiske
virksomheder
forcere
et
par
vigtige
barrierer
ikke
mindst
den
kulturelle
Til
denne
BuzzTalk
vil
vi
diskutere
hvordan
de
mest
succesfulde
virksomheder
skaber
nye
businesses
Vi
vil
kigge
på
case
eksempler
og
diskutere
de
muligheder
og
udfordringer
unge
entreprenører
møder
i
de
klassiske
virksomheder
Steen
Lønberg
Jørgensen
cand
polit
og
MBA
i
strategi
er
associate
i
McKinsey
Co
hvor
han
primært
beskæftiger
sig
med
business
building
i
både
store
virksomheder
og
start
ups
Fredag
d
23
3
kl
15
15
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Hvordan
opdager
man
et
hacker
angreb
Om
forskningsproblemer
ved
intrusion
detection
Internetsikkerhed
er
desværre
et
alt
for
velkendt
begreb
idag
fordi
den
ikke
findes
Problemet
med
internetsikkerhed
består
af
mange
forskellige
dele
En
vigtig
komponent
i
moderne
sikkerhedssystemer
er
at
kunne
opdage
indbrudsforsøg
hacker
angreb
imod
computere
via
internettet
Intrusion
Detection
systemer
består
af
software
agenter
som
forsøger
at
løse
denne
opgave
ved
at
overvåge
computere
og
netværkstrafik
Men
er
der
egentlig
sket
afgørende
fremskridt
i
Intrusion
Detection
teknologien
siden
Cliff
Stoll
i
1986
tilbragte
et
års
tid
i
en
sovepose
på
sit
kontor
for
at
fange
en
hacker
spion
Forbedring
af
Intrusion
Detection
teknologi
er
et
svært
men
presserende
problem
og
det
kræver
en
forskningsindsats
Derfor
har
Microsoft
Research
indledt
et
projekt
i
Intrusion
Detection
Foredraget
beskriver
bl
a
visionen
for
projektet
og
belyser
hvilke
forskningsproblemer
det
giver
anledning
til
Jakob
Rehof
er
forsker
i
software
productivity
tools
afdelingen
hos
Microsoft
Research
i
Redmond
Washington
Han
fik
sin
ph
d
grad
på
Datalogisk
Institut
ved
Københavns
Universitet
hvor
han
forskede
i
fundamentale
problemstillinger
i
forbindelse
med
programanalyse
og
avancerede
typesystemer
for
programmeringssprog
Han
flyttede
derefter
til
Microsoft
Research
hvor
han
bl
a
har
udviklet
skalerbare
programanalyser
for
store
programmer
såsom
MS
Word
Fredag
d
26
1
kl
15
15
lokale
0
10
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Evaluator
effekten
Et
ubehageligt
faktum
om
teknikker
til
test
af
brugervenlighed
Professionelle
IT
medarbejdere
har
brug
for
robuste
og
brugbare
teknikker
til
systematisk
at
forbedre
brugervenligheden
af
IT
systemer
Desværre
har
kognitiv
gennemgang
heuristisk
evaluering
og
tænke
højt
forsøg
tre
af
de
mest
anvendte
evaluerings
teknikker
vist
sig
at
lide
af
en
betydelig
evaluator
effekt
Forskellige
evaluatorer
der
evaluerer
den
samme
brugergrænseflade
finder
væsensforskellige
problemer
Vi
har
gennemgået
11
studier
af
evaluerings
teknikker
som
har
vist
at
evaluator
effekten
eksisterer
for
både
novicer
og
erfarne
evaluatorer
for
både
kosmetiske
og
alvorlige
problemer
for
både
identificering
og
scoring
af
problemer
og
for
både
simple
og
komplekse
systemer
I
oplægget
præsenteres
data
der
underbygger
påstanden
om
en
betydelig
evaluator
effekt
På
baggrund
af
disse
data
foreslås
metoder
til
at
minimere
graden
af
evaluator
effekten
Baggrundsmateriale
Hertzum
M
Jacobsen
N
E
2001
The
Evaluator
Effect
A
Chilling
Fact
About
Usability
Evaluation
Methods
To
appear
in
International
Journal
of
Human
Computer
Interaction
Niels
Ebbe
Jacobsen
er
Usability
Specialist
hos
Nokia
Mobile
Phones
og
har
en
ph
d
inden
for
Human
Computer
Interaction
Fredag
d
20
4
lokale
0
10
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Mobile
Internet
OBS
Aflyst
pga
sygdom
Inden
for
ganske
få
måneder
vil
det
være
almindeligt
at
store
virksomheder
tilbyder
deres
medarbejdere
office
løsninger
såsom
post
kalender
tidsregistrering
intranet
information
nyheder
og
betalingsløsninger
via
en
mobil
klient
I
min
præsentation
vil
jeg
diskutere
den
rivende
udvikling
inden
for
Business
to
Business
og
Business
to
Employee
mobilportaler
Jeg
vil
også
forsøge
at
give
et
bud
på
hvem
der
bliver
vinderne
inden
for
mobile
ASP
løsninger
IBM
opfandt
begrebet
e
business
og
lige
nu
er
IBM
i
fuld
gang
med
at
tage
førertrøjen
på
inden
for
mobile
e
business
Dette
ses
bl
a
ved
at
IBM
satser
8
mia
kroner
på
at
udvikle
løsninger
og
kompetencer
inden
for
det
mobile
Internet
i
Europa
i
disse
år
Kaare
Birketoft
er
uddannet
cand
merc
i
markedsføring
og
arbejder
som
Senior
Sales
Specialist
i
IBM
s
Mobile
Internet
Sales
Team
Kaare
Birketofts
ansvarsområde
er
salg
og
forretningsudvikling
i
mobil
operatør
segmentet
herunder
salg
og
forretningsudvikling
af
Business
to
Business
Business
to
Employee
og
Businesss
to
Consumer
mobilportaler
Senest
kommer
Kaare
fra
en
stilling
som
chefkonsulent
i
IBM
e
business
consulting
Kaare
Birketoft
har
opbygget
sin
viden
fra
Ericsson
hvor
han
bla
arbejdede
som
account
manager
for
Tele
Danmark
Fredag
d
2
3
kl
15
15
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
IBM
Research
Global
Technology
Outlook
Every
year
since
about
15
years
the
IBM
Research
Division
reviews
and
updates
a
document
referred
to
today
as
the
Global
Technology
Outlook
That
document
tries
to
understand
the
most
likely
developments
in
information
technologies
over
the
next
five
to
ten
years
and
their
probable
technical
impact
on
the
industry
and
the
society
at
large
Though
this
exercise
failed
to
predict
some
technical
developments
over
its
lifetime
in
retrospect
it
has
been
amazingly
accurate
The
presentation
summarizes
the
learnings
of
the
2000
GTO
which
led
to
five
key
observations
1
Whether
in
processing
storage
or
communication
capacity
there
is
no
significant
growth
slow
down
in
view
for
the
next
five
to
ten
years
and
size
cost
and
consumption
should
continue
to
decrease
at
their
historical
rates
2
Given
this
continuing
explosion
in
capacity
and
reduction
in
cost
size
and
consumption
computing
will
invade
every
walk
of
life
Not
only
will
it
invade
our
offices
homes
cars
and
pockets
but
it
will
even
invade
all
familiar
places
and
objects
around
us
Everything
will
become
intelligent
and
be
on
line
so
that
the
whole
physical
world
will
be
mirrored
by
a
digital
image
in
the
cyberworld
3
Given
how
complex
the
management
of
our
IT
infrastructure
already
is
today
the
challenge
will
only
get
bigger
in
the
world
depicted
above
While
large
enterprises
and
institutions
may
continue
to
operate
their
own
infrastructure
and
connect
it
to
the
public
Internet
most
smaller
businesses
and
all
private
users
will
no
longer
be
able
to
manage
their
own
systems
Increasingly
they
will
rely
on
intelligent
infrastructure
support
rented
from
some
service
provider
The
rented
service
will
include
all
kinds
of
management
and
support
function
making
the
life
and
the
job
of
the
end
user
or
application
provider
as
simple
as
possible
letting
it
concentrate
on
its
core
business
while
out
sourcing
the
complete
maintenance
and
operation
of
its
IT
4
This
will
also
concern
software
which
will
less
and
less
be
developed
in
house
or
bought
but
instead
be
rented
in
the
form
of
pluggable
components
with
standardized
interfaces
to
execute
every
possible
business
process
or
productivity
application
5
Last
but
not
least
in
this
fast
paced
and
competitve
world
it
will
be
vital
for
every
enterprise
to
optimize
its
operation
as
much
as
it
can
This
will
entail
tracking
information
as
closely
as
possible
to
be
able
to
react
immediately
to
changing
conditions
and
evolving
markets
Such
optimization
will
require
massive
use
of
deep
computing
optimization
kernels
data
mining
searching
and
pattern
recognition
techniques
simulation
and
vizualization
tools
etc
All
these
trends
will
be
discussed
specifically
from
the
venture
point
of
a
finance
organization
trying
to
understand
what
it
will
mean
to
conduct
business
in
this
new
century
V
Dr
Phillippe
Janson
VP
IBM
Academy
of
Technology
IBM
Zurich
Research
Laboratory
Fredag
d
16
3
kl
15
15
lokale
0
10
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
5
tips
til
at
undgå
IT
fiasko
I
1975
skrev
Frederic
P
Brooks
sin
klassiske
bog
The
Mythical
Man
Month
i
et
forsøg
på
at
analysere
problemerne
i
et
tidligt
IT
projekt
For
nylig
viste
rapporten
IT
i
Praksis
2000
fra
PLS
Rambøll
Management
at
to
trediedele
af
alle
IT
kunder
i
det
offentlige
mener
at
de
IT
systemer
de
får
leveret
er
fejlbehæftede
bliver
afleveret
for
sent
og
har
utilfredsstillende
funktionalitet
Er
vi
virkelig
ikke
blevet
bedre
i
løbet
af
25
år
I
foredraget
vil
jeg
komme
ind
på
nogle
typiske
problemer
specifikt
vedrørende
forholdet
mellem
leverandør
og
kunde
i
IT
projekter
samt
komme
med
5
ideer
til
hvordan
man
undgår
dem
Fredag
d
9
2
kl
15
15
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
The
problematic
of
using
IT
for
pedagogic
purposes
The
reality
behind
the
rhetoric
exploring
IT
use
in
UK
schools
OBS
Aflyst
pga
sygdom
Denne
BuzzTalk
er
desværre
aflyst
da
Deryn
Watson
er
blevet
syg
og
ikke
kan
komme
Despite
concerted
national
efforts
to
promote
the
use
of
IT
in
education
it
is
clear
from
government
statistics
and
research
reports
both
in
the
UK
and
elsewhere
that
the
impact
of
IT
on
education
is
a
resolutely
disappointing
one
Why
This
paper
will
explore
issues
that
have
emerged
from
research
to
explain
the
reality
behind
the
rhetoric
and
proposes
that
change
will
only
happen
if
we
attempt
to
understand
more
fully
the
problematic
of
using
IT
for
pedagogic
purposes
Professor
Deryn
Watson
from
the
School
of
Education
Kings
College
London
has
researched
the
area
of
IT
and
Learning
for
the
past
20
years
Deryn
Watson
s
current
research
interests
include
issues
which
influence
the
take
up
and
use
of
IT
in
schools
national
and
institutional
policies
and
practices
for
IT
within
a
socially
critical
frame
on
innovation
and
change
A
related
growing
interest
is
the
relationships
between
professionals
professional
development
and
change
Deryn
Watson
is
also
active
in
the
12
International
Federation
for
Information
Processing
IFIP
She
is
a
member
of
the
International
Programme
Commitee
for
the
conference
13
Networking
the
Learners
which
takes
place
in
the
Bella
Centre
in
Copenhagen
29
July
3
August
2001
Friday
23
2
room
0
19
Glentevej
65
2400
Copenhagen
NV
Free
booking
14
buzztalk
it
c
dk
15
Om
BuzzTalks
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
XML
Visionen
XML
er
et
fælles
meta
sprog
til
repræsentation
af
struktureret
data
der
primært
sigter
mod
at
bruges
til
Web
dokumenter
men
også
spås
en
fremtid
inden
for
databaser
Dette
foredrag
vil
præsentere
den
såkaldte
XML
vision
der
består
af
en
samling
relaterede
teknologier
og
værktøjer
til
definition
og
brug
af
specifikke
XML
sprog
Denne
vision
er
under
stadig
udvikling
og
modning
så
foredraget
vil
også
skitsere
hvilke
teknologier
der
er
på
plads
hvilke
der
er
under
debat
og
hvilke
der
knap
nok
er
tænkt
på
endnu
v
Ph
D
Michael
I
Schwartzbach
Lektor
Århus
Universitet
Fredag
d
30
3
kl
15
15
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
12
buzztalk
it
c
dk
13
Om
BuzzTalks
Se
slides
fra
foredraget
14
her
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Om
foredragsrækken
BuzzTalks
4
Forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Superchannel
og
Karlskrona2
Relationel
kunst
på
Internettet
Den
succesfulde
kunstnergruppe
Superflex
har
gjort
sig
bemærket
med
en
højst
original
måde
at
bruge
Internettet
på
som
medium
for
deres
såkaldte
relationelle
kunst
Gennem
to
projekter
Karlskrona2
og
Superchannel
har
gruppen
benyttet
sig
strategisk
af
Internettet
for
at
opfylde
målet
for
deres
kunstneriske
arbejde
at
skabe
nye
forbindelser
relationer
mellem
mennesker
og
på
den
måde
at
få
ting
til
at
ske
ting
som
kan
have
stor
betydning
for
mennesker
og
samfund
og
som
måske
ellers
ikke
ville
kunne
lade
sig
gøre
Karlskrona2
er
en
geografisk
3D
MUD
baseret
på
en
digital
model
af
byen
Karlskrona
i
Blekinge
Sverige
Formålet
med
Karlskrona2
er
at
etablere
et
fri
rum
free
space
hvor
især
lokale
borgere
kan
få
mulighed
for
at
diskutere
byens
fremtidige
udseende
ved
at
opbygge
og
ændre
på
den
digitale
model
Superchannel
er
en
kommunikationsplatform
baseret
på
streaming
media
chat
et
studie
og
en
html
side
Superchannel
studiet
kan
være
et
kunstgalleri
og
dermed
benytter
gruppen
sig
af
kunstverdenen
til
at
iscenesætte
en
demokratisk
tilgang
til
Internettets
inventar
af
medier
Men
Superchannel
studiet
kan
i
princippet
etableres
et
hvilket
som
helst
sted
med
internet
adgang
og
på
den
måde
er
avantgarde
gruppen
Superflex
med
til
at
få
kunsten
ud
til
mennesker
i
deres
hverdagsliv
og
verden
Denne
BuzzTalk
vil
tage
form
som
et
uformel
præsentation
og
diskussion
af
Superflex
arbejde
herunder
samarbejdet
med
Troels
Degn
Johansson
i
forbindelse
med
hans
ph
d
projekt
om
web
baseret
visualisering
af
byrum
og
landskaber
i
offentlig
planlægningsinformation
Ud
over
at
være
ekstern
lektor
ved
DKM
linien
på
IT
højskolen
i
København
er
Troels
ph
d
studerende
ved
afdelingen
for
by
og
landsplanlægning
ved
Forskningscenter
for
Skov
Landskab
Miljø
og
Energiministeriet
Superflex
har
base
i
København
Se
nærmere
på
12
www
superflex
dk
Fredag
d
6
4
kl
15
15
lokale
0
19
Glentevej
65
2400
København
NV
Tilmelding
13
buzztalk
it
c
dk
14
Om
BuzzTalks
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Erhvervsliv
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
INT
Seminarer
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
13
Efterår
2000
14
Forår
2000
inter
menu
bund
gif
Internetteknologiseminarer
Internetteknologi
seminarer
er
åbne
for
alle
Seminarerne
er
rettet
mod
studerende
på
Internetteknologilinien
med
det
formål
at
give
de
studerende
indblik
i
aktuel
forskning
eller
teknologi
indenfor
internetteknologi
Planlagte
seminarer
i
forårssemesteret
2001
Uge
Dato
Lokale
Tid
Emne
Foredragsholder
5
30
1
TBA
13
00
14
00
15
Opbygning
af
e
markedspladser
ved
hjælp
af
robotteknologi
Morten
Helles
16
Kapow
19
8
5
2
03
10
00
11
00
17
Introduction
to
Smart
Cards
Peter
Aage
18
GemPlus
19
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
20
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Studieleder
12
Mere
om
INT
inter
menu
bund
gif
Internetteknologi
Kandidater
i
Internetteknologi
vil
have
en
grundlæggende
viden
om
de
teknologier
der
tilsammen
udgør
internet
og
kan
udvikle
driftssikre
og
effektive
internetprogrammer
Uddannelsen
består
af
tre
fagområder
Netværksteknologi
internetprogrammel
og
internet
i
organisationer
Netværksteknologi
indeholder
opbygning
og
organisering
af
netværk
netværksprotokoller
fejltolerance
og
datasikkerhed
Herigennem
opnår
kandidaten
indsigt
i
netværkets
basale
funktioner
sikkerhedsrisici
og
teknikker
til
sikring
mod
uautoriseret
adgang
Internetprogrammel
giver
indsigt
i
internetprogrammel
aktuelle
teknologier
og
værktøjer
og
omhandler
parallelle
og
mobile
systemer
distribueret
databehandling
databaser
indlejrede
og
tidstro
systemer
operativsystemer
algoritmer
og
datastrukturer
korrekthed
og
pålidelighed
Internet
i
organisationer
beskæftiger
sig
med
IT
i
geografisk
spredte
organisationer
interaktionsdesign
og
økonomiske
og
organisatoriske
aspekter
af
intra
og
internet
samt
giver
indsigt
i
nye
samarbejdsformer
services
og
produkter
Kandidatlinien
udbydes
i
samarbejde
med
Danmarks
Tekniske
Universitet
og
Københavns
Universitet
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Studieleder
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Thomas
T
Hildebrandt
Med
til
at
sætte
dagsordenen
Studieleder
Thomas
Hildebrandt
Internettet
er
unikt
fordi
det
gør
datalogiske
problemstillinger
meget
mere
synlige
og
relevante
for
den
almindelige
bruger
F
eks
er
net
surfere
afhængige
af
semantik
og
fortolkning
hver
gang
de
får
vist
en
ny
webside
Og
de
hurtigste
og
smarteste
søgemaskiner
udnytter
avancerede
algoritmer
og
datastrukturer
siger
forskningsadjunkt
Thomas
Troels
Hildebrandt
som
er
leder
af
Internetteknologi
linjen
på
IT
højskolen
Teknologien
udvikler
og
ændrer
sig
med
stor
hast
Derfor
er
det
vigtigt
at
en
kandidat
i
internetteknologi
også
forstår
de
bagvedliggende
og
varige
principper
for
de
teknologier
der
tilsammen
udgør
internettet
Målet
med
uddannelsen
er
netop
at
uddanne
kandidater
som
er
i
stand
til
selv
at
udvikle
teknologien
og
bruge
den
i
nye
sammenhænge
så
vi
ikke
bare
bliver
passive
bruger
der
overlader
det
til
andre
at
sætte
dagsordenen
for
internettet
Det
spændende
ved
IT
højskolen
er
at
de
studerende
har
vidt
forskellige
faglige
baggrunde
Inden
for
Internetteknologi
linjen
har
mange
af
de
studerende
en
teknisk
baggrund
men
der
er
også
studerende
som
har
læst
religion
historie
og
musik
Det
gælder
om
at
de
husker
og
udnytter
den
faglighed
de
kom
med
De
studerende
kan
bruge
deres
IT
overbygning
til
at
bringe
nye
ideer
til
virkelighed
inden
for
deres
eget
fag
F
eks
lavede
en
studerende
som
før
havde
læst
musik
projekt
om
et
slags
on
line
play
room
hvor
musikere
fra
hele
verden
kunne
spille
sammen
i
real
time
Thomas
Hildebrandt
forventer
at
de
studerende
holder
sig
grundigt
orienteret
om
hvad
der
foregår
på
IT
området
f
eks
via
dagspressen
og
de
hyppige
forsknings
og
virksomhedsforedrag
på
IT
højskolen
Hvis
man
vil
være
med
til
at
præge
Internet
området
i
fremtiden
kræver
det
at
man
har
øje
for
hvilke
forventinger
f
eks
erhvervslivet
har
til
området
hvilke
samfundsmæssige
tendenser
som
kan
præge
udviklingen
osv
Vi
skal
ved
hjælp
af
uddannelse
forskning
og
et
samarbejde
med
erhvervslivet
være
med
til
at
sætte
dagsordenen
på
Internet
området
intet
mindre
Kort
om
Thomas
Troels
Hildebrandt
28
år
uddannet
datalog
fra
Århus
Universitet
i
1997
Forskningsområde
Semantik
Kategoriteori
Parallelle
og
Mobile
systemer
1998
Labaratory
for
Foundations
of
Computer
Science
University
of
Edinburgh
Kortere
ophold
på
McGill
University
Montreal
1999
Ph
d
i
datalogi
fra
Aarhus
Universitet
BRICS
grundforskningscenteret
Siden
1999
ansat
som
forskningsadjunkt
ved
IT
højskolen
tilknyttet
RCES
forskningsprojektet
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Mere
om
INT
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Studiet
13
Relevante
kæder
14
INT
Seminarer
15
Projekter
inter
menu
bund
gif
Internetteknologilinien
Internetteknologilinien
tilbyder
en
kandidatgrad
cand
it
internetteknologi
som
et
2
årigt
fuldtidsstudium
og
en
Mastergrad
MITI
som
et
3
årigt
deltidsstudium
Ved
at
følge
henvisningerne
herfra
siden
kan
du
læse
mere
om
studiet
på
internetteknologilinien
Den
generelle
information
kan
også
findes
samlet
i
vores
16
uddannelseskatalog
Studiet
Hvordan
ser
et
typisk
semester
ud
på
Internetteknologi
Hvordan
er
uddannelsen
struktureret
Hvilke
kurser
kan
jeg
vælge
og
hvilke
kurser
er
centrale
for
internetteknologilinien
Hvilke
studieforløb
anbefales
og
hvilke
muligheder
er
der
for
at
specialisere
sig
Hvor
finder
jeg
de
studerende
under
studiet
og
efter
studiet
Relevante
kæder
Dokumentation
for
programmeringssprog
protokoller
formateringssprog
og
meget
mere
INT
Seminarer
Seminarrække
rettet
mod
studerende
på
internetteknologi
Projekter
Hvordan
konstrueres
en
søgemaskine
Hvordan
programmeres
et
SIM
kort
Hvordan
får
jeg
en
målestation
på
internettet
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
Studiet
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
13
Fagområderne
14
Semesterets
gang
15
Struktur
16
Kernekurser
17
Specialisering
18
Anbefalede
forløb
19
De
studerende
20
Jobmuligheder
inter
menu
bund
gif
Studiet
på
Internetteknologilinien
For
at
kunne
se
fremad
og
udnytte
alle
internettets
muligheder
er
det
nødvendigt
at
have
folk
med
dyb
forståelse
for
dets
underliggende
teknologier
og
varige
naturvidenskabelige
begreber
Personer
der
forstår
principperne
har
færdighederne
og
kan
anvende
dem
innovativt
til
nye
produkter
og
services
Uddannelserne
i
internetteknologi
har
som
mål
at
give
dig
de
rette
kvalifikationer
til
at
tage
udfordringerne
op
Fagligt
spænder
internetteknologi
fra
det
laveste
niveau
af
software
der
varetager
udvekslinger
af
datapakker
over
de
fysiske
ledninger
til
distribuerede
applikationer
der
muliggør
f
eks
samtidig
køb
af
flybilletter
fra
forskellige
steder
på
jorden
uden
at
den
samme
billet
sælges
to
gange
og
nye
måder
hvorpå
mennesker
effektivt
kan
kommunikere
og
samarbejde
Uddannelsen
i
internetteknologi
er
således
inddelt
i
følgende
fagområder
Netværksteknologi
internetprogrammel
og
internet
i
organisationer
Undervisningen
varetages
af
forskere
ansat
ved
IT
højskolen
forskere
fra
vores
to
partnere
Datalogisk
afdeling
ved
Københavns
Universitet
og
Danmarks
Tekniske
Universitet
eller
eksterne
lektorer
Alle
eksterne
lektorer
er
enten
ansat
ved
en
af
landets
øvrige
universiteter
eller
indenfor
IT
og
kommunikationsbranchen
21
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
Fagområderne
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Fagområderne
på
Internetteknologilinien
For
både
kandidat
og
masteruddannelsen
tegnes
liniens
profil
af
tre
fagområder
Det
første
er
netværksteknologi
der
omhandler
opbygning
og
organisering
af
netværk
netværksprotokoller
fejltolerance
og
datasikkerhed
Når
man
mestrer
netværksteknologi
forstår
man
et
netværks
basale
funktioner
hvilke
komponenter
der
indgår
hvordan
datastrømme
deles
op
i
pakker
hvordan
pakker
er
organiseret
og
routes
rundt
fra
et
vilkårligt
startpunkt
til
et
vilkårligt
målpunkt
hvordan
der
korrigeres
for
fysiske
fejl
osv
Dertil
kommer
kendskab
til
kryptografiske
teknikker
og
tidsaktuelle
standarder
herunder
digitale
signaturer
elektroniske
betalinger
og
krypteret
kommunikation
en
forståelse
af
formerne
af
sikkerhedsrisici
og
deres
potentielle
konsekvenser
herunder
virus
angreb
web
sikkerhed
og
sikker
håndtering
af
backups
beherskelse
af
teknikker
til
sikring
mod
uautoriseret
adgang
i
netværk
kendskab
til
best
practice
sikkerhedsprocedurer
i
organisationer
og
de
vigtigste
internationale
organer
for
varetagelse
af
datasikkerhed
Det
andet
fagområde
er
internetprogrammel
Fokus
for
internetprogrammel
bevæger
sig
fra
netværket
ud
mod
de
enheder
som
skal
udnytte
nettet
Målet
er
at
forstå
de
grundlæggende
problemstillinger
i
konstruktionen
af
internetprogrammel
og
få
færdigheder
i
tidens
aktuelle
teknologier
og
værktøjer
hvorfor
mange
af
kurserne
deles
med
linien
for
sofwareudvikling
Fagområderne
er
parallelle
systemer
distribueret
databehandling
databaser
indlejrede
og
tidstro
systemer
operativsystemer
algoritmer
og
datastrukturer
samt
programmers
korrekthed
og
pålidelighed
Det
sidste
fagområde
internet
i
organisationer
omhandler
IT
til
distribuerede
organisationer
interaktionsdesign
og
økonomiske
og
organisatoriske
aspekter
af
anvendelser
af
intra
og
internet
Med
et
organisationsperspektiv
vil
man
kunne
se
hvilke
muligheder
internettet
giver
for
nye
samarbejdsformer
services
og
produkter
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
Semesterets
gang
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Semesterets
gang
Et
normalt
semester
indeholder
som
på
de
øvrige
linier
på
IT
højskolen
en
12
ugers
kursusperiode
efterfulgt
af
en
4
ugers
projektperiode
I
kursusperioden
følger
den
studerende
tre
kurser
på
kandidatstudiet
og
to
kurser
på
masterstudiet
Hvert
kursus
afvikles
normalt
på
een
ugedag
der
kan
bruges
forskelligt
afhængigt
af
kurset
Typisk
vil
der
være
4
timer
med
deltagelse
af
underviseren
For
eksempel
kan
et
kursus
starte
kl
9
med
gennemgang
af
sidste
uges
afleverede
og
nu
rettede
opgaver
efterfulgt
af
to
timers
forelæsning
der
afsluttes
ved
frokost
Efter
frokost
kan
der
så
være
to
timers
selvstændig
opgavearbejde
med
fælles
gennemgang
fra
klokken
15
til
17
Det
forventes
at
den
studerende
arbejder
selvstændigt
med
faget
de
resterende
ugedage
og
sørger
for
at
få
alment
dannende
viden
for
eksempel
ved
læsning
af
relevant
faglitteratur
og
deltagelse
i
relevante
seminarer
på
IT
højskolen
f
eks
de
ugentlige
Buzz
talks
Projekter
i
4
ugersperioden
udarbejdes
i
grupper
på
2
5
studerende
og
vil
typisk
bestå
i
en
større
konstruktionsopgave
som
kombinerer
viden
fra
to
eller
flere
forudgående
kurser
Der
er
stor
mulighed
for
at
følge
kurser
sammen
med
studerende
fra
andre
uddannelseslinier
Det
gør
det
nemt
at
danne
tværfaglige
projektgrupper
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
Struktur
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Studiets
struktur
Kandidatuddannelsen
Kandidatuddannelsen
på
IT
højskolen
er
et
2
årigt
fuldtidsstudium
indeholdende
studieaktiviteter
svarende
til
120
ECTS
point
normalt
fordelt
ligeligt
med
30
ECTS
point
på
hvert
af
de
fire
semestre
For
at
opnå
liniebetegnelsen
internetteknologi
på
kandidatuddannelsen
i
informationsteknologi
skal
følgende
krav
opfyldes
1
Fagområdet
netværksteknologi
skal
dækkes
med
beståede
studieaktiviteter
indenfor
fagområdets
kerne
svarende
til
minimum
15
ECTS
2
Fagområdet
internetprogrammel
skal
dækkes
med
beståede
studieaktiviteter
indenfor
fagområdets
kerne
svarende
til
minimum
15
ECTS
3
Fagområdet
internet
i
organisationer
skal
dækkes
med
med
beståede
studieaktiviteter
indenfor
fagområdets
kerne
svarende
til
minimum
7
5
ECTS
4
Endelig
kræves
en
specialeforberedende
studieaktivitet
indenfor
uddannelseslinien
svarende
til
minimum
7
5
ECTS
point
og
et
afsluttende
speciale
af
et
semester
varighed
30
ECTS
point
indenfor
uddannelsesliniens
formål
og
fagområder
En
studieaktivitet
kan
både
være
et
kursus
normalt
i
12
ugersperioden
eller
et
projekt
normalt
i
4
ugersperioden
Udover
de
ovenstående
studieaktiviteter
kræves
at
der
i
de
resterende
studieaktiviteter
indgår
kursusaktiviteter
der
blot
skal
ligge
inden
for
cand
it
uddannelsens
formål
svarende
til
minimum
7
5
ECTS
point
Masteruddannelsen
Masteruddannelsen
på
IT
højskolen
er
et
3
årigt
deltidsstudium
indeholdende
studieaktiviteter
svarende
til
90
ECTS
point
normalt
fordelt
ligeligt
med
15
ECTS
point
på
hvert
af
de
seks
semestre
Følgende
sammensætningskrav
skal
opfyldes
1
Fagområdet
netværksteknologi
skal
dækkes
med
beståede
studieaktiviteter
indenfor
fagområdets
kerne
svarende
til
minimum
15
ECTS
2
Fagområderne
internetprogrammel
og
internet
i
organisationer
skal
samlet
dækkes
med
beståede
studieaktiviteter
indenfor
fagområdets
kerne
svarende
til
minimum
15
ECTS
Det
anbefales
at
følge
eet
kursus
indenfor
fagområdet
internet
i
organisationer
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
Kernekurser
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Kernekurser
på
Internetteknologi
foråret
2001
Følgende
kurser
med
forbehold
for
ændringer
er
planlagt
udbudt
foråret
2001
indenfor
de
tre
fagområders
kerne
Alle
kurserne
har
et
omfang
af
7
5
ECTS
point
Netværksteknologi
14
Netværk
og
protokoller
15
Datasikkerhed
Internetprogrammel
16
Databasesystemer
17
Internetprogrammering
18
Parallelle
systemer
Operativsystemer
og
maskinnær
programmering
nyt
19
Introduktion
til
algoritmer
og
datastrukturer
20
Funktionel
design
og
programmering
Internet
i
Organisationer
21
IT
støttet
samarbejde
og
IT
til
distribuerede
organisationer
22
IT
projektledelse
23
Internetjura
Flere
af
kurserne
indgår
også
som
kernekurser
for
fagområder
på
linierne
Multimedieteknologi
og
Softwareudvikling
og
et
enkelt
udbydes
af
linien
for
e
handel
De
fremhævede
kurser
anses
for
centrale
kurser
på
Internetteknologilinien
der
anbefales
for
alle
Du
kan
finde
yderligere
information
om
alle
kurserne
herunder
forudsætningskrav
i
24
kursusbogen
25
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
26
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
Specialisering
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Specialeforberedende
kurser
på
internetteknologi
foråret
2001
På
kandidatuddannelsen
kræves
en
specialeforberedende
studieaktivitet
indenfor
uddannelseslinien
svarende
til
minimum
7
5
ECTS
point
Følgende
kurser
med
forbehold
for
ændringer
er
planlagt
udbudt
foråret
2001
som
specialeforberedende
på
Internetteknologilinien
Alle
kurserne
har
et
omfang
af
7
5
ECTS
point
Fejlfinding
Test
og
Validering
nyt
Mobilitetssoftware
nyt
4
ugers
projektkursus
i
14
Apparatsoftware
individuel
vurdering
Elements
of
Cryptography
and
Information
Theory
nyt
15
Avancerede
Algoritmer
Datastrukturer
Undervisningen
i
de
specialeforberende
kurser
varetages
af
forskere
ansat
i
forskningsafdelingen
for
Teori
eller
forskningsafdelingen
for
Innovation
under
IT
højskolen
og
alle
emner
er
centrale
for
de
enkelte
underviseres
forskning
Du
vil
snart
kunne
finde
yderligere
information
om
alle
kurserne
herunder
forudsætningskrav
i
kursusbogen
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
Anbefalede
forløb
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Anbefalede
studieforløb
Kandidatstudiet
Det
anbefales
at
kurserne
Databasesystemer
Netværk
og
Protokoller
Internetprogrammering
Datasikkerhed
Parallelle
Systemer
og
IT
støttet
samarbejde
indgår
i
studiet
Det
anbefalede
første
semester
for
henholdsvis
studerende
uden
programmeringserfaring
UP
og
studerende
med
programmeringserfaring
MP
ser
ud
som
følger
1
semester
UP
Grundlæggende
Programmering
Databasesystemer
og
Netværk
og
Protokoller
MP
Internetprogrammering
Databasesystemer
og
Netværk
og
Protokoller
Masterstudiet
Det
anbefalede
studieforløb
for
henholdsvis
studerende
uden
programmeringserfaring
UP
og
studerende
med
programmeringserfaring
MP
ser
ud
som
følger
1
semester
UP
Grundlæggende
Programmering
og
Netværk
og
Protokoller
MP
Internetprogrammering
og
Netværk
og
Protokoller
2
semester
UP
12
ugers
erhvervsrelateret
projektforløb
7
5
ECTS
Internetprogrammering
MP
12
ugers
erhvervsrelateret
projektforløb
7
5
ECTS
IT
støttet
samarbejde
3
semester
UP
og
MP
Databasesystemer
Datasikkerhed
4
semester
UP
og
MP
12
ugers
projektforløb
7
5
ECTS
der
anbefales
udfærdiget
i
samarbejde
med
en
erhvervsvirksomhed
Parallelle
Systemer
5
semester
UP
IT
støttet
samarbejde
og
enten
Fejlfinding
Test
og
Validering
eller
Mobilitetssoftware
MP
Fejlfinding
Test
og
Validering
og
Mobilitetssoftware
6
semester
Projektarbejde
15
ECTS
Bør
udfærdiges
i
samarabejde
med
en
erhvervsvirksomhed
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
De
studerende
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
De
studerende
Internetteknologilinien
INT
optager
hvert
semester
mellem
20
og
30
nye
studerende
Linjen
startede
i
foråret
2000
og
i
februar
2001
vil
der
være
omkring
80
INT
studerende
Inden
for
Internetteknologi
linjen
har
mange
af
de
studerende
en
teknisk
baggrund
men
der
er
også
studerende
som
har
læst
f
eks
religion
filosofi
historie
og
musik
Det
gælder
om
at
huske
og
udnytte
den
faglighed
man
kommer
med
De
studerende
har
indflydelse
på
studiet
gennem
lige
repræsentation
i
fagudvalg
og
studienævn
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
7
De
studerende
8
Stillinger
9
Aktiviteter
10
Home
11
Find
person
12
SiteMap
13
Intranet
14
English
15
Fagudvalg
inter
menu
bund
gif
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
7
De
studerende
8
Fagudvalg
9
Stillinger
10
Aktiviteter
11
Home
12
Find
person
13
SiteMap
14
Intranet
15
English
inter
menu
bund
gif
Fagudvalg
Fagudvalgene
på
de
enkelte
linier
fungerer
som
underudvalg
for
Studienævnet
De
er
de
studerendes
vigtigste
muligheder
for
at
få
indflydelse
på
og
indsigt
i
beslutningerne
omkring
deres
studie
Ved
valget
oktober
2000
blev
følgende
valgt
til
fagudvalget
for
Internetteknologi
Undervisere
Stephen
Alstrup
IT
C
Thomas
Hildebrandt
formand
linieleder
IT
C
Henrik
Hulgaard
supleant
IT
C
Hans
Henrik
Løvengreen
DTU
Studenter
Morten
Holm
Dennis
Jensen
Jose
Orellano
supleant
E2000
Nguyen
Vo
næstformand
E2000
Formanden
er
linieleder
for
uddannelseslinien
og
repræsenterer
sammen
med
næstformanden
linien
i
studienævnet
for
INT
SWU
MMT
og
DKM
også
kaldet
IT
C
studienævnet
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
Studiet
Jobmuligheder
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Erhvervsmuligheder
Erhvervsmuligheder
findes
blandt
andet
indenfor
udvikling
af
internetbaserede
produkter
drift
og
vedligeholdelse
af
netværk
udvikling
og
vedligeholdelse
af
distribuerede
applikationer
udvikling
af
mobile
applikationer
og
udvikling
af
apparatsoftware
Som
et
eksempel
vil
en
kandidat
forventes
at
kunne
have
kvalifikationerne
til
at
udvikle
et
system
med
en
elektronisk
tegnebog
så
man
kan
undgå
at
bruge
sit
kreditkort
hver
gang
der
skal
købes
noget
på
nettet
Et
andet
eksempel
er
at
en
kandidat
kan
medvirke
til
at
udvikle
software
til
mobiltelefoner
der
vil
gøre
det
muligt
at
modtage
avancerede
applikationer
der
kan
bruges
off
line
Et
tredje
eksempel
er
at
en
kandidat
kan
deltage
i
at
udvikle
programmel
til
interaktivt
TV
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
Relevante
kæder
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Internetværktøjer
med
mere
Nedenfor
kan
du
finde
kæder
til
information
om
en
række
internetværktøjer
formater
programmeringssprog
oversættere
og
meget
mere
Java
Programmeringssprog
13
Officiel
Sun
Java
Tutorial
Denne
tutorial
indeholder
en
række
forskellige
trails
om
en
række
Java
emner
For
eksempel
er
Getting
Started
et
Trail
Covering
the
Basics
14
Java
Development
Kit
for
Windows
and
Linux
Gratis
Java
udviklingsværktøjer
HTML
Formateringssprog
15
Netscape
s
HTML
Tag
Reference
book
JavaScript
Scriptingsprog
16
JavaScript
World
JavaScript
dokumentation
eksempler
og
tricks
17
JavaScript
Developer
Central
Dokumentation
fra
en
alliance
mellem
Sun
og
Netscape
Der
er
flere
dokumenter
om
Java
CORBA
XML
og
andre
teknologier
fra
forælder
siden
18
DevEdge
Online
XML
Formateringssprog
19
The
XML
Revolution
Anders
Møllers
og
Michael
I
Schwartzbachs
130
siders
on
line
transparentsamling
med
introduktion
og
overblik
over
XML
Namespaces
XLink
XPointer
XPath
DSD
XSLT
og
XML
QL
og
udvalgte
kæder
til
yderlige
information
PHP
MySQL
Web
programmeringssprog
SQL
relationsdatabase
20
PHP
MySQL
Tutorial
Der
er
flere
nyttige
informationskilder
på
21
Webmonkey
hjemmesiden
Bl
a
et
JavaScript
kilde
bibliotek
Wireless
Developer
Network
22
Wireless
Developer
Network
WAP
Wireless
Application
Protocol
WML
Wireless
Markup
Language
WML
Script
and
more
Bluetooth
Blåtand
ny
teknologi
for
trådløs
nærkommunikation
23
An
Introduction
to
Bluetooth
24
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
25
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
Projekter
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Projekter
på
Internetteknologi
Herfra
vil
du
kunne
finde
beskrivelser
af
projekter
der
er
specielt
tilknyttet
Internetteknologi
Studerende
fra
andre
linier
er
selvfølgelig
meget
velkomne
til
at
deltage
i
projekterne
13
Apparatsoftware
14
Søgemaskiner
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
Dokumenter
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
inter
menu
bund
gif
Dokumentoversigt
Generelt
om
præsentation
og
dataformater
HTML
Beregnet
til
preview
i
browser
Word
Word
fil
til
evt
redigering
og
udskrift
på
Microsoft
maskine
TeX
TeX
fil
til
evt
redigering
og
udskrift
på
Unix
Linux
maskine
PS
PostScript
fil
beregnet
til
udskrift
på
PostScript
printer
PDF
PDF
fil
beregnet
til
læsning
og
udskrift
via
PDF
viewer
Det
anbefales
som
hovedregel
at
downloade
PDF
eller
alternativt
PS
filer
Uddannelseskatalog
9
Word
og
som
10
PDF
Beskrivelse
af
uddannelser
udbudt
på
IT
C
i
foråret
2001
Kursusbog
11
Online
Virksomhedsregnskab
12
HTML
13
Word
14
PS
15
PDF
Virksomhedsregnskabet
som
aflagt
for
1999
IT
C
sitens
indholdssider
16
HTML
Alle
siderne
fra
denne
hjemmeside
samlet
i
et
dokument
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
SiteDump
Ansøgning
inter
vandret
gif
3
Uddannelser
4
Stillinger
5
Aktiviteter
6
Home
7
Personer
8
SiteMap
9
Intranet
10
English
Ansøgningsskema
til
optagelse
1
Personlige
oplysninger
CPR
nummer
Dag
Md
År
Lb
nr
Fornavn
e
Efternavn
Telefon
Vej
E
mail
Vej
Mobiltelefon
Postnr
By
Land
2
Statsborgerskab
Dansk
Andet
Land
3
Adgangsgivende
videregående
uddannelser
Afsluttet
bachelor
eller
kandidatuddannelse
Uddannelsens
titel
Uddannelsessted
Dato
påbegyndt
Dag
måned
år
Dato
bestået
Dag
måned
år
Gennemsnit
4
Prioriteringsoplysninger
Prioriteret
liste
over
ønskede
uddannelser
ved
IT
højskolen
Prioritet
Uddannelsens
kode
Uddannelsens
navn
1
2
3
4
5
6
Husk
Optagelse
på
Internet
og
Multimedieteknologi
kræver
matematik
på
A
niveau
eller
tilsvarende
Jeg
bekræfter
hermed
rigtigheden
af
de
afgivne
oplysninger
Dato
Underskrift
5
Personlige
oplysninger
CPR
nummer
Dag
Md
År
Lb
nr
Fornavn
e
Efternavn
6
Tidligere
optagelse
på
en
videregående
uddannelse
udover
de
i
punkt
3
nævnte
Uddannelsens
titel
Uddannelsessted
Dato
påbegyndt
Dag
måned
år
Dato
bestået
Dag
måned
år
Stadig
indskrevet
7
Erhvervserfaring
i
kronologisk
rækkefølge
Uddybende
kommentarer
kan
anføres
i
ansøgningsbrevet
Arbejdsgiver
Arbejdets
art
Fra
Dato
Til
Dato
Ugentlig
arbejdstid
8
Vurdering
af
egen
IT
erfaring
IT
erfaring
beskrives
bedst
som
Ingen
IT
erfaring
IT
på
brugerniveau
IT
på
avanceret
brugerniveau
IT
udvikler
specialist
Jeg
bekræfter
hermed
rigtigheden
af
de
afgivne
oplysninger
Dato
Underskrift
9
Personlige
oplysninger
CPR
nummer
Dag
Md
År
Lb
nr
Fornavn
e
Efternavn
10
Beståede
prøver
udover
de
i
punkt
3
og
6
nævnte
Type
beskrivelse
Uddannelsessted
Dato
påbegyndt
Dag
måned
år
Dato
bestået
Dag
måned
år
11
Andre
aktiviteter
herunder
udlandsophold
højskoleophold
organisatorisk
arbejde
e
lign
Institution
organisation
skole
Aktivitetens
navn
type
Fra
Dato
Til
Dato
12
Øvrige
bilag
Bilagsbeskrivelse
Jeg
bekræfter
hermed
rigtigheden
af
de
afgivne
oplysninger
Dato
Underskrift
11
USEMAP
inter
icon2top
gif
opdateret
18
05
2000
12
wwwadm
it
c
dk
1
IT
højskolen
2
SiteDump
Erklæring
inter
vandret
gif
3
Uddannelser
4
Stillinger
5
Aktiviteter
6
Home
7
Personer
8
SiteMap
9
Intranet
10
English
Erklæring
til
optagelse
Personlige
oplysninger
CPR
nummer
Dag
Md
År
Lb
nr
Fornavn
e
Efternavn
Undertegnede
agter
at
studere
på
fuld
tid
dvs
benytte
mindst
40
timer
per
uge
på
mine
studier
Dato
Underskrift
11
USEMAP
inter
icon2top
gif
opdateret
18
05
2000
12
wwwadm
it
c
dk
1
IT
højskolen
2
SiteDump
Vejledning
inter
vandret
gif
3
Uddannelser
4
Stillinger
5
Aktiviteter
6
Home
7
Personer
8
SiteMap
9
Intranet
10
English
Vejledning
til
ansøgningsskema
Sådan
søger
du
For
at
søge
om
optagelse
på
IT
højskolen
skal
du
gøre
følgende
Udfyld
ansøgningsskemaet
der
er
på
i
alt
tre
sider
Se
udfyldningsvejledning
nedenfor
Skriv
en
ansøgning
på
maksimalt
en
side
Ansøgningen
kan
indeholde
motivation
for
din
ansøgning
uddybende
beskrivelse
af
uddannelsesforløb
erhvervserfaring
og
lignende
Hvis
ansøgningen
indeholder
henvisninger
til
studierelevante
aktiviteter
skal
disse
ligeledes
anføres
i
ansøgningsskemaet
som
minimum
under
punkt
12
Øvrige
bilag
ellers
hvor
det
er
relevant
i
henhold
til
udfyldningsvejledningen
nedenfor
Hvis
du
søger
optagelse
på
et
kandidatstudium
kan
du
vælge
at
udfylde
den
frivillige
erklæring
vedrørende
forventet
studieaktivitet
Fremskaf
relevant
dokumentation
for
alle
afgivne
oplysninger
Se
dokumentationsvejledningen
nedenfor
Samtlige
sider
nummereres
fortløbende
og
antallet
af
sider
påføres
første
side
Fotokopi
r
ansøgningen
inklusive
bilag
Søger
du
flere
uddannelser
fotokopieres
i
samme
antal
dvs
søges
f
eks
3
uddannelser
tages
3
fotokopier
og
vedlægges
den
originale
ansøgning
altså
ialt
4
eksemplarer
Indsend
ansøgning
ansøgningsskema
og
dokumentation
i
en
A4
kuvert
til
IT
højskolen
i
København
Glentevej
67
2400
København
NV
Og
mærk
kuverten
Ansøgning
om
optagelse
på
IT
højskolen
Ansøgningen
skal
være
IT
højskolen
i
hænde
senest
torsdag
den
15
juni
2000
klokken
12
00
Ansøgninger
der
modtages
med
morgenposten
torsdag
den
15
juni
2000
vil
blive
accepteret
Hvis
du
ønsker
at
ændre
noget
ved
din
ansøgning
inden
ansøgningsfristens
udløb
indsendes
en
helt
ny
ansøgning
med
klar
markering
af
at
tidligere
indsendte
ansøgninger
annulleres
Dokumentationsvejledning
Alle
aktiviteter
der
anføres
i
ansøgningsskemaets
punkt
3
6
7
10
og
11
skal
dokumenteres
med
relevante
bilag
Eksamensbeviser
arbejdsgivererklæringer
o
lign
For
at
komme
i
betragtning
til
optagelse
på
IT
højskolen
skal
du
som
minimum
medsende
eksamensbevis
for
adgangsgivende
uddannelse
og
hvis
denne
ikke
er
afsluttet
endnu
en
bekræftelse
fra
din
uddannelsesinstitution
om
forventet
afslutningstidspunkt
Samtidig
vedlægges
seneste
karakterudskrift
Ansøgere
til
Masteruddannelsen
skal
desuden
dokumentere
minimum
2
års
erhvervserfaring
Dokumentation
for
andre
aktiviteter
er
ikke
obligatorisk
men
uden
den
relevante
dokumentation
vil
de
pågældende
aktiviteter
ikke
blive
taget
i
betragtning
ved
vurderingen
af
ansøgningen
For
bilag
gælder
Alle
bilag
skal
nævnes
på
ansøgningsskemaet
Som
minimum
under
punkt
12
Øvrige
bilag
ellers
hvor
det
er
relevant
i
henhold
til
udfyldningsvejledningen
nedenfor
Alle
bilag
der
ikke
er
originale
skal
være
bekræftet
kopi
Bekræftet
kopi
vil
sige
Der
skal
være
skrevet
på
hver
eneste
kopi
med
navn
adresse
og
dato
at
kopien
er
i
overensstemmelse
med
originalen
Bekræftelsen
skal
være
foretaget
af
to
uvildige
vidner
to
personer
der
ikke
er
i
nær
familie
eller
af
afgangsskole
uddannelsessted
eller
anden
offentlig
myndighed
Udfyldningsvejledning
til
skemaerne
1
Personlige
oplysninger
CPR
nummer
CPR
nummer
skal
udfyldes
korrekt
Hvis
du
har
et
CPR
nummer
anføres
dette
Ansøgere
uden
dansk
CPR
nummer
Hvis
du
ikke
har
et
dansk
CPR
nummer
skrives
dato
måned
og
år
for
din
fødselsdag
i
den
angivne
rækkefølge
i
de
seks
felter
før
stregen
I
de
første
3
felter
efter
stregen
skrives
de
to
første
bogstaver
i
dit
første
fornavn
efterfulgt
af
det
første
bogstav
i
dit
sidste
efternavn
I
den
sidste
rubrik
angives
dit
køn
med
1
for
mand
og
2
for
kvinde
En
mand
uden
dansk
CPR
nummer
ved
navn
Claes
Anders
Fredrik
Moren
født
den
31
august
1975
skal
skrive
310875
CLM1
Adresse
Adressen
skal
være
en
fuldstændig
angivelse
af
gade
vej
husnr
etage
værelsesnr
land
postnr
og
postdistrikt
by
For
logerende
angives
værtens
eller
kollegiets
navn
Hvis
du
kan
kontaktes
over
telefon
og
eller
e
mail
skrives
nummer
og
eller
e
mail
på
Adresse
telefonnummer
og
e
mail
er
vigtige
fordi
det
kan
blive
nødvendigt
at
kontakte
dig
i
den
periode
hvor
ansøgningerne
behandles
2
Statsborgerskab
Hvis
du
er
dansk
statsborger
angives
dette
med
x
Er
du
ikke
dansk
statsborger
angiver
du
i
hvilket
land
du
er
statsborger
3
Adgangsgivende
videregående
uddannelse
Her
angives
den
adgangsgivende
videregående
uddannelse
på
baggrund
af
hvilke
du
søger
om
optagelse
på
IT
højskolen
Følgende
uddannelser
er
adgangsgivende
til
Master
og
kandidatuddannelserne
på
IT
højskolen
Bacheloruddannelser
Kandidatuddannelser
Har
du
både
en
bachelor
og
kandidatuddannelse
angives
kandidatuddannelsen
Bacheloruddannelsen
skal
i
dette
tilfælde
angives
under
punkt
6
Den
adgangsgivende
uddannelse
anføres
med
officiel
titel
navn
på
uddannelsesstedet
dato
for
uddannelsens
start
og
beståelsesdato
samt
opnået
gennemsnit
Har
du
endnu
ikke
afsluttet
din
adgangsgivende
uddannelse
men
forventer
at
afslutte
uddannelsen
inden
studiestart
på
IT
højskolen
skal
du
bede
din
uddannelsesinstitution
om
en
skriftlig
bekræftelse
på
forventet
afslutningstidspunkt
Samtidig
vedlægges
seneste
karakterudskrift
Udenlandske
eksamensbeviser
som
ikke
er
skandinaviske
eller
engelsksprogede
skal
være
oversat
til
dansk
eller
engelsk
af
uddannelsesinstitutionen
en
tolk
eller
en
offentlig
myndighed
Den
anførte
uddannelse
skal
dokumenteres
med
bekræftet
kopi
4
Prioriteringsoplysninger
Prioriteringsskemaet
bruges
til
at
angive
hvilke
uddannelser
du
søger
ind
på
Skriv
den
uddannelse
du
helst
vil
ind
på
ud
for
prioritet
1
Skriv
den
uddannelse
du
helst
vil
ind
på
hvis
du
ikke
kommer
ind
på
din
første
prioritet
ud
for
prioritet
2
Forsæt
med
op
til
6
prioriteter
For
hver
prioritet
anføres
uddannelsens
kode
og
navn
Vær
opmærksom
på
at
hvis
du
søger
ind
på
kandidatuddannelserne
i
Multimedieteknologi
og
Internetteknologi
kræves
gennemført
matematik
svarende
til
mindst
gymnasiets
matematik
på
A
niveau
Dette
anføres
under
punkt
10
i
skemaet
og
skal
dokumenteres
f
eks
attesteret
kopi
af
studentereksamensbevis
Du
skal
fotokopiere
din
ansøgning
og
vedlægge
kopien
Søger
du
flere
uddannelser
skal
du
vedlægge
kopier
i
samme
antal
Søges
f
eks
3
uddannelser
tages
3
kopier
af
ansøgningen
og
bilag
og
vedlægges
den
originale
ansøgning
altså
ialt
4
eksemplarer
Fotokopir
ansøgningen
inklusive
bilag
Søger
du
flere
uddannelser
fotokopieres
i
samme
antal
dvs
søges
f
eks
3
uddannelser
tages
3
fotokopier
og
vedlægges
den
originale
ansøgning
Der
kan
søges
optagelse
på
følgende
uddannelser
Uddannelses
type
Uddannelsens
kode
Uddannelsens
navn
Kandidat
K
DKM
Kandidat
i
Informationsteknologi
Design
kommunikation
og
medier
Kandidat
K
EH
Kandidat
i
Informationsteknologi
Elektronisk
handel
Kandidat
K
INT
Kandidat
i
Informationsteknologi
Internetteknologi
Kandidat
K
MMT
Kandidat
i
Informationsteknologi
Multimedieteknologi
Kandidat
K
SWU
Kandidat
i
Informationsteknologi
Softwareudvikling
Kandidat
K
TIT
Kandidat
i
Informationsteknologi
Tværfaglig
IT
Master
M
DKM
Master
i
Informationsteknologi
Design
kommunikation
og
medier
Master
M
INT
Master
i
Informationsteknologi
Internetteknologi
Master
M
MMT
Master
i
Informationsteknologi
Multimedieteknologi
Master
M
SWU
Master
i
Informationsteknologi
Softwareudvikling
5
Personlige
oplysninger
Angives
igen
af
sikkerhedshensyn
Se
vejledning
under
punkt
1
6
Tidligere
optagelse
på
videregående
uddannelse
udover
de
i
punkt
3
nævnte
Du
skal
udfylde
punkt
6
hvis
du
udover
din
adgangsgivende
uddannelse
tidligere
har
været
optaget
på
en
eller
flere
videregående
uddannelser
Felterne
i
kolonnen
Dato
bestået
udfyldes
kun
hvis
uddannelsen
er
gennemført
Felterne
i
kolonnen
Stadig
indskrevet
udfyldes
med
et
x
hvis
du
stadig
er
indskrevet
på
det
pågældende
uddannelsessted
Punkt
6
benyttes
til
at
anføre
videregående
uddannelser
der
ikke
er
direkte
adgangsgivende
herunder
ikke
afsluttede
uddannelser
og
videregående
uddannelser
som
ikke
er
anført
som
adgangsgivende
under
punkt
3
men
som
ønskes
medtaget
i
helhedsvurderingen
Er
du
kandidat
skal
du
under
dette
punkt
anføre
din
evt
bacheloruddannelse
Husk
at
du
skal
anføre
alle
videregående
uddannelser
du
har
været
optaget
på
også
selvom
du
ikke
har
gennemført
dem
Videregående
uddannelser
er
Kortere
videregående
uddannelser
eksempelvis
datamatiker
og
markedsøkonom
Mellemlange
videregående
uddannelser
eksempelvis
pædagog
og
mellemlange
sundhedsuddannelser
Lange
videregående
uddannelser
eksempelvis
bachelor
og
kandidatuddannelser
fra
universiteter
og
handelshøjskoler
Alle
anførte
uddannelser
skal
dokumenteres
med
bekræftet
kopi
En
ikke
gennemført
uddannelse
dokumenteres
ved
optagelsesbrev
7
Erhvervserfaring
i
kronologisk
rækkefølge
Under
punkt
7
anføres
den
erhvervserfaring
du
ønsker
medtaget
i
vurderingen
af
din
ansøgning
Under
kolonnen
Ugentlig
arbejdstid
anføres
det
antal
timer
du
i
gennemsnit
arbejdede
i
den
anførte
periode
For
fuldtidsarbejde
anføres
Fuld
tid
Vær
opmærksom
på
at
optagelseskravene
til
Masteruddannelserne
omfatter
mindst
2
års
erhvervserfaring
opnået
efter
afslutningen
på
den
adgangsgivende
eksamen
Anført
erfaring
skal
dokumenteres
med
bekræftet
kopi
8
Vurdering
af
egen
IT
erfaring
Under
punkt
8
afkrydses
hvordan
du
selv
vurderer
din
nuværende
IT
erfaring
Kategorien
Ingen
IT
erfaring
afkrydses
hvis
du
aldrig
selvstændigt
har
benyttet
IT
Kategorien
IT
på
brugerniveau
afkrydses
hvis
du
er
fortrolig
med
at
benytte
IT
på
brugerniveau
eksempelvis
e
mail
og
tekstbehandling
Kategorien
IT
på
avanceret
brugerniveau
afkrydses
hvis
du
er
fortrolig
med
avanceret
brug
af
IT
systemer
eksempelvis
brevfletning
og
regneark
Kategorien
IT
udvikler
specialist
afkrydses
hvis
du
behersker
videregående
IT
teknikker
eksempelvis
programmering
netværksadministration
eller
avancerede
værktøjer
9
Personlige
oplysninger
Angives
igen
af
sikkerhedshensyn
Se
vejledning
under
punkt
1
10
Bestående
prøver
udover
de
i
punkt
3
og
6
nævnte
Under
punkt
10
kan
prøver
kurser
og
eksaminer
der
ikke
allerede
er
anført
under
punkt
3
eller
6
anføres
Dette
kan
eksempelvis
være
enkeltfag
arbejdsgiverfinansierede
kurser
eller
lignende
For
hvert
kursus
prøve
anføres
en
type
eller
beskrivelse
navn
på
uddannelsesstedet
dato
for
uddannelsens
start
og
beståelsesdato
Søger
du
ind
på
kandidatuddannelserne
i
Multimedieteknologi
eller
Internetteknologi
som
kræver
matematik
på
A
niveau
se
under
punkt
4
i
denne
vejledning
skal
du
desuden
anføre
og
attestere
beståede
prøver
svarende
til
mindst
A
niveau
under
punkt
10
Alle
anførte
prøver
kurser
skal
dokumenteres
med
bekræftet
kopi
11
Andre
aktiviteter
herunder
udlandsophold
højskoleophold
organisatorisk
arbejde
e
lign
Under
punkt
11
anføres
eventuel
aktivitet
der
falder
under
overskriften
Alle
anførte
aktiviteter
skal
dokumenteres
med
bekræftet
kopi
12
Øvrige
bilag
Oplysninger
der
ikke
er
plads
til
at
skrive
på
ansøgningsskemaet
kan
du
sende
med
som
bilag
Du
skal
her
i
punkt
12
nævne
de
bilag
som
ikke
er
nævnt
andre
steder
på
ansøgningen
11
USEMAP
inter
icon2top
gif
opdateret
18
05
2000
12
wwwadm
it
c
dk
1
IT
højskolen
2
SiteDump
Enkeltfag
inter
vandret
gif
3
Uddannelser
4
Stillinger
5
Aktiviteter
6
Home
7
Personer
8
SiteMap
9
Intranet
10
English
Materiale
vedr
enkeltfag
1
Personlige
oplysninger
CPR
nummer
Dag
Md
År
Lb
nr
Fornavn
e
Efternavn
Telefon
Vej
E
mail
Vej
Mobil
telefon
Postnr
By
2
Adgangsgivende
bacheloruddannelse
Afsluttet
bacheloruddannelse
Uddannelsens
titel
Uddannelsessted
Dato
bestået
3
Adgangsgivende
kandidatstudie
Angiv
det
kandidatstudie
som
du
er
indskrevet
på
Uddannelsens
titel
Uddannelsessted
Dato
påbegyndt
4
Angiv
antal
kurser
du
ønsker
af
følge
1
2
eller
3
5
Prioriteringsoplysninger
Prioriteret
liste
over
ønskede
kurser
på
IT
højskolen
Prioritet
kursuskode
Kursets
navn
1
2
3
4
5
Jeg
bekræfter
hermed
rigtigheden
af
de
afgivne
oplysninger
Dato
Underskrift
Ansøgning
om
enkeltfag
i
efteråret
2000
I
det
omfang
der
er
ledige
pladser
på
de
enkelte
kurser
vil
det
være
muligt
at
følge
enkeltfag
på
IT
højskolen
i
efteråret
2000
Det
kræver
at
du
er
indskrevet
på
en
kandidatuddannelse
dvs
at
du
allerede
er
bachelor
og
ønsker
at
bruge
enkeltfagene
som
en
del
af
din
kandidatuddannelse
Du
kan
finde
en
beskrivelse
af
de
enkelte
kurser
i
vores
kursuskatalog
Kursuskataloget
kan
findes
på
vores
hjemmeside
11
www
it
c
dk
Kursuskoder
der
skal
bruges
ved
udfyldelse
af
ansøgningsskemaet
findes
nedenfor
Det
bemærkes
at
det
er
din
uddannelsesinstitution
sædvanligvis
studienævnet
der
skal
godkende
at
kurser
taget
på
IT
højskolen
kan
indgå
i
din
uddannelse
Sådan
søger
du
For
at
ansøge
om
et
eller
flere
enkeltfag
i
efteråret
2000
på
IT
højskolen
skal
du
gøre
følgende
Udfyld
ansøgningsskemaet
til
enkeltfag
der
er
på
een
side
Se
udfyldningsvejledningen
nedenfor
Fremskaf
attesteret
kopi
af
dit
årskort
og
dit
bachelorbevis
I
det
omfang
det
ikke
fremgår
af
dit
årskort
at
du
er
kandidatstuderende
skal
du
bede
din
uddannelse
om
at
dokumentere
dette
Saml
ansøgningen
i
en
form
der
er
velegnet
til
fotokopiering
dvs
i
et
plasticcharteque
uden
brug
af
hæfteklammer
eller
clips
Samtlige
sider
nummereres
fortløbende
og
antallet
af
sider
påføres
første
side
Indsend
ansøgningsskema
og
dokumentation
i
en
A4
kuvert
til
IT
højskolen
i
København
Glentevej
67
2400
København
NV
Og
mærk
kuverten
Ansøgning
om
enkeltfag
på
IT
højskolen
Ansøgningen
skal
være
IT
højskolen
i
hænde
senest
torsdag
den
15
juni
2000
klokken
12
00
Ansøgninger
der
modtages
med
morgenposten
torsdag
den
15
juni
2000
vil
blive
accepteret
Hvis
du
ønsker
at
ændre
noget
ved
din
ansøgning
inden
ansøgningsfristens
udløb
indsendes
en
helt
ny
ansøgning
med
klar
markering
af
at
tidligere
indsendte
ansøgninger
annulleres
Udfyldningsvejledning
til
skemaet
1
Personlige
oplysninger
CPR
nummer
CPR
nummer
skal
udfyldes
korrekt
Hvis
du
har
et
CPR
nummer
anføres
dette
Ansøgere
uden
dansk
CPR
nummer
Hvis
du
ikke
har
et
dansk
CPR
nummer
skrives
dato
måned
og
år
for
din
fødselsdag
i
den
angivne
rækkefølge
i
de
seks
felter
før
stregen
I
de
første
3
felter
efter
stregen
skrives
de
to
første
bogstaver
i
dit
første
fornavn
efterfulgt
af
det
første
bogstav
i
dit
sidste
efternavn
I
den
sidste
rubrik
angives
dit
køn
med
1
for
mand
og
2
for
kvinde
En
mand
uden
dansk
CPR
nummer
ved
navn
Claes
Anders
Fredrik
Moren
født
den
31
august
1975
skal
skrive
310875
CLM1
Adresse
Adressen
skal
være
en
fuldstændig
angivelse
af
gade
vej
husnr
etage
værelsesnr
postnr
og
postdistrikt
by
For
logerende
angives
værtens
eller
kollegiets
navn
Hvis
du
kan
kontaktes
over
telefon
og
eller
e
mail
skrives
nummer
og
eller
e
mail
på
Adresse
telefonnummer
og
e
mail
er
vigtige
fordi
det
kan
blive
nødvendigt
at
kontakte
dig
i
den
periode
hvor
ansøgningerne
behandles
2
Adgangsgivende
bacheloruddannelse
Du
skal
være
bachelor
for
at
kunne
læse
enkeltfag
på
IT
højskolen
Angiv
officiel
titel
på
afsluttet
bacheloruddannelse
samt
navn
på
uddannelsesstedet
og
dato
for
hvornår
uddannelsen
er
bestået
Du
skal
vedlægge
attesteret
kopi
af
dit
bachelorbevis
3
Adgangsgivende
kandidatstudie
Du
skal
være
indskrevet
på
et
kandidatstudie
for
at
kunne
læse
enkeltfag
på
IT
højskolen
Angiv
officiel
titel
på
kandidatstudiet
samt
navn
på
uddannelsesstedet
og
dato
for
uddannelsens
start
Du
skal
vedlægge
attesteret
kopi
af
dit
årskort
I
det
omfang
det
ikke
fremgår
af
dit
årskort
at
du
er
kandidatstuderende
skal
du
bede
din
uddannelse
om
at
dokumentere
dette
4
Angiv
antal
kurser
du
ønsker
af
følge
1
2
eller
3
Angiv
antal
kurser
du
ønsker
af
følge
Du
kan
søge
om
at
følge
1
2
eller
3
kurser
i
efteråret
2000
5
Prioriteringsoplysninger
Prioriteringsskemaet
bruges
til
at
angive
hvilke
kurser
du
ønsker
at
følge
Du
kan
lave
op
til
5
prioriterede
ønsker
Det
kursus
du
helst
vil
følge
har
prioritet
1
Du
må
kun
vælge
hvert
kursus
en
gang
Hvis
du
vil
følge
et
kursus
se
rubrik
3
skal
du
mindst
vælge
et
kursus
hvis
du
vil
følge
2
kurser
skal
du
mindst
vælge
2
kurser
ovs
Du
har
mulighed
for
at
prioritere
flere
kurser
end
du
vil
følge
for
det
tilfælde
at
din
e
tidligere
prioriteter
er
overtegnede
Du
kan
søge
ind
på
kurserne
angivet
i
tabellen
nedenfor
Nogle
kurser
i
kursuskataloget
fremgår
ikke
nedenfor
idet
de
allerede
er
overtegnede
Du
skal
både
anføre
kursuskode
og
kursusnavn
på
ansøgningsskemaet
Kolonnen
Fysisk
placering
angiver
hvor
kurserne
afholdes
RUC
svarer
til
Roskilde
Universitetscenter
ITU
svarer
til
IT
højskolen
i
København
HHK
svarer
til
Handelshøjskolen
i
København
Kolonnen
Linie
angiver
hvilken
uddannelseslinie
der
udbyder
kurset
K
DKM
svarer
til
linien
Design
kommunikation
og
medier
K
EH
svarer
til
linien
Elektronisk
handel
K
INT
svarer
til
linien
Internetteknologi
K
MMT
svarer
til
linien
Multimedieteknologi
K
SWU
svarer
til
linien
Softwareudvikling
K
TIT
svarer
til
linien
Tværfaglig
IT
K
ULB
svarer
til
Uden
Linje
Betegnelse
Kursuskode
Kursets
navn
Fysisk
placering
Linie
DKME2000DDH
Digital
Design
historie
ITC
K
DKM
DKME2000IIM
Introduktion
til
IT
som
medie
ITC
K
DKM
DKME2000KDB
Konceptudvikling
til
digitalt
tv
og
bredbånd
ITC
K
DKM
DKME2000M
Målgruppeanalyse
ITC
K
DKM
DKME2000TF
Teknologifilosofi
og
den
nye
Økonomi
ITC
K
DKM
DKME2000UE
Useability
Engineering
ITC
K
DKM
EHE2000CD
Centrale
databaser
HHK
K
EH
EHE2000HV
Handel
med
viden
HHK
K
EH
EHE2000SW
Integration
af
softwarekomponenter
til
e
handel
HHK
K
EH
EHE2000IJ
Internet
jura
HHK
K
EH
EHE2000IS
IT
sikkerhed
HHK
K
EH
EHE2000LO
Logistik
HHK
K
EH
EHE2000ME
Marketing
og
e
handel
HHK
K
EH
EHE2000PL
Projektledelse
HHK
K
EH
EHE2000RT
Regulering
af
telekommunikation
HHK
K
EH
EHE2000SS
Standarder
og
softinfrastructure
HHK
K
EH
EHF2000TSV
Taktiske
og
strategiske
værktøjer
til
e
handel
HHK
K
EH
EHE2000VCP
Virtual
Contracts
digital
signatures
and
Regulation
HHK
K
EH
INTE2000AS
Apparatsoftware
ITC
K
INT
INTE2000DS
Datasikkerhed
ITC
K
INT
INTE2000EAP
Effektive
algoritmer
og
programmer
ITC
K
INT
INTE2000INP
Internetprogrammering
ITC
K
INT
INTE2000NP
Netværk
og
protokoller
ITC
K
INT
INTE2000PS
Parallelle
systemer
ITC
K
INT
Fortsættes
næste
side
MMTE2000B
Billedanalyse
ITC
K
MMT
MMTE2000CG
Computergrafik
ITC
K
MMT
MMTE2000DIS
Design
af
interaktive
systemer
deres
evaluering
og
brug
ITC
K
MMT
MMTE2000IM
Introduktion
til
multimediesystemer
ITC
K
MMT
MMTE2000MS
Musisk
signalbehandling
ITC
K
MMT
MMTE2000S
Signalbehandling
ITC
K
MMT
MMTE2000TI
Tale
og
IT
systemer
ITC
K
MMT
MMTE2000VIR
Virtual
reality
ITC
K
MMT
SWUE2000AD
Avancerede
datastrukturer
ITC
K
MMT
SWUE2000DBS
Databasesystemer
ITC
K
SWU
SWUE2000DBD
Design
af
brugergrænseflader
og
data
ITC
K
SWU
SWUE2000DD
Design
og
designere
ITC
K
SWU
SWUE2000ERP
ERP
systemer
ITC
K
SWU
SWUE2000FDP
Funktionelt
design
og
programmering
ITC
K
SWU
SWUE2000GP
Grundlæggende
programmering
ITC
K
SWU
SWUE2000IADS
Introduktion
til
algoritmik
og
datastrukturer
ITC
K
SWU
SWUE2000II
Introduktion
til
informationsteknologi
ITC
K
SWU
SWUE2000P
IT
projektledelse
ITC
K
SWU
SWUE2000ITSS
IT
støttet
samarbejde
ITC
K
SWU
SWUE2000KML
Kategoriske
modeller
for
logik
typeteori
og
concurrency
ITC
K
SWU
SWUE2000KAT
Kategoriteori
ITC
K
SWU
SWUE2000OPJ
Objektorienteret
programmering
med
Java
ITC
K
SWU
SWUE2000ODVP
Objektorienteret
design
og
videregående
programmering
ITC
K
SWU
SWUE2000SEM
Semantik
for
programmeringssprog
ITC
K
SWU
SWUE2000SP
Softwarepålidelighed
ITC
K
SWU
SWUE2000SU
Systemudvikling
ITC
K
SWU
SWUE2000VPL
Videregående
projektledelse
ITC
K
SWU
SWUE2000VP
Videregående
programmering
for
praktikere
ITC
K
SWU
TITE2000BRP
Begreber
og
redskaber
til
programmering
RUC
K
TIT
TITE2000DSA
Datastrukturer
og
algoritmer
RUC
K
TIT
TITE2000DK
Digital
kommunikation
i
og
mellem
maskiner
RUC
K
TIT
TITE2000HVD
Hvordan
ind
virker
design
RUC
K
TIT
TITE2000IP
Indledende
programmering
RUC
K
TIT
TITE2000PLD
Projektledelse
og
design
RUC
K
TIT
TITE2000VR
Vidensrepræsentation
RUC
K
TIT
ULBE2000AB
Algoritmisk
biologi
KU
K
ULB
ULBE2000ARB
Autonome
robotter
biobotter
og
animater
RUC
K
ULB
ULBE2000UD
Udvalgte
emner
indenfor
datanet
KU
K
ULB
12
USEMAP
inter
icon2top
gif
opdateret
18
05
2000
13
wwwadm
it
c
dk
1
IT
højskolen
2
SiteDump
Regnskab
inter
vandret
gif
3
Uddannelser
4
Stillinger
5
Aktiviteter
6
Home
7
Personer
8
SiteMap
9
Intranet
10
English
Virksomhedsregnskab
Image9
gif
Virksomhedsregnskab
1999
IT
højskolen
i
København
Image10
gif
Virksomhedsregnskab
version
3
28
04
2000
MT
KM
Indholdsfortegnelse
0
Fremlæggelse
og
påtegning
3
1
Beretning
1
Baggrund
for
etableringen
af
IT
højskolen
4
2
Uddannelser
5
3
Forskning
på
IT
C
8
4
Sponsorater
9
5
IT
højskolen
og
omverdenen
9
6
Nuværende
situation
10
Driftsregnskab
11
Resultatanalyse
1
Kommentar
til
resultat
1999
herunder
disposition
af
overskud
1999
13
2
Ordinær
og
åben
uddannelse
antal
gennemførte
eksaminer
13
3
Antal
optagne
og
antal
studerende
1999
2004
14
4
Lokaleforhold
14
5
Publikationer
15
Øvrige
indsatsområder
15
Administration
1
Personalet
i
tal
18
2
Organisationsdiagram
over
administrationen
18
3
Bestyrelse
19
6
Bilagstabeller
20
29
0
Hovedformålsoversigt
1
Tilskudsfinansieret
forskningsvirksomhed
2
Formålsopdelt
regnskab
3
Lønudgift
i
det
formålsopdelte
regnskab
4
Driftsregnskab
uddannelse
og
forskning
5
Generel
ledelse
og
administration
6
Drifts
og
overførselsindtægter
fordelt
på
kilder
7
Aktivitetesoplysninger
STÅ
for
uddannelse
8
Indtægtsdækket
virksomhed
9
Institutionens
driftssituation
indtægtsdækket
virksomhed
10
Resultatopgørelse
tilskudsfinansierede
aktiviteter
11
Personaleoplysninger
total
12
Professorater
ultimo
VR
året
13
Antal
konsulenter
og
fuldmægtige
ultimo
VR
året
14
Nettobygningsarealer
15
Oversigt
over
igangværende
og
afsluttede
projekter
i
1999
16
Bevillingsafregning
for
anlægsbevilling
1999
Fremlæggelse
og
påtegning
IT
Højskolens
virksomhedsregnskab
for
1999
underskrives
og
påtegnes
i
henhold
til
bestemmelserne
herom
i
Akt
82
af
4
december
1996
For
virksomhedsregnskabets
oplysninger
erklæres
at
disse
er
dækkende
og
at
dokumentationen
herfor
er
tilstede
IT
højskolen
den
28
april
2000
Mads
Tofte
Direktør
Mogens
Munk
Rasmussen
Formand
for
bestyrelsen
for
IT
højskolen
Påtegning
Forskningsministeriets
påtegning
af
virksomhedsregnskabet
for
1999
sker
i
overensstemmelse
med
ovennævnte
fremlæggelse
København
den
maj
2000
Rudolf
Straarup
Direktør
Beretning
1
1
Baggrund
for
etableringen
af
IT
højskolen
i
København
IT
C
Med
henblik
på
at
styrke
IT
uddannelser
og
forskning
nedsatte
Undervisnings
ministeriet
og
Forskningsministeriet
i
marts
måned
1998
et
udvalg
Udvalget
leverede
i
oktober
1998
en
rapport
hvori
man
anbefalede
at
iværksætte
en
kraftig
forøgelse
af
kapaciteten
af
forskningsbaserede
IT
uddannelser
i
Danmark
ved
at
etablere
en
IT
højskole
i
København
IT
C
og
et
universitetssamarbejde
i
Vestdanmark
IT
V
IT
C
skulle
etableres
som
en
fysisk
selvstændig
enhed
med
en
selvstændig
bestyrelse
men
som
en
del
af
en
eksisterende
universitetslovsinstitution
IT
C
og
IT
V
fik
til
opgave
at
sørge
for
et
markant
meroptag
til
uddannelserne
gennem
udviklingen
af
nye
studier
med
nyt
indhold
og
en
ny
profil
IT
C
og
IT
V
skulle
således
udvikle
nye
kandidatuddannelser
der
i
modsætning
til
andre
IT
overbygningsuddannelser
skulle
være
tilgængelige
for
bachelorer
i
fag
der
ikke
hovedsageligt
drejer
sig
om
IT
Desuden
skulle
IT
C
og
IT
V
udvikle
master
og
diplomuddannelser
der
kunne
tjene
som
efter
og
videreuddannelse
på
IT
området
på
et
højt
niveau
IT
C
og
IT
V
skulle
udvikle
en
egen
forskningsindsats
i
international
klasse
og
skulle
hertil
have
særlige
forskningsbevillinger
IT
C
og
IT
V
skulle
blandt
andet
tiltrække
forskere
fra
udlandet
og
bidrage
til
udviklingen
af
Øresundsregionen
som
et
internationalt
videnscentrum
for
IT
Der
skulle
etableres
et
Foresight
panel
der
skulle
rådgive
bestyrelsen
for
IT
højskolen
om
IT
højskolens
forskning
og
uddannelser
Endelig
skulle
IT
højskolerne
prioritere
offentligt
privat
samspil
på
såvel
uddannelses
som
forskningsområdet
højt
I
januar
1999
blev
der
etableret
en
interimsbestyrelse
for
IT
højskolen
og
i
maj
måned
kunne
IT
højskolen
rykke
ind
i
lejede
kontor
og
undervisningslokaler
på
Glentevej
i
Københavns
Nordvestkvarter
Den
officielle
indvielse
blev
foretaget
af
undervisningsministeren
og
forskningsministeren
den
30
august
1999
Administrativt
blev
IT
højskolen
oprettet
som
et
frifakultet
under
Handels
højskolen
i
København
med
en
direktør
som
ansvarlig
for
den
daglige
ledelse
1
2
Uddannelser
Indhold
Indholdet
af
IT
højskolens
uddannelser
er
organiseret
i
forhold
til
følgende
landkort
Image11
gif
Inden
for
denne
trekant
har
IT
højskolen
udviklet
uddannelser
der
placerer
sig
forskelligt
i
trekanten
Uddannelserne
lapper
over
hinanden
idet
der
på
alle
uddannelser
er
moduler
der
er
delt
med
andre
uddannelser
Men
uddannelserne
hælder
mod
forskellige
hjørner
Orienteret
mod
Science
hjørnet
har
IT
højskolen
kandidat
og
master
uddannelsen
i
Softwareudvikling
IT
branchen
efterspørger
medarbejdere
med
en
bred
vifte
af
kvalifikationer
Softwarelinien
spænder
bredt
lige
fra
tilegnelse
af
efterlyste
praktiske
færdigheder
til
innovative
fremtidsteknologier
og
fordybelse
i
fundamentale
problemstillinger
og
teorier
Igennem
studieforløbet
lærer
kandidaten
at
planlægge
og
styre
udviklingsprocesser
fra
id
til
implementering
og
drift
Orienteret
mod
The
Arts
hjørnet
har
IT
højskolen
kandidatlinien
i
Design
Kommunikation
og
Medier
Studieforløbet
omhandler
IT
som
et
medie
hvor
de
studerende
bl
a
arbejder
med
design
af
web
sider
og
tilrettelæggelse
af
IT
baseret
kommunikation
I
studieforløbet
arbejdes
der
med
IT
både
som
et
socialt
og
kulturelt
medie
Orienteret
mod
Business
hjørnet
har
IT
højskolen
kandidatlinien
i
Elektronisk
Handel
Gennem
studieforløbet
opnås
kendskab
til
de
juridiske
og
organisa
toriske
aspekter
af
elektronisk
handel
Kandidaten
skal
være
velbevandret
i
de
særlige
tekniske
problemer
der
er
forbundet
med
elektronisk
handel
så
som
sikkerhed
beskyttelse
af
privatlivets
fred
elektronisk
betaling
distribuerede
databaser
og
netværksteknologi
Placeret
mellem
hjørnerne
Science
og
The
Arts
har
IT
højskolen
kandidat
linien
i
Tværfaglig
IT
Her
fokuseres
der
på
anvendelsen
af
IT
i
andre
fagområder
typisk
fagområdet
fra
bacheloruddannelsen
Målet
for
kandidatuddannelsen
er
at
bygge
bro
mellem
IT
og
et
andet
fagområde
Organisation
Uddannelserne
er
organiseret
gennem
et
netværk
af
aftaler
der
knytter
IT
højskolen
sammen
med
universiteterne
i
regionen
Således
er
kandidatlinierne
i
Elektronisk
Handel
og
Tværfaglig
IT
udliciteret
til
henholdsvis
Handelshøjskolen
i
København
og
Roskilde
Universitetscenter
Desuden
bidrager
Den
Kongelige
Veterinær
og
Landbohøjskole
Malm
H
gskola
og
Danmarks
Designskole
til
uddannelserne
IT
højskolen
har
indgået
eller
er
i
færd
med
at
indgå
formelle
samarbejdsaftaler
med
alle
ovennævnte
institutioner
Det
faglige
indhold
er
tilrettelagt
af
interimsstudienævn
med
deltagere
fra
ovennævnte
institutioner
De
studerende
på
IT
højskolens
linie
i
Elektronisk
Handel
følger
som
et
led
i
deres
studieplan
kurser
der
deles
med
Softwareudviklingslinien
som
også
leverer
kurser
til
linien
i
Design
Kommunikation
og
Medier
De
studerende
på
linien
i
Tværfaglig
IT
har
i
begrænset
omfang
mulighed
for
at
følge
kurser
udbudt
af
andre
linier
Mange
af
de
studerende
kommer
dagligt
på
flere
institutioner
For
eksempel
foregår
undervisningen
i
Elektronisk
Handel
på
Handelshøjskolen
i
København
IT
C
og
Den
Kongelige
Veterinær
og
Landbohøjskole
Optagelse
For
at
blive
optaget
på
IT
højskolens
kandidatstudium
skal
man
have
en
bacherlorgrad
eller
anden
tilsvarende
uddannelse
Kandidatstudiet
er
et
2
årigt
fuldtidsstudium
og
betegnelsen
for
de
nye
kandidater
er
cand
it
For
at
blive
optaget
på
IT
højskolens
masteruddannelse
skal
man
have
en
bachelorgrad
eller
lignende
uddannelse
samt
mindst
2
års
relevant
erhvervserfaring
Interessen
for
at
studere
på
IT
højskolen
har
været
større
end
forventet
idet
der
i
blev
optaget
119
studerende
på
kandidatstudierne
15
på
masterstudiet
og
yderligere
22
enkeltfagsstuderende
Til
sammenligning
var
måltallene
for
kandidatstudiet
70
IT
højskolen
kunne
desuden
konstatere
at
de
studerende
kom
fra
mange
forskellige
fag
Ud
af
179
ansøgere
til
kandidatlinierne
var
155
forskellige
uddannelser
repræsenteret
Da
ansøgernes
baggrunde
er
så
varierede
har
IT
C
valgt
ikke
kun
at
lægge
eksamenskarakterer
til
grund
for
optagelsen
men
i
lige
så
høj
grad
hidtidig
viden
og
målet
med
den
valgte
kandidatlinie
Accepterer
den
studerende
en
tilbudt
studieplads
tilbydes
vedkommende
inden
studiestart
en
samtale
med
en
repræsentant
for
den
pågældende
kandidatlinie
Dette
sker
med
henblik
på
at
tilrettelægge
et
individuelt
studieforløb
hvor
der
tages
udgangspunkt
i
vedkommendes
tidligere
uddannelse
Det
har
desuden
kunne
konstateres
at
de
nye
uddannelser
også
tiltrækker
kvinder
idet
ca
1
3
af
de
studerende
er
kvinder
Fordelingen
for
1999
er
følgende
Kvinder
Mænd
Ialt
Kandidat
40
79
119
Master
4
11
15
Optag
fordelt
efter
linier
for
1999
og
2000
Kandidat
1999
F
00
Faktisk
E
00
Budget
I
alt
2000
Design
Kommunikation
og
Medier
41
36
40
76
Tværfaglig
IT
15
14
20
34
Internethandel
20
25
45
Multimedieteknologi
9
20
29
Softwareudvikling
30
30
40
70
Elektronisk
Handel
33
32
40
72
119
141
185
326
Åben
uddannelse
E
99
F
00
Faktisk
E
00
Budget
I
alt
2000
Design
Kommunikation
og
Medier
6
6
12
Multimedieteknologi
0
Softwareudvikling
15
4
4
8
Diplom
i
Informationsteknologi
0
19
19
38
15
29
29
58
I
alt
optaget
134
170
214
384
I
1999
er
yderligere
to
kandidatlinier
defineret
med
studiestart
forår
2000
Det
drejer
sig
om
Multimedieteknologi
og
Internet
teknologi
Masteruddannelsen
udvides
med
Design
Kommunikation
og
Medier
Studiet
er
et
3
årigt
deltidsstudie
Med
virkning
fra
2000
er
det
ligeledes
blevet
muligt
at
få
en
Diplomuddannelse
i
Informationsteknologi
Studiet
et
2
årigt
deltidsstudium
Søgningen
til
kandidatstudierne
er
tilfredsstillende
og
den
er
højere
end
forventet
i
Finansloven
Derimod
har
søgningen
til
de
åbne
uddannelser
været
væsentligt
mindre
Hovedårsagen
er
så
vidt
vides
at
IT
C
kun
har
kunnet
overkomme
at
udbyde
studierne
som
dagstudier
og
desuden
har
krævet
at
de
studerende
i
24
uger
om
året
skulle
bruge
to
hele
hverdage
på
studierne
hver
uge
Det
har
vist
sig
at
disse
krav
er
vanskelige
at
opfylde
for
de
fleste
af
de
interesserede
der
har
henvendt
sig
For
at
opnå
en
større
søgning
skal
der
etableres
mulighed
for
at
en
større
del
af
studiet
foregår
om
aftenen
og
uden
for
normal
arbejdstid
eventuelt
ved
hjælp
af
fjernundervisning
IT
C
har
i
februar
2000
nedsat
en
arbejdsgruppe
bestående
af
to
lektorer
der
skal
komme
med
oplæg
til
reorganisering
af
indsatsen
på
området
IT
C
agter
at
satse
lige
så
målrettet
på
åben
uddannelse
som
på
ordinær
uddannelse
gennem
nyopslag
af
stillinger
målgruppeanalyser
og
dialog
med
aftagerne
1
3
Forskning
på
IT
C
Rekruttering
IT
højskolen
fik
af
forskningsministeren
ret
til
at
besætte
fem
VIP
stillinger
uden
opslag
Herudover
opslog
IT
højskolen
i
juni
1999
13
stillinger
fordelt
på
kategorierne
lektor
forskningsadjunkt
og
ekstern
lektor
Der
indkom
i
alt
39
ansøgninger
Resultatet
af
disse
to
ansættelsestiltag
var
at
IT
højskolen
ansatte
en
professor
ni
lektorer
tre
forskningsadjunkter
en
ammanuensis
og
fem
eksterne
lektorer
Med
nogle
af
lektorerne
fulgte
Ph
D
studerende
og
forskningsmidler
således
at
der
kunne
ansættes
yderligere
en
forskningsadjunkt
I
aktstykket
er
der
bevilget
14
Ph
D
stipendier
til
IT
højskolen
for
1999
Otte
af
disse
blev
fordelt
blandt
Københavns
Universitet
Roskilde
Universitetscenter
Danmarks
Tekniske
Universitet
og
Handelshøjskolen
i
København
De
resterende
seks
blev
besat
i
1999
I
alt
var
der
ved
udgangen
af
1999
8
Ph
D
studerende
på
Glentevej
heraf
3
projektansatte
og
8
Ph
D
stipendier
under
besættelse
på
Danmarks
Tekniske
Universitet
Københavns
Universitet
Roskilde
Universitetscenter
og
Handelshøjskolen
i
København
Emneområder
Der
drives
to
typer
af
forskning
på
IT
højskolen
teknologidrevet
forskning
og
behovsdrevet
forskning
Den
teknologidrevne
forskning
drejer
sig
om
at
udvikle
ny
teknologi
og
finde
nye
måder
at
anvende
den
på
Den
behovsdrevne
forskning
drejer
sig
om
at
analyse
hvilke
behov
der
findes
i
praksis
og
dernæst
finde
generelt
anvendelig
metoder
til
at
tilfredsstille
behovene
på
Den
teknologidrevne
forskning
omfatter
bl
a
Udvikling
af
teknologi
til
at
bestemme
formen
af
æg
til
kunstig
befrungtning
af
kvinder
med
henblik
på
at
øge
chancen
for
en
vellykket
graviditet
samtidig
med
at
man
mindsker
risikoen
for
dannelse
af
for
mange
fostre
Denne
forskning
kræver
udvikling
af
algoritmer
der
kan
danne
3D
modeller
af
klynger
af
æg
fra
2D
billeder
Udvikling
af
teknologi
til
at
verificere
indlejret
software
sådan
som
den
findes
i
f
eks
smart
cards
og
mobiltelefoner
Udvikling
af
programmeringssprogsteknologi
der
understøtter
udvikling
af
store
softwaresystemer
Den
behovsdrevne
forskning
omfatter
bl
a
Hvordan
udformer
man
kravspecifikationer
som
fungerer
som
et
effektivt
kommunikationsmiddel
mellem
brugere
og
udviklere
af
store
IT
systemer
Dette
er
af
central
betydning
for
at
undgå
skandaler
med
store
systemer
der
aldrig
kommer
til
at
fungere
Hvad
er
museskader
og
hvordan
undgår
man
dem
Hvordan
kan
bevægelseshæmmede
styre
en
computer
med
øjnene
Sidstnævnte
projekt
sker
i
samarbejde
med
Tokyo
Institute
of
Technology
og
er
finansieret
bl
a
gennem
en
bevilling
på
2mio
kr
fra
Forskningsministeriet
Opfindelser
og
nyttiggørelse
af
forskning
Flere
forskere
på
IT
højskolen
har
været
med
til
eller
er
i
færd
med
at
nyttiggøre
forskningsresultater
gennem
start
af
egen
virksomhed
Disse
virksomheder
beskæftiger
sig
med
at
omsætte
matematisk
baseret
teoretisk
forskning
til
konkrete
produkter
inden
for
områderne
programanalyse
verifikation
af
indlejrede
systemer
og
billedanalyse
IT
højskolen
forventer
at
indgå
aftaler
i
henhold
til
loven
om
nyttiggørelse
af
opfindelser
i
løbet
af
år
2000
Forskerparken
Symbion
A
S
åbnede
i
1999
en
afdeling
på
Vibevej
kun
få
hundrede
meter
fra
IT
højskolen
Flere
forskere
og
studerende
har
seriøst
drøftet
opstart
af
virksomhed
med
Symbion
1
4
Sponsorater
IT
højskolen
modtog
to
sponsorater
i
1999
Syv
Netfinity
servere
fra
IBM
til
en
samlet
værdi
af
ca
1
mio
kr
Femten
bærbare
computere
til
studerende
på
IT
højskolen
doneret
af
Hewlett
Packard
til
en
samlet
værdi
af
ca
500
000
kr
1
5
IT
højskolen
og
omverdenen
Det
er
IT
højskolens
mål
at
være
i
tæt
kontakt
med
det
omgivende
samfund
Hidtil
har
det
ikke
været
vanskeligt
idet
IT
højskolen
meget
naturligt
i
forbindelse
med
etablering
og
åbning
har
været
i
pressens
søgelys
Men
denne
interesse
gør
det
ikke
alene
IT
højskolen
skal
også
selv
være
udfarende
og
skabe
kontakter
til
erhvervslivet
Der
er
således
ansat
en
medarbejder
med
Erhvervsrettede
aktiviteter
som
arbejdsområde
Et
eksempel
på
det
eksterne
samarbejde
er
BuzzTalk
Det
er
foredrag
der
afholdes
hver
fredag
eftermiddag
i
undervisningsperioderne
Indtil
videre
har
vi
været
i
den
heldige
situation
at
virksomhederne
har
stået
i
kø
for
at
komme
til
at
tale
på
en
BuzzTalk
BuzzTalk
foredragsrækken
er
også
åben
for
tilhørere
uden
direkte
tilknytning
til
miljøet
på
Glentevej
og
allerede
nu
kan
vi
se
at
interessen
er
der
idet
der
som
tilhørere
blandt
andet
kommer
potentielle
studerende
journalister
handels
skolelærere
og
repræsentanter
fra
erhvervslivet
Deres
baggrund
for
deltagelse
er
vidt
forskellig
Journalisterne
kan
f
eks
bruge
foredraget
som
et
afsæt
til
research
på
en
teknologihistorie
mens
repræsentanter
fra
erhvervslivet
kan
bruge
BuzzTalks
til
at
få
deres
viden
opdateret
Det
blev
til
i
alt
14
BuzzTalks
i
efteråret
99
og
med
et
deltagerantal
på
mellem
30
og
300
alt
efter
emnet
1
6
Nuværende
situation
På
nuværende
tidspunkt
kan
det
konstateres
at
behovet
for
en
IT
højskole
er
tilstede
Ved
forårssemestrets
start
var
der
allerede
optaget
det
antal
kandidatstuderende
der
var
målet
for
hele
år
2000
således
at
med
optagelsen
til
efteråret
forventes
kandidat
STÅ
produktionen
at
blive
165
mod
Forsknings
ministeriets
budget
på
91
Derimod
vil
det
ikke
være
muligt
at
opnå
den
forventede
STÅ
produktion
på
de
åbne
uddannelser
Samtidig
er
IT
højskolen
stadig
i
opbygningsfasen
hvilket
forventes
at
fortsætte
indtil
etableringen
i
Ørestaden
i
2003
har
fundet
sted
Dette
stiller
store
krav
til
organisationen
såvel
inden
for
det
undervisningsmæssige
som
inden
for
det
administrative
område
idet
der
skal
fastlægges
rutiner
og
strategier
og
desuden
skal
de
enkelte
linier
udbygges
I
øjeblikket
er
økonomien
sund
Der
er
netop
udarbejdet
et
budget
for
årene
2000
2003
Så
snart
grænsen
på
kr
28
0
mio
i
forskningsmatchningen
er
nået
hvilket
forventes
at
ske
i
2002
tyder
de
nuværende
budgetter
på
vanskeligheder
med
at
finansiere
forskningen
Desuden
har
det
været
nødvendigt
at
bruge
mange
af
etableringsmidlerne
til
nedbringelse
af
ombygningsudgifter
i
forbindelse
med
indflytningen
i
1999
2
Driftsregnskab
Resultatopgørelse
1999
2000
Mio
kr
3
decimaler
årets
priser
Regnskab
Budget
Indtægter
38
991
60
967
Finanslov
31
100
42
800
Driftsindtægter
7
891
18
167
Udgifter
27
652
66
867
Lønninger
6
931
28
289
Øvrige
driftsudgifter
20
721
38
578
Resultat
11
339
5
900
Regnskabet
for
1999
udviser
et
overskud
på
kr
11
339
mio
Dette
er
en
følge
af
at
IT
højskolen
kun
har
eksisteret
i
en
del
af
året
1999
og
at
det
viste
sig
vanskeligt
at
besætte
alle
de
opslåede
stillinger
Desuden
var
det
af
tidsmæssige
årsager
ikke
muligt
at
få
etableret
forskningen
i
ønsket
omfang
Vedrørende
indretning
af
de
lejede
lokaler
er
auditoriet
først
blevet
istandsat
i
2000
Det
overskud
der
er
opsparet
i
1999
forventes
brugt
i
2000
som
følger
Disponering
af
overskud
1999
Mio
kr
3
decimaler
årets
priser
2000
Overskud
primo
11
339
Falcksikring
etableret
1999
0
250
Edb
bestilt
i
1999
først
leveret
januar
2000
0
308
Indretning
af
af
auditorium
1
990
Indretning
af
af
auditorium
møbler
tavler
mv
0
823
Manglende
forskning
af
tidsmæssige
årsager
7
000
Huslejereulering
1999
0
554
Ikke
forbrugte
midler
1999
10
925
Ej
disponeret
0
414
Vedrørende
indtægterne
for
1999
er
de
sammensat
af
følgende
Indtægterne
specificeret
Mio
kr
3
decimaler
årets
priser
1999
Resultatopgørelse
Forskningsministeriet
etableringsmidler
27
000
Forskningsministeriet
forskningsmidler
4
000
Phd
uddannelse
0
100
Undervisningsministeriet
udvikling
af
nye
uddannelser
Deltagerbetaling
åben
uddannelse
7
000
0
200
Tilskudsfinansieret
forskningsvirksomhed
0
691
Indtægter
i
alt
38
991
Akkumuleret
resultat
Mio
kr
3
decimaler
årets
priser
1999
2000
Reserver
primo
0
000
11
339
Resultat
til
overførsel
11
339
5
900
Reserver
ultimo
11
339
5
439
Bevillingsafregning
Mio
kr
3
decimaler
årets
priser
1999
Resultatopgørelse
Bevilling
B
TB
31
100
Regnskab
19
761
Bevillingsafvigelse
Årets
overskud
før
dispositioner
11
339
Akkumuleret
overskud
Akkumuleret
overskud
primo
indeværende
år
0
000
Årets
overskud
11
339
Akkumuleret
overskud
ultimo
indeværende
år
11
339
Overskud
som
bortfalder
0
000
Akkumuleret
overskud
til
videreførsel
ultimo
indeværende
år
11
339
I
beløbet
indgår
TB
på
kr
7
0
mio
fra
Undervisningsministeriet
3
Resultatanalyse
3
1
Kommentar
til
resultat
Som
følge
af
opstarten
af
IT
højskolen
er
mange
af
udgifterne
atypiske
i
forhold
et
normalt
driftsår
Således
udgør
udgifterne
til
generel
ledelse
og
administration
i
alt
kr
14
114
mio
idet
anskaffelse
af
inventar
og
edb
udstyr
indgår
i
denne
post
ligesom
der
blev
brugt
konsulenter
til
varetagelse
af
en
del
af
de
administrative
opgaver
i
de
første
måneder
jævnfør
nedenstående
specifikation
Specifikation
af
generel
ledelse
og
administration
Mio
kr
3
decimaler
årets
priser
1999
Konsulenthonorar
eksternt
2
347
Konsulenthonorar
internt
347
Telefon
584
Annoncering
742
Kontorhold
333
Leje
leasing
af
udstyr
205
Øvrige
udgifter
1
803
Driftsudgifter
6
361
Etablering
af
IT
højskolen
Edb
udstyr
4
307
Inventar
3
446
Anlægsudgifter
7
753
Generel
ledelse
og
administration
i
alt
14
114
For
at
give
et
mere
samlet
overblik
over
lønudgifterne
er
udarbejdet
nedenstående
specifikation
Specifikation
af
løn
konsulent
og
tilskud
til
andre
institutioner
Mio
kr
3
decimaler
årets
priser
1999
Lønudgifter
6
044
Konsulentudgifter
2
347
Betaling
til
andre
institutioner
1
669
I
alt
10
060
3
2
Ordinær
og
åben
uddannelse
antal
gennemførte
eksaminer
De
kandidat
og
masterstuderendestuderende
der
blev
optaget
i
efterårssemesteret
har
tilsammen
bestået
412
fag
ved
eksamen
i
januar
2000
3
3
Antal
optagne
og
antal
studerende
1999
2004
Med
udgangspunkt
i
den
nuværende
efterspørgsel
efter
uddannelserne
for
venter
IT
højskolen
følgende
udvikling
i
studenteroptagsprognosen
frem
til
2004
1999
2000
2001
2002
2003
2004
Kandidater
119
326
300
400
500
500
Master
15
20
130
160
200
200
Diplom
0
38
150
200
300
300
I
alt
134
384
580
760
1000
1000
Prognosen
for
antal
samtidigt
indskrevne
studerende
frem
til
2004
er
følgende
1999
2000
2001
2002
2003
2004
Kandidater
119
405
616
948
1113
1245
Master
15
33
155
291
455
546
Diplom
0
36
171
318
500
625
I
alt
134
474
942
1557
2068
2416
3
4
Nuværende
og
fremtidige
lokaleforhold
IT
højskolen
overtog
i
foråret
1999
lejemålet
efter
Den
Grafiske
Højskole
på
Glentevej
i
Københavns
Nordvestkvarter
For
at
opfylde
behovet
for
undervisningslokaler
auditorier
m
v
var
en
større
ombygning
imidlertid
påkrævet
WRentreprise
påtog
sig
denne
opgave
I
løbet
af
de
godt
4
måneder
hvor
ombygningen
stod
på
var
de
første
medarbejdere
ansat
og
ved
indvielsen
den
30
august
var
man
nået
så
langt
at
nyansatte
kunne
rykke
ind
i
egne
kontorer
ligesom
de
fleste
undervisningslokaler
stod
færdige
Kun
ombygningen
og
indretningen
af
et
stort
auditorium
måtte
udsættes
til
begyndelsen
af
2000
For
at
dække
det
stigende
behov
for
undervisningslokaler
og
kontorer
besluttede
IT
C
i
december
1999
at
leje
2
og
3
salen
på
Glentevej
Lejemålet
overtages
efter
Niels
Brocks
Handelsskole
Det
forventes
at
de
nye
lokaler
kan
tages
i
brug
i
starten
af
efterårssemesteret
2000
Det
nuværende
lejemål
på
Glentevej
udgør
netto
4
417
m2
Med
udvidelsen
af
Niels
Brock
lejemålet
på
3
199
m2
bliver
det
samlede
areal
7
616
m2
Ørestadsprojektet
På
længere
sigt
er
de
nuværende
lokaleforhold
ikke
tilstrækkelige
og
samtidig
med
vedtagelsen
af
oprettelsen
af
IT
højskolen
i
København
blev
det
besluttet
at
IT
højskolens
fremtidige
permanente
placering
skal
være
i
Ørestaden
sammen
med
udbygning
af
Københavns
Universitet
Amager
Danmarks
Radio
og
Det
kgl
Bibliotek
og
Rigsarkivet
med
flere
Der
er
blevet
bevilget
2
0
mio
kr
til
planlægningsarbejdet
for
året
1999
og
en
planlægningsgruppe
er
igang
med
arbejdet
herunder
ekskursioner
til
andre
bygninger
i
undervisningsregi
og
afholdelse
af
workshops
Byggeprojektet
er
blevet
offentliggjort
i
EU
Tidende
indbydelse
til
prækvali
fikation
blev
publiceret
i
slutningen
af
1999
Ansøgningsfristen
var
den
28
februar
2000
På
baggrund
af
det
indkomne
materiale
skal
5
arkitektfirmaer
udvælges
til
at
deltage
i
den
endelige
konkurrence
Byggearbejdet
planlægges
færdiggjort
medio
2003
3
5
Publikationer
I
nedenstående
tabel
er
vist
en
samlet
oversigt
over
forskningspublikationer
offentliggjort
i
1999
Fremmedsprogede
publikationer
afhandlinger
og
bøger
0
artikler
i
tidskrifter
og
antologier
6
Nordisksprogede
publikationer
afhandlinger
og
bøger
0
artikler
i
tidskrifter
og
antologier
1
Øvrige
publikationer
proceedings
22
I
alt
29
4
Øvrige
indsatsområder
Foruden
at
lægge
stor
vægt
på
at
opbygge
et
spændende
forskningsmiljø
og
gode
uddannelser
lægges
der
på
IT
højskolen
vægt
på
følgende
Opbygning
af
organisation
og
ledelse
der
skal
sikre
at
IT
højskolen
kan
forblive
dynamisk
og
fremadrettet
også
udover
den
første
opstartsfase
Der
lægges
vægt
på
at
opbløde
de
traditionelle
skel
mellem
administrative
og
videnskabelige
medarbejdere
De
administrative
medarbejdere
skal
have
indblik
i
hvad
der
skal
til
rent
organisatorisk
for
at
have
et
levende
og
velfungerende
forsknings
og
uddannelsesmiljø
De
videnskabeligt
ansatte
der
pålægges
ledelsesansvar
skal
lære
at
værdsætte
og
udføre
god
ledelse
og
levere
kvalitet
i
forvaltningen
Aktiv
indragelse
af
de
studerende
i
opbygningen
af
IT
højskolen
i
alle
anliggender
lige
fra
udformingen
af
studierne
til
etablering
af
web
sider
og
udarbejdelse
af
informationsmateriale
til
andre
studerende
Studerende
der
har
lyst
får
i
deres
projekter
lov
til
at
løse
opgaver
der
vil
blive
sat
i
produktion
på
skolen
Forholdet
til
de
studerende
er
baseret
på
tillid
f
eks
er
der
døgnåbent
for
de
studerende
på
IT
højskolen
og
den
kendsgerning
at
IT
højskolen
uddanner
voksne
mennesker
der
allerede
har
gennemført
en
bachelorgrad
I
opbygningen
af
administrationen
lægges
der
naturligt
nok
meget
vægt
på
udvikling
af
gode
IT
systemer
Grundideen
er
at
administrative
rutiner
skal
være
indbygget
i
brugergrænsefladen
til
IT
højskolen
administrative
systemer
i
modsætning
til
blot
at
foreligge
som
administrative
foreskrifter
IT
højskolens
hastige
opbygning
har
været
intimt
sammenkædet
med
en
meget
hurtig
opbygning
af
en
effektiv
IT
infrastruktur
Allerede
den
6
april
1999
havde
IT
højskolen
sin
første
primitive
hjemmeside
med
en
nyhedstjeneste
hvor
man
kunne
tilmelde
sig
hvis
man
var
interesseret
i
at
modtage
yderlige
information
elektronisk
et
tilbud
som
over
2
600
personer
i
skrivende
stund
har
taget
imod
Direkte
elektronisk
kommunikation
med
potentielle
studerende
og
ansatte
snarere
end
kampagner
i
medierne
har
været
essentielle
for
den
hurtige
opstart
IT
infrastrukturen
som
er
essentiel
for
IT
højskolen
bestod
ved
udgangen
af
1999
af
Internet
med
nyhedstjeneste
11
www
itu
dk
som
alle
interesserede
kan
tilmelde
sig
hvorefter
man
løbende
får
emails
fra
IT
C
Intranet
for
ansatte
og
studerende
Studenternet
for
de
studerende
www2
itu
dk
IT
udstyr
7
servere
doneret
af
IBM
og
15
bærbare
computere
doneret
af
HP
50
PC
ere
som
arbejdsstationer
til
multimedieproduktion
Multimedielaboratorium
Linux
network
Oplysningsarbejde
Et
stort
antal
interviews
til
skrevne
og
elektroniske
medier
En
oversigt
findes
på
hjemmesiden
IT
højskolen
har
i
1999
udviklet
en
betragtelig
mængde
software
herunder
Software
til
oprettelse
af
brugere
på
linux
mac
sgi
og
windowsplatforme
Software
til
håndtering
af
indkomne
ansøgninger
fra
potentielle
studerende
Software
til
en
elektronisk
nyhedstjeneste
som
gør
det
muligt
for
besøgende
på
IT
højskolen
hjemmeside
at
modtage
nyheder
elektronisk
Software
til
generering
af
breve
til
ansøgere
Software
til
web
baseret
målgruppeanalyse
i
forbindelse
med
oprettelse
af
studier
Software
til
web
baseret
distribueret
administration
af
udlån
af
bærbare
computere
til
studerende
Software
til
web
baseret
elektronisk
personfortegnelse
inklusiv
udvikling
af
en
personsøgemaskine
Software
til
automatisk
opdatering
af
email
lister
ved
tilgang
af
medarbejdere
Software
til
automatisk
sammenfatning
af
IT
højskolens
website
Dusinvis
af
sider
til
IT
højskolens
internet
og
intranet
med
informationer
for
omverdenen
for
ansatte
og
for
studerende
Software
til
back
up
af
data
på
IT
højskolens
mange
servere
Software
til
automatisk
sortering
og
prioritering
af
indgående
epost
Ovenstående
software
er
udviklet
af
personer
på
IT
højskolen
i
løbet
af
1999
Desuden
har
der
været
afholdt
et
kursus
i
HTML
for
administrationspersonalet
5
Administration
5
1
Personalet
i
tal
De
første
to
ansættelser
på
den
nyoprettede
IT
højskole
skete
pr
1
april
1999
herefter
er
der
successivt
sket
nyansættelser
og
dette
vil
fortsætte
indtil
IT
højskolen
har
nået
det
antal
studerende
på
2
416
som
er
målet
i
år
2004
For
1999
er
personalenormeringen
i
årsværk
meget
lille
og
samtidig
atypisk
idet
der
dels
har
været
konsulenter
ansat
i
indkøringsfasen
dels
at
en
del
af
de
beløb
der
er
er
betalt
til
øvrige
uddannelsesinstitutioner
er
uden
årsværk
Årsværk
1999
2000
VIP
8
3
31
9
TAP
vedr
undervisning
1
3
3
0
TAP
vedr
administration
6
8
13
7
I
alt
IT
C
16
4
48
6
Noter
I
ovenstående
specifikation
indgår
ikke
tal
for
Eksterne
lektorer
Ansatte
på
HHK
som
IT
C
betaler
for
i
h
t
administrationsaftale
Det
drejer
sig
om
en
0
50
HK
stilling
og
0
75
AC
stilling
Sygefravær
Sygefraværet
i
1999
har
for
de
39
ansatte
medarbejdere
ligesom
antallet
af
feriedage
været
beskedent
Dage
Fravær
på
grund
af
sygdom
11
Fravær
på
grund
af
barselsorlov
14
Samlet
fravær
24
Note
1
Undervisere
der
får
udbetalt
løn
fra
andre
læreanstalter
er
ikke
medtaget
5
2
Organisationsdiagram
Direktør
Direktionssekretær
Intern
Service
Økonomiafd
Personale
Ledelsessekretariat
Studieadministration
Edb
afdeling
5
3
Bestyrelse
Bestyrelsen
er
udpeget
af
forskningsministeren
Koncernchef
og
adm
direktør
Mogens
Munk
Rasmussen
formand
Nykredit
Underdirektør
Kim
Østrup
IBM
Underdirektør
Lillian
Mogensen
ATP
Administrerende
direktør
Preben
Damgaard
Damgaard
Holding
Cand
Polit
Anne
E
Jensen
Rektor
for
Københavns
Universitet
Kjeld
Møllgård
Rektor
for
Danmarks
Tekniske
Universitet
Hans
Peter
Jensen
Rektor
for
Roskilde
Universitetscenter
Henrik
Toft
Jensen
Rektor
for
Handelshøjskolen
i
København
Finn
Junge
Jensen
Bestyrelsen
har
ansat
en
direktør
Mads
Tofte
som
varetager
den
daglige
ledelse
af
IT
højskolen
Bilag
Bilagstabeller
Bilagstabel
1
Hovedformålsoversigt
Mio
kr
3
decimaler
årets
priser
1999
Indtægter
Taxameterindtægter
uddannelse
0
000
Forskningsindtægter
0
687
Overførselsindtægt
til
kapitalformål
7
000
Overførselsindtægt
øvrige
formål
31
100
Driftsindtægter
0
204
Indtægter
ialt
38
991
Udgifter
Uddannelse
4
822
Forskning
2
122
Andre
faglige
formål
0
000
Generel
ledelse
og
administration
14
114
Øvrige
fælles
formål
3
080
Kapitalformål
3
514
Udgifter
ialt
27
652
Årets
overskud
i
alt
11
339
Bilagstabel
2
Tilskudsfinansieret
forskningsvirksomhed
UK
95
Mio
kr
3
decimaler
1999
Statslige
fonds
og
programmidler
0
691
EU
og
andre
internationale
tilskudsgivere
0
000
Øvrige
tilskudsgivere
0
000
Indtægter
ialt
0
691
Bilagstabel
3
Tabel
9
1
Formålsopdelt
regnskab
Total
Mio
kr
3
decimaler
årets
priser
TOTAL
Delformål
1999
2
1
Ordinær
uddannelse
4
822
2
3
Åben
uddannelse
0
000
2
4
Efteruddannelse
0
000
2
7
Ikke
videregående
uddannelse
0
000
2
8
International
studenterudveksling
0
000
2
9
Kursusundervisning
0
000
2
Uddannelse
i
alt
4
822
1
1
Basisforskning
1
431
1
2
Tilskudsfinansieret
forskning
0
691
1
3
Kontraktsforskning
0
000
1
4
Forskeruddannelse
0
000
1
Forskning
i
alt
2
122
3
1
Biblioteker
0
000
3
2
Museer
og
samlinger
0
000
3
3
Klinikker
0
000
3
4
Retsmedicin
0
000
3
9
Øvrige
0
000
3
Andre
faglige
formål
i
alt
0
000
4
1
Bygningsdrift
3
075
4
2
Generel
ledelse
og
administration
14
114
4
9
Øvrige
0
005
4
Fælles
formål
i
alt
17
194
5
1
Lejemål
3
213
5
2
Prioritetsydelser
0
000
5
3
Vedligehold
og
mindre
byggearbejder
0
301
5
4
Energisparende
froranstaltninger
0
000
5
Kapitalformål
i
alt
3
514
6
Inst
interne
overførselsudgift
7
Udgift
i
alt
27
652
Tabel
4
Lønudgift
i
det
formålsopdelte
regnskab
Mio
kr
3
decimaler
årets
priser
TOTAL
Delformål
1999
2
1
Ordinær
uddannelse
2
396
2
3
Åben
uddannelse
0
000
2
4
Efteruddannelse
0
000
2
7
Ikke
videregående
uddannelse
0
000
2
8
International
studenterudveksling
0
000
2
9
Kursusundervisning
0
000
2
Uddannelse
i
alt
2
396
1
1
Basisforskning
1
302
1
2
Tilskudsfinansieret
forskning
0
406
1
3
Kontraktsforskning
1
4
Forskeruddannelse
1
Forskning
i
alt
1
708
3
1
Biblioteker
0
000
3
2
Museer
og
samlinger
0
000
3
3
Klinikker
0
000
3
4
Retsmedicin
0
000
3
9
Øvrige
0
000
3
Andre
faglige
formål
i
alt
0
000
4
1
Bygningsdrift
2
827
4
2
Generel
ledelse
og
administration
0
000
4
9
Øvrige
0
000
4
Fælles
formål
i
alt
2
827
5
3
Vedligehold
og
mindre
byggearbejder
0
000
7
Lønudgift
i
alt
6
931
Tabel
5
Driftsregnskab
uddannelse
og
forskning
Mio
kr
3
decimaler
årets
priser
1999
Bevillingsfinansieret
område
Udgifter
ordinær
drift
4
822
Udgifter
forskning
2
122
Udgifter
i
alt
6
944
Indtægter
ordinær
drift
0
200
Indtægter
forskning
0
687
Indtægter
i
alt
0
887
Overskud
bevillingsfinasieret
område
6
057
Markedsstyret
område
Indtægter
0
000
Udgifter
0
000
Dækningsbidrag
0
000
Årets
overskud
i
alt
6
057
I
ovenstående
opstilling
er
uddannelse
og
forskning
opgjort
under
t
da
bogføringen
for
1999
ikke
var
lagt
an
på
separat
driftsregnskab
for
uddannelse
og
forskning
Der
er
ikke
udarbejdet
driftsregnskab
for
andre
faglige
formål
da
der
ingen
bevægelser
har
været
i
1999
Bilagstabel
6
Generel
ledelse
og
administration
Mio
kr
3
decimaler
årets
priser
1999
Generel
ledelse
og
administration
14
114
Generel
ledelse
og
administration
af
total
udgift
51
04
Jf
bemærkninger
under
punkt
3
1
Bilagstabel
7
Drifts
og
overførselsindtægter
fordelt
på
kilder
Mio
kr
med
3
decimaler
Årets
priser
1999
1
1
Ordinær
uddannelse
1
3
Åben
uddannelse
1
4
Efteruddannelse
1
5
Øvrige
uddannelser
1
Taxameterindtægter
uddannelse
i
alt
2
1
Statslige
fonds
og
programmidler
0
687
2
2
EU
og
andre
internationale
tilskudsgivere
2
3
Øvrige
tilskudsgivere
0
004
2
Tilskudsfinansieret
forskning
i
alt
0
691
3
1
Kontrakforskningsmidler
under
IV
90
3
2
Basisbevilling
til
forskning
7
000
3
3
Forskeruddannelse
taxameter
4
Forskningsindtægter
i
alt
2
3
1
3
3
7
691
5
Overførselsindtægter
til
kapitalformål
7
000
6
1
Overførselsindt
til
øvr
formål
særformål
16
000
6
2
Grundbevilling
1
000
6
3
Energibesparende
foranstaltninger
6
Overførselsindtægt
øvrige
formål
i
alt
17
000
7
1
Deltagerbetaling
for
åben
uddannelse
0
200
7
2
Driftsindtægter
ved
salg
og
udleje
7
3
Indtægter
ved
IV
ex
Forskning
7
4
Driftsindtægter
i
øvrigt
7
5
Retsmedicin
7
Driftsindtægter
i
alt
0
200
8
1
Stipendirater
tidl
SU
styrelsen
8
2
Forskerakademiet
8
3
Andre
tilskudsgivere
8
4
Ph
d
løn
ny
ift
1997
0
100
8
Stipendirater
og
løn
i
alt
0
100
9
1
Tilskud
fra
internationale
org
til
udd
programmer
9
2
Tilskud
i
øvrigt
til
udd
formål
m
v
7
000
9
Øvrige
tilskud
i
alt
7
000
10
Inst
intern
statslig
overførselsindtægt
11
Indtægter
i
alt
38
991
Bilagstabel
8
Aktivitetsoplysninger
STÅ
for
uddannelse
Ordinær
uddannelse
1999
1
1
Antal
studerende
119
1
2
Antal
STÅ
0
2
1
Antal
optagne
pr
1
oktober
119
2
2
Heraf
antal
1
prioritetsansøgere
2
3
Gennemsnitsalder
for
optagne
29
1
2
4
Median
alder
for
optagne
29
5
Færdiguddannede
antal
og
gennemsnitsalder
3
1
Antal
bachelorer
3
2
Gennemsnitsalder
bachelorer
3
3
Gennemsnitlige
gennemførselstid
bachelorer
3
4
Antal
kandidater
0
3
5
Gennemsnitsalder
kandidater
0
3
6
Gennemsnitlige
gennemførselstid
kandidater
0
Åben
efteruddannelse
4
1
Antal
deltagerbetalende
STÅ
0
4
2
Færdiguddannede
på
hele
uddannelser
master
diplom
0
Forskeruddannelse
5
1
Antal
forskeruddannelsesårsværk
i
alt
0
5
2
Antal
forskeruddannelsesstud
pr
1
oktober
i
alt
0
5
3
Antal
forskeruddannelsesstud
pr
1
oktober
mænd
0
5
4
Antal
forskeruddannelsesstud
pr
1
oktober
kvinder
0
5
5
Antal
afhandlinger
året
0
Internationaliseringstilskud
6
Studerende
der
udløser
internationaliseringstilskud
0
6
1
Indgående
0
6
2
Udgående
0
Forskeruddannelsesoplysninger
vedrører
alle
typer
af
forskeruddannelse
Ph
d
studerende
kandidatstipendiater
osv
Bilagstabel
9
Indtægtsdækket
virksomhed
underkonto
90
Mio
kr
3
decimaler
1999
Indtægter
0
000
Direkte
omkostninger
0
000
Dækningsbidrag
0
000
Fællesudgifter
indirekte
omkostninger
0
000
Driftsresultat
før
afskrivning
og
forrentning
m
v
0
000
Afskrivninger
0
000
Forrentning
0
000
Årets
omkostningsbaserede
resultat
0
000
Dækningsgrad
Bilagstabel
10
Institutionens
driftssituation
Indtægtsdækket
virksomhed
underkonto
90
Mio
kr
3
decimaler
Driftsresultat
1999
0
000
Institutionens
driftssituation
0
000
Bilagstabel
11
Resultatopgørelse
Tilskudsfinansierede
aktiviter
underkonto
95
og
97
Tilskudsfinasieret
Andre
tilskuds
forskning
uk
95
finasierede
aktiviteter
uk
97
Årets
indtægter
0
691
0
000
Årets
udgifter
0
691
0
000
Årets
driftsoverskud
0
000
0
000
Uforbrugte
indtægter
1999
1
241
0
000
Årets
overskud
1
241
0
000
På
Handelshøjskolen
er
der
i
1999
i
alt
modtaget
kr
1
932
000
til
projketer
men
da
indtægterne
først
indtægtsføres
i
takt
med
udgiftsafholdelsen
er
beholdning
statslige
tilskudsmidler
lig
med
uforbrugte
indtægter
1999
Bilagstabel
12
Personaleoplysninger
Total
Antal
årsværk
1
decimal
1999
Delformål
VIP
DVIP
TAP
I
alt
2
1
Ordinær
uddannelse
2
5
0
8
2
8
6
1
2
3
Åben
uddannelse
0
0
2
4
Efteruddannelse
0
0
2
7
Ikke
videregående
uddannelse
0
0
2
8
International
studenterudveksling
0
0
2
9
Kursusundervisning
0
0
2
Uddannelse
i
alt
6
1
1
1
Basisforskning
2
1
0
8
2
9
1
2
Tilskudsfinansieret
forskning
1
4
1
4
1
3
Forskeruddannelse
0
0
1
9
Kontraktforskning
0
0
1
Forskning
i
alt
4
3
3
1
Biblioteker
0
0
3
2
Museer
og
samlinger
0
0
3
3
Klinikker
0
0
3
4
Retsmedicin
0
0
3
9
Øvrige
0
0
3
Andre
faglige
formål
i
alt
0
0
4
1
Bygningsdrift
0
0
4
2
Generel
ledelse
og
administration
2
3
4
5
6
8
4
9
Øvrige
0
0
4
Fælles
formål
i
alt
6
8
5
3
Vedligehold
og
mindre
byggearbejder
0
0
6
Årsværk
i
alt
8
3
0
8
8
1
17
2
Bilagstabel
13
Professorater
ultimo
VR
året
Ordinært
finansierede
Eksternt
finansierede
I
alt
1
1
Antal
professorater
1
0
1
1
2
Heraf
antal
midlertidige
professorater
forskningsprofeessorater
Fordeling
på
lønrammer
2
1
L37
2
2
L38
1
0
1
Antal
ubesatte
professorater
i
L37
fordelt
på
3
1
Under
opslag
1
0
1
3
2
Under
bedømmelse
3
3
Bedømmelse
afgivet
Bilagstabel
14
Antal
konsulenter
og
fuldmægtige
ultimo
VR
året
1999
1
1
L35
specialkonsulenter
0
1
2
L36
chefkonsulenter
0
1
0
Konsulenter
i
alt
0
2
0
Antal
AC
fuldmægtige
3
Bilagstabel
15
Nettobygningsarealer
1999
1
10
Forskningsareal
netto
m2
585
0
1
20
Undervisningsareal
netto
m2
1449
0
1
30
Øvrige
arealer
netto
m2
2383
0
1
00
Samlet
nettoareal
i
m2
4417
0
Bilagstabel
16
Oversigt
over
igangværende
og
afsluttede
projekter
i
1999
Mio
kr
Årets
priser
Hjemmel
Bygge
Forventet
Total
Statsudgift
Årets
Forventet
start
afslutnings
udgift
udgift
restudgift
tidspunkt
indeks
156
indeks
156
indeks
156
Igangværende
projekter
Nybyggeri
Akt
138
1999
2000
5
000
0
155
Bilagstabel
17
Bevillingsafregning
for
anlægsbevilling
1999
Hovedkonto
19
21
03
Mio
kr
3
decimaler
årets
priser
reg
indeks
156
Bruttoudgift
Udgifter
Indtægter
Resultatopgørelse
1
Bevilling
B
TB
2
000
0
000
2
Regnskab
0
156
0
000
3
Bevillingsafvigelse
1
844
0
000
4
Korrektioner
til
bevillingsafvigelsen
ud
fra
regnskabet
4
1
Ikke
fradragsberettiget
købsmoms
0
000
6
Årets
overskud
før
dispositioner
1
844
0
000
Akkumuleret
resultat
15
Akkumuleret
overskud
ultimo
indeværende
år
1
844
0
000
18
Overskud
som
bortfalder
0
000
Akkumuleret
overskud
til
videreførsel
ultimo
indeværende
år
1
844
0
000
12
USEMAP
inter
icon2top
gif
opdateret
13
05
2000
13
wwwadm
it
c
dk
IT
højskolen
i
København
Virksomhedsregnskab
2000
Indholdsfortegnelse
0
Fremlæggelse
og
påtegning
4
1
Beretning
1
1
Sammenfatning
5
1
2
Uddannelser
5
1
3
Forskning
11
1
4
Opbygning
af
organisationen
13
1
5
Ørestadbyggeriet
13
1
6
Sponsorater
15
1
7
IT
højskolen
og
omverdenen
16
1
8
Nuværende
situation
16
2
Driftsregnskab
18
3
Resultatanalyse
3
1
Kommentar
til
resultatet
20
3
2
Antal
optagne
og
antal
studerende
1999
2003
20
3
3
Lokaleforhold
21
4
Øvrige
indsatsområder
22
5
Administration
5
1
Personalet
i
tal
23
5
2
Bestyrelse
25
6
Bilagstabeller
26
31
1
Hovedformålsoversigt
2
Tilskudsfinansieret
forskningsvirksomhed
3
Formålsopdelt
regnskab
4
Lønudgift
i
det
formålsopdelte
regnskab
5
Drifts
og
overførselsindtægter
6
Bevillingsafregning
7
Aktivitetesoplysninger
STÅ
for
uddannelse
8
Resultatopgørelse
tilskudsfinansierede
aktiviteter
9
Personaleoplysninger
total
10
Antal
konsulenter
og
fuldmægtige
ultimo
VR
året
11
Nettobygningsarealer
12
Oversigt
over
igangværende
og
afsluttede
projekter
13
Bevillingsafregning
for
anlægsbevilling
Fremlæggelse
og
påtegning
IT
Højskolens
virksomhedsregnskab
for
2000
underskrives
og
påtegnes
i
henhold
til
bestemmelserne
herom
i
Akt
82
af
4
december
1996
For
virksomhedsregnskabets
oplysninger
erklæres
at
disse
er
dækkende
og
at
dokumentationen
herfor
er
tilstede
Image1
gif
Virksomhedsregnskabet
findes
på
IT
højskolens
hjemmeside
http
www
it
c
dk
pub
db
393
html
Beretning
1
1
Sammenfatning
IT
højskolen
i
København
IT
C
blev
etableret
i
1999
I
løbet
af
5
måneder
lykkedes
det
at
definere
en
ny
kandidatuddannelse
med
fire
forskellige
linier
og
en
masteruddannelse
I
alt
145
studerende
hvoraf
de
fleste
var
bachelorer
startede
deres
studier
på
IT
C
i
1999
Hovedmålene
for
2000
var
at
fortsætte
udbygningen
af
de
uddannelser
der
blev
etableret
i
1999
både
hvad
angår
fagudbud
og
antal
studerende
der
blev
optaget
organisere
og
styrke
forskningen
på
IT
højskolen
opbygge
en
organisations
og
ledelsesstruktur
der
er
velegnet
til
at
håndtere
den
kraftige
vækst
i
aktiviteter
IT
højskolen
skal
søge
at
nå
i
opbygningsfasen
frem
til
2003
specificere
krav
og
ønsker
til
IT
højskolens
bygning
i
Ørestaden
De
fire
mål
behandles
i
de
følgende
afsnit
IT
højskolen
har
omkring
årsskiftet
2000
2001
indledt
forhandlinger
med
IT
og
Forskningsministeriet
om
indgåelse
af
en
udviklingskontrakt
for
perioden
frem
til
sommeren
2003
Forhandlingerne
forventes
afsluttet
i
sommeren
2001
1
2
Uddannelser
Indhold
Indholdet
af
IT
højskolens
uddannelser
er
organiseret
i
forhold
til
følgende
landkort
trekant
gif
Inden
for
rammerne
af
denne
trekant
startede
IT
højskolen
i
1999
fire
kandidatlinier
der
placerer
sig
forskelligt
i
trekanten
Uddannelserne
overlapper
hinanden
idet
der
på
alle
uddannelser
er
moduler
der
er
delt
med
andre
uddannelser
men
uddannelserne
hælder
dog
mod
de
forskellige
hjørner
Orienteret
mod
naturvidenskabs
hjørnet
har
IT
højskolen
kandidat
og
master
uddannelsen
i
Softwareudvikling
IT
branchen
efterspørger
medarbejdere
med
en
bred
vifte
af
kvalifikationer
Softwarelinien
spænder
bredt
lige
fra
tilegnelse
af
efterlyste
praktiske
færdigheder
til
innovative
fremtidsteknologier
og
fordybelse
i
fundamentale
problemstillinger
og
teorier
Igennem
studieforløbet
lærer
kandidaten
at
planlægge
og
styre
udviklingsprocesser
fra
id
til
implementering
og
drift
Orienteret
mod
humaniora
hjørnet
har
IT
højskolen
kandidatlinien
i
Design
Kommunikation
og
Medier
Studieforløbet
omhandler
IT
som
et
medie
hvor
de
studerende
bl
a
arbejder
med
design
af
web
sider
og
tilrettelæggelse
af
IT
baseret
kommunikation
I
studieforløbet
arbejdes
der
med
IT
både
som
et
socialt
og
kulturelt
medie
Orienteret
mod
forretnings
hjørnet
har
IT
højskolen
kandidatlinien
i
Elektronisk
Handel
Gennem
studieforløbet
opnås
kendskab
til
de
juridiske
og
organisatoriske
aspekter
af
elektronisk
handel
Kandidaten
skal
være
velbevandret
i
de
særlige
tekniske
problemer
der
er
forbundet
med
elektronisk
handel
såsom
sikkerhed
beskyttelse
af
privatlivets
fred
elektronisk
betaling
distribuerede
databaser
og
netværksteknologi
Placeret
mellem
hjørnerne
naturvidenskab
og
humaniora
har
IT
højskolen
kandidatlinien
i
Tværfaglig
IT
udvikling
Her
fokuseres
der
på
anvendelsen
af
IT
i
andre
fagområder
typisk
fagområdet
fra
bacheloruddannelsen
Målet
for
kandidatuddannelsen
er
at
bygge
bro
mellem
IT
og
et
andet
fagområde
I
år
2000
fortsatte
udbygningen
af
uddannelserne
En
kandidatlinie
og
en
masteruddannelse
i
Internetteknologi
blev
startet
Kandidater
i
Internetteknologi
vil
have
en
grundlæggende
viden
om
de
teknologier
der
tilsammen
udgør
internet
og
kan
udvikle
driftssikre
og
effektive
internetprogrammer
Uddannelsen
består
af
tre
fagområder
netværksteknologi
internetprogrammel
og
internet
i
organisationer
En
kandidatlinie
i
Multimedieteknologi
er
blevet
startet
Uddannelsen
i
Multimedieteknologi
kombinerer
den
nyeste
teknologi
i
sammenhæng
med
andre
og
mere
etablerede
fagområder
Det
drejer
sig
om
taleteknologi
billedanalyse
computergrafik
signalbehandling
og
interaktiv
3
D
grafik
i
relation
til
medicinske
og
industrielle
anvendelser
Uddannelsen
er
naturvidenskabelig
orienteret
og
fokuserer
på
principper
for
mønstergenkendelse
automatisk
billedanalyse
og
signalbehandling
ligesom
uddannelsen
beskæftiger
sig
med
teorier
for
human
perception
De
første
studerende
på
en
masteruddannelse
i
Design
Kommunikation
og
Medier
og
på
masteruddannelsen
i
multimedieteknologi
er
blevet
optaget
Studierne
er
3
årige
deltidsstudier
De
første
studerende
på
diplomuddannelsen
i
Informationsteknologi
blev
optaget
i
foråret
2000
Studiet
et
2
årigt
deltidsstudium
Der
er
lavet
en
fælles
studieordning
for
samtlige
seks
kandidatlinier
såvel
de
fire
der
drives
af
IT
Højskolen
selv
som
de
to
linier
der
er
udliciteret
til
henholdsvis
Handelshøjskolen
i
København
HHK
og
Roskilde
Universitetscenter
RUC
Derved
blev
der
skabt
et
grundlag
for
en
udstrakt
grad
af
samarbejde
mellem
IT
højskolen
og
universiteterne
i
regionen
Endvidere
er
3
studienævn
blevet
etableret
Antallet
af
kurser
voksede
fra
21
i
efteråret
1999
til
43
i
foråret
2000
og
videre
til
70
i
efteråret
2000
Dette
er
et
usædvanligt
stort
antal
uddannelsesaktiviteter
at
have
under
fælles
studieordninger
Organisation
Uddannelserne
er
organiseret
gennem
et
netværk
af
aftaler
der
knytter
IT
højskolen
sammen
med
universiteterne
i
regionen
Kandidatlinierne
i
Elektronisk
Handel
og
Tværfaglig
IT
er
udliciteret
til
henholdsvis
Handelshøjskolen
i
København
og
Roskilde
Universitetscenter
Desuden
bidrager
Københavns
Universitet
Danmarks
Tekniske
Universitet
Den
Kongelige
Veterinær
og
Landbohøjskole
Malm
H
gskola
og
Danmarks
Designskole
til
uddannelserne
IT
højskolen
afsluttede
i
2000
formelle
samarbejdsaftaler
med
de
nævnte
institutioner
sådan
at
alle
samarbejder
nu
er
dækket
af
samarbejdsaftaler
Fysisk
finder
undervisningen
på
kandidatlinien
i
Tværfaglig
IT
udvikling
sted
på
RUC
Undervisningen
på
de
øvrige
linier
også
linien
i
Elektronisk
handel
foregår
hovedsageligt
på
IT
højskolen
på
Glentevej
Studieordning
Hen
over
sommeren
kom
studieordningerne
for
kandidat
diplom
og
masteruddannelserne
på
plads
Arbejdet
foregik
i
interimstudienævnets
regi
og
indebar
mange
gode
diskussioner
om
samarbejde
mellem
kandidatlinierne
og
de
studerendes
muligheder
for
tværfaglighed
Studieordningerne
kan
findes
på
IT
højskolen
hjemmeside
på
siden
http
www
it
c
dk
pub
db
96
html
Kandidatstudieordningen
er
udarbejdet
som
en
samlet
ordning
for
alle
6
linier
for
at
sikre
at
de
fortsat
er
tæt
knyttet
til
hinanden
selvom
2
linier
er
udliciterede
til
henholdsvis
Roskilde
Universitetscenter
og
Handelshøjskolen
Alle
de
studerende
er
indskrevet
ved
IT
højskolen
og
det
er
vigtigt
at
studieordningen
understøtter
de
studerendes
mulighed
for
at
vælge
kurser
fra
det
kursuskatalog
der
er
fælles
for
alle
6
kandidatliner
Image3
jpg
Perioden
med
interimstudienævn
fik
en
ende
da
der
i
efteråret
blev
afholdt
valg
til
studienævnene
På
Roskilde
Universitetscenter
er
der
valgt
et
studienævn
for
kandidatlinien
Tværfaglig
IT
på
Handelshøjskolen
er
der
valgt
et
studienævn
for
kandidatlinien
Elektronisk
Handel
og
på
IT
højskolen
et
studienævn
for
master
og
diplomuddannelserne
samt
kandidatlinerne
i
Softwareudvikling
Internetteknologi
Multimedieteknologi
og
Design
Kommunikation
og
Medier
Alle
3
studienævn
er
valgt
af
og
blandt
undervisere
og
studerende
på
de
respektive
uddannelser
linier
Kandidatuddannelsen
hører
således
under
3
forskellige
studienævn
For
at
koordinere
arbejdet
og
sikre
fortsat
konsensus
mødes
de
3
studieledere
regelmæssigt
med
direktøren
for
IT
højskolen
Optagelse
For
at
blive
optaget
på
IT
højskolens
kandidatstudium
skal
man
have
en
bacherlorgrad
eller
tilsvarende
uddannelse
Kandidatstudiet
er
et
2
årigt
fuldtidsstudium
og
betegnelsen
for
de
nye
kandidater
er
cand
it
For
at
blive
optaget
på
IT
højskolens
masteruddannelse
skal
man
have
en
bachelorgrad
eller
tilsvarende
uddannelse
samt
mindst
2
års
relevant
erhvervserfaring
Søgning
og
optag
1999
2003
excl
tidligt
frafald
Regn
skab
Regn
skab
Budget
Budget
Budget
Budget
1999
2000
2000
2001
2002
2003
Kandidatuddannelserne
Ansøgere
159
504
Optagne
124
325
326
390
405
405
Master
og
diplomuddannelserne
Ansøgere
40
125
Optagne
21
46
58
120
180
210
Optagne
i
alt
145
371
384
510
585
615
IT
højskolen
oplevede
meget
stor
interesse
for
kandidatstudiet
i
2000
Til
gengæld
var
søgningen
på
master
og
diplomuddannelserne
under
måltallene
Hvis
ordinær
og
åben
uddannelse
regnes
under
t
har
IT
højskolen
næsten
levet
op
til
måltallene
for
optag
i
2000
IT
højskolen
kunne
også
i
2000
konstatere
at
de
studerende
der
blev
optaget
havde
vidt
forskellige
uddannelsesmæssige
baggrunde
Det
er
centralt
for
IT
højskolen
fortsat
at
kunne
rekruttere
studerende
med
en
bred
vifte
af
bacheloruddannelser
De
nye
uddannelser
tiltrækker
i
rimeligt
omfang
kvinder
idet
ca
1
3
af
de
studerende
er
kvinder
Fordelingen
af
de
indskrevne
studerende
var
ved
udgangen
af
2000
Image4
jpg
Kvinder
Mænd
Ialt
Kandidat
142
307
449
Master
og
diplom
17
37
54
Optag
fordelt
efter
linier
1999
2001
Kandidat
1999
2000
2001
budget
I
alt
ultimo
2001
Design
Kommunikation
og
Medier
43
78
90
210
Tværfaglig
IT
15
43
42
100
Internetteknologi
0
40
58
90
Multimedieteknologi
0
22
33
40
Softwareudvikling
32
71
92
185
Elektronisk
Handel
34
71
75
175
124
325
390
800
Åben
uddannelse
1999
2000
2001
budget
I
alt
ultimo
2001
Design
Kommunikation
og
Medier
13
15
25
Multimedieteknologi
1
5
5
Internetteknologi
4
5
8
Softwareudvikling
21
12
20
50
Diplom
i
Informationsteknologi
0
16
75
90
21
46
120
178
I
alt
optaget
145
371
510
978
Åben
uddannelse
IT
højskolen
har
i
2000
begyndt
et
udviklingsarbejde
der
sætter
fokus
på
åben
uddannelse
Der
er
ansat
en
udviklingsleder
som
har
det
som
sin
særlige
opgave
at
udvikle
de
åbne
uddannelser
på
IT
højskolen
Som
konsekvens
startede
IT
højskolen
pr
februar
2001
diplom
og
masteruddannelser
som
fleksibel
uddannelse
hvilket
indebærer
undervisning
i
weekender
og
ikke
i
almindelig
arbejdstid
og
brug
af
e
learning
STÅ
produktion
IT
højskolen
modtager
betaling
fra
Undervisningsministeriet
efter
antallet
af
producerede
STudenterÅrsværk
STÅ
på
lige
fod
med
de
øvrige
universiteter
Antallet
af
STÅ
opgøres
ud
fra
antallet
af
beståede
eksaminer
I
det
første
afregningsår
1
10
1999
til
30
9
2000
har
IT
højskolen
haft
følgende
STÅ
produktion
Antal
STÅ
Ordinært
indskrevne
kandiatstuderende
148
Enkeltfagsstuderende
indskrevet
ved
andre
institutioner
3
Master
og
diplomstuderende
17
I
alt
168
For
de
indskrevne
kandidatstuderende
på
IT
højskolen
svarer
STÅ
produktionen
til
0
76
STÅ
pr
indskreven
helårsstuderende
IT
højskolens
forventning
var
en
STÅ
produktion
pr
helårsstuderende
på
0
85
Den
faktiske
STÅ
produktion
er
lidt
under
det
forventede
men
tilfredsstillende
De
foreløbige
tal
fra
vintereksamen
2000
2001
viser
en
produktion
på
ca
0
72
STÅ
pr
indskrevet
helårsstuderende
IT
højskolens
første
erfaringer
med
frafald
fra
kandidatstudierne
er
positivt
Der
tegner
sig
følgende
billede
Frafald
fra
kandidatuddannelserne
Linie
Efterår
1999
Forår
2000
Efterår
2000
Forår
2001
Ind
skrevne
Optag
Frafald
1
3
2001
Optag
Frafald
1
3
2001
Optag
Frafald
1
3
01
Optag
pr
1
3
2001
Design
kommunikation
medier
43
3
35
1
43
1
39
155
Tværfaglig
IT
15
13
13
1
30
3
21
61
Internetteknologi
0
20
1
20
1
17
55
Multimedieteknologi
0
9
1
13
2
14
33
Softwareudvikling
32
4
30
41
4
39
134
Elektronisk
Handel
34
3
31
2
40
34
134
I
alt
124
23
138
6
187
11
164
572
Frafaldn
senere
er
optaget
på
en
anden
linie
14
3
1
Reelt
frafald
9
3
10
22
IT
højskolen
har
haft
ualmindelig
mange
og
store
problemer
med
at
anvende
det
studieadministrative
system
på
Handelshøjskolen
som
IT
højskolen
har
købt
sig
adgang
til
Manglende
instruktion
har
ført
til
en
række
fejlregisteringer
i
systemet
Disse
fejl
i
det
studieadministrative
system
har
bl
a
medført
at
IT
højskolen
ikke
har
modtaget
afregning
for
alle
de
STÅ
der
er
blevet
produceret
i
optjeningsåret
2000
IT
højskolen
forventer
at
få
afregning
for
disse
STÅ
i
2001
Evalueringssystem
IT
højskolen
udviklede
i
2000
et
Internetbaseret
evalueringssystem
som
de
studerende
bruger
til
at
evaluere
IT
højskolens
kurser
og
undervisere
Evalueringen
blev
gennemført
to
gange
n
gang
i
foråret
og
n
gang
i
efteråret
Evalueringen
viste
at
der
er
meget
stor
tilfredshed
blandt
de
studerende
for
at
gå
på
IT
højskolen
På
spørgsmålet
Overordnet
konklusion
Dette
er
et
kursus
jeg
er
er
glad
for
var
gennemsnittet
i
foråret
4
9
på
en
skala
fra
1
til
6
På
spørgsmålet
Overordnet
konklusion
Dette
er
en
underviser
jeg
er
glad
for
var
gennemsnittet
i
foråret
5
16
igen
på
en
skala
fra
1
til
6
Evalueringen
viste
imidlertid
også
at
der
resterer
et
stort
arbejde
for
IT
højskolen
med
at
håndtere
de
udfordringer
der
opstår
ved
at
immatrikulere
studerende
med
mange
forskellige
bachelorgrader
Konklusion
Det
er
lykkedes
at
fortsætte
udbygningen
af
de
uddannelser
der
blev
etableret
i
1999
både
hvad
angår
fagudbud
og
studerende
De
studerende
rapporterer
stor
tilfredshed
med
uddannelserne
Dog
bør
IT
højskolen
i
2001
søge
at
øge
optaget
på
åben
uddannelse
markant
og
der
bør
arbejdes
med
en
klarere
profilering
af
de
enkelte
linier
og
studieaktiviteter
1
3
Forskning
på
IT
højskolen
Rekruttering
Nedenstående
tabel
viser
udviklingen
i
forskerstaben
på
IT
højskolen
Ultimo
1999
Tilgang
2000
Fratrådt
2000
Ultimo
2000
Ph
d
stud
4
15
1
18
Amanuneser
1
2
1
2
Forskningsass
1
2
3
0
Adjunkter
3
3
1
5
Lektorer
9
4
0
13
Professorer
1
0
0
1
Forskningsafdelinger
For
at
sætte
fokus
på
forskningen
foretog
IT
højskolen
i
2000
en
organisering
af
alle
medarbejdere
med
forskningspligt
Forskerne
blev
inddelt
i
forskningsafdelinger
i
henhold
til
de
typer
af
mål
de
forfølger
med
deres
forskning
snarere
end
efter
fagområde
Hver
gang
en
forskningsafdeling
bliver
oprettet
aftales
det
også
hvornår
den
skal
nedlægges
Det
sker
for
at
bidrage
til
dynamikken
i
forskningen
Hver
forskningsafdeling
ledes
af
en
forskningsafdelingsleder
som
er
udpeget
af
direktøren
Foruden
at
være
ansvarlig
for
definition
af
afdelingens
mål
er
afdelingslederen
personaleleder
for
afdelingen
Der
er
i
2000
etableret
fire
forskningsafdelinger
der
skal
eksistere
i
tre
år
Afdeling
for
design
og
brug
af
IT
systemer
Forsker
i
systemudvikling
og
samspillet
mellem
IT
brugere
og
arbejdsorganisering
Afdeling
for
digital
æstetik
og
kommunikation
Forsker
i
æstetiske
kulturelle
sociale
og
kommunikative
aspekter
af
IT
fænomener
Innovationsafdelingen
Udvikler
højteknologiske
forskningsresultater
og
omsætter
dem
til
nye
realiserbare
teknologier
Forskningsområderne
omfatter
datamatsyn
grafik
multimedieteknologi
programmeringssprog
formel
verifikation
indlejret
software
og
nye
former
for
interaktion
Teoriafdelingen
Grundforskning
i
algoritmik
kompleksitetsteori
samt
semantik
og
logik
i
programmeringssprog
De
fire
afdelinger
har
formuleret
målbeskrivelser
og
visioner
som
i
uddrag
kan
findes
på
1
www
it
c
dk
under
Forskning
Forskningsprojekter
IT
højskolen
har
i
2000
været
hjemsted
for
9
forskningsprojekter
med
ekstern
finansiering
Projekt
Finansieringskilde
Recource
Constrained
Embedded
Software
Forskningsstyrelsen
Informationsteknoligprogrammet
Verification
of
embedded
Systems
Statens
Teknisk
Videnskabelige
Forskningsråd
Design
og
brug
af
Interaktive
Web
Applikationer
Forskningsstyrelsen
Informationsteknologiprogrammet
Explain
Center
for
IT
forskning
Øjenstyret
IT
IT
og
Forskningsministeriet
Ph
d
vejledning
DTU
IDAK
projektet
Industriens
Uddannelsesfond
Computing
Natural
Shape
Forskningsstyrelsen
Informationsteknologiprogammet
Effektive
beregningsmetoder
Direktør
Ib
Henriksens
fond
Effektive
databasesystemer
Statens
Naturvidenskabelige
Forskningsråd
De
9
forskningsprojekter
omsatte
for
2
9
mio
kr
i
2000
Det
er
IT
højskolens
mål
at
forøge
antallet
af
eksternt
finansierede
forskningsprojekter
i
de
kommende
år
IT
højskolen
vil
særligt
søge
at
iværksætte
projekter
med
private
virksomheder
for
at
fremme
samarbejdet
Væksten
i
antal
og
omfang
af
eksternt
finansierede
forskningsprojekter
vil
ske
i
takt
med
væksten
i
fastansat
videnskabeligt
personale
Forskningspublikationer
IT
højskolen
har
anvendt
en
relativ
lille
del
af
sine
samlede
udgifter
i
2000
til
forskning
Forskningsmidlerne
er
blevet
anvendt
dels
til
forskning
på
IT
højskolen
dels
til
forskning
på
de
institutioner
som
IT
højskolen
har
indgået
samarbejdsaftaler
med
Fordelingen
af
forskningsmidlerne
og
produktionen
af
forskningspublikationer
har
været
som
følger
Forskningsmidler
Antal
publikationer
HHK
RUC
DTU
KVL
KU
3
6
mio
kr
13
IT
højskolen
5
9
mio
kr
39
I
alt
9
5
mio
kr
52
Opfindelser
og
nyttiggørelse
af
forskning
Flere
forskere
på
IT
højskolen
har
været
med
til
eller
er
i
færd
med
at
nyttiggøre
forskningsresultater
gennem
start
af
egen
virksomhed
Disse
virksomheder
beskæftiger
sig
med
at
omsætte
matematisk
baseret
teoretisk
forskning
til
konkrete
produkter
inden
for
områderne
programanalyse
verifikation
af
indlejrede
systemer
og
billedanalyse
IT
højskolen
lejer
i
øjeblikket
lokaler
ud
til
disse
firmaer
Sammenfatning
Etableringen
af
de
fire
forskningsafdelinger
er
udtryk
for
en
opnået
bred
enighed
blandt
forskerne
om
hvordan
forskningen
skal
organiseres
og
ledes
Forskningen
på
Glentevej
har
givet
anledning
til
et
rimeligt
antal
publikationer
i
betragtning
af
hvor
stor
en
opgave
det
har
været
at
opbygge
det
store
kursusudbud
1
4
Opbygning
af
organisationen
Der
er
i
2000
indført
følgende
organisation
organisation
gif
Ledelsesgruppen
består
af
lederne
af
de
9
afdelinger
direktøren
direktionsassistenten
studielederen
og
lederen
af
åben
uddannelse
Ledelsesgruppen
mødes
ugentligt
De
medlemmer
af
ledelsesgruppen
der
ikke
har
ledelseserfaring
gennemgår
formaliserede
lederudviklingskurser
På
nær
IT
afdelingen
der
savner
højtuddannet
arbejdskraft
er
de
administrative
afdelinger
i
løbet
af
2000
øget
med
henblik
på
at
kunne
håndtere
en
kraftig
vækst
i
aktivitetsniveauet
Det
er
tanken
at
afdelingerne
i
løbet
af
første
halvdel
af
2001
skal
nå
en
størrelse
der
kan
håndtere
væksten
frem
til
indflytningen
i
Ørestaden
i
2003
Konklusion
Det
er
lykkedes
at
etablere
ni
velfungerende
afdelinger
og
få
en
ledelsesstruktur
der
befordrer
samarbejde
på
tværs
i
organisationen
og
er
gearet
til
at
håndtere
kraftig
vækst
1
5
IT
højskolen
i
Ørestad
Samtidig
med
vedtagelsen
af
oprettelsen
af
IT
højskolen
i
København
blev
det
besluttet
at
IT
højskolens
fremtidige
permanente
placering
skal
være
i
Ørestaden
sammen
med
udbygning
af
Københavns
Universitet
Amager
Danmarks
Radio
og
Det
kgl
Bibliotek
Rigsarkivet
med
flere
Til
IT
højskolens
1
byggeafsnit
samt
en
bebyggelsesplan
for
hele
det
udpegede
konkurrenceområde
i
Universitetskvarteret
i
Ørestad
udskrev
IT
og
Forskningsministeriet
i
marts
2000
en
projektkonkurrence
om
et
nybyggeri
på
ca
20
000m2
Der
blev
indbudt
fem
rådgivergrupper
som
alle
deltog
Dommerkomit
en
udpegede
den
20
juni
i
enighed
et
forslag
udarbejdet
af
Arkitekt
Henning
Larsens
Tegnestue
i
samarbejde
med
Ingeniørfirmaet
Carl
Bro
som
det
bedste
I
dommerbetænkningen
stod
bl
a
Det
har
generelt
været
skuffende
at
der
i
konkurrencens
besvarelser
ikke
fandtes
originale
bud
på
hvordan
undervisnings
og
kontorområder
fysisk
skulle
udformes
inspireret
af
skolens
høje
informationsteknologiske
sigte
Komit
en
har
således
favoriseret
forslag
der
dels
var
robuste
nok
til
at
tåle
en
bearbejdning
i
dialog
med
skolens
brugere
og
dels
forslag
der
i
deres
konceptuelle
udgangspunkt
klarest
formulerede
den
ønskede
mulighed
for
tætte
kontakter
og
interaktion
mellem
studerende
undervisere
forskere
og
gæster
på
tværs
af
undervisningens
forskellige
linier
Forslag
nr
4
udtrykker
en
således
klar
konceptuel
tanke
Forslaget
er
netop
en
fabulerende
tolkning
af
de
intentioner
som
IT
højskolen
har
defineret
i
konkurrence
programmet
Projektet
vil
igennem
en
bearbejdning
med
brugerne
kunne
forme
et
unikt
og
inspirerende
undervisningsmiljø
dannet
af
en
dialog
imellem
bygningens
funktionelle
undervisningsprogram
og
et
overbevisende
arkitektonisk
formsprog
der
klart
udtrykker
vores
tid
og
Ørestaden
som
et
særligt
sted
i
det
21
århundrede
Image5
jpg
IT
højskolen
i
Ørestaden
set
fra
vest
Til
at
varetage
IT
højskolens
interesser
i
planlægningsprocessen
har
IT
højskolen
ansat
en
arkitekt
og
en
ingeniør
og
derudover
er
der
blandt
øvrige
ansatte
og
studerende
nedsat
en
brugergruppe
Der
har
været
holdt
mange
møder
med
brugergruppen
som
er
kommet
med
input
til
blandt
andet
indretning
og
størrelsen
på
undervisningslokaler
Brugergruppens
møder
har
mest
været
interne
men
et
par
gange
har
arkitekterne
deltaget
for
at
fremlægge
nye
tegninger
Desuden
har
der
været
afholdt
ekskursioner
til
andre
byggerier
for
at
se
på
byggematerialer
og
stil
samt
naturlig
ventilation
Projekteringen
startede
i
løbet
af
sommeren
2000
med
udarbejdelsen
af
et
lokalplan
forslag
for
området
over
IT
højskolens
1
og
2
byggeafsnit
samt
en
forskerpark
Forslaget
er
nu
godkendt
af
Københavns
Kommunes
Borgerrepræsentation
og
sendt
i
offentlig
høring
IT
højskolen
udarbejdede
i
samarbejde
med
byggeprocesledelsen
et
byggeprogram
for
IT
højskolens
1
byggeafsnit
Det
blev
udsendt
18
9
2000
På
dette
grundlag
udfærdigede
rådgiverne
et
dispositionsforslag
der
blev
kommenteret
og
revideret
i
løbet
af
januar
2001
Den
fortsatte
projektering
er
nu
i
gang
og
der
planlægges
udbud
af
byggeriet
i
sommeren
2001
Byggeriet
forventes
færdiggjort
medio
2003
1
6
Sponsorater
LinuxLab
IT
højskolen
blev
i
2000
udvidet
med
en
ny
IT
afdeling
Linux
laboratoriet
LinuxLab
Denne
afdeling
er
den
første
af
sin
art
i
Danmark
Etableringen
af
LinuxLab
blev
gjort
mulig
gennem
et
større
sponsorat
fra
IBM
Linux
laboratoriet
blev
åbnet
den
1
december
2000
Åbningen
blev
foretaget
af
forskningsminister
Birte
Weiss
IT
højskolens
direktør
Mads
Tofte
IT
højskolens
bestyrelsesformand
Mogens
Munk
Rasmussen
og
direktør
Ole
Haaber
fra
IBM
I
åbningen
deltog
endvidere
IT
C
ansatte
IT
C
studerende
pressen
græsrødder
og
interesserede
virksomheder
Efter
den
officielle
åbning
fremviste
IT
medarbejdere
Linux
systemerne
og
der
var
åbent
hus
i
Linux
Laboratoriet
hvor
udstyret
blev
vist
Linux
er
et
åbent
system
i
modsætning
til
mange
kommercielle
produkter
der
er
lukkede
systemer
hvor
brugeren
ikke
har
mulighed
for
at
ændre
og
tilpasse
systemet
til
egne
behov
Baggrunden
for
at
oprette
Linux
laboratoriet
er
en
interesse
for
og
opbakning
omkring
Linux
og
Open
Source
samt
behovet
for
en
centreret
viden
omkring
Linux
i
et
IT
stærkt
område
som
Øresundsregionen
i
dag
og
i
fremtiden
Fra
Dansk
side
er
IBM
gået
kraftigt
ind
i
udbredelsen
af
kendskabet
til
Linux
og
IBM
har
doneret
følgende
udstyr
til
IT
højskolens
LinuxLab
2
Netfinity
servere
6
Netvista
workstations
3
IBM
Thinkpads
4
IBM
WordPads
3
UltraPort
cameras
og
2
smartcard
readers
Image6
jpg
Efter
åbningen
var
der
BuzzTalk
med
paneldiskussion
over
emnet
Linux
i
undervisningssektoren
og
i
erhvervslivet
Alle
interesserede
kan
hver
torsdag
få
undervisning
i
Linux
og
Linux
programmel
kl
15
17
Linux
anvendes
af
mange
af
IT
højskolens
forskere
og
lærere
og
IT
driften
er
hovedsagelig
Linux
baseret
1
7
IT
højskolen
og
omverdenen
Det
er
IT
højskolens
mål
at
være
i
tæt
kontakt
med
det
omgivende
samfund
IT
højskolens
åbne
foredragsrække
BuzzTalk
har
eksisteret
siden
IT
højskolens
start
i
1999
og
er
fortsat
med
stor
succes
både
hvad
angår
foredragsholdere
der
er
interesserede
i
at
holde
en
BuzzTalk
og
tilhørere
BuzzTalk
s
fungerer
som
en
del
af
IT
højskolens
kontakt
med
både
erhversliv
og
omverden
idet
det
er
eksterne
foredragsholdere
fra
enten
erhvervslivet
eller
andre
forskningsinstitutioner
der
kommer
og
præsenterer
et
emne
eller
en
id
der
relaterer
sig
til
den
forskning
og
undervisning
der
foregår
på
IT
højskolen
Foredragene
er
åbne
for
offentligheden
og
tiltrækker
højt
kvalificerede
foredragsholdere
Foredragene
finder
sted
hver
fredag
fra
kl
15
15
på
IT
højskolen
og
varer
ca
en
time
Der
afholdes
BuzzTalks
hver
fredag
i
undervisningsperioderne
Antallet
af
deltagere
varierer
fra
30
til
300
DRs
IT
og
videnskabsportal
Orbitalen
IT
højskolen
blev
i
sommeren
2000
kontaktet
af
redaktørerne
bag
Danmarks
Radios
nye
IT
og
videnskabsportal
Orbitalen
www
dr
dk
orbitalen
for
at
diskutere
muligheden
for
et
fremtidigt
samarbejde
I
august
2000
indgik
vi
en
aftale
med
Orbitalen
Det
indebærer
at
en
af
IT
højskolens
forskere
eller
studerende
hver
måned
skriver
en
artikel
til
Orbitalen
om
de
nyeste
trends
inden
for
IT
Målgruppen
er
folk
som
interesserer
sig
for
IT
både
professionelt
og
privat
De
andre
bidragsydere
til
Orbitalen
er
Aktuel
Naturvidenskab
Danmarks
Tekniske
Universitet
Aarhus
Universitet
og
Computerworld
Online
Orbitalen
har
over
500
besøgende
hver
dag
Dette
arrangement
har
vist
sig
at
være
en
glimrende
mulighed
for
at
informere
bredt
om
IT
forskning
og
IT
højskolen
Følgende
artikler
blev
bragt
i
år
2000
Computeren
som
fejlfinder
Algoritmik
IT
vender
Taylor
på
hovedet
og
Virtuelle
verdener
1
8
Nuværende
situation
Der
er
et
stort
samfundsmæssigt
behov
for
IT
højskolen
Det
viser
de
høje
ansøgertal
Søgningen
til
kandidatuddannelserne
har
været
større
end
oprindelig
forudset
i
IT
og
Forskningsministeriets
rapport
om
styrkelse
af
IT
forskning
og
IT
uddannelse
IT
højskolen
er
tilfreds
med
udviklingen
for
kandidatuddannelserne
Det
er
på
kort
tid
lykkedes
at
skabe
6
nye
kandiatuddannelser
der
oplever
stor
søgning
En
væsentlig
del
af
succesen
skyldes
det
tætte
samarbejde
med
de
øvrige
universiteter
i
området
Det
undervisningsmæssige
samarbejde
har
løftet
alle
samarbejdets
parter
op
på
et
højere
aktivitetsniveau
De
forskningsmidler
som
i
første
omgang
blev
knyttet
til
undervisningsmidlerne
har
derimod
ikke
givet
anledning
til
specielt
mange
publikationer
Højskolen
må
i
løbet
af
2001
nøje
overveje
om
samarbejdet
i
fremtiden
udelukkende
skal
omfatte
undervisningen
Under
alle
omstændigheder
må
aftalerne
om
udlicitering
af
uddannelser
revideres
fordi
IT
højskolens
succes
gør
de
nuværende
aftaler
hvor
hver
undervisningskrone
følges
af
en
forskningskrone
for
dyre
i
fremtiden
Antallet
af
optagne
på
Master
og
diplomuddannelserne
har
ikke
levet
op
til
forventningerne
Først
og
fremmest
fordi
IT
højskolen
har
stillet
for
store
krav
til
de
studerendes
fysiske
tilstedeværelse
på
Glentevej
Disse
krav
bliver
nu
lempet
ved
at
udvikle
nye
kursusformer
der
ikke
kræver
den
samme
grad
af
fysisk
tilstedeværelse
IT
højskolen
er
stadig
i
opbygningsfasen
hvilket
forventes
at
fortsætte
indtil
etableringen
i
Ørestaden
i
2003
har
fundet
sted
Det
stiller
store
krav
til
organisationen
såvel
indenfor
det
undervisningsmæssige
som
indenfor
det
administrative
område
idet
der
skal
fastlægges
rutiner
og
strategier
Den
interne
organisering
er
blevet
styrket
betydeligt
i
løbet
af
2000
og
i
løbet
af
2001
vil
der
ske
en
yderligere
styrkelse
for
at
skabe
en
organisation
der
er
gearet
til
de
kommende
års
vækst
I
øjeblikket
er
økonomien
god
IT
højskolen
gik
ud
af
2000
med
en
opsparing
på
14
mio
kr
Resultatet
skyldes
flere
indtægter
fra
Undervisnings
og
IT
og
Forskningsministeriet
end
forventet
og
færre
udgifter
på
IT
højskolen
2000
har
fortsat
været
præget
af
meget
store
etableringsudgifter
Investeringerne
i
lokaler
og
udstyr
har
været
meget
store
og
kigger
man
på
omkostningen
ved
at
producere
et
studenterårsværk
1
STÅ
er
udgiften
faktor
2
større
end
taksameterindtægten
fra
Undervisningsministeriet
En
stor
del
af
forklaringen
ligger
i
det
særlige
statslige
regnskabsprincip
om
at
alle
investeringer
straks
afskrives
IT
højskolen
skal
i
de
kommende
år
være
bevidst
om
at
udnytte
de
fysiske
rammer
til
det
yderste
for
at
skabe
størst
muligt
økonomisk
råderum
for
de
undervisningsmæssige
kerneaktiviteter
Image7
jpg
2
Driftsregnskab
Resultatopgørelse
1999
2000
2000
2000
2001
Mio
kr
3
decimaler
årets
priser
Regnskab
Regnskab
Internt
budget
Afvigelse
Budget
Indtægter
38
991
61
914
60
967
0
947
79
880
Finanslov
31
100
43
700
42
800
0
899
44
692
Driftsindtægter
7
891
18
214
18
167
0
048
35
188
Udgifter
27
652
59
237
66
867
7
630
89
073
Lønninger
6
931
24
088
28
289
4
201
37
505
Øvrige
driftsudgifter
20
721
35
149
38
578
3
429
51
568
Resultat
11
339
2
677
5
900
8
577
9
193
Akkumuleret
resultat
11
339
14
016
5
439
8
577
4
823
Regnskabet
for
2000
udviser
et
overskud
på
kr
2
677
mio
kr
mod
et
budgetteret
underskud
på
5
9
mio
kr
Forskellen
mellem
budget
og
regnskab
skyldes
at
opslåede
stillinger
er
blevet
besat
i
et
langsommere
tempo
end
forudset
og
at
IT
højskolen
ved
regnskabets
afslutning
skyldte
eksterne
samarbejdspartnere
1
4
mio
kr
for
aktiviteter
gennemført
i
2000
Det
interne
budget
var
på
indtægtssiden
0
947
mio
kr
lavere
end
den
endelige
finanslov
Forskellen
skyldtes
at
det
interne
budget
ikke
opererede
med
indtægter
til
patentering
og
at
budgetteringen
af
ph
d
bevillingen
blev
ændret
i
årets
løb
Hele
den
akkumulerede
opsparing
findes
i
den
ordinære
virksomhed
underkonto
10
En
stor
del
af
den
akkumulerede
opsparing
forventes
anvendt
i
2001
til
den
fortsatte
etablering
af
højskolen
Forskningsaktiviteten
forventes
at
vokse
i
2001
som
følge
af
ansættelse
af
flere
faste
videnskabelige
medarbejdere
IT
højskolen
har
i
1999
og
2000
ikke
drevet
kommerciel
indtægtsdækket
virksomhed
Det
budget
der
er
vist
i
tabellen
ovenfor
er
det
budget
der
er
vedtaget
af
bestyrelsen
Efter
at
budgettet
er
vedtaget
har
IT
højskolen
modtaget
ekstra
bevillinger
bl
a
som
følge
af
udmøntningen
af
flerårsaftalen
på
universitetsområdet
Disse
bevillinger
indgår
ikke
i
det
viste
budget
I
bilagstabel
1
side
26
findes
et
formålsopdelt
regnskab
Indtægterne
for
1999
og
2000
er
sammensat
af
følgende
poster
Indtægterne
specificeret
Mio
kr
3
decimaler
årets
priser
1999
2000
Resultatopgørelse
IT
og
Forskningsministeriet
etableringsmidler
14
000
18
900
IT
og
Forskningsministeriet
forskningsmidler
10
000
12
700
IT
og
Forskningsministeriet
kapitaludgifter
og
grundbevilling
7
000
8
100
Ph
d
uddannelse
0
100
4
009
Undervisningsministeriet
udvikling
af
nye
uddannelser
7
000
0
000
Deltagergebyr
åben
uddannelse
0
200
0
945
Taxameterindtægter
0
000
13
527
Afrundingsdifference
i
Finansloven
0
200
Tilskudsfinansieret
forskningsvirksomhed
0
691
2
874
Driftsindtægter
0
000
0
488
Interne
statslige
overførsler
0
000
0
171
Indtægter
i
alt
38
991
61
914
Image8
jpg
3
Resultatanalyse
3
1
Kommentar
til
resultat
IT
højskolens
udgiftsstruktur
har
i
2000
været
præget
af
at
højskolen
fortsat
er
under
etablering
IT
højskolen
har
udvidet
sit
lejemål
på
Glentevej
fra
2
til
4
etager
Denne
udvidelse
har
ført
til
større
huslejeudgifter
men
også
til
betragtelige
udgifter
til
indretning
af
lokalerne
Isoleret
set
har
højskolen
haft
en
for
stor
lokalekapacitet
i
2000
men
med
den
planlagte
stigning
i
studentertallet
i
de
kommende
år
vil
lokalekapaciteten
gradvis
komme
til
at
matche
studentermængden
I
det
formålsfordelte
udgiftsregnskab
bilagstabel
1
opgøres
undervisningsudgifterne
til
20
376
mio
kr
i
2000
Dette
beløb
skal
sammenholdes
med
en
produktion
på
163
STÅ
Gennemsnitsudgiften
for
1
STÅ
var
125
000
kr
i
2000
Denne
udgift
skal
sammenholdes
med
at
taxameterindtægten
var
63
449
kr
pr
STÅ
i
2000
De
store
undervisningsomkostninger
skyldes
dels
at
der
er
investeret
meget
i
at
udvikle
nye
kurser
dels
at
kapacitetsudnyttelsen
var
lav
p
g
a
relativt
få
studerende
små
holdstørrelser
De
store
undervisningsudgifter
må
betragtes
som
en
helt
nødvendig
startinvestering
men
på
sigt
skal
udgifterne
bringes
ned
på
et
niveau
omkring
50
000
kr
pr
STÅ
taxameterindtægten
skal
også
medfinansiere
udgifter
til
bygningsdrift
og
administration
3
2
Antal
optagne
og
antal
studerende
1999
2003
Med
udgangspunkt
i
den
nuværende
efterspørgsel
efter
uddannelserne
forventer
IT
højskolen
følgende
udvikling
i
studenteroptagsprognosen
frem
til
2003
1999
2000
2001
2002
2003
Kandidater
124
325
390
405
405
Master
21
31
40
60
75
Diplom
0
19
80
120
135
I
alt
145
371
510
585
615
Prognosen
for
antal
samtidigt
indskrevne
studerende
frem
til
2003
er
følgende
1999
2000
2001
2002
2003
Kandidater
124
449
750
900
1025
Master
21
55
90
130
175
Diplom
0
19
90
200
300
I
alt
145
523
930
1230
1500
Åben
uddannelse
Som
følge
af
den
svage
intersse
der
var
på
diplomuddannelsen
til
studiestart
foråret
2000
valgte
IT
højskolen
ikke
at
udbyde
denne
i
efteråret
2000
I
stedet
blev
der
nedsat
en
arbejdsgruppe
som
skulle
komme
med
forslag
til
hvorledes
undervisningen
skulle
tilrettelægges
for
at
den
kunne
tilfredsstille
de
studerendes
ønsker
Som
led
i
IT
højskolens
prioritering
af
åben
uddannelse
blev
der
ansat
en
udviklingsleder
som
skal
stå
for
udviklingen
af
åben
uddannelse
herunder
den
fleksible
undervisning
og
andre
specielt
tilrettelagte
kurser
markedsføring
voksen
og
erhvervspædagogik
samarbejdet
med
eksterne
parter
mm
Den
største
ændring
af
de
åbne
uddannelser
er
at
de
fra
februar
2001
er
tilrettelagt
delvist
som
fleksibel
undervisning
I
foråret
2001
udbydes
kurset
Grundlæggende
Programmering
som
fleksibel
undervisning
hvilket
er
en
blanding
af
almindelig
undervisning
n
lørdag
hver
måned
og
undervisning
over
Internettet
I
de
følgende
semestre
vil
flere
kurser
blive
udbudt
som
fleksibel
undervisning
således
at
diplomuddannelsen
vil
kunne
gennemføres
med
kun
n
ugentlig
undervisningsdag
IT
højskolen
vurderer
at
denne
omlægning
har
været
en
væsentlig
årsag
til
at
der
til
semesterstart
forår
2001
kom
45
ansøgninger
til
diplomstudiet
mod
30
året
før
Enkeltfagskurser
under
åben
uddannelse
er
et
nyt
forretningsområde
som
IT
højskolen
har
planlagt
i
år
2000
og
udbudt
med
første
optag
pr
1
februar
2001
Erhvervsaktive
enkeltfagsstuderende
vil
fremover
kunne
følge
en
række
af
IT
højskolens
dagskurser
for
kandidatstuderende
under
den
såkaldte
tompladsordning
hvor
enkeltfagsstuderende
bliver
optaget
under
forudsætning
af
at
der
er
ledige
pladser
på
kurset
når
kandidat
diplom
og
masterstuderende
er
blevet
optaget
Enkeltfagsstuderende
har
også
haft
mulighed
for
at
søge
om
optagelse
på
kurser
med
fleksibel
undervisning
Desuden
er
der
udbudt
2
kurser
tilrettelagt
som
aften
og
weekendkurser
specielt
for
studerende
ved
åben
uddannelse
Af
de
130
personer
som
søgte
om
optagelse
på
enkeltfag
søgte
langt
de
fleste
om
optagelse
på
aftenkurset
weekendkurserne
eller
kurset
med
fleksibel
undervisning
IT
højskolen
vil
derfor
i
2001
intensivere
udbudet
af
ikke
dagskurser
med
henblik
på
at
øge
antallet
af
studerende
ved
åben
uddannelse
IT
højskolen
har
siden
efteråret
2000
arbejdet
sammen
med
Dansk
Magisterforenings
Efteruddannelse
DME
om
at
markedsføre
af
et
weekend
kursus
Samarbejdet
betød
at
antallet
af
studerende
på
kurset
blev
fordoblet
Samarbejdet
med
DME
videreføres
og
udbygges
i
2001
3
3
Nuværende
og
fremtidige
lokaleforhold
IT
højskolen
overtog
i
foråret
1999
lejemålet
på
Glentevej
efter
Den
Grafiske
Højskole
i
Københavns
Nordvestkvarter
For
at
opfylde
behovet
for
undervisningslokaler
auditorier
m
v
var
en
større
ombygning
imidlertid
påkrævet
For
at
dække
det
stigende
behov
for
undervisningslokaler
og
kontorer
besluttede
IT
højskolen
i
december
1999
at
leje
2
og
3
salen
på
Glentevej
Lejemålet
blev
overtaget
efter
Niels
Brocks
Handelsskole
Det
nuværende
lejemål
på
Glentevej
udgør
netto
7
616
m2
4
Øvrige
indsatsområder
Foruden
at
lægge
stor
vægt
på
at
opbygge
et
spændende
forskningsmiljø
og
gode
uddannelser
lægges
der
på
IT
højskolen
vægt
på
følgende
Opbygning
af
organisation
og
ledelse
der
skal
sikre
at
IT
højskolen
kan
forblive
dynamisk
og
fremadrettet
også
udover
den
første
opstartsfase
Der
lægges
vægt
på
at
opbløde
de
traditionelle
skel
mellem
administrative
og
videnskabelige
medarbejdere
De
administrative
medarbejdere
skal
have
indblik
i
hvad
der
rent
organisatorisk
skal
til
for
at
have
et
levende
og
velfungerende
forsknings
og
uddannelsesmiljø
De
videnskabeligt
ansatte
der
pålægges
ledelsesansvar
skal
lære
at
værdsætte
og
udføre
god
ledelse
og
levere
kvalitet
i
forvaltningen
Aktiv
inddragelse
af
de
studerende
i
opbygningen
af
IT
højskolen
i
alle
anliggender
lige
fra
udformingen
af
studierne
til
etablering
af
web
sider
og
udarbejdelse
af
informationsmateriale
til
andre
studerende
Studerende
der
har
lyst
får
i
deres
projekter
lov
til
at
løse
opgaver
der
vil
blive
sat
i
produktion
på
skolen
Forholdet
til
de
studerende
er
baseret
på
tillid
f
eks
er
der
døgnåbent
for
de
studerende
på
IT
højskolen
og
den
kendsgerning
at
IT
højskolen
hovedsagligt
uddanner
voksne
mennesker
der
allerede
har
gennemført
en
bachelorgrad
I
opbygningen
af
administrationen
lægges
der
meget
vægt
på
udvikling
af
gode
IT
systemer
Grundid
en
er
at
administrative
rutiner
skal
være
indbygget
i
brugergrænsefladen
til
IT
højskolens
administrative
systemer
i
modsætning
til
kun
at
foreligge
som
administrative
foreskrifter
Image9
jpg
5
Administration
Personale
IT
højskolen
har
i
år
2000
ansat
et
stort
antal
medarbejdere
såvel
videnskabeligt
personale
og
undervisere
som
administrativt
personale
Ved
udgangen
af
1999
var
der
i
alt
ansat
46
personer
og
ved
udgangen
af
2000
var
tallet
steget
til
117
Antallet
af
ansættelser
har
imidlertid
været
endnu
større
end
71
da
visse
ansættelser
hjælpelærere
og
instruktorer
f
eks
er
års
ansættelser
hvorved
genbesættelser
af
sådanne
stillinger
ofte
forekommer
Alders
og
kønsfordeling
Ultimo
1999
Ultimo
2000
Alder
K
M
I
alt
K
M
I
alt
20
24
0
0
0
3
3
6
25
29
2
15
17
9
40
49
30
34
1
2
3
3
5
8
35
39
2
7
9
6
17
23
40
44
3
3
6
4
4
8
45
49
2
4
6
8
5
13
50
54
2
2
4
3
4
7
55
59
0
1
1
0
2
2
60
64
0
0
0
0
1
1
I
alt
12
34
46
36
81
117
fordeling
26
1
73
9
30
8
69
2
Gennemsnitsalderen
på
IT
højskolen
er
35
år
hvor
det
statslige
gennemsnit
er
41
år
Den
ovenfor
beskrevne
vækst
er
ikke
foregået
i
samme
takt
for
alle
personalegrupper
Personalegruppe
Antal
ultimo
1999
Antal
ultimo
2000
Fuldtids
videnskabelige
medarbejdere
15
21
Deltidsundervisere
9
35
Ph
d
studerende
4
18
Øvrigt
personale
18
43
I
alt
46
117
Det
er
særligt
gruppen
af
deltidsundervisere
og
antallet
af
ph
d
studerende
der
er
vokset
i
2000
Det
større
antal
deltidsundervisere
hænger
snævert
sammen
med
at
undervisningsmængden
er
vokset
voldsomt
uden
at
det
er
blevet
fulgt
af
en
tilsvarende
vækst
i
antallet
af
fastansatte
videnskabelige
medarbejdere
Det
er
meget
glædeligt
at
væksten
i
antallet
af
ph
d
studerende
er
så
stor
De
ph
d
studerende
gennemfører
megen
værdifuld
forskning
og
udgør
et
vækstlag
for
både
IT
højskolen
og
erhvervslivet
Væksten
i
det
øvrige
personale
afspejler
at
den
administrative
struktur
stort
set
er
blevet
bragt
på
plads
i
2000
I
2001
planlægges
der
med
en
betydelig
vækst
i
antallet
af
faste
videnskabelige
medarbejdere
Generelt
sker
ansættelser
på
baggrund
af
opslag
såvel
i
dagspressen
og
i
fagtidsskrifter
som
på
Internettet
Enkelte
midlertidige
ansættelser
er
sket
akut
uden
opslag
Den
hidtil
anvendte
ansættelsespolitik
afspejler
en
klar
vægtning
på
den
enkeltes
kvalifikationer
uden
nogen
form
for
diskrimination
på
køn
alder
etc
I
2000
er
en
stor
del
af
IT
højskolens
fremtidige
organisationsstruktur
faldet
på
plads
herunder
oprettelse
af
forskningsafdelinger
web
redaktion
og
udbygning
af
eksisterende
administrative
afdelinger
Det
har
medført
et
stort
antal
nyansættelser
Til
at
varetage
IT
højskolens
interesser
i
forbindelse
med
Ørestadsbyggeriet
er
der
ansat
en
arkitekt
og
en
ingeniør
På
grund
af
behovet
i
forskningsafdelingerne
er
nye
AC
medarbejdere
ansat
der
og
der
har
været
et
stort
antal
nyansættelser
af
undervisere
hvilket
hænger
sammen
med
at
der
nu
er
både
1
2
og
3
semester
studerede
i
forhold
til
1999
hvor
der
kun
var
1
semester
studerende
Endvidere
er
to
af
de
seks
kandidatlinier
først
startet
i
2000
Dertil
kommer
lanceringen
af
Åben
Uddannelse
som
ligeledes
fandt
sted
i
2000
Da
strukturen
nu
er
fastlagt
vil
stigningen
i
antallet
af
ansatte
inden
for
de
næste
år
især
ligge
inden
for
undervisnings
og
forskningsområderne
idet
disse
områder
ikke
er
færdigudviklet
I
2001
vil
der
også
være
4
semester
studerende
og
som
følge
af
flere
studerende
vil
kursusudbudet
skulle
udbygges
IT
C
s
personalepolitik
har
i
2000
været
på
dagsordenen
i
ledelsesgruppen
og
skal
i
2001
diskuteres
og
nedfældes
Det
forventes
at
personalepolitikken
kommer
til
at
omfatte
både
en
elevpolitik
og
en
klar
positiv
holdning
til
det
rummelige
arbejdsmarked
Indtil
nu
har
IT
højskolen
ikke
ment
det
var
forsvarligt
at
ansætte
elever
men
der
er
heldigvis
blevet
plads
til
en
medarbejder
der
ikke
har
fuld
arbejdsevne
Inden
for
personaleadministration
er
der
i
2000
blevet
etableret
faste
rutiner
for
områder
som
ferie
syge
og
orlovsfravær
flextid
og
afspadsering
deltagelse
i
kurser
mm
Der
er
endvidere
blevet
nedsat
et
sikkerhedsudvalg
der
skal
sikre
korrekte
forhold
i
de
aktuelle
bygninger
såvel
som
i
bygningerne
i
Ørestaden
Sygefravær
Sygefraværet
har
både
i
1999
og
2000
været
beskedent
Dage
1999
2000
Fravær
på
grund
af
sygdom
24
216
Det
gennemsnitlige
sygefravær
pr
fuldtidsansat
på
IT
højskolen
var
i
2000
på
3
4
dage
og
dette
må
betegnes
tilfredsstillende
i
sammenligning
med
statens
som
i
2000
var
på
7
4
5
3
Bestyrelse
Bestyrelsen
er
udpeget
af
forskningsministeren
Koncernchef
og
adm
direktør
Mogens
Munk
Rasmussen
formand
Nykredit
Underdirektør
Kim
Østrup
IBM
Underdirektør
Lillian
Mogensen
ATP
Administrerende
direktør
Preben
Damgaard
Damgaard
Holding
Cand
Polit
Anne
E
Jensen
Rektor
for
Københavns
Universitet
Kjeld
Møllgård
Rektor
for
Danmarks
Tekniske
Universitet
Hans
Peter
Jensen
Rektor
for
Roskilde
Universitetscenter
Henrik
Toft
Jensen
Rektor
for
Handelshøjskolen
i
København
Finn
Junge
Jensen
Image10
jpg
Bilag
Bilagstabeller
Bilagstabel
1
Hovedformålsoversigt
Mio
kr
3
decimaler
årets
priser
1999
2000
Indtægter
Taxameterindtægter
uddannelse
0
000
13
527
Forskningsindtægter
4
691
16
783
Overførselsindtægt
til
kapitalformål
7
000
7
000
Overførselsindtægt
øvrige
formål
26
996
20
000
Ph
d
stipendier
og
ph
d
løn
0
100
2
800
Interne
overførsler
0
000
0
171
Driftsindtægter
0
204
1
433
Afrundingsdifference
på
Finanslov
0
200
Indtægter
i
alt
38
991
61
914
Udgifter
Uddannelse
4
822
20
204
Forskning
2
122
12
886
Generel
ledelse
og
administration
14
114
6
878
Bygningsdrift
3
080
8
272
Øvrige
formål
0
000
0
331
Kapitalformål
3
514
10
495
Interne
overførsler
0
000
0
171
Udgifter
i
alt
27
652
59
237
Årets
overskud
i
alt
11
339
2
677
Bilagstabel
2
Tilskudsfinansieret
forskningsvirksomhed
UK
95
Mio
kr
3
decimaler
1999
2000
Statslige
fonds
og
programmidler
0
691
2
856
EU
og
andre
internationale
tilskudsgivere
0
000
0
000
Øvrige
tilskudsgivere
0
000
0
018
Indtægter
i
alt
0
691
2
874
Bilagstabel
3
Formålsopdelt
regnskab
Total
Mio
kr
3
decimaler
årets
priser
TOTAL
Delformål
1999
2000
2
1
Ordinær
uddannelse
4
822
17
788
2
3
Åben
uddannelse
0
000
2
335
2
8
International
studenterudveksling
0
000
0
082
2
Uddannelse
i
alt
4
822
20
204
1
1
Basisforskning
1
431
9
490
1
2
Tilskudsfinansieret
forskning
0
691
2
875
1
4
Forskeruddannelse
0
000
0
521
1
Forskning
i
alt
2
122
12
886
3
Andre
faglige
formål
i
alt
0
000
0
000
4
1
Bygningsdrift
3
075
8
272
4
2
Generel
ledelse
og
administration
14
114
6
878
4
9
Øvrige
0
005
0
331
4
Fælles
formål
i
alt
17
194
15
481
5
1
Lejemål
3
213
7
966
5
3
Vedligehold
og
mindre
byggearbejder
0
301
2
530
5
Kapitalformål
i
alt
3
514
10
495
6
Institutionsintern
overførselsudgift
0
171
7
Udgift
i
alt
27
652
59
237
Den
viste
sum
kan
afvige
fra
summen
af
de
enkelte
dele
p
g
a
afrunding
Tabel
4
Lønudgift
i
det
formålsopdelte
regnskab
Mio
kr
3
decimaler
årets
priser
TOTAL
Delformål
1999
2000
2
1
Ordinær
uddannelse
2
396
9
645
2
3
Åben
uddannelse
0
000
1
267
2
8
International
studenterudveksling
0
000
0
075
2
Uddannelse
i
alt
2
396
10
996
1
1
Basisforskning
1
302
5
803
1
2
Tilskudsfinansieret
forskning
0
406
1
532
1
4
Forskeruddannelse
0
000
0
315
1
Forskning
i
alt
1
708
7
650
3
Andre
faglige
formål
i
alt
0
000
0
000
4
1
Bygningsdrift
2
827
2
378
4
2
Generel
ledelse
og
administration
0
000
3
318
4
9
Øvrige
0
000
0
124
4
Fælles
formål
i
alt
2
827
5
820
7
Lønudgift
i
alt
6
931
24
466
Note
Nettolønudgiften
for
2000
er
kr
24
088
181
Differencen
kr
378
000
i
forhold
til
ovenstående
skyldes
at
ph
d
stipendier
og
AER
bidrag
er
incl
i
tabel
4
Den
viste
sum
kan
afvige
fra
summen
af
de
enkelte
dele
p
g
a
afrunding
Bilagstabel
5
Drifts
og
overførselsindtægter
fordelt
på
kilder
Mio
kr
med
3
decimaler
Årets
priser
1999
2000
1
1
Ordinær
uddannelse
0
000
12
552
1
3
Åben
uddannelse
0
000
0
975
1
Taxameterindtægter
uddannelse
i
alt
0
000
13
527
2
1
Statslige
fonds
og
programmidler
0
687
2
856
2
3
Øvrige
tilskudsgivere
0
004
0
018
2
Tilskudsfinansieret
forskning
i
alt
0
691
2
874
3
2
Basisbevilling
til
forskning
7
000
12
700
3
3
Forskeruddannelse
taxameter
1
209
4
Forskningsindtægter
i
alt
2
3
1
3
3
7
691
16
783
5
Overførselsindtægter
til
kapitalformål
7
000
7
000
6
1
Overførselsindt
til
øvr
formål
særformål
16
000
18
900
6
2
Grundbevilling
1
000
1
100
6
Overførselsindtægt
øvrige
formål
i
alt
17
000
20
000
7
1
Deltagerbetaling
for
åben
uddannelse
0
200
0
945
7
4
Driftsindtægter
i
øvrigt
0
235
7
Driftsindtægter
i
alt
0
200
1
180
8
1
Stipendiater
tidl
SU
styrelsen
0
500
8
4
Ph
d
løn
0
100
2
300
8
Stipendiater
og
løn
i
alt
0
100
2
800
9
2
Tilskud
i
øvrigt
til
udd
formål
m
v
7
000
0
453
9
Øvrige
tilskud
i
alt
7
000
0
453
10
Inst
intern
statslig
overførselsindtægt
0
171
11
Indtægter
i
alt
38
991
61
914
Inkl
kr
0
200
mio
i
afrundingsdifference
på
Finansloven
Tabel
6
Bevillingsafregning
Nettoudgift
mio
kr
1999
2000
Resultatopgørelse
Bevilling
B
TB
38
787
43
700
Regnskab
27
448
41
022
Bevillingsafvigelse
11
339
2
678
Årets
overskud
11
339
2
678
Akkumuleret
overskud
til
videreførsel
11
339
14
016
Bilagstabel
7
Aktivitetsoplysninger
STÅ
for
uddannelse
Ordinær
uddannelse
1999
2000
1
1
Antal
studerende
124
420
1
2
Antal
STÅ
0
148
2
1
Antal
optagne
pr
1
oktober
124
325
2
3
Gennemsnitsalder
for
optagne
29
1
28
3
2
4
Median
alder
for
optagne
29
5
27
4
3
4
Antal
kandidater
0
0
Åben
efteruddannelse
4
1
Antal
deltagerbetalende
STÅ
0
17
4
2
Færdiguddannede
på
hele
uddannelser
master
diplom
0
0
Forskeruddannelse
5
1
Antal
forskeruddannelsesårsværk
i
alt
0
9
5
2
Antal
forskeruddannelsesstud
pr
1
oktober
i
alt
0
15
5
3
Antal
forskeruddannelsesstud
pr
1
oktober
mænd
0
13
5
4
Antal
forskeruddannelsesstud
pr
1
oktober
kvinder
0
2
Internationaliseringstilskud
6
Studerende
der
udløser
internationaliseringstilskud
0
1
6
1
Indgående
0
0
6
2
Udgående
0
1
N
B
I
tabel
6
er
der
kun
medtaget
oplysninger
om
de
ph
d
studerende
der
arbejder
og
aflønnes
direkte
af
IT
højskolen
IT
højskolen
betaler
for
8
ph
d
studerende
der
arbejder
og
aflønnes
på
Københavns
Universitet
Danmarks
Tekniske
Universitet
Roskilde
Universitetscenter
og
Handelshøjskolen
i
København
Bilagstabel
8
Resultatopgørelse
Tilskudsfinansierede
aktiviter
underkonto
95
og
97
Tilskudsfinasieret
Andre
tilskuds
Tilskudsfinasieret
Andre
tilskuds
forskning
uk
95
finasierede
forskning
uk
95
finasierede
aktiviteter
uk
97
aktiviteter
uk
97
1999
1999
2000
2000
Årets
indtægter
0
691
0
000
2
874
0
253
Årets
udgifter
0
691
0
000
2
874
0
253
Årets
driftsoverskud
0
000
0
000
0
000
0
000
Bilagstabel
9
Personaleoplysninger
Total
FORMÅL
DELFORMÅL
VIP
DVIP
TAP
IALT
VIP
DVIP
TAP
IALT
Antal
årsværk
1
decimal
1999
1999
1999
1999
2000
2000
2000
2000
2
1
Ordinær
uddannelse
2
5
0
8
2
8
6
1
9
2
5
4
8
4
23
0
2
3
Åben
uddannelse
1
5
1
1
1
3
3
9
2
Uddannelse
i
alt
6
1
10
6
6
5
9
7
26
8
1
1
Basisforskning
2
1
0
8
2
9
11
8
0
1
1
1
13
0
1
2
Tilskudsfinansieret
forskning
1
4
1
4
4
1
0
0
1
2
5
4
1
4
Forskeruddannelse
0
5
0
0
0
2
0
6
1
Forskning
i
alt
4
3
16
4
0
1
2
5
19
0
3
Andre
faglige
formål
i
alt
4
1
Bygningsdrift
8
0
8
0
4
2
Generel
ledelse
og
administration
2
3
4
5
6
8
1
0
0
0
6
4
7
4
4
9
Øvrige
0
4
0
4
4
Fælles
formål
i
alt
6
8
1
0
0
0
14
8
15
8
7
Årsværk
i
alt
8
3
0
8
8
1
17
2
28
1
6
6
27
0
61
6
Bilagstabel
10
Antal
konsulenter
og
fuldmægtige
ultimo
VR
året
1999
2000
1
1
L35
specialkonsulenter
1
2
L36
chefkonsulenter
1
1
0
Konsulenter
i
alt
1
2
0
Antal
AC
fuldmægtige
3
16
Bilagstabel
11
Nettobygningsarealer
1999
2000
1
10
Forskningsareal
netto
m2
585
497
1
20
Undervisningsareal
netto
m2
1449
3531
1
30
Øvrige
arealer
netto
m2
2383
5445
1
00
Samlet
nettoareal
i
m2
4417
9473
Bilagstabel
12
19
24
14
IT
Højskolen
Afvigelse
tabel
10095
årets
overskud
Primo
2000
saldo
Bevil
afr
pkt
13
Korrektion
ved
bevil
lingsafreg
ningen
RF
Korrektion
hele
kroner
Ny
ultimo
2000
saldo
mio
kr
med
1
dec
10
Nybyggeri
st
kt
31
1
9
1
8
0
0
0
0
0
70
Andre
byggearbejder
st
kt
31
52
2
0
0
0
0
0
52
2
I
alt
50
3
1
8
0
0
0
52
2
Note
Summen
af
den
enkelte
underkonto
og
summen
af
underkonti
kan
afvige
som
følge
af
afrunding
Ad
10
Nybyggeri
Afvigelsen
skyldes
forbrug
af
videreførte
beholdninger
Ad
70
Andre
byggearbejder
Afvigelsen
skyldes
forsinkelser
i
forbindelse
med
afklaring
af
institutionens
fremtidige
behov
og
overvejelser
om
bevillingsdækning
ved
huslejeordningens
indførelse
Det
har
derfor
ikke
været
muligt
at
fremsende
det
forventede
aktstykke
til
Finansudvalget
og
som
følge
heraf
har
det
ikke
været
muligt
at
gennemføre
det
forventede
grundkøb
m
v
i
Ørestaden
Ændringer
på
statuskonti
for
bygninger
og
grunde
Til
brug
for
beregningen
af
statuskontiene
for
år
2000
er
der
taget
udgangspunkt
i
regnskabet
for
periode
13
For
bygningerne
er
der
i
2000
sket
en
værditilskrivning
svarende
til
de
værdiforøgende
anlægsaktiviteter
i
2000
Endvidere
er
der
gennemført
en
lineær
afskrivning
svarende
til
2
5
af
primo
saldoen
Bilagstabel
13
Mio
kr
Primo
2000
Auto
postering
Straks
afskrivn
Lineær
afskrivn
Ultimo
2000
Bygningsværdi
0
2
6
0
0
0
0
0
6
2
Grundværdi
0
0
0
0
Der
foreligger
en
specificeret
opgørelse
for
hver
ejendom
1
IT
højskolen
Aktiviteter
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
inter
menu
bund
gif
Aktivitetskalender
03
05
2001
IT
højskolen
Glentevej
65
Karrieredag
for
dimmitender
IT
Højskolen
får
besøg
af
en
række
førende
IT
virksomheder
som
kan
diskutere
jobprofiler
muligheder
med
kommende
dimmitender
15
05
2001
19
21
IT
højskolen
Glentevej
65
Informationsmøde
for
åben
uddannelse
Hør
om
mulighederne
for
master
diplom
og
enkeltfagsuddannelser
på
IT
Højskolen
18
05
2001
IT
højskolen
Glentevej
65
Informationsdag
for
kandidatuddannelserne
Der
vil
for
og
eftermiddag
være
mulighed
for
at
høre
om
IT
Højskolen
uddannelser
og
linjer
om
adgangskrav
om
ansøgningsprocedure
og
mulighed
for
at
tage
en
snak
med
en
studievejleder
15
06
2001
Kl
12
00
IT
højskolen
Glentevej
65
Ansøgningsfrist
for
kandidat
master
og
diplomuddannelserne
01
08
2001
Kl
12
00
IT
højskolen
Glentevej
65
Ansøgningsfrist
for
enkeltfagskurserne
9
USEMAP
inter
icon2top
gif
opdateret
30
04
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
INT
Seminarer
Efterår
2000
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Internetteknologiseminar
E2000
Afholdte
seminarer
i
efterårssemesteret
2000
Uge
Dato
Lokale
Tid
Emne
Foredragsholder
35
29
8
2
59
15
15
16
00
14
bigwig
a
DSL
for
WWW
15
Michael
I
Schwartzbach
BRICS
University
of
Aarhus
38
21
9
3
14
15
15
16
00
16
Secure
Collaboration
on
the
Internet
17
Christian
Damsgaard
Jensen
O
Reilly
Institute
Trinity
College
Dublin
46
14
11
2
51
15
00
16
00
18
Smart
Cards
what
why
and
how
Peter
Aage
19
Gemplus
47
22
11
2
03
15
00
20
Bisimilarity
in
the
spi
calculus
results
and
directions
21
Hans
H
ttel
BRICS
Aalborg
University
22
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
23
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
INT
6
INT
Seminarer
Forår
2000
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
Internetteknologiseminar
F2000
14
Internetteknologiseminarer
foråret
2000
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
Uddannelses
katalog
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Uddannelseskatalog
11
I
Word
format
12
I
PDF
format
13
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Uddannelser
linjer
og
kurser
Optagelses
regler
og
studieordning
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Love
og
regler
Bekendtgørelser
Undervisningsministeriets
bekendtgørelser
om
IT
højskolens
uddannelser
findes
11
her
Optagelsesregler
for
IT
højskolen
i
København
IT
højskolens
optagelsesregler
som
12
word
dokument
eller
som
13
ren
tekst
Studieordninger
Studieordning
for
kandidatuddannelsen
i
informationsteknologi
på
IT
højskolen
i
København
25
08
2000
som
14
word
dokument
og
som
15
pdf
dokument
Errata
30
stk
2
Korrekt
ordlyd
Orlov
efter
optjening
af
30
ECTS
point
kan
meddeles
i
op
til
6
måneder
Orlov
ud
over
6
måneder
kræver
dispensation
fra
Studieadministrationen
Studieordning
for
masteruddannelser
i
informationsteknologi
på
IT
højskolen
i
København
Fællesregler
25
08
2000
som
16
word
dokument
og
17
pdf
dokument
Studieordning
for
masteruddannelsen
i
Design
Kommunikation
og
Medier
25
08
2000
som
18
word
dokument
og
19
pdf
dokument
Studieordning
for
masteruddannelsen
i
Internetteknologi
25
08
2000
som
20
word
dokument
og
21
pdf
dokument
Studieordning
for
masteruddannelsen
i
Multimedieteknologi
25
08
2000
som
22
word
dokument
og
23
pdf
dokument
Studieordning
for
masteruddannelsen
i
Softwareudvikling
25
08
2000
som
24
word
dokument
og
25
pdf
dokument
Studieordning
for
diplomuddannelsen
i
informationsteknologi
på
IT
højskolen
i
København
25
08
2000
som
26
word
dokument
og
27
pdf
dokument
28
USEMAP
inter
icon2top
gif
opdateret
27
04
2001
29
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Studieleder
12
Mere
om
EBUSS
inter
menu
bund
gif
Elektronisk
Handel
Uddannelsen
i
Elektronisk
handel
EBUSS
er
en
uddannelse
der
giver
kandidaten
kompetencer
indenfor
tekniske
forretningsmæssige
og
politiske
juridiske
områder
i
forhold
til
e
handel
Tre
områder
der
alle
er
vigtige
hvis
man
vil
beskæftige
sig
med
e
handel
På
EBUSS
omfatter
e
handel
både
de
tekniske
løsninger
logistik
og
betalingssystemer
og
de
mere
markedsmæssige
så
som
markedsføring
og
salg
og
distributionen
af
serviceydelser
og
fysiske
eller
digitale
varer
En
kandidat
i
Elektronisk
handel
vil
vide
hvordan
elektronisk
handel
influerer
på
eksempelvis
forholdet
mellem
kunde
og
leverandør
og
han
eller
hun
vil
være
velbevandret
i
de
særlige
tekniske
problemer
der
er
forbundet
med
e
handel
En
kandidat
i
e
handel
vil
på
akademisk
niveau
således
kunne
bidrage
erhvervslivet
med
aktuelle
og
relevante
e
handelskompetencer
EBUSS
uddannelsen
vil
være
på
forkant
med
udviklingen
i
ind
og
udland
og
samtidig
give
kandidaten
generelle
akademiske
kompetencer
Uddannelsen
foregår
hovedsageligt
på
Handelshøjskolen
i
København
der
også
står
for
den
daglige
administration
og
planlægning
Flere
oplysninger
kan
fås
på
13
www
ebuss
dk
Man
kan
også
kontakte
EBUSS
studiesekretariat
Institut
for
Informatik
Handelshøjskolen
i
København
Howitzvej
60
3
sal
2000
Frederiksberg
e
post
14
studiesekretær
Charlotte
Jørgensen
tlf
38
15
24
27
fax
38
15
24
01
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Studieleder
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Kim
Viborg
Andersen
Tænk
globalt
og
anderledes
Studieleder
lektor
Kim
Viborg
Andersen
I
erhvervslivet
er
der
et
akut
behov
for
folk
med
forstand
på
e
handel
både
i
det
private
og
det
offentlige
fortæller
lektor
Kim
Viborg
Andersen
der
er
studieleder
for
elektronisk
handel
Når
vi
taler
om
e
handel
handler
det
selvfølgelig
om
egentlig
salg
af
varer
på
nettet
men
det
er
også
elektronisk
flytning
af
og
handel
med
viden
kompetencer
rådgivning
og
lignende
og
så
er
e
handels
betydning
for
or
ganisationen
og
arbejdsprocesserne
lige
så
vigtig
E
handelslinien
indeholder
det
tekniske
det
kommercielle
og
det
strategiske
og
juridiske
omkring
e
handel
En
kandidat
i
e
handel
skal
vide
noget
om
det
hele
men
samtidig
er
det
set
med
mine
øjne
vigtigt
at
man
specialiserer
sig
i
en
af
delene
siger
Kim
Viborg
Andersen
Og
så
gælder
det
om
at
tænke
anderledes
globalt
og
aktionsrettet
for
det
går
stærkt
i
denne
branche
Kim
Viborg
Andersen
synes
det
har
været
en
stor
og
spændende
udfor
dring
at
være
med
til
at
stable
e
handels
linien
på
benene
og
han
ser
kan
didaterne
i
e
handel
som
nogle
der
i
fremtiden
vil
være
e
handels
projekt
ledere
i
virksomhederne
eller
som
nogen
der
starter
egne
e
handelsvirksomheder
E
handelskonsulenter
og
strateger
er
også
nogle
af
fremtidens
jobmuligheder
På
uddannelsen
kan
vi
både
arbejde
teoretisk
og
praktisk
og
så
at
sige
skabe
et
laboratorium
for
e
handel
Kort
om
Kim
Viborg
Andersen
33
år
cand
scient
pol
1989
University
of
California
1991
93
Ph
D
Københavns
Universitet
1994
forsknings
oplæg
ved
Tokyo
Universitet
1996
97
lektor
Institut
for
Informatik
Handelshøjskolen
i
København
1997
studieleder
elektronisk
handel
IT
højskolen
1999
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Mere
om
EBUSS
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Læs
mere
om
Elektronisk
handel
Du
kan
læse
mere
om
linien
Elektronisk
Handel
i
vores
12
uddannelseskatalog
eller
besøge
deres
13
hjemmeside
Samtidig
har
du
mulighed
for
at
læse
om
de
forskellige
kurser
der
udbydes
i
14
kursusbogen
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Søg
om
optagelse
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Optagelsesregler
inter
menu
bund
gif
Søg
om
optagelse
Enkeltfagskurser
under
Åben
Uddannelse
Ansøgningsfristen
for
optagelse
på
enkeltfagskurser
efterårssemesteret
2001
er
onsdag
den
1
august
2001
kl
12
00
IT
højskolen
vil
medio
maj
2001
annoncere
de
ca
60
forskellige
enkeltfagskurser
som
der
kan
søges
optagelse
på
til
efterårssemesteret
2001
Tilmeld
dig
evt
IT
højskolens
11
elektroniske
nyhedstjeneste
hvor
de
kommende
enkeltfagskurser
vil
blive
omtalt
Kandidat
diplom
og
masteruddannelser
Ansøgningsfristen
for
optagelse
til
IT
højskolens
kandidat
master
og
diplomuddannelser
efterårssemesteret
2001
er
fredag
den
15
juni
2001
kl
12
00
Her
kan
du
downloade
et
ansøgningsskema
til
efterårssemesteret
2001
i
12
word
format
eller
som
en
13
pdf
fil
Her
kan
du
downloade
ansøgningsvejledningen
i
14
word
format
eller
som
en
15
pdf
fil
Efterårssemesteret
starter
den
1
september
2001
Hvis
du
har
spørgsmål
vedrørende
IT
højskolens
uddannelser
og
optagelse
bedes
du
kontakte
16
studievejledningen
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Søg
om
optagelse
Optagelsesregler
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Optagelsesregler
IT
højskolens
optagelsesregler
som
11
word
dokument
eller
som
12
ren
tekst
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
Presse
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Pressearkiv
10
Fakta
11
Ledelse
12
Baggrund
13
Billedarkiv
inter
menu
bund
gif
Pressemeddelelser
og
pressekontakt
Generel
pressekontakt
Journalist
Mikael
Kjærbye
E
mail
14
mk
it
c
dk
Telefon
38
16
88
80
Pressemeddelelser
Åbent
foredrag
IBM
guru
spår
om
fremtidens
IT
09
marts
2001
15
word
16
text
og
17
pdf
Computerspil
under
lup
på
IT
konference
01
februar
2001
18
word
19
text
og
20
pdf
De
bedste
internationale
IT
hjerner
skal
studere
i
Danmark
18
januar
2001
21
word
22
text
og
23
pdf
IT
højskolen
parat
med
bredt
udbud
af
enkeltfagskurser
20
december
2000
24
word
25
text
og
26
pdf
IT
højskolen
i
front
med
åbningen
af
LinuxLab
dk
1
december
2000
27
word
28
text
og
29
pdf
IT
højskolen
lancerer
ny
fleksibel
diplomuddannelse
23
oktober
2000
30
text
31
word
Henning
Larsens
Tegnestue
i
samarbejde
med
Carl
Bro
vinder
konkurrencen
om
IT
højskolens
ny
domicil
i
Ørestaden
21
juni
2000
32
vinderprojektet
33
Word
Forskningsministeren
løfter
sløret
for
IT
højskolens
ny
domicil
i
Ørestaden
19
juni
2000
34
Word
IT
højskolen
klar
med
fire
nye
uddannelser
9
november
1999
35
text
36
Word
IT
højskole
klar
til
at
skabe
helhedsudviklere
10
juni
1999
37
text
38
Word
39
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
40
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
Pressearkiv
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Pressearkiv
IT
højskolen
i
København
er
blevet
fulgt
med
stor
interesse
i
diverse
medier
i
Danmark
siden
vores
oprettelse
i
1999
Vi
er
i
øjeblikket
i
gang
med
at
opbygge
et
pressearkiv
som
vil
give
et
indblik
i
debatten
omkring
IT
højskolen
ved
at
resumere
udvalgte
artikler
m
m
fra
dagspressen
og
andre
medier
Hvis
du
kender
til
en
interessant
artikel
om
IT
højskolen
vil
vi
meget
gerne
modtage
en
10
reference
så
vi
kan
tilføje
den
her
på
siden
Artikler
og
resumeer
11
2001
12
2000
13
1999
14
1998
og
før
15
marts
2001
Harddisken
P1
Computerspilskonference
15
Harddisken
indslag
del
1
interview
med
Lisbeth
Klastrup
og
Espen
Aarseth
16
Harddisken
indslag
del
2
interview
med
Selmer
Bringsjord
05
marts
2001
Kulturnyt
P1
17
Real
audio
I
weekenden
afholdtes
den
første
europæiske
konference
om
computerspil
på
IT
Højskolen
i
København
Thomas
Jacobsen
fra
firmaet
IO
Interactive
firmaet
bag
det
succesfulde
danske
spil
Hitman
og
foredragsholder
og
Jesper
Juul
arrangør
og
ph
d
studerende
på
IT
Højskolen
interviewes
af
Claus
Vittus
03
marts
2001
Information
18
Computerspillet
der
ville
være
videnskab
Humanister
trækker
computerspillet
ind
i
den
videnskabelige
varme
Marts
2001
DR
Orbitalen
IT
Videnskab
19
Hvad
er
god
IT
support
Fejl
og
mangler
i
software
koster
os
mere
end
vi
tror
Løsningen
er
en
proaktiv
IT
help
desk
med
brugeren
i
centrum
27
februar
2001
Computerworld
Online
20
IT
højskolen
udvikler
øjenstyring
Øjenstyring
af
computere
åbner
for
at
hav
af
muligheder
men
systemerne
er
for
dyre
IT
højskolen
er
nu
med
penge
fra
Forskningsministeriet
gået
i
gang
med
at
udvikle
et
nyt
og
billigt
øjenstyringssystem
19
februar
2001
Computerworld
Online
21
IT
ansatte
mangler
IT
uddannelse
Mange
virksomheder
har
store
problemer
med
at
skaffe
kvalificeret
IT
arbejdskraft
Tre
ud
af
fire
IT
ansatte
er
ikke
uddannet
indenfor
IT
viser
ny
undersøgelse
6
februar
2001
Computerworld
Online
22
Konference
om
Computerspil
IT
højskolen
i
København
er
den
1
2
marts
vært
for
Europas
første
konference
nogensinde
om
computerspil
under
navnet
Computer
Games
and
Digital
Textualities
2
februar
2001
Søndag
aften
23
Quake
på
dagsorden
IT
højskolen
i
København
sætter
bogstaveligt
talt
spillet
Quake
på
dagsordenen
når
man
inviterer
til
konferencen
Computer
Games
Digital
Textualities
i
København
i
begyndelsen
af
marts
Februar
2001
DR
Orbitalen
IT
Videnskab
24
Forskere
sætter
fokus
på
Linux
LinuxLab
er
et
nyt
tiltag
på
IT
højskolen
i
København
som
sætter
fokus
på
Linux
og
Open
Source
Ideen
er
at
skabe
et
videncenter
inden
for
brug
af
åbne
systemer
som
Linux
at
fremme
brugen
af
åbne
standarder
og
at
skabe
et
kreativt
IT
miljø
Januar
2001
DR
Orbitalen
IT
Videnskab
25
Virtuelle
verdener
internettets
legepladser
Virtuelle
verdener
er
steder
på
internettet
hvor
man
indenfor
rammerne
af
et
fiktivt
univers
kan
lade
sin
virtuelle
personlighed
sin
avatar
mødes
med
andre
virtuelle
personligheder
Skrevet
af
IT
højskolens
Lisbeth
Klaustrup
21
december
2000
Computerworld
Online
26
Nyt
tilbud
IT
højskolen
tilbyder
enkeltfag
21
december
2000
Computerworld
online
27
IT
uddannelserne
halter
bagud
December
2000
AAK
Information
28
En
million
megabytes
i
IT
højskolen
14
december
2000
Aktuelt
29
Flere
kvinder
på
IT
uddannelser
7
december
2000
Linux
Today
30
IT
University
takes
the
lead
with
launch
of
LinuxLab
dk
5
december
2000
Børsen
Informatik
31
LinuxLab
på
IT
højskolen
4
december
2000
Ingeniøren
32
IT
højskolen
satser
på
Open
Source
30
november
2000
Harddisken
P1
33
Ugens
Gæst
Hanne
Munkholm
fra
LinuxLab
besøger
Jens
Aagren
Poder
i
studiet
IT
højskolen
i
København
slår
dørene
op
for
Danmarks
største
Open
Source
initiativ
Det
sker
når
forskningsminister
Birte
Weiss
åbner
IT
højskolens
LinuxLab
dk
fredag
d
1
december
Tryk
på
Harddisken
Live
for
at
høre
radio
programmet
i
RealAudio
November
2000
DR
Orbitalen
IT
Videnskab
34
IT
vender
Taylor
på
hovedet
Et
nyt
dansk
IT
forskningsprojekt
sætter
for
alvor
gang
i
drømmen
om
at
oprette
selvstyrende
grupper
på
fabriksgulvet
25
oktober
2000
Computerworld
online
35
Glæde
over
ny
IT
uddannelse
Oktober
2000
DR
Orbitalen
IT
Videnskab
36
Fra
morgenkaffe
i
1956
til
moderne
søgemaskiner
To
algoritmikforskere
fra
IT
højskolen
i
København
står
bag
et
nyligt
gennembrud
inden
for
hurtig
distribution
af
datapakker
på
internettet
Her
fortæller
de
om
nogle
af
computerverdenens
farverige
genier
Samtidig
bliver
du
udfordret
til
at
løse
tre
lette
algoritmik
grublere
27
oktober
2000
Computerworld
Online
37
Symbion
IT
bag
iværksætterkursus
Væksthuset
Symbion
IT
har
været
fødselshjælper
for
en
række
IT
virksomheder
Nu
samarbejder
det
med
IT
højskolen
om
at
videregive
viden
om
opstart
af
egen
virksomhed
til
IT
studerende
September
2000
DR
Orbitalen
IT
Videnskab
38
Computeren
som
fejlfinder
En
simpel
computerfejl
kan
sende
firmaer
konkurs
og
i
værste
fald
koste
menneskeliv
F
eks
blev
mindst
seks
mennesker
stegt
levende
da
de
modtog
op
til
20
000
gange
for
store
strålingsmængder
under
en
rutinebehandling
for
kræft
i
USA
og
Canada
for
nogle
år
siden
11
august
2000
Computerworld
online
39
Søgningen
til
IT
højskolen
fordoblet
12
maj
2000
Computerworld
40
IT
højskolen
laver
Linux
laboratorium
5
Maj
2000
41
IT
højskole
med
vokseværk
3
Maj
2000
42
Linux
Install
fest
på
IT
højskolen
16
Marts
2000
43
Romantik
på
chatten
og
Chat
giver
de
unge
et
åndehul
23
Februar
2000
44
Rektor
Offentlig
Linux
giver
mange
problemer
2
Februar
2000
45
Prøvekludene
på
IT
højskolen
2
Februar
2000
46
Kampen
mod
politisk
uvidenhed
17
december
1999
47
IT
højskolerne
fik
en
flyvende
start
7
december
1999
48
USA
jurister
myrder
Internet
7
december
1999
49
Patenteringsbølge
i
USA
truer
Internet
10
november
1999
50
IT
højskolen
udvider
5
november
1999
51
DTU
drænet
for
IT
lærere
Af
Bjarke
Wiegand
Ingeniøren
nr
44
1999
19
oktober
1999
52
Oppositionen
vil
kæmpe
for
CIT
19
oktober
1999
53
Disse
prægtige
IT
projekter
og
deres
bagmænd
28
september
1999
54
Unge
mødes
og
sød
IT
musik
opstår
22
september
1999
55
IT
med
følelser
17
september
1999
56
Hvilke
kvalifikationer
efterspørges
13
september
1999
57
Uforligneligt
til
markedsføring
7
september
1999
58
Rektorer
rejser
tvivl
om
ny
IT
højskole
30
august
1999
59
Fuldt
hus
på
IT
højskolerne
30
august
1999
60
140
optaget
på
den
ny
IT
højskole
12
august
1999
61
IT
højskole
fyldt
op
10
august
1999
62
IT
højskolen
fuldt
booket
15
juli
1999
63
Stor
søgning
til
IT
uddannelse
Der
arbejdes
ihærdigt
i
to
landsdele
på
at
få
fordelt
ansøgere
til
de
nyoprettede
IT
uddannelser
Hos
IT
højskolen
i
København
er
der
glæde
over
at
40
af
ansøgerne
til
den
mest
populære
linie
er
kvinder
Skrevet
af
Kurt
Westh
Nielsen
Ingeniøren
1
juli
1999
64
IT
højskoler
går
i
luften
uden
koordinering
Ingen
fællesnævner
for
septemberoptaget
på
skolernes
nye
uddannelser
Skrevet
af
Bjarke
Wiegand
Ingeniøren
nr
7
1999
24
juni
1999
65
IT
højskole
spænder
fra
kunst
til
erhverv
21
juni
1999
66
IT
højskole
skaber
uro
blandt
elever
Handelshøjskolens
e
handelslærere
skal
undervise
på
IT
højskolen
til
efteråret
Eleverne
frygter
at
IT
højskolen
vil
udhule
e
handelsfagene
på
cand
merc
dat
studiet
Skrevet
af
Lotte
Davidsen
Computerworld
18
juni
1999
67
Profilen
17
juni
1999
68
IT
højskolen
Rasmus
Visby
har
været
en
tur
på
Glentevej
i
København
s
Nordvest
kvarter
og
talt
med
IT
Højskolens
direktør
Mads
Tofte
om
deres
visioner
17
juni
1999
69
IT
højskole
bejler
til
bløde
værdier
16
juni
1999
70
Helhedsudviklere
på
IT
højskole
At
skabe
IT
medarbejdere
der
kan
integrere
teknik
design
og
mennesker
er
en
af
hovedmålsætningerne
for
den
nye
IT
højskole
i
København
Skrevet
af
Henrietta
Kjær
Computerworld
16
juni
1999
71
Hektisk
aktivitet
på
IT
Højskolen
IT
højskolen
arbejder
hårdt
på
at
gøre
klar
til
de
154
studerende
der
starter
1
september
Skrevet
af
Henrietta
Kjær
Computerworld
11
juni
1999
72
Startskud
affyret
for
IT
højskolen
11
juni
1999
73
IT
højskole
vil
tænke
nyt
26
marts
1999
74
Skærpet
kamp
om
IT
undervisere
Nye
initiativer
deriblandt
IT
højskolen
øger
behovet
for
lærerkræfter
Skrevet
af
Bjarke
Wiegand
Ingeniøren
nr
12
1999
23
marts
1999
75
IT
satsning
af
format
22
marts
1999
76
IT
højskolen
en
oplagt
mulighed
15
marts
1999
77
Mads
Tofte
direktør
for
IT
højskolen
Mads
Tofte
datalogi
lektoren
fra
Københavns
Universitet
er
indstillet
til
posten
som
direktør
for
IT
højskolen
der
får
hjemme
i
lokaler
på
Nørrebro
i
København
Skrevet
af
Claus
Thor
Nielsen
Computerworld
19
februar
1999
78
Ingeniører
ved
for
lidt
om
softwareudvikling
Skrevet
af
Bjarke
Wiegand
Ingeniøren
nr
7
1999
12
februar
1999
79
Fantasien
i
brug
mod
ingeniørmangel
Skrevet
af
Søren
Ravnsborg
Ingeniøren
nr
6
1999
20
november
1998
80
Flaskehalse
Pas
på
uigennemtænkte
feberredninger
Skrevet
af
Ole
Schiøth
Ingeniøren
nr
47
1998
16
oktober
1998
81
Nye
IT
højskoler
i
hele
langdet
Der
er
også
brug
for
en
IT
masteruddannelse
i
provinsen
mener
prorektoren
for
Aalborg
Universitet
Skrevet
af
Sebastian
Cappelen
Ingeniøren
nr
42
1998
28
november
1997
82
Værd
at
støtte
IT
uddannelse
Skrevet
af
Lars
Rhein
Hansen
formand
for
Ingeniør
foreningens
Uddannelsesudvalg
Ingeniøren
nr
48
1997
83
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
84
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
3
Pressearkiv
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Flere
kvinder
på
IT
uddannelser
Antallet
af
kvinder
der
er
optaget
på
en
IT
relateret
uddannelse
er
mere
end
fordoblet
på
blot
fire
år
Det
viser
tal
der
netop
er
offentliggjort
i
rapporten
Netværksredegørelse
2000
fra
Forskningsministeriet
skriver
Aktuelt
Heraf
fremgår
det
at
11
procent
af
de
studerende
på
de
IT
relaterede
uddannelser
i
1996
var
kvinder
hvor
tallet
i
år
er
oppe
på
26
procent
Det
er
glædeligt
lyder
det
fra
erhvervslivet
og
uddannelsesinstitutionerne
IT
fagene
er
ved
at
ændre
karakter
hvor
mennesket
er
kommet
mere
i
centrum
end
maskinen
Der
er
kommet
et
markant
behov
for
kreative
personer
der
mestrer
grafisk
design
og
informationsstruktur
og
det
er
noget
der
appellerer
til
kvinder
siger
Mads
Tofte
direktør
på
IT
højskolen
i
København
I
løbet
af
det
halvandet
år
IT
højskolen
har
eksisteret
har
der
været
in
kønsfordeling
på
en
kvinde
for
hver
to
mænd
Størstedelen
af
dem
går
på
skolens
design
kommunikation
og
medielinje
der
er
skolens
mest
eftersøgte
uddannelse
Dette
er
et
resume
af
en
artikel
som
blev
bragt
i
Aktuelt
den
14
december
2000
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
3
Pressearkiv
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
LinuxLab
på
IT
højskolen
Det
åbne
og
gratis
distribuerede
styresystem
Linux
som
kun
benyttes
i
meget
beskeden
omfang
i
erhvervslivet
får
nu
hjælp
til
at
vinde
større
udbredelse
i
kraft
af
et
nyoprettet
Linux
laboratorium
Det
er
den
to
år
gamle
IT
højskolen
i
København
som
står
bag
initiativet
med
et
nyt
LinuxLab
www
linuxlab
dk
som
blev
officielt
åbnet
af
forskningsminister
Birte
Weiss
Børsen
Informatik
skriver
at
den
manglende
tiltro
til
et
gratis
styresystems
styrker
og
muligheder
stadig
er
den
dominerende
opfattelse
hos
mange
virksomheder
Men
denne
holdning
kan
fremover
blive
stillet
over
for
flere
udfordringer
efterhånden
som
IT
højskolen
udklækker
nye
kandidater
som
kommer
ud
og
demonstrerer
deres
kunnen
og
viden
rundt
om
i
virksomhederne
Dette
er
et
resume
af
en
artikel
som
blev
bragt
i
Børsen
Informatik
den
5
december
2000
Artiklen
var
skrevet
af
pmc
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
3
Pressearkiv
artikel
4
Uddannelser
5
Stillinger
6
Aktiviteter
7
Home
8
Personer
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
IT
højskolen
laver
Linux
laboratorium
Forårets
diskussioner
om
det
gratis
styresystem
Linux
har
båret
frugt
Den
københavnske
IT
højskole
vil
åbne
et
decideret
laboratorium
for
eksperimenter
Undervisning
og
forskning
i
det
alternative
operativsystem
Med
en
person
til
at
drive
laboratoriet
Vi
har
ikke
fået
nogen
ekstra
bevilling
til
opgaven
men
vi
kan
jo
bruge
sådan
et
laboratorium
i
undervisningen
og
lave
kurser
så
det
bliver
egentlig
ikke
noget
problem
vurderer
rektor
for
IT
højskolen
Mads
Tofte
IT
højskolen
har
allerede
lejet
et
70
kvadratmeter
stort
lokale
til
det
nye
Linux
lab
og
Mads
Tofte
har
store
forventninger
til
at
IBM
vil
sponsorere
en
del
af
det
nødvendige
isenkram
Der
bliver
vel
fem
til
10
maskiner
og
netværk
og
id
en
er
så
at
man
kan
få
lov
til
at
crashe
udstyret
og
virkelig
forsøge
sig
uden
at
det
går
ud
over
produktionen
siger
Mads
Tofte
Åbent
laboratorium
IT
højskolens
Linux
laboratorium
skal
i
princippet
være
åbent
så
man
kan
komme
Lige
ind
fra
gaden
og
får
råd
og
vejledning
i
styresystemet
Skatteborgerne
har
jo
alligevel
betalt
for
skolen
For
eksempel
var
vi
vært
for
Sjællands
Skåne
Linux
User
Group
Installfest
her
forrige
lørdag
og
den
slags
arrangementer
vil
vi
naturligvis
være
vært
for
også
i
fremtiden
siger
Mads
Tofte
Artiklen
blev
bragt
i
Computerworld
12
maj
2000
12
USEMAP
inter
icon2top
gif
opdateret
11
12
2000
13
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
Fakta
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Fakta
og
nøgletal
Uddannelser
Kandidatuddannelsen
Den
der
gennemfører
kandidatuddannelsen
i
informationsteknologi
har
ret
til
titlen
cand
it
Der
findes
følgende
linier
på
kandidatuddannelsen
design
kommunikation
og
medier
elektronisk
handel
softwareudvikling
internetteknologi
multimedier
tværfaglig
IT
Masteruddannelser
design
kommunikation
og
medier
softwareudvikling
internetteknologi
multimedier
Diplomuddannelse
Se
nærmere
under
10
Uddannelser
Antal
indskrevne
studerende
1999
2000
2001
2002
måltal
måltal
måltal
Kandidatuddannelser
119
405
616
948
Masteruddannelser
15
33
155
291
Diplomuddannelsen
0
36
171
318
Ansatte
årsværk
1999
2000
2001
2002
måltal
måltal
måltal
Forskere
og
undervisere
excl
eksterne
lektorer
8
3
31
9
58
5
90
0
Administrativ
support
til
undervisning
1
3
3
0
6
0
6
0
Anden
Admin
6
8
13
7
24
5
32
5
Finanslovsbevilling
mio
kr
1999
2000
2001
2002
Finansloven
39
0
61
0
83
1
95
2
Oprettelsesår
1999
Adresse
IT
højskolen
Glentevej
67
DK
2400
København
NV
telefon
45
38
16
88
88
telefax
45
38
16
88
99
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
Ledelse
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Bestyrelse
og
direktion
Bestyrelsen
for
IT
højskolen
Formand
Mogens
Munk
Rasmussen
koncernchef
og
adm
direktør
Nykredit
Bestyrelsesmedlemmer
Preben
Damgaard
adm
direktør
Damgaard
Holding
Anne
E
Jensen
cand
polit
Hans
Peter
Jensen
rektor
Danmarks
Tekniske
Universitet
Henrik
Toft
Jensen
rektor
Roskilde
Universitetscenter
Finn
Junge
Jensen
rektor
Handelshøjskolen
i
København
Lillian
Mogensen
underdirektør
ATP
Kjeld
Møllgård
rektor
Københavns
Universitet
Kim
Østrup
underdirektør
IBM
Direktør
10
Mads
Tofte
Frifakultet
IT
højskolen
er
et
såkaldt
frifakultet
der
har
Handelshøjskolen
i
København
som
vært
Ved
frifakultet
forstås
kort
fortalt
at
konsistorium
for
værtsinstitutionen
har
uddelegeret
væsentlige
kompetencer
til
bestyrelsen
for
IT
højskolen
Bestyrelsen
er
udpeget
af
forskningsministeren
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
Baggrund
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Baggrunden
for
IT
højskolen
IT
højskolen
i
København
blev
oprettet
i
1999
på
baggrund
af
en
10
rapport
fra
Undervisningsministeriet
og
Forskningsministeriet
om
styrkelse
af
IT
uddannelser
og
IT
forskning
som
anbefalede
en
kraftig
forøgelse
af
kapaciteten
af
de
forskningsbaserede
IT
uddannelser
i
Danmark
IT
højskolen
i
København
fik
sammen
med
et
universitetssamarbejde
om
nye
IT
uddannelser
i
Vestdanmark
til
opgave
at
tilbyde
akademiske
overbygningsuddannelser
med
nyt
indhold
og
ny
profil
og
som
skulle
kunne
tages
oven
på
en
bachelorgrad
fra
fag
der
ikke
drejede
sig
om
IT
De
to
institutioner
skulle
også
udvikle
og
tilbyde
master
og
diplomuddannelser
som
efter
og
videreuddannelse
på
højt
niveau
på
IT
området
Endelig
skulle
der
også
ske
en
forskning
på
IT
området
i
international
klasse
IT
højskolen
er
et
såkaldt
frifakultet
under
Handelshøjskolen
i
København
i
henhold
til
12
stk
1
i
universitetsloven
Skolen
har
foreløbig
til
huse
på
Glentevej
i
Københavns
Nordvestkvarter
hvor
den
officielle
indvielse
fandt
sted
30
august
1999
Det
bevillingsmæssige
grundlag
for
IT
højskolen
er
Forskningsministeriets
aktstykke
nr
138
af
9
marts
1999
som
er
tiltrådt
af
finansudvalget
den
17
marts
1999
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Presse
Billedarkiv
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Billedarkiv
REFRESH
0
sec
10
http
www
it
c
dk
billedarkiv
Denne
side
sender
dig
videre
til
IT
Højskolens
billedarkiv
Hvis
dette
ikke
sker
klik
venligst
her
på
dette
link
11
http
www
it
c
dk
billedarkiv
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
Om
IT
højskolen
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
9
Vision
10
Kontakt
11
Uddannelser
12
Ørestads
byggeriet
13
Nøgletal
14
Virksomheds
regnskaber
15
Vedtægter
16
Billedarkiv
17
At
finde
IT
C
inter
menu
bund
gif
Om
IT
højskolen
IT
højskolen
i
København
blev
etableret
i
1999
med
det
formål
at
varetage
teoretisk
forskning
og
forskning
i
informationsteknologiens
samspil
med
og
betydning
for
samfundet
IT
højskolen
tilbyder
en
række
af
uddannelser
inden
for
IT
18
Seks
2
årige
kandidatuddannelser
19
Fire
masteruddannelser
20
En
diplomuddannelse
IT
højskolen
beskæftiger
sig
med
alle
sider
af
informationsteknologien
fra
naturvidenskaben
og
matematikken
over
de
humanistiske
og
kreative
sider
af
teknologien
til
de
erhvervsmæssige
konsekvenser
og
de
kommercielle
muligheder
med
IT
IT
højskolen
arbejder
bl
a
sammen
med
21
Københavns
Universitet
22
Handelshøjskolen
i
København
23
Danmarks
Tekniske
Universitet
og
24
Roskilde
Universitetscenter
IT
højskolen
er
et
frifakultet
der
har
Handelshøjskolen
i
København
som
vært
Direktør
for
IT
højskolen
er
25
Mads
Tofte
Bestyrelsesformand
er
Mogens
Munk
Rasmussen
koncernchef
og
adm
direktør
Nykredit
26
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
27
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Vision
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Vision
IT
højskolens
vision
IT
højskolen
vil
i
dialog
med
sine
omgivelser
skabe
et
attraktivt
og
levende
forsknings
og
uddannelsesmiljø
der
bidrager
til
vækst
og
udvikling
i
det
danske
og
internationale
samfund
ved
at
skabe
et
IT
miljø
der
favner
naturvidenskab
humaniora
design
og
erhverv
at
uddanne
personer
med
en
stor
og
bred
viden
om
IT
og
IT
s
muligheder
gennem
forskning
at
skabe
ny
teknologi
og
bedre
anvendelse
af
eksisterende
teknologi
at
øge
samfundets
indsigt
i
IT
og
IT
s
muligheder
Ovenstående
er
uddybet
i
10
Direktørens
visioner
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Kontakt
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Kontakt
Adresse
IT
højskolen
i
København
Glentevej
67
DK
2400
København
NV
Telefon
45
38
16
88
88
Telefax
45
38
16
88
99
Studievejledning
Studievejledningen
Telefon
45
38
16
88
73
10
Studievejledningen
it
c
dk
Træffetider
Mandag
Kl
10
14
Tirsdag
Kl
10
14
Onsdag
Kl
10
14
Torsdag
Kl
10
14
Fredag
Kl
10
14
Erhvervssamarbejde
Mikael
Kjærbye
Telefon
45
38
16
88
80
11
mk
it
c
dk
Ledige
stillinger
Personalechef
Kirsten
Talbro
Laraignou
Telefon
45
38
16
88
03
12
ktl
it
c
dk
BuzzTalks
Tanja
Danner
Telefon
45
38
16
88
06
13
td
it
c
dk
Pressekontakt
Mikael
Kjærbye
Telefon
45
38
16
88
80
14
mk
it
c
dk
Bygninger
drift
og
intern
service
Afdelingsleder
Margit
Achen
Telefon
45
38
16
88
10
15
margit
it
c
dk
Kommentarer
til
hjemmesiden
Webadministrationen
16
wwwadm
it
c
dk
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Uddannelser
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Uddannelser
IT
højskolen
udbyder
en
række
uddannelser
inden
for
IT
Kandidatuddanelser
Kandidatuddannelsen
er
et
to
årigt
fuldtidsstudium
som
kan
tages
inden
for
linierne
10
Design
kommunikation
og
medier
11
Elektronisk
handel
12
Internetteknologi
13
Multimedieteknologi
14
Softwareudvikling
og
15
Tværfaglig
IT
Kandidatuddannelsen
resulterer
i
titlen
cand
it
med
tilføjelse
af
betegnelsen
for
den
pågældende
linje
Kandidatuddannelsen
tages
på
baggrund
af
en
bachelorgrad
fra
en
anden
uddannelsesinstitution
Masteruddannelser
På
IT
højskolen
er
der
også
fire
tre
årige
masteruddannelser
Masteruddannelsen
kan
tages
inden
for
linierne
16
Design
kommunikation
og
medier
og
17
Internetteknologi
18
Multimedieteknologi
19
Softwareudvikling
Masteruddannelsen
er
en
deltidsuddannelse
som
typisk
gennemføres
i
sammenhæng
med
ens
erhvervsarbejde
Den
udbydes
under
lov
om
Åben
Uddannelse
Efter
endt
studium
for
man
betegnelsen
Master
of
Information
Technology
MIT
med
tilføjelse
af
betegnelsen
for
den
pågældende
linje
Diplom
uddannelse
IT
højskolen
tilbyder
en
to
årig
20
diplomuddannelse
på
deltid
Den
henvender
sig
primært
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
Den
udbydes
under
lov
om
Åben
Uddannelse
Efter
endt
studium
får
man
betegnelsen
Diploma
in
Information
Technology
DIT
Enkeltfag
IT
højskolen
tilbyder
nu
to
forskellige
muligheder
for
at
læse
enkeltfag
21
Enkeltfag
som
kandidatstuderende
ved
andre
universiteter
22
Enkeltfag
under
Åben
Uddannelse
for
alle
med
mindst
en
bacheloruddannelse
eller
tilsvarende
Kurserne
henvender
sig
i
høj
grad
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
men
ikke
ønsker
at
tage
en
længerevarende
kandidat
master
eller
diplomuddannelse
Hvis
du
har
spørgsmål
vedrørende
IT
højskolens
uddannelser
bedes
du
kontakte
23
studievejledningen
Se
mere
om
IT
højskolens
uddannelser
under
24
uddannelser
25
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
26
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Studieleder
12
Mere
om
MMT
inter
menu
bund
gif
Multimedieteknologi
Uddannelsen
i
Multimedieteknologi
kombinerer
den
nyeste
teknologi
i
sammenhæng
med
andre
og
etablerede
fagområder
Det
kan
eksempelvis
være
taleteknologi
billedanalyse
computergrafik
signalbehandling
og
interaktiv
3
D
grafik
i
relation
til
medicinske
og
industrielle
anvendelser
Uddannelsen
er
naturvidenskabelig
orienteret
og
fokuserer
på
principper
for
eksempelvis
mønstergenkendelse
automatisk
billedanalyse
og
signalbehandling
ligesom
uddannelsen
beskæftiger
sig
med
teorier
for
human
perception
Samtidig
lægger
uddannelsen
vægt
på
at
bruge
software
som
i
forvejen
bruges
kommercielt
eller
forskningsorienteret
i
industrien
Kandidaterne
vil
få
et
grundigt
kendskab
til
basisteknologier
og
systemer
og
vil
være
i
stand
til
både
at
vedligeholde
og
udvikle
sådanne
systemer
Kandidater
i
Multimedier
vil
kunne
komme
til
at
arbejde
med
eksempelvis
film
tv
medicinske
systemer
billed
og
lydtransmission
industriel
automatisering
og
geografiske
informationssystemer
Uddannelsen
i
Multimedieteknologi
udbydes
i
samarbejde
med
13
Danmarks
Tekniske
Universitet
og
14
Københavns
Universitet
Det
meste
af
undervisningen
foregår
på
IT
højskolen
men
enkelte
kurser
kan
forekomme
på
DTU
og
KU
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Studieleder
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
John
Aa
Sørensen
Viden
om
teknologien
bag
IT
løsninger
Studieleder
lektor
John
Aa
Sørensen
Der
er
et
stort
behov
for
IT
folk
med
indsigt
i
teknologien
bag
IT
løsninger
så
vi
ikke
bare
bliver
brugere
af
andre
landes
teknologi
Vi
skal
også
deltage
i
udviklingen
af
teknologi
siger
lektor
John
Aa
Sørensen
uddannelseslinien
for
Multimedieteknologi
På
linien
er
der
både
plads
til
studerende
som
kommer
med
en
stor
teknisk
viden
og
dem
der
ikke
gør
Vi
skal
sørge
for
at
bygge
videre
på
de
forskellige
fundamenter
som
de
studerende
kommer
med
så
deres
forskellighed
bliver
en
gevinst
for
fællesskabet
Vi
sørger
så
vidt
muligt
for
at
teorien
bliver
understøttet
af
praktiske
øvelser
så
de
studerende
har
en
klar
fornemmelse
af
hvad
de
kan
skabe
med
deres
viden
Vi
forsøger
også
at
åbne
valgmuligheder
for
de
studerende
med
pegepinde
til
kurser
og
projekter
på
f
eks
DIKU
og
DTU
så
de
har
mulighed
for
yderligere
specialisering
John
Aa
Sørensen
giver
et
par
eksempler
på
opgaver
som
en
kandidat
på
Multimedielinien
kunne
løse
Når
TV
sender
direkte
fra
Tour
de
France
ville
det
være
attraktivt
at
kunne
skifte
reklamerne
ud
langs
vejene
ved
hjælp
af
multimedieteknologi
så
man
hjemme
i
den
danske
stue
så
reklamer
for
en
dansk
bank
mens
de
franske
seere
fik
vist
reklamer
for
god
fransk
vin
I
relation
til
filmindustrien
er
digital
behandling
af
film
et
vigtigt
fremtidigt
område
f
eks
i
videreudvikling
af
teknologien
bag
film
som
Jurassic
Park
eller
Titanic
Som
et
andet
eksempel
kan
nævnes
opgaver
indenfor
systemer
der
sender
billeder
og
lyd
mellem
geografisk
adskilte
steder
f
eks
for
at
muliggøre
kommunikation
mellem
disse
Kort
om
John
Aa
Sørensen
Uddannet
civilingeniør
i
elektronik
fra
Danmarks
Tekniske
Universitet
i
1975
Ph
d
i
1982
fra
DTU
Ansættelser
som
adjunkt
og
lektor
ved
DTU
Fra
1
november
2000
lektor
ved
IT
højskolen
Han
har
bl
a
arbejdet
med
forskning
og
undervisning
indenfor
signalbehandling
og
dens
anvendelser
i
kodning
og
støjreduktion
af
tale
og
anvendelser
i
kliniske
diagnosesystemer
Hans
interesseområde
er
metoder
til
og
anvendelse
af
multimediesignalbehandling
Deltager
i
internationalt
samarbejde
indenfor
IEEE
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Mere
om
MMT
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Læs
mere
om
Multimedieteknologi
Du
kan
læse
mere
om
Multimedieteknologi
i
vores
12
uddannelseskatalog
eller
besøge
deres
13
hjemmeside
Samtidig
har
du
mulighed
for
at
læse
om
de
forskellige
kurser
der
udbydes
i
14
kursusbogen
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Interview
med
studieleder
12
Interview
med
underviser
13
Mere
om
SWU
inter
menu
bund
gif
Softwareudvikling
Kandidater
i
Softwareudvikling
skal
kunne
skabe
nye
IT
anvendelser
tilpasse
og
udnytte
eksisterende
software
og
nyudvikle
software
lige
som
de
løbende
skal
kunne
omstille
sig
til
nye
teknologier
og
metoder
i
IT
sektoren
Uddannelsen
består
af
et
kernepensum
inden
for
områderne
programmering
softwareteknologi
og
systemudvikling
samt
en
række
valgfrie
fag
som
dels
udbydes
på
Softwarelinien
og
dels
udbydes
af
andre
linier
på
IT
højskolen
Uddannelsen
i
Softwareudvikling
spænder
fra
fundamentale
teorier
om
programudvikling
til
brug
af
anerkendte
udviklingsværktøjer
og
fra
teorier
om
forholdet
mellem
menneske
og
maskine
til
praktisk
kendskab
til
brugergrænseflader
Kandidatuddannelsen
i
Softwareudvikling
sigter
på
at
uddanne
nogle
af
fremtidens
systemudviklere
IT
projektledere
IT
chefer
IT
rådgivere
forskere
og
undervisere
på
softwareområdet
Kandidatuddannelsen
i
Softwareudvikling
foregår
hovedsageligt
på
IT
højskolen
og
uddannelsen
udbydes
af
IT
højskolen
i
samarbejde
med
Den
Kongelige
Veterinær
og
Landbohøjskole
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Interview
med
studieleder
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Søren
Lauesen
linjeleder
SWU
Professor
Søren
Lauesen
Studieleder
Kombinere
teori
og
praktik
Min
vision
for
IT
højskolen
er
et
uddannelsested
hvor
de
studerende
kombinerer
teori
og
praksis
siger
Søren
Lauesen
De
studerende
tilegner
sig
den
viden
en
IT
professionel
har
brug
for
og
de
har
den
teoretiske
ballast
der
skal
til
for
at
kunne
fortsætte
en
livslang
uddannelse
på
egen
hånd
De
kommer
ud
med
åbent
sind
og
lever
ikke
kun
i
deres
eget
IT
univers
men
forstår
succesfuldt
at
samarbejde
med
mennesker
fra
andre
faggrupper
Bygge
bro
IT
højskolen
er
en
unik
mulighed
for
at
bygge
bro
mellem
IT
og
andre
fagområder
Jeg
har
i
mange
firmaer
set
talentfulde
IT
folk
der
ikke
kunne
kommunikere
med
talentfulde
folk
inden
for
andre
fagområder
Jeg
sagde
ja
tak
til
denne
mulighed
fordi
jeg
tror
at
jeg
kan
gøre
en
forskel
Jeg
har
med
succes
før
hjulpet
med
at
bygge
bro
mellem
IT
og
økonomi
Jeg
er
også
interesseret
i
biologi
psykologi
kultur
samt
mange
andre
emner
og
så
har
jeg
stor
erfaring
fra
IT
branchen
såvel
som
forskning
og
undervisning
En
kort
biografi
for
Søren
Lauesen
Født
i
1942
Cand
Sc
i
matematik
og
fysik
fra
Københavns
Universitet
i
1965
I
1962
startede
han
i
IT
branchen
hvor
han
siden
udviklede
mange
slags
produkter
lige
fra
buskøreplanlægning
oversættere
og
operativsystemer
til
computerstyring
af
eldistributionen
i
Danmark
Hans
første
opgave
var
at
udvikle
et
program
som
kunne
vinde
over
ethvert
menneske
i
et
spil
udviklet
af
Piet
Hein
Han
har
arbejdet
for
den
danske
computerproducent
Regnecentralen
og
to
multinationale
firmaer
ABB
and
NCR
Siden
1985
har
han
været
professor
Han
har
været
med
til
at
starte
tre
uddannelser
Datalogi
på
Københavns
Universitet
økonomi
datalogi
på
Handelshøjskolen
i
København
og
IT
uddannelserne
på
IT
højskolen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Interview
med
underviser
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Fritz
Henglein
underviser
på
SWU
Fokus
på
principper
Lektor
Fritz
Henglein
Fritz
Henglein
Uddannelserne
i
softwareudvikling
på
IT
højskolen
beskæftiger
sig
med
hvordan
man
udvikler
relevant
og
effektiv
software
af
høj
kvalitet
På
softwareudvikling
får
man
indsigt
i
grundlæggende
principper
i
programmering
og
i
udviklingsprocessen
og
kombinerer
dem
med
praktisk
udøvelse
siger
lektor
Fritz
Henglein
der
er
studieleder
på
softwareudvikling
Fritz
Henglein
ser
tre
profiler
inden
for
softwareudvikling
Den
ene
er
udviklingsprofilen
hvor
der
er
fokus
på
processer
systemkrav
og
interaktion
mellem
mennesker
Den
anden
profil
har
fokus
på
selve
programmeringen
og
konstruktion
af
softwaresystemer
Den
tredje
beskæftiger
sig
med
det
teoretiske
og
matematiske
fundament
for
programmering
og
software
Det
er
vigtigt
at
vi
uddanner
forskellige
profiler
som
kan
tilpasses
helt
individuelt
Derfor
er
det
også
godt
at
vi
kan
tiltrække
studerende
med
vidt
forskellig
baggrund
lige
fra
det
matematisk
naturvidenskabelige
over
samfundsvidenskab
til
humaniora
Ved
at
have
studerende
med
vidt
forskellig
baggrund
skaber
vi
synergi
og
bygger
oven
på
værdifulde
kompetencer
Det
giver
også
et
særdeles
interessant
og
spændende
studiemiljø
med
motiverede
og
selvstændige
studerende
vurderer
Fritz
Henglein
Kort
om
Fritz
Henglein
39
år
Master
of
Science
Rutgers
University
New
Jersey
1986
Research
Scientist
New
York
University
1987
89
IBM
1988
Ph
D
Rutgers
University
1989
postdoc
Utrecht
University
1990
lektor
Datalogisk
Institut
Københavns
Universitet
1991
1999
direktør
Hafnium
ApS
1999
lektor
og
studieleder
IT
højskolen
i
København
1999
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Mere
om
SWU
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Læs
mere
om
Softwareudvikling
Du
kan
læse
mere
om
Softwareudvikling
i
vores
12
uddannelseskatalog
Samtidig
har
du
mulighed
for
at
læse
om
de
forskellige
kurser
der
udbydes
i
13
kursusbogen
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Mere
om
TIT
inter
menu
bund
gif
Tværfaglig
IT
Kandidater
i
Tværfaglig
IT
kombinerer
deres
viden
om
IT
med
faglig
viden
fra
andre
uddannelser
og
uddannelsen
lægger
stor
vægt
på
at
kombinere
flere
fagområder
Uddannelsen
giver
samtidig
en
indsigt
i
hvordan
IT
systemer
designes
og
konstrueres
Med
en
uddannelse
i
Tværfaglig
IT
kan
kandidaten
med
basis
i
et
andet
fagområde
se
nye
muligheder
med
IT
og
bruge
IT
i
nye
sammenhænge
og
til
løsning
af
andre
og
nye
opgaver
Uddannelsen
sigter
mod
at
give
den
enkelte
sin
egen
faglige
profil
samtidig
med
at
den
giver
generelle
og
langsigtede
kvalifikationer
der
bygger
på
et
fælles
teoretisk
og
metodisk
fundament
Målet
er
blandt
andet
at
kandidater
i
Tværfaglig
IT
kan
arbejde
selvstændigt
kritiskt
og
problemløsende
i
projektarbejder
Hovedparten
af
uddannelsen
foregår
på
RUC
som
også
er
ansvarlig
for
uddannelsen
I
et
vist
omfang
vil
der
dog
være
mulighed
for
at
tage
kurser
på
andre
linier
på
IT
højskolen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
Mere
om
TIT
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Læs
mere
om
Tværfaglig
IT
Du
kan
læse
mere
om
linien
Tværfaglig
IT
i
vores
12
uddannelseskatalog
Samtidig
har
du
mulighed
for
at
læse
om
de
forskellige
kurser
der
udbydes
i
13
kursusbogen
Yderligere
information
om
uddannelsen
studieordning
mv
kan
fås
fra
14
Tværfaglig
IT
s
hjemmeside
på
Roskilde
Universitetscenter
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
Design
Kommunikation
og
Medier
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Studieleder
13
Mere
om
DKM
inter
menu
bund
gif
Design
Kommunikation
og
Medier
Masteruddannelsen
i
Design
Kommunikation
og
Medier
består
af
tre
områder
konstruktion
interaktionsdesign
og
medier
Uddannelsen
beskæftiger
sig
med
design
og
interaktivitet
og
med
IT
som
socialt
og
kulturelt
medie
Desuden
indeholder
uddannelsen
undervisning
i
mere
håndværksorienterede
fag
Nogle
af
nøgleordene
på
uddannelsen
er
abstraktionsevne
formidling
argumentation
og
refleksion
ligesom
der
lægges
stor
vægt
på
tværfaglig
orientering
Uddannelsen
gør
kandidaten
i
stand
til
at
bruge
den
nye
informationsteknologi
til
formidling
Det
kan
eksempelvis
være
konstruktion
og
design
af
web
og
multimedieproduktioner
3
D
animationer
og
spil
Desuden
giver
uddannelsen
indsigt
i
projektledelse
grafisk
design
organisation
brugervenlighed
og
interaktion
Masteruddannelsen
i
Design
Kommunikation
og
Medier
udbydes
af
IT
højskolen
i
samarbejde
med
Københavns
Universitet
og
Danmarks
Designskole
Undervisningen
foregår
dels
på
IT
højskolen
og
dels
på
Danmarks
Designskole
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Deltidsuddannel
ser
og
enkeltfag
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Master
11
Diplom
12
Enkeltfag
13
Uddannelses
katalog
14
Informations
møde
15
Fleksibel
undervisning
inter
menu
bund
gif
En
bred
vifte
af
IT
uddannelser
og
enkeltfag
for
erhvervsaktive
Åben
Uddannelse
er
rammen
om
IT
højskolens
mange
tilbud
om
kompetencegivende
efter
og
videreuddannelse
på
universitetsniveau
Uddannelserne
er
specielt
tilrettelagt
for
erhvervsaktive
som
har
brug
for
et
IT
kompetenceløft
samtidig
med
at
de
arbejder
Derfor
foregår
flere
og
flere
af
IT
højskolens
kurser
under
Åben
Uddannelse
uden
for
almindelig
arbejdstid
om
eftermiddagen
aftenen
i
weekenden
eller
som
undervisning
via
internettet
Alle
studerende
under
Åben
Uddannelse
har
også
mulighed
for
at
følge
IT
højskolens
dagkurser
Hvis
du
har
spørgsmål
vedrørende
IT
højskolens
uddannelser
bedes
du
kontakte
16
studievejledningen
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
Master
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Design
Kommunikation
og
Medier
12
Internetteknologi
13
Multimedie
teknologi
14
Softwareudvikling
15
Fleksibel
undervisning
16
Kurser
foråret
2001
17
Optagelses
betingelser
inter
menu
bund
gif
Masteruddannelser
På
IT
højskolen
i
København
kan
man
tage
fire
masteruddannelser
Design
kommunikation
og
medier
Internetteknologi
Multimedieteknologi
Softwareudvikling
Masteruddannelsen
er
en
tre
årig
deltidsuddannelse
svarende
til
1
5
års
fuldtidsstudium
Masteruddannelsen
er
opdelt
i
seks
semestre
og
den
er
bygget
op
af
obligatoriske
kurser
valgfri
aktiviteter
og
et
afsluttende
projekt
Den
skemalagte
undervisning
gennemføres
på
to
ugentlige
hverdage
hvert
semester
Dog
kan
den
skemalagte
undervisning
for
to
af
masteruddannelserne
begrænses
til
n
ugentlig
hverdag
ved
at
vælge
et
kursus
med
fleksibel
undervisning
som
er
en
kombination
af
Internetbaseret
fjernundervisning
hjemmearbejde
og
tilstedeværelsesundervisning
uden
for
almindelig
arbejdstid
se
masteruddannelserne
i
internetteknologi
og
softwareudvikling
Masteruddannelsen
udbydes
under
lov
om
åben
uddannelse
og
koster
kr
12
500
pr
semester
i
alt
kr
75
000
kr
for
hele
uddannelsen
Optagelse
på
masteruddannelsen
finder
sted
to
gange
om
året
18
Ansøgningsfrist
for
næste
optagelse
ses
her
Der
kræves
en
bacheloruddannelse
eller
tilsvarende
kvalifikationer
samt
mindst
to
års
erhvervserfaring
for
at
blive
optaget
på
masteruddannelsen
på
IT
højskolen
Alle
bachelorgrader
er
adgangsgivende
Hvis
du
har
spørgsmål
vedrørende
masteruddannelsen
bedes
du
kontakte
19
studievejledningen
20
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
21
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
Internetteknologi
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Studieleder
13
Mere
om
INT
inter
menu
bund
gif
Internetteknologi
Masteruddannede
inden
for
Internetteknologi
vil
have
en
grundliggende
viden
om
de
teknologier
der
tilsammen
udgør
internettet
og
kan
udvikle
driftssikre
og
effektive
internetprogrammer
Uddannelsen
består
af
tre
emneområder
netværksteknologi
internetprogrammel
og
internet
i
organisationer
Netværksteknologi
indeholder
opbygning
og
organisering
af
netværk
netværksprotokoller
fejltolerance
og
datasikkerhed
Herigennem
opnås
indsigt
i
netværkets
basale
funktioner
Internetprogrammel
giver
indsigt
i
internetprogrammel
og
aktuelle
teknologier
og
værktøjer
og
omhandler
parallelle
systemer
distribueret
databehandling
databaser
indlejrede
og
tidstro
systemer
operativsystemer
algoritmer
og
datastrukturer
korrekthed
og
pålidelighed
Internet
i
organisationer
beskæftiger
sig
med
IT
i
geografisk
spredte
organisationer
interaktionsdesign
og
økonomiske
og
organisatoriske
aspekter
af
intra
og
internet
samt
giver
indsigt
i
nye
samarbejdsformer
services
og
produkter
Masteruddannelsen
i
internetteknologi
udbydes
i
samarbejde
med
Danmarks
Tekniske
Universitet
og
Københavns
Universitet
For
mere
information
kontakt
14
studievejledningen
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Internetteknologi
Studieleder
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Thomas
Hildebrandt
Med
til
at
sætte
dagsordenen
Studieleder
Thomas
Hildebrandt
Internettet
er
unikt
fordi
det
gør
datalogiske
problemstillinger
meget
mere
synlige
og
relevante
for
den
almindelige
bruger
F
eks
er
net
surfere
afhængige
af
semantik
og
fortolkning
hver
gang
de
får
vist
en
ny
webside
Og
de
hurtigste
og
smarteste
søgemaskiner
udnytter
avancerede
algoritmer
og
datastrukturer
siger
forskningsadjunkt
Thomas
Troels
Hildebrandt
som
er
leder
af
linien
Internetteknologi
på
IT
højskolen
Teknologien
udvikler
og
ændrer
sig
med
stor
hast
Derfor
er
det
vigtigt
at
en
master
i
internetteknologi
også
forstår
de
bagvedliggende
og
varige
principper
for
de
teknologier
der
tilsammen
udgør
internettet
Målet
med
uddannelsen
er
netop
at
uddanne
IT
praktikere
som
er
i
stand
til
selv
at
udvikle
teknologien
og
bruge
den
i
nye
sammenhænge
så
vi
ikke
bare
bliver
passive
bruger
der
overlader
det
til
andre
at
sætte
dagsordenen
for
internettet
Det
spændende
ved
IT
højskolen
er
at
de
studerende
har
vidt
forskellige
faglige
baggrunde
Inden
for
Internetteknologi
linjen
har
mange
af
de
studerende
en
teknisk
baggrund
men
der
er
også
studerende
som
har
læst
religion
historie
og
musik
Det
gælder
om
at
de
husker
og
udnytter
den
faglighed
de
kom
med
De
studerende
kan
bruge
deres
IT
overbygning
til
at
bringe
nye
ideer
til
virkelighed
inden
for
deres
eget
fag
F
eks
lavede
en
studerende
som
før
havde
læst
musik
en
slags
online
play
room
hvor
musikere
fra
hele
verden
kunne
spille
sammen
i
real
time
Thomas
Hildebrandt
forventer
at
de
studerende
holder
sig
grundigt
orienteret
om
hvad
der
foregår
på
IT
området
f
eks
via
dagspressen
og
de
hyppige
forsknings
og
virksomhedsforedrag
på
IT
højskolen
Hvis
man
vil
være
med
til
at
præge
Internet
området
i
fremtiden
kræver
det
at
man
har
øje
for
hvilke
forventinger
f
eks
erhvervslivet
har
til
området
hvilke
samfundsmæssige
tendenser
som
kan
præge
udviklingen
osv
Vi
skal
ved
hjælp
af
uddannelse
forskning
og
et
samarbejde
med
erhvervslivet
være
med
til
at
sætte
dagsordenen
på
Internet
området
intet
mindre
Kort
om
Thomas
Troels
Hildebrandt
28
år
uddannet
datalog
fra
Århus
Universitet
i
1997
Forskningsområde
Semantik
Kategoriteori
Parallelle
og
Mobile
systemer
1998
Labaratory
for
Foundations
of
Computer
Science
University
of
Edinburgh
Kortere
ophold
på
McGill
University
Montreal
1999
Ph
d
i
datalogi
fra
Aarhus
Universitet
BRICS
grundforskningscenteret
Siden
1999
ansat
som
forskningsadjunkt
ved
IT
højskolen
tilknyttet
RCES
forskningsprojektet
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Internetteknologi
Mere
om
INT
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
Multimedie
teknologi
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Studieleder
13
Mere
om
MMT
inter
menu
bund
gif
Multimedieteknologi
Masteruddannelsen
i
Multimedieteknologi
kombinerer
den
nyeste
teknologi
i
sammenhæng
med
andre
og
etablerede
fagområder
Det
kan
eksempelvis
være
taleteknologi
billedanalyse
computergrafik
signalbehandling
og
interaktiv
3
D
grafik
i
relation
til
medicinske
og
industrielle
anvendelser
Uddannelsen
er
naturvidenskabelig
orienteret
og
fokuserer
på
principper
for
eksempelvis
mønstergenkendelse
automatisk
billedanalyse
og
signalbehandling
ligesom
uddannelsen
beskæftiger
sig
med
teorier
for
human
perception
Samtidig
lægger
uddannelsen
vægt
på
at
bruge
software
som
i
forvejen
bruges
kommercielt
eller
forskningsorienteret
i
industrien
De
masteruddannede
vil
få
et
grundigt
kendskab
til
basisteknologier
og
systemer
og
vil
være
i
stand
til
både
at
vedligeholde
og
udvikle
sådanne
systemer
Som
færdiguddannet
master
i
Multimedieteknologi
vil
du
kunne
komme
til
at
arbejde
med
eksempelvis
film
tv
medicinske
systemer
billed
og
lydtransmission
industriel
automatisering
og
geografiske
informationssystemer
Masteruddannelsen
i
Multimedieteknologi
udbydes
i
samarbejde
med
14
Danmarks
Tekniske
Universitet
og
15
Københavns
Universitet
Det
meste
af
undervisningen
foregår
på
IT
højskolen
men
enkelte
kurser
kan
forekomme
på
DTU
og
KU
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Multimedie
teknologi
Studieleder
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Mads
Nielsen
Viden
om
teknologien
bag
IT
løsninger
Studieleder
lektor
Mads
Nielsen
Der
er
et
stort
behov
for
IT
folk
med
dyb
indsigt
i
teknologien
bag
IT
løsninger
så
vi
ikke
bare
bliver
brugere
af
andre
landes
teknologi
Vi
skal
skabe
teknologi
siger
lektor
Mads
Nielsen
Multimedielinien
På
linien
er
der
både
plads
til
studerende
som
kommer
med
en
stor
teknisk
viden
og
dem
der
ikke
gør
Vi
skal
sørge
for
at
bygge
videre
på
de
forskellige
fundamenter
som
de
studerende
kommer
med
så
deres
forskellighed
bliver
en
gevinst
for
fællesskabet
Vi
sørger
så
vidt
muligt
for
at
teorien
bliver
understøttet
af
praktiske
øvelser
så
de
studerende
har
en
klar
fornemmelse
af
hvad
de
kan
skabe
med
deres
viden
Vi
forsøger
også
at
åbne
valgmuligheder
for
de
studerende
med
pegepinde
til
kurser
og
projekter
på
f
eks
DIKU
og
DTU
så
de
har
mulighed
for
yderligere
specialisering
Mads
Nielsen
giver
et
par
eksempler
på
opgaver
som
en
master
på
Multimedielinien
kunne
løse
Når
TV
sender
direkte
fra
Tour
de
France
ville
det
være
attraktivt
at
kunne
skifte
reklamerne
ud
langs
vejene
ved
hjælp
af
multimedieteknologi
så
man
hjemme
i
den
danske
stue
så
reklamer
for
en
dansk
bank
mens
de
franske
seere
fik
vist
reklamer
for
god
fransk
vin
Udvikling
af
en
elektronisk
vejviser
i
bilen
kunne
være
en
anden
opgave
mens
filmindustrien
har
ledige
pladser
til
dem
der
kan
udvikle
teknologien
bag
film
som
Jurassic
Park
eller
Titanic
Kort
om
Mads
Nielsen
34
år
uddannet
datalog
fra
Københavns
Universitet
i
1992
PhD
i
1995
fra
KU
I
forbindelse
med
PhD
var
Mads
Nielsen
et
år
i
Frankrig
på
Robotvis
forskningslaboratoriet
INRIA
Efterfølgende
forskning
i
et
halvt
år
på
universitetet
i
Utrecht
Holland
Siden
3D
lab
Panum
Fra
1
april
1999
lektor
på
IT
højskolen
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Multimedie
teknologi
Mere
om
MMT
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Læs
mere
om
Multimedieteknologi
Du
kan
læse
mere
om
Multimedieteknologi
i
vores
13
uddannelseskatalog
eller
besøge
deres
14
hjemmeside
Samtidig
har
du
mulighed
for
at
læse
om
de
forskellige
kurser
der
udbydes
i
15
kursusbogen
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
Softwareudvikling
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Søren
Lauesen
13
Fritz
Henglein
14
Mere
om
SWU
inter
menu
bund
gif
Softwareudvikling
Med
en
masteruddannelse
i
Softwareudvikling
kan
man
skabe
nye
IT
anvendelser
tilpasse
og
udnytte
eksisterende
software
og
nyudvikle
software
samt
løbende
omstille
sig
til
nye
teknologier
og
metoder
i
IT
sektoren
Uddannelsen
består
af
et
kernepensum
inden
for
områderne
programmering
softwareteknologi
og
systemudvikling
samt
en
række
valgfrie
fag
som
dels
udbydes
på
Softwarelinien
og
dels
udbydes
af
andre
linier
på
IT
højskolen
Uddannelsen
i
Softwareudvikling
spænder
fra
fundamentale
teorier
om
programudvikling
til
brug
af
anerkendte
udviklingsværktøjer
og
fra
teorier
om
forholdet
mellem
menneske
og
maskine
til
praktisk
kendskab
til
brugergrænseflader
Masteruddannelsen
i
Softwareudvikling
sigter
på
at
uddanne
nogle
af
fremtidens
softwareudviklere
systemudviklere
IT
projektledere
IT
konsulenter
IT
rådgivere
IT
iværksættere
undervisere
og
forskere
på
softwareområdet
Masteruddannelsen
i
Softwareudvikling
foregår
hovedsageligt
på
IT
højskolen
og
uddannelsen
udbydes
af
IT
højskolen
i
samarbejde
med
Den
Kongelige
Veterinær
og
Landbohøjskole
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Softwareudvikling
Søren
Lauesen
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Søren
Lauesen
IT
rettet
mod
erhvervslivet
Professor
Søren
Lauesen
Det
er
utrolig
spændende
at
være
på
IT
højskolen
og
fra
starten
være
med
til
at
afstikke
vejen
så
de
nye
generationer
af
IT
folk
lærer
erhvervsrettet
IT
på
højt
niveau
siger
professor
Søren
Lauesen
Softwareudvikling
Vi
skal
sørge
for
at
give
hver
af
de
studerende
en
IT
ballast
og
forståelse
som
de
både
kan
anvende
straks
og
bygge
videre
på
Søren
Lauesen
vægter
også
forskellige
arbejdsformer
så
de
studerende
både
arbejder
i
grupper
og
individuelt
Det
er
vigtigt
at
man
også
kan
præstere
selv
og
stå
på
egne
ben
Det
er
et
krav
i
erhvervslivet
De
studerende
kommer
med
vidt
forskellige
uddannelser
og
IT
forudsætninger
og
Søren
Lauesen
ser
det
som
en
stor
udfordring
at
understøtte
de
forskellige
baggrunde
og
kombinere
de
forskellige
fagligheder
så
der
kommer
synergi
ud
af
samarbejdet
De
studerende
er
nysgerrige
og
energiske
og
det
giver
et
fantastisk
studiemiljø
som
er
enestående
for
IT
højskolen
siger
Søren
Lauesen
Kort
om
Søren
Lauesen
57
år
uddannet
cand
scient
i
matematik
og
fysik
i
1965
fra
Københavns
Universitet
Siden
1962
har
han
haft
arbejde
i
IT
branchen
bl
a
med
udvikling
af
spilprogram
for
Piet
Hein
I
1965
Regnecentralen
med
udvikling
af
operativsystemer
1969
medstifter
af
den
første
IT
uddannelse
på
Københavns
Universitet
I
1973
ansat
hos
Brown
Boveri
hvor
han
arbejdede
med
fjernstyring
af
el
forsyningen
i
Danmark
Siden
ansat
ved
NCR
som
chefdesigner
og
fra
1985
professor
ved
Handelshøjskolen
i
København
bl
a
medstifter
af
økonomi
datalogi
uddannelsen
Fra
1999
professor
ved
IT
højskolen
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Softwareudvikling
Fritz
Henglein
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Fokus
på
principper
Lektor
Fritz
Henglein
Fritz
Henglein
Uddannelserne
i
softwareudvikling
på
IT
højskolen
beskæftiger
sig
med
hvordan
man
udvikler
relevant
og
effektiv
software
af
høj
kvalitet
På
softwareudvikling
får
man
indsigt
i
grundlæggende
principper
i
programmering
og
i
udviklingsprocessen
og
kombinerer
dem
med
praktisk
udøvelse
siger
lektor
Fritz
Henglein
der
er
studieleder
på
softwareudvikling
Fritz
Henglein
ser
tre
profiler
inden
for
softwareudvikling
Den
ene
er
udviklingsprofilen
hvor
der
er
fokus
på
processer
systemkrav
og
interaktion
mellem
mennesker
Den
anden
profil
har
fokus
på
selve
programmeringen
og
konstruktion
af
softwaresystemer
Den
tredje
beskæftiger
sig
med
det
teoretiske
og
matematiske
fundament
for
programmering
og
software
Det
er
vigtigt
at
vi
uddanner
forskellige
profiler
som
kan
tilpasses
helt
individuelt
Derfor
er
det
også
godt
at
vi
kan
tiltrække
studerende
med
vidt
forskellig
baggrund
lige
fra
det
matematisk
naturvidenskabelige
over
samfundsvidenskab
til
humaniora
Ved
at
have
studerende
med
vidt
forskellig
baggrund
skaber
vi
synergi
og
bygger
oven
på
værdifulde
kompetencer
Det
giver
også
et
særdeles
interessant
og
spændende
studiemiljø
med
motiverede
og
selvstændige
studerende
vurderer
Fritz
Henglein
Kort
om
Fritz
Henglein
39
år
Master
of
Science
Rutgers
University
New
Jersey
1986
Research
Scientist
New
York
University
1987
89
IBM
1988
Ph
D
Rutgers
University
1989
postdoc
Utrecht
University
1990
lektor
Datalogisk
Institut
Københavns
Universitet
1991
1999
direktør
Hafnium
ApS
1999
lektor
og
studieleder
IT
højskolen
i
København
1999
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Softwareudvikling
Mere
om
SWU
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Læs
mere
om
Softwareudvikling
Du
kan
læse
mere
om
Softwareudvikling
i
vores
13
uddannelseskatalog
Samtidig
har
du
mulighed
for
at
læse
om
de
forskellige
kurser
der
udbydes
i
14
kursusbogen
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
Fleksibel
undervisning
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Kurser
efterår
2000
inter
menu
bund
gif
Fleksibel
undervisning
Fleksibel
undervisning
bliver
en
del
af
diplomuddannelsen
og
masteruddannelserne
i
internetteknologi
og
softwareudvikling
når
de
udbydes
på
IT
højskolen
fra
forårssemestret
2001
Fleksibel
undervisning
betyder
at
studerende
ikke
behøver
at
møde
op
til
forelæsninger
og
øvelser
på
IT
højskolen
to
hele
hverdage
hver
uge
De
studerende
kan
nøjes
med
at
møde
en
hverdag
samt
enkelte
aftener
eller
weekenddage
og
kan
så
sidde
hjemme
eller
på
arbejdet
og
studere
på
de
tider
af
ugen
der
passer
den
enkelte
bedst
På
IT
højskolen
udbydes
fra
forårssemesteret
2001
følgende
former
for
fleksibel
undervisning
Fleksibel
tilrettelagt
kursus
En
vigtig
del
af
et
fleksibelt
tilrettelagt
kursus
er
dog
at
de
studerende
mødes
med
deres
underviser
flere
gange
i
løbet
kurset
men
uden
for
normal
arbejdstid
Et
fleksibelt
tilrettelagt
kursus
består
således
af
en
kombination
af
fokusperioder
med
undervisning
via
Internettet
og
4
5
tilstedeværelsesdage
på
IT
højskolen
Et
fleksibelt
tilrettelagt
kursus
vil
i
fokusperioderne
bestå
af
selvstændig
læsning
af
teori
opgaveløsning
praktiske
og
teoretiske
øvelser
samt
løbende
elektronisk
kommunikation
og
debat
med
underviseren
og
medstuderende
Tilstedeværelsesdagene
som
ligger
om
aftenen
eller
i
weekenden
uden
for
normal
arbejdstid
vil
bl
a
bestå
af
fremlæggelser
debat
evaluering
samt
forberedelse
af
næste
fokusperiode
Fleksibelt
tilrettelagte
kurser
forløber
som
hovedregel
over
semestrets
første
16
uger
I
forårssemesteret
2001
kan
kurset
Grundlæggende
Programmering
følges
som
fleksibelt
tilrettelagt
kursus
IT
højskolen
forventer
fra
efteråret
2001
at
udbyde
yderligere
et
antal
fleksibelt
tilrettelagte
kurser
Projekt
I
såvel
diplomuddannelsen
som
i
masteruddannelserne
indgår
et
eller
flere
projekter
De
fleste
projekter
vil
være
gruppeprojekter
Projektbeskrivelsen
udarbejdes
i
høj
grad
selvstændigt
i
den
første
del
af
projektperioden
Et
projekt
gennemføres
via
en
kombination
af
hjemmearbejde
undervisning
via
Internettet
møder
med
projektvejlederen
og
gruppemøder
for
studerende
For
mere
information
kontakt
13
studievejledningen
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Fleksibel
undervisning
Kurser
efterår
2000
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
Kurser
foråret
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
Optagelses
betingelser
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Optagelsesbetingelser
op
masteruddannelserne
Optagelse
på
masteruddannelserne
finder
sted
to
gange
om
året
12
Ansøgningsfrist
for
næste
optagelse
ses
her
Optagelse
kan
kun
finde
sted
hvis
de
studerende
opfylder
nedenstående
optagelseskrav
Uddannelses
og
erhvervsmæssig
baggrund
Der
kræves
en
bacheloruddannelse
eller
tilsvarende
kvalifikationer
samt
mindst
to
års
erhvervserfaring
for
at
blive
optaget
på
en
masteruddannelse
på
IT
højskolen
Alle
bachelorgrader
er
adgangsgivende
Optagelse
vil
ske
i
henhold
til
IT
højskolens
optagelsesregler
13
Word
14
ren
tekst
som
er
under
godkendelse
For
mere
information
kontakt
15
studievejledningen
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
Diplom
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Fagligt
indhold
12
Fleksibel
undervisning
13
Kurser
forår
2001
14
Optagelses
betingelser
15
Studieleder
inter
menu
bund
gif
Diplomuddannelsen
Diplomuddannelsen
i
informationsteknologi
er
en
to
årig
deltidsuddannelse
svarende
til
et
års
fuldtidsstudium
Efter
endt
studium
får
du
betegnelsen
Diploma
in
Information
Technology
DIT
Diplomuddannelsen
er
en
videregående
uddannelse
som
giver
et
grundlæggende
og
bredt
kendskab
til
informationsteknologi
Der
findes
ingen
specielle
linier
på
diplomuddannelsen
men
studerende
kan
inden
for
nærmere
beskrevne
rammer
selv
vælge
kurser
ud
fra
nuværende
uddannelse
erhvervserfaringer
og
egne
interesser
Det
gør
diplomuddannelsen
til
en
individuel
uddannelse
hvor
den
studerende
kan
vælge
at
fokusere
specielt
på
f
eks
opbygning
af
hjemmesider
Internetprogrammering
databasesystemer
generel
softwareudvikling
mm
Diplomuddannelsen
i
informationsteknologi
kan
kvalificere
til
at
tage
yderligere
uddannelser
på
IT
højskolen
Diplomuddannelsen
er
opdelt
i
fire
semestre
De
tre
første
semestre
består
af
i
alt
fem
kurser
og
et
projekt
mens
det
fjerde
semester
bruges
til
et
afsluttende
projekt
Den
skemalagte
undervisning
gennemføres
på
to
ugentlige
hverdage
eller
helt
eller
delvis
som
fleksibel
undervisning
Fleksibel
undervisning
betyder
at
studerende
kan
gennemføre
den
skemalagte
undervisning
uden
for
almindelig
arbejdstid
om
eftermiddagen
om
aftenen
i
weekenden
eller
som
netbaseret
fjernundervisning
Optagelse
på
diplomuddannelsen
Diplomuddannelsen
udbydes
under
lov
om
åben
uddannelse
og
koster
kr
12
500
pr
semester
i
alt
kr
50
000
kr
for
hele
uddannelsen
Optagelse
på
diplomuddannelsen
finder
sted
to
gange
om
året
16
Ansøgningsfrist
for
næste
optagelse
ses
her
Der
kræves
en
kort
videregående
en
mellemlang
videregående
en
lang
videregående
uddannelse
eller
tilsvarende
kvalifikationer
samt
mindst
to
års
relevant
erhvervserfaring
efter
den
adgangsgivende
uddannelse
for
at
blive
optaget
på
diplomuddannelsen
Det
forventes
som
hovedregel
at
ansøgere
med
en
kort
videregående
uddannelse
har
en
solid
IT
baggrund
dvs
at
ansøgerne
har
erfaring
med
IT
ud
over
brugerniveau
Hvis
du
har
spørgsmål
vedrørende
diplomuddannelsen
så
kontakt
venligst
17
studievejledningen
18
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Diplom
Fagligt
indhold
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
12
Struktur
inter
menu
bund
gif
Fagligt
indhold
i
diplomuddannelsen
i
informationsteknologi
Hvilken
kompetence
opnår
du
Personer
med
en
diplomuddannelse
i
informationsteknologi
vil
kunne
medvirke
ved
kravspecifikation
design
udvikling
eller
udvælgelse
af
de
forskellige
typer
af
anvendelsesprogrammer
og
standardsoftware
F
eks
vil
diplomuddannelsen
give
kompetence
til
deltage
i
opbygning
og
vedligeholdelse
af
virksomheders
og
organisationers
intranet
og
eksterne
hjemmeside
herunder
af
systemer
til
elektronisk
kommunikation
e
handel
e
læring
mm
Diplomuddannelsen
vil
typisk
passe
ind
i
gabet
mellem
IT
brugere
og
IT
afdelingen
eller
eksterne
IT
konsulenter
Uddannelsen
vil
således
også
give
mulighed
for
at
deltage
i
løbende
problemløsning
fejlfinding
vedligeholdelse
og
videreudvikling
af
de
etablerede
systemer
Uddannelsen
indeholder
såvel
hands
on
træning
af
informationsteknologiske
færdigheder
som
gennemgang
og
vurdering
af
væsentlige
metoder
og
teorier
Uddannelsen
kan
f
eks
spænde
fra
fundamentale
teorier
om
programudvikling
til
brug
af
anerkendte
udviklingsværktøjer
og
fra
teorier
om
forholdet
mellem
menneske
og
maskine
til
praktisk
kendskab
til
brugergrænseflader
For
datamatikere
eller
andre
med
en
IT
uddannelse
vil
diplomuddannelsen
give
mulighed
specialisering
inden
for
f
eks
avancerede
datastrukturer
algoritmer
objektorienteret
programmering
systemudvikling
og
IT
projektledelse
med
henblik
på
efterfølgende
at
tage
en
master
eller
kandidatuddannelse
på
IT
højskolen
inden
for
f
eks
softwareudvikling
Da
diplomstuderende
skal
have
mindst
to
års
erhvervserfaring
kommer
man
som
diplomstuderende
med
en
ballast
af
erfaringer
fra
erhvervslivet
I
diplomuddannelsen
kan
denne
tilknytning
til
erhvervslivet
bl
a
udnyttes
hvis
de
studerende
laver
projekter
som
relaterer
sig
til
den
virksomhed
eller
organisation
som
de
arbejder
i
Det
kan
gøre
den
teoretiske
IT
viden
mere
nærværende
og
interessant
og
virksomheden
kan
drage
nytte
af
at
have
en
medarbejder
på
uddannelse
For
mere
information
kontakt
13
studievejledningen
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Diplom
5
Fagligt
indhold
Struktur
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Diplomuddannelsens
struktur
Diplomuddannelsen
er
opdelt
i
fire
semestre
1
semester
Kursus
Kursus
2
semester
Kursus
Projekt
3
semester
Kursus
Kursus
4
semester
Afsluttende
projekt
Diplomuddannelsen
består
således
af
Fire
kurser
der
kan
vælges
blandt
diplomuddannelsens
kernekurser
nævnt
nedenfor
Et
projektforløb
Et
valgfrit
kursus
som
kan
vælges
frit
blandt
alle
kurser
i
IT
Cs
kursusbog
Et
afsluttende
projekt
Diplomuddannelsens
kernekurser
er
Introduktion
til
Informationsteknologi
Grundlæggende
Programmering
gennemføres
som
fleksibel
undervisning
fra
foråret
2001
Internetprogrammering
Databasebaseret
Web
publicering
Videregående
Programmering
for
Praktikere
Design
af
Brugergrænseflader
og
Data
Databasesystemer
Systemudvikling
IT
projektledelse
Eksempel
på
kursusvalg
for
ikke
IT
kyndige
På
1
semester
vælges
to
kurser
Introduktion
til
Informationsteknologi
og
Grundlæggende
Programmering
På
2
semester
vælges
kurset
Design
af
Brugergrænseflader
og
Data
samt
et
erhvervsrelateret
projekt
med
udgangspunkt
i
programmeringskurset
på
1
semester
På
3
semester
vælges
et
helt
valgfrit
kursus
fra
IT
C
s
kursusbog
Desuden
vælges
et
af
følgende
kurser
Systemudvikling
Videregående
Programmering
for
Praktikere
Internetprogrammering
eller
Databasebaseret
Web
publiceing
På
4
semester
gennemføres
et
afsluttende
projekt
som
udfærdiges
i
samarbejde
med
en
erhvervsvirksomhed
Eksempel
på
kursusforløb
for
IT
kyndige
f
eks
datamatikere
eller
datanomer
På
1
semester
vælges
enten
kurset
Design
af
Brugergrænseflader
og
Data
eller
kurset
Databasesystemer
Desuden
vælges
kurset
Internetprogrammering
eller
et
videregående
programmeringskursus
f
eks
Objektorienteret
Programmering
fra
IT
C
s
kursusbog
På
2
semester
vælges
kurset
IT
projektledelse
eller
et
kursus
indenfor
softwareudvikling
se
IT
C
s
kursusbog
Desuden
gennemføres
et
erhvervsrelateret
projekt
der
tager
udgangspunkt
i
programmeringskurset
på
1
semester
På
3
semester
vælges
et
helt
valgfrit
kursus
fra
IT
C
s
kursusbog
Desuden
vælges
kurset
Databasesystemer
eller
kurset
Introduktion
til
Algoritmik
og
Datastrukturer
eller
et
andet
kursus
inden
for
fagområdet
klassisk
datalogi
På
4
semester
gennemføres
et
afsluttende
projekt
som
udfærdiges
i
samarbejde
med
en
erhvervsvirksomhed
Studerende
kan
vælge
kurser
blandt
dem
som
udbydes
i
det
enkelte
semester
IT
højskolen
kan
undlade
at
igangsætte
udbudte
kurser
hvis
der
er
for
få
tilmeldte
eller
ved
andre
særlige
omstændigheder
For
mere
information
kontakt
13
studievejledningen
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Diplom
Fleksibel
undervisning
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Fleksibel
undervisning
Fleksibel
undervisning
ligger
uden
for
almindelig
arbejdstid
om
eftermiddagen
om
aftenen
i
weekenden
eller
som
netbaseret
fjernundervisning
I
efterårssemesteret
2001
vil
antallet
af
fleksible
kurser
blive
lige
knap
10
IT
højskolen
øger
for
hvert
semester
antallet
af
fleksible
kurser
for
erhvervsaktive
som
ønsker
at
studere
uden
for
almindelig
arbejdstid
IT
højskolens
fleksible
undervisning
betyder
at
diplom
og
masterstuderendes
ikke
behøver
at
møde
op
til
forelæsninger
og
øvelser
på
IT
højskolen
to
hele
hverdage
hver
uge
Afhængig
af
kursusvalg
vil
de
studerende
typisk
kunne
lægge
dele
af
eller
måske
hele
deres
skemalagte
undervisning
om
eftermiddagen
om
aftenen
i
weekenden
eller
som
netbaseret
undervisning
På
IT
højskolen
udbydes
følgende
former
for
fleksibel
undervisning
Netbaseret
undervisning
Netbaseret
undervisning
består
af
en
kombination
af
fokusperioder
med
undervisning
via
internettet
og
4
5
tilstedeværelsesdage
på
IT
højskolen
Et
kursus
udbudt
som
netbaseret
undervisning
vil
i
fokusperioderne
bestå
af
selvstændig
læsning
af
teori
opgaveløsning
praktiske
og
teoretiske
øvelser
samt
løbende
elektronisk
kommunikation
og
debat
med
underviseren
og
medstuderende
Tilstedeværelsesdagene
som
ligger
om
aftenen
eller
i
weekenden
uden
for
normal
arbejdstid
vil
bl
a
bestå
af
forelæsninger
fremlæggelser
debat
evaluering
samt
forberedelse
af
næste
fokusperiode
Netbaseret
undervisning
forløber
som
hovedregel
over
semestrets
første
16
uger
I
efterårssemesteret
2001
kan
bl
a
kurset
Grundlæggende
Programmering
følges
som
netbaseret
undervisning
Medio
maj
2001
vil
den
samlede
oversigt
over
netbaseret
undervisning
blive
vist
her
på
IT
højskolens
hjemmeside
Vi
forventer
at
øge
udbudet
af
netbaseret
undervisning
de
følgende
semestre
Kursus
med
ugentlig
skemalagt
undervisning
som
gennemføres
uden
for
almindelig
arbejdstid
om
eftermiddagen
aftenen
eller
i
weekenden
IT
højskolen
tilrettelægger
flere
og
flere
kurser
under
Åben
Uddannelse
hvor
den
skemalagte
undervisning
ligger
uden
for
almindelig
arbejdstid
om
eftermiddagen
aftenen
og
i
weekenden
Medio
maj
2001
vil
den
samlede
oversigt
over
sådanne
specielt
tilrettelagte
kurser
blive
vist
her
på
IT
højskolens
hjemmeside
Vi
forventer
at
øge
udbudet
af
sådanne
kurser
de
følgende
semestre
Projekt
I
såvel
diplomuddannelsen
som
i
masteruddannelserne
indgår
et
eller
flere
projekter
De
fleste
projekter
vil
være
gruppeprojekter
Projektbeskrivelsen
udarbejdes
i
høj
grad
selvstændigt
af
gruppen
i
den
første
del
af
projektperioden
Et
projekt
gennemføres
via
en
kombination
af
hjemmearbejde
undervisning
via
internettet
møder
med
projektvejlederen
og
gruppemøder
for
studerende
For
mere
information
kontakt
12
studievejledningen
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Diplom
Kurser
forår
2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
REFRESH
0
sec
12
http
www
it
c
dk
kursusbog
Denne
side
sender
dig
videre
til
IT
Højskolens
kursusbog
Hvis
dette
ikke
sker
benyt
dette
link
13
http
www
it
c
dk
kursusbog
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Diplom
Optagelses
betingelser
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Optagelsesbetingelser
på
diplomuddannelsen
Optagelse
på
diplomuddannelsen
finder
sted
to
gange
om
året
12
Ansøgningsfrist
for
næste
optagelse
ses
her
Optagelse
kan
kun
finde
sted
hvis
de
studerende
opfylder
nedenstående
optagelseskrav
Uddannelses
og
erhvervsmæssig
baggrund
Der
kræves
som
hovedregel
en
videregående
uddannelse
eller
tilsvarende
kvalifikationer
samt
mindst
to
års
relevant
erhvervserfaring
for
at
blive
optaget
på
diplomuddannelsen
i
informationsteknologi
på
IT
højskolen
i
København
Den
videregående
uddannelse
kan
være
en
kortere
videregående
uddannelse
en
mellemlang
videregående
uddannelse
eller
en
lang
videregående
uddannelse
f
eks
bachelor
eller
kandidatgrad
fra
et
universitet
Det
forventes
som
hovedregel
at
ansøgere
med
en
kortere
eller
mellemlang
videregående
uddannelse
har
en
solid
IT
baggrund
dvs
at
ansøgerne
har
erfaring
med
IT
ud
over
brugerniveau
Optagelse
vil
ske
i
henhold
til
IT
højskolens
optagelsesregler
13
Word
14
ren
tekst
som
er
under
godkendelse
For
mere
information
kontakt
15
studievejledningen
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Diplom
Studieleder
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Jens
Christian
Godskesen
Studieleder
lektor
Jens
Christian
Godskesen
De
studerende
kommer
med
erfaringer
fra
erhvervslivet
som
vi
bygger
IT
viden
på
Vi
skal
give
dem
en
bedre
ballast
til
forståelse
af
teknologierne
og
hvorledes
disse
designes
De
skal
have
aha
oplevelser
så
de
tænker
nå
det
er
sådan
teknologien
virker
De
skal
i
højere
grad
blive
i
stand
til
at
bedømme
hvilke
muligheder
teknologien
giver
men
også
begrænsningerne
siger
lektor
Jens
Christian
Godskesen
diplomuddannelsen
Et
eksempel
kunne
være
at
blive
mere
kvalificeret
til
at
vurdere
og
anbefale
hvilken
IT
struktur
der
er
den
bedst
egnede
til
at
understøtte
en
bestemt
organisationsmodel
i
en
virksomhed
På
diplomuddannelsen
er
der
meget
koncentrerede
undervisningsforløb
og
en
hel
del
pensum
som
skal
klares
derhjemme
eller
i
gruppearbejde
Det
ligger
i
kortene
at
der
skal
være
en
nøje
sammenhæng
mellem
de
studerendes
erhvervsliv
og
studiet
I
de
tilfælde
hvor
det
kan
lade
sig
gøre
vil
de
studerende
lave
projekter
som
relaterer
sig
til
den
virksomhed
de
arbejder
i
Det
gør
den
teoretiske
viden
nærværende
og
interessant
og
virksomheden
drager
nytte
af
at
have
en
medarbejder
på
uddannelse
Kort
om
Jens
Christian
Godskesen
37
år
uddannet
datalog
fra
Aalborg
Universitet
i
1988
1989
1991
ansat
på
Teleteknisk
Forskningslaboratorium
1994
Ph
D
fra
Aalborg
Universitet
1994
1996
ansat
hos
Tele
Danmark
Research
Adjunkt
på
DTU
1998
1999
lektor
på
IT
højskolen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
Enkeltfag
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Enkeltfag
under
Åben
Uddannelse
IT
højskolens
enkeltfagskurser
under
Åben
Uddannelse
henvender
sig
i
høj
grad
til
erhvervsaktive
som
har
brug
for
et
bredere
kendskab
til
informationsteknologi
men
ikke
ønsker
at
tage
en
længerevarende
kandidat
master
eller
diplomuddannelse
For
at
blive
optaget
kræves
mindst
en
videregående
uddannelse
på
bachelorniveau
eller
tilsvarende
Klik
på
linket
11
enkeltfag
under
Åben
Uddannelse
for
at
læse
mere
om
kursusformen
kursusindhold
og
optagelsesbetingelser
Du
kan
her
se
en
12
samlet
liste
over
de
enkeltfagskurser
som
IT
højskolen
udbyder
under
Åben
Uddannelse
i
foråret
2001
men
hvor
ansøgningsfristen
var
den
15
19
eller
26
januar
2001
Der
kan
ikke
ansøges
om
optagelse
på
disse
kurser
mere
IT
højskolen
vil
medio
maj
2001
annoncere
de
ca
60
forskellige
enkeltfagskurser
som
der
kan
søges
optagelse
på
til
eftrårssemesteret
2001
Tilmeld
dig
evt
IT
højskolens
13
elektroniske
nyhedstjeneste
hvor
de
kommende
enkeltfagskurser
vil
blive
omtalt
Hvis
du
vil
vide
mere
Hvis
du
har
spørgsmål
vedrørende
enkeltfagskurser
så
kontakt
venligst
14
studievejledningen
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
Uddannelses
katalog
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Uddannelseskatalog
REFRESH
0
sec
11
http
www
it
c
dk
pub
db
454
html
Denne
side
sender
dig
videre
til
IT
Højskolens
uddannelseskatalog
Hvis
dette
ikke
sker
benyt
dette
link
12
http
www
it
c
dk
pub
db
454
html
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
Informations
møde
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Informationsmøde
Tirsdag
den
15
maj
2001
kl
19
00
21
00
er
der
informationsmøde
om
IT
højskolens
program
for
Åben
Uddannelse
Kom
og
hør
mere
om
enkeltfagskurser
diplom
og
masteruddannelserne
adgangskrav
ansøgningsprocedure
og
få
en
snak
med
de
uddannelsesansvarlige
Sted
IT
højskolen
i
København
Glentevej
65
lokale
0
10
Mere
information
Kontakt
11
studievejledningen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
Fleksibel
undervisning
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Fleksibel
undervisning
Fleksibel
undervisning
betyder
at
studerende
ikke
behøver
at
møde
op
til
forelæsninger
og
øvelser
på
IT
højskolen
to
hele
hverdage
hver
uge
De
studerende
kan
nøjes
med
at
møde
en
hverdag
samt
enkelte
aftener
eller
weekenddage
og
kan
så
sidde
hjemme
eller
på
arbejdet
og
studere
på
de
tider
af
ugen
der
passer
den
enkelte
bedst
På
IT
højskolen
udbydes
fra
forårssemesteret
2001
følgende
former
for
fleksibel
undervisning
Fleksibel
tilrettelagt
kursus
En
vigtig
del
af
et
fleksibelt
tilrettelagt
kursus
er
dog
at
de
studerende
mødes
med
deres
underviser
flere
gange
i
løbet
kurset
men
uden
for
normal
arbejdstid
Et
fleksibelt
tilrettelagt
kursus
består
således
af
en
kombination
af
fokusperioder
med
undervisning
via
Internettet
og
4
5
tilstedeværelsesdage
på
IT
højskolen
Et
fleksibelt
tilrettelagt
kursus
vil
i
fokusperioderne
bestå
af
selvstændig
læsning
af
teori
opgaveløsning
praktiske
og
teoretiske
øvelser
samt
løbende
elektronisk
kommunikation
og
debat
med
underviseren
og
medstuderende
Tilstedeværelsesdagene
som
ligger
om
aftenen
eller
i
weekenden
uden
for
normal
arbejdstid
vil
bl
a
bestå
af
fremlæggelser
debat
evaluering
samt
forberedelse
af
næste
fokusperiode
Fleksibelt
tilrettelagte
kurser
forløber
som
hovedregel
over
semestrets
første
16
uger
I
forårssemesteret
2001
kan
kurset
Grundlæggende
Programmering
følges
som
fleksibelt
tilrettelagt
kursus
IT
højskolen
forventer
fra
efteråret
2001
at
udbyde
yderligere
et
antal
fleksibelt
tilrettelagte
kurser
Projekt
I
såvel
diplomuddannelsen
som
i
masteruddannelserne
indgår
et
eller
flere
projekter
De
fleste
projekter
vil
være
gruppeprojekter
Projektbeskrivelsen
udarbejdes
i
høj
grad
selvstændigt
i
den
første
del
af
projektperioden
Et
projekt
gennemføres
via
en
kombination
af
hjemmearbejde
undervisning
via
Internettet
møder
med
projektvejlederen
og
gruppemøder
for
studerende
For
mere
information
kontakt
11
studievejledningen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Design
Kommunikation
og
Medier
Studieleder
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
John
Paulin
Hansen
Praktikere
med
indsigt
Studieleder
lektor
John
Paulin
Hansen
Design
kommunikation
og
medier
er
en
intensiv
masteruddannelse
som
gør
det
muligt
at
arbejde
med
alle
former
for
digitale
medier
siger
lektor
John
Paulin
Hansen
der
leder
linien
for
Design
kommunikation
og
medier
Samtidig
bliver
man
god
til
konceptudvikling
målgrupper
og
implementering
af
et
projekt
og
man
får
en
dybere
indsigt
i
de
digitale
mediers
muligheder
både
nu
og
i
fremtiden
På
Design
kommunikation
og
medier
lægges
der
vægt
på
at
få
indsigt
i
teknologien
bag
de
mange
muligheder
og
på
evnen
til
at
reflektere
teknisk
og
analytisk
over
IT
som
medie
Endelig
er
det
vigtigt
at
få
en
viden
om
ITs
samfundsmæssige
sociologiske
og
organisatoriske
konsekvenser
og
muligheder
Uddannelsen
i
Design
kommunikation
og
medier
kan
i
høj
grad
bruges
inden
for
webkommunikation
men
kan
også
inden
for
andre
elektroniske
medier
så
som
DVD
CD
rom
film
lyd
og
video
Endelig
kan
en
Masteruddannelse
i
Design
kommunikation
og
medier
føre
til
at
arbejde
med
offentlige
edb
baserede
servicesystemer
og
store
databasesystemer
Det
har
været
utrolig
spændende
og
udfordrende
at
være
med
til
at
etablere
linien
i
Design
kommunikation
og
medier
på
IT
højskolen
lyder
det
fra
John
Paulin
Hansen
Og
så
er
det
inspirerende
og
motiverende
at
have
studerende
der
er
dygtige
og
engagerede
slutter
han
Kort
om
John
Paulin
Hansen
41
år
studieleder
og
lektor
på
IT
højskolen
cand
psyk
Århus
Universitet
1984
ph
d
Århus
Universitet
1992
forsker
og
seniorforsker
Forskningscenter
Risø
1992
rektor
multimedieskolen
Space
Invaders
1996
IT
højskolen
1999
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Deltidsuddannel
ser
og
enkeltfag
4
Master
5
Design
Kommunikation
og
Medier
Mere
om
DKM
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Mere
om
DKM
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Ørestads
byggeriet
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Vinderprojektet
11
Betænkning
inter
menu
bund
gif
IT
højskolens
ny
bygning
i
Ørestaden
Henning
Larsens
Tegnestue
har
i
samarbejde
med
Carl
Bro
vundet
den
indbudte
konkurrence
om
en
ny
bygning
i
Ørestaden
til
IT
højskolen
i
København
i
juni
2000
IT
højskolen
skal
placeres
i
den
nordøstlige
del
af
Ørestaden
imellem
Københavns
Universitets
første
nye
byggeafsnit
og
det
kommende
DR
byggeri
Byggeriet
der
skal
opføres
over
flere
etaper
bliver
i
første
omgang
på
ca
19
000m2
og
skal
stå
klar
til
indflytning
1
juni
2003
Højskolen
skal
rumme
undervisningslokaler
og
forskerkontorer
og
senere
udbygges
med
en
forskerpark
Det
har
været
afgørende
for
dommerkomit
en
at
vælge
et
projekt
der
passer
ind
i
den
overordnede
plan
for
Ørestaden
Således
har
man
bl
a
lagt
stor
vægt
på
at
det
valgte
projekt
er
åbent
og
indbydende
også
for
andre
end
skolens
daglige
brugere
og
at
projektet
desuden
afspejler
det
karakteristiske
for
en
uddannelsesinstitution
der
beskæftiger
sig
med
et
så
nutidigt
og
væsentligt
emne
som
informationsteknologi
IT
højskolen
placeres
ud
mod
den
ca
800m
lange
kanal
der
binder
de
nye
institutioner
i
denne
del
af
Ørestaden
sammen
Henning
Larsens
projekt
har
form
som
et
kæmpemæssigt
H
To
parallelle
bygningskroppe
svøbt
i
en
metalbeklædning
omslutter
et
panoptisk
rum
ud
imod
hvilket
man
har
trukket
en
lang
række
transparente
skuffer
i
forskellig
længde
Centralrummet
der
har
en
fin
kontakt
med
kanalmiljøet
ligger
imellem
to
bytorve
et
nordligt
og
et
sydligt
og
rummet
inviterer
på
naturlig
måde
til
færdsel
igennem
huset
Byggeriet
giver
forventninger
om
at
det
vil
kunne
afspejle
det
progressive
fremadrettede
IT
miljø
på
en
måde
der
som
IT
højskolen
selv
forener
teknologi
design
og
mennesker
Til
konkurrencen
var
indbudt
følgende
5
arkitektfirmaer
Dissing
Weitling
KHR
AS
arkitekter
Henning
Larsens
Tegnestue
Søren
Robert
Lund
Schmidt
Hammer
Lassen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
3
Ørestads
byggeriet
Vinderprojektet
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Vinderprojektet
for
IT
højskolens
ny
domicil
i
Ørestaden
Vinderprojektet
er
tegnet
af
Henning
Larsens
Tegnestue
i
samarbejde
med
Carl
Bro
Fra
oven
sitplan
IT
jpg
IT
højskolen
set
fra
oven
med
nord
pegende
opad
Det
sorte
bånd
til
venstre
er
kanalen
IT
højskolens
1
etape
på
19
000m2
udgøres
af
det
store
H
nederst
til
venstre
i
planen
Længen
umiddelbart
øst
derfor
er
IT
højskolens
2
etape
10
000m2
Resten
er
den
planlagte
IT
forskerpark
IT
højskolens
1
etape
består
af
to
længer
der
er
forbundet
af
et
centralrum
Adgang
sker
ad
ramper
fra
nord
og
syd
Nærmeste
nabo
mod
nord
er
Københavns
Universitet
Nærmeste
nabo
mod
syd
er
Danmarks
Radio
Fra
vest
A
FACADE1200
jpg
IT
højskolen
set
fra
vest
dvs
fra
kanalsiden
Bygningen
er
seks
etager
høj
og
ligger
på
et
dæk
Den
nordlige
ende
til
venstre
på
illustrationen
hæver
sig
op
i
1
sals
højde
Det
orange
område
er
auditoriet
Umiddelbart
til
højre
derfor
ses
kantinen
der
fortsætter
uden
for
bygningen
på
den
sydligste
del
af
dækket
Fra
nordvest
main
45
CMYK
jpg
IT
højskolen
set
fra
nordvest
Taget
de
nordlige
og
de
sydlige
facader
er
svøbt
i
metal
mens
der
er
glas
i
loftet
af
centralrummet
og
i
alle
øst
og
vestvendte
facader
Under
ramperne
i
nord
og
syd
er
der
cykelparkering
som
man
kommer
til
ad
ramper
i
ramperne
Centralrummet
50
sketch2
jpg
Centralrummet
som
det
tager
sig
ud
fra
kantinen
dels
i
skitseform
dels
i
computergrafik
Glasburene
er
beregnet
som
lokaler
hvor
man
går
hen
hvis
man
har
lyst
til
at
møde
andre
low
20
CMYK
jpg
En
lang
trappe
op
gennem
centralrummet
giver
mulighed
for
en
iscenesat
vandring
op
gennem
bygningen
box
20
RGB
jpg
Glasburene
set
fra
en
af
de
midterste
etager
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
3
Ørestads
byggeriet
Betænkning
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Dommerbetænkning
Dommerbetænkningen
for
byggeriet
findes
11
her
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Nøgletal
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Nøgletal
Antal
indskrevne
studerende
1999
2000
2001
2002
måltal
måltal
måltal
Kandidatuddannelser
119
405
616
948
Masteruddannelser
15
33
155
291
Diplomuddannelsen
0
36
171
318
Ansatte
årsværk
1999
2000
2001
2002
måltal
måltal
måltal
Forskere
og
undervisere
excl
eksterne
lektorer
8
3
31
9
58
5
90
0
Administrativ
support
til
undervisning
1
3
3
0
6
0
6
0
Anden
Admin
6
8
13
7
24
5
32
5
Finanslovsbevilling
mio
kr
1999
2000
2001
2002
Finansloven
39
0
61
0
83
1
95
2
Oprettelsesår
1999
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Virksomheds
regnskaber
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Virksomhedsregnskaber
Her
på
siden
finder
du
IT
højskolens
virksomhedsregnskaber
for
1999
og
2000
Virksomhedsregnskab
2000
10
I
HTML
format
11
I
Word
format
12
I
PDF
format
Virksomhedsregnskab
1999
13
I
HTML
format
14
I
Word
format
15
I
PS
format
16
I
PDF
format
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Vedtægter
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Vedtægter
for
IT
højskolen
i
København
Vedtægterne
for
IT
højskolen
i
København
findes
10
her
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
Billedarkiv
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Billedarkiv
REFRESH
0
sec
10
http
www
it
c
dk
billedarkiv
Denne
side
sender
dig
videre
til
IT
Højskolens
billedarkiv
Hvis
dette
ikke
sker
klik
venligst
her
på
dette
link
11
http
www
it
c
dk
billedarkiv
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Om
IT
højskolen
At
finde
IT
C
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
At
finde
IT
C
REFRESH
0
sec
10
http
www
it
c
dk
pub
uk
db
179
html
Denne
side
sender
dig
videre
til
en
side
hvor
du
kan
se
hvordan
du
kommer
til
IT
C
Hvis
dette
ikke
sker
klik
venligst
her
på
dette
link
11
http
www
it
c
dk
pub
uk
db
179
html
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
Links
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
inter
menu
bund
gif
Links
Uddannelsesinstitutioner
9
Københavns
Universitet
10
Roskilde
Universitetscenter
11
Århus
Universitet
12
Ålborg
Universitet
13
Syddansk
Universitet
14
Handelshøjskolen
i
København
15
Danmarks
Tekniske
Universitet
16
Den
Kongelige
Veterinær
og
Landbohøjskole
17
Danmarks
Pædagogiske
Universitet
18
Danmarks
Designskole
19
Malm
H
gskola
20
Lund
Universitet
21
IT
Vest
22
LinuxLab
Linuxlaberatorium
på
IT
Højskolen
Ministerier
styrelser
og
lign
23
IT
og
Forskningsministeriet
24
Undervisningsministeriet
25
SU
styrelsen
26
Center
for
Information
om
videregående
uddannelser
27
Instituttet
for
fremtidsforskning
28
Teknologirådet
29
Center
for
IT
forskning
30
Center
for
teknologistøttet
undervisning
31
Learning
Lab
Denmark
32
Copenhagen
Capacity
Københavns
officielle
investeringsbureau
Brancheorganisationer
33
IT
brancheforeningen
34
Teknologisk
institut
35
PROSA
36
Teknisk
Landsforbund
37
Symbion
forskerpark
38
Inkubator
IT
lab
39
Teknologisk
innovations
center
Studenterorganisation
40
USG
41
BEST
42
Studenterhuset
43
Studenterforeningen
44
Studienet
Danmark
45
Bøsse
Lesbiske
universitetsstuderende
46
Handicappede
Studerende
og
Kandidaters
IT
medier
47
DRs
IT
og
videnskabsportal
Orbitalen
48
Computerworld
online
49
Comon
dk
Udlandet
50
MIT
Webfora
for
studerende
51
Studerende
Online
52
Studenterhjaelpen
dk
Events
og
lign
53
Reboot
54
Naturvidenskabsfestivallen
55
WCCE
2001
Networking
the
Learner
56
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
57
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
Informationsdag
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Informationsdag
om
kandidatuddannelsen
Den
18
maj
2001
er
der
to
informationsmøder
om
kandidatuddannelserne
Her
kan
du
høre
mere
om
IT
højskolen
uddannelser
og
linjer
om
adgangskrav
om
ansøgningsprocedure
og
samtidig
tage
en
snak
med
en
studievejleder
Tid
Kl
10
12
og
kl
13
15
Sted
IT
højskolen
i
København
Glentevej
65
lokale
0
10
Mere
information
Kontakt
11
studievejledningen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
Constructive
Logic
Project
F2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Constructive
Logic
Project
F2001
In
spring
2001
Lars
Birkedal
is
giving
a
PhD
course
entitled
Constructive
Logic
Project
You
can
find
a
description
of
the
course
12
here
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Ph
D
studies
4
Courses
Streaming
video
for
wireless
networks
F2001
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Streaming
video
for
wireless
networks
May
17
23
2001
at
the
IT
University
of
Copenhagen
Course
objective
The
objective
of
this
course
is
to
introduce
the
major
standards
and
signal
processing
methods
necessary
for
video
streaming
systems
in
wireless
networks
This
includes
the
MPEG
family
of
standards
for
transporting
video
images
audio
speech
and
graphics
through
a
network
and
carrying
out
joint
source
and
channel
coding
for
a
wireless
channel
The
course
is
scheduled
as
a
series
of
lectures
before
noon
and
exercise
work
on
selected
course
material
in
the
afternoon
Course
period
Thursday
17
Wednesday
23
May
2001
The
lecturer
12
Dr
Liu
is
a
Professor
of
Electrical
and
Computer
Engineering
Department
and
Institute
for
Systems
Research
of
University
of
Maryland
College
Park
He
has
a
PhD
degree
from
the
University
of
California
Los
Angeles
in
electrical
engineering
His
research
interests
span
broad
aspects
of
signal
processing
and
communications
including
signal
processing
algorithms
and
architectures
image
and
video
processing
wireless
communications
and
networking
and
medical
and
biomedical
technology
He
holds
five
US
patents
and
has
published
over
200
papers
Among
others
he
received
the
Best
Paper
Award
from
IEEE
50th
Vehicular
Technology
Conference
IEEE
VTC
Amsterdam
1999
References
1
J
Chen
U
V
Koc
K
J
Ray
Liu
Design
of
Digital
Video
Coding
Systems
To
appear
Marcel
Dekker
2
M
T
Sun
A
Reibman
Compressed
Video
over
Networks
Macel
Dekker
2001
3
K
Ngan
C
W
Yap
K
T
Tan
Video
Coding
for
Wireless
Communication
Systems
Marcel
Dekker
2001
4
Research
papers
Course
schedule
Thursday
May
17
Source
Coding
for
Video
Friday
May
18
Recent
Multimedia
Standards
MPEG
1
2
4
and
H
263
Monday
May
21
Wireless
Channel
Model
Channel
Coding
Joint
Source
and
Channel
Coding
Error
Concealment
Error
Resilience
Tuesday
May
22
Advanced
Topics
Secure
Multicast
Communications
Wednesday
May
23
Advanced
Topics
Course
participants
The
course
is
targeted
for
Ph
D
students
in
Computer
Science
Informatics
or
Electrical
Engineering
advanced
level
Master
of
Science
students
in
the
above
areas
and
participants
from
industry
Some
exercises
use
the
c
programming
language
Course
credit
2
ECTS
European
Credit
Transfer
System
points
Course
site
IT
University
of
Copenhagen
Glentevej
67
2400
Copenhagen
Denmark
www
it
c
dk
Registration
and
further
information
Please
contact
13
Lotte
Møller
for
registration
To
a
limited
extent
she
can
assist
in
booking
accomodation
The
lectures
are
free
of
charge
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Research
Publications
inter
vandret
gif
3
Courses
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
grey
vert
r
gif
inter
grey
bund
gif
Optimal
Static
Range
Reporting
in
One
Dimension
10
Stephen
Alstrup
11
Gerth
S
Brodal
12
Theis
Rauhe
November
2000
Technical
report
TR
2000
3
in
IT
University
Technical
Report
Series
November
2000
Available
as
13
PostScript
14
PDF
15
USEMAP
inter
icon2top
gif
opdateret
11
10
2000
16
wwwadm
it
c
dk
1
IT
højskolen
2
Research
Publications
inter
vandret
gif
3
Courses
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
grey
vert
r
gif
inter
grey
bund
gif
Satisfiability
Checking
Using
Boolean
Expression
Diagrams
10
Poul
Frederick
Williams
11
Henrik
Reif
Andersen
12
Henrik
Hulgaard
October
2000
Abstract
In
this
paper
we
present
a
method
for
determining
satisfiability
of
formulae
represented
by
Boolean
Expression
Diagrams
The
method
uses
the
upone
algorithm
for
splitting
on
variables
and
rewriting
rules
instead
of
unit
propagation
We
show
how
to
combine
the
method
with
BDD
construction
In
this
way
our
method
can
be
seen
as
bridging
the
gap
between
standard
SAT
solvers
and
BDD
construction
Technical
report
TR
2000
1
in
IT
University
Technical
Report
Series
October
2000
Available
as
13
PostScript
gzip
ed
14
PostScript
15
PDF
and
16
BibTeX
17
USEMAP
inter
icon2top
gif
opdateret
11
10
2000
18
wwwadm
it
c
dk
1
IT
højskolen
2
Research
Publications
inter
vandret
gif
3
Courses
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
grey
vert
r
gif
inter
grey
bund
gif
Greedy
Model
Checking
10
Poul
Frederick
Williams
11
Antoine
Rauzy
October
2000
Abstract
We
present
a
model
checking
method
which
greedily
explores
the
state
space
Using
ideas
similar
to
greedy
satisfiability
checking
our
method
tries
to
fit
a
path
to
match
a
temporal
specification
The
advantages
of
this
method
is
that
we
do
not
need
any
quantifications
we
do
not
calculate
a
reachable
neither
forward
nor
backward
set
of
states
and
the
memory
requirements
are
quite
small
Technical
report
TR
2000
2
in
IT
University
Technical
Report
Series
October
2000
Available
as
12
PostScript
gzip
ed
13
PostScript
14
PDF
and
15
BibTeX
16
USEMAP
inter
icon2top
gif
opdateret
11
10
2000
17
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
Eksterne
undervisere
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Interview
inter
menu
bund
gif
Eksterne
undervisere
En
af
de
vigtigste
måder
IT
højskolen
knytter
kontakter
til
andre
institutioner
og
virskomheder
på
er
gennem
ansættelse
af
eksterne
lektorer
IT
højskolen
satser
på
at
opbygge
et
stort
og
stærkt
netværk
af
eksterne
lektorer
Det
omfatter
allerede
eksterne
lektorer
fra
bl
a
Tele
Danmark
Danmarks
Radio
og
Lund
Universitet
se
profil
For
at
blive
ekstern
lektor
skal
man
1
have
faglig
ekspertise
inden
for
et
gerne
anvendelsesorienteret
område
af
IT
2
være
kandidat
eller
lignende
3
være
i
stand
til
at
tilrettelægge
og
gennemføre
undervisning
vejlede
projekter
og
føre
op
til
eksamen
på
kandidatniveau
Opslag
af
stillinger
samt
uopfordrede
ansøgninger
se
11
Stillinger
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
3
Eksterne
undervisere
Interview
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Ekstern
lektor
Lise
Jensen
Jeg
underviser
i
3
D
modellering
hvordan
man
digitalt
opbygger
en
3
D
model
fortæller
Lise
Jensen
der
har
et
eksternt
lektorat
og
er
tilknyttet
Design
kommunikation
og
medier
men
ellers
er
adjunkt
på
Lund
Universitet
3
D
modellering
bruges
blandt
andet
til
animationer
som
blandt
andet
bruges
i
film
til
Virtual
Reality
hvor
man
kan
bevæge
sig
frit
i
et
kunstigt
univers
og
til
faste
billeder
hvor
man
skal
fotografere
noget
som
eksempelvis
ikke
eksisterer
i
virkeligheden
Det
bruges
en
del
i
reklamer
Det
er
sjovt
og
inspirerende
at
undervise
på
IT
højskolen
siger
Lise
Jensen
Der
er
en
god
stemning
og
de
studerende
er
vidende
aktive
og
interesserede
så
som
underviser
får
man
helt
klart
et
modspil
Lise
Jensen
er
43
år
og
oprindelig
uddannet
arkitekt
Hun
har
også
arbejdet
som
multimediedesigner
inden
hun
blev
adjunkt
på
Lund
Universitet
Til
efteråret
udbyder
hun
igen
et
kursus
i
3
D
modellering
og
udbyder
også
et
projektkursus
hvor
de
studerende
skal
arbejde
praktisk
med
3
D
modeller
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Forskning
Interview
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Lars
Birkedal
Grundforsker
i
beregnelighed
Lars
Birkedal
startede
som
forskningsadjunkt
på
IT
højskolen
15
marts
efter
at
være
kommet
hjem
fra
USA
hvor
han
tog
en
Ph
D
på
Carnegie
Mellon
University
i
Pittsburgh
Jeg
forsker
i
matematisk
logik
teoretisk
datalogi
typeteori
og
beregnelighed
fortæller
Lars
Birkedal
Populært
sagt
arbejder
jeg
med
hvad
der
kan
beregnes
og
hvordan
man
omsætter
det
til
computersprog
Ved
siden
af
sin
forskning
forbereder
Lars
Birkedal
sin
kommende
undervisning
I
efterårssemestret
udbyder
han
kurser
i
semantik
for
programmeringssprog
og
kategoriteori
Samtidig
er
han
i
samarbejde
med
professorer
fra
DIKU
og
DTU
ved
at
forberede
en
stor
international
konference
i
Datalogi
og
logik
som
skal
finde
sted
i
København
i
2002
og
hvor
der
kommer
800
forskere
Jeg
søgte
stillingen
på
IT
højskolen
fordi
miljøet
på
skolen
er
ambitiøst
også
på
internationalt
plan
og
fordi
jeg
godt
kunne
tænke
mig
at
arbejde
et
sted
hvor
der
var
kort
vej
fra
den
teoretiske
forskning
til
den
praktiske
anvendelse
Og
så
er
IT
højskolen
meget
internationalt
orienteret
siger
Lars
Birkedal
Kort
om
Lars
Birkedal
30
år
cand
scient
i
datalogi
1994
HD
i
organisation
1994
Ph
D
Carnegie
Mellon
University
Pittsburgh
USA
1999
Fra
2000
forskningsadjunkt
IT
højskolen
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
DKM
Projekter
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Projekter
På
DKM
afsluttes
hvert
semester
med
projektarbejde
hvor
de
studerende
går
sammen
i
grupper
om
et
projekt
af
4
ugers
varighed
Projekterne
omfatter
både
en
teoretisk
del
i
form
af
en
skriftlig
rapport
og
en
praktisk
del
i
form
af
f
eks
en
hjemmeside
et
program
eller
lign
Projekterne
bedømmes
med
karakterer
efter
13
skalaen
ved
en
afsluttende
eksamen
Her
er
nogle
eksempler
på
DKM
studenterprojekter
Underfladen
13
Produkt
HTML
og
14
rapport
Word
Se
også
nogle
eksempler
på
fiktive
DKM
projektbeskrivelser
15
Projektbeskrivelse
1
16
Projektbeskrivelse
2
17
Projektbeskrivelse
3
18
Projektbeskrivelse
4
Samt
et
lille
19
videoklip
fra
projektarbejdet
på
DKM
QuickTime
format
20
QuickTime
download
21
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
DKM
Ansatte
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
Ansatte
ved
DKM
Lektor
Ph
D
13
Anker
Helms
Jørgensen
IT
højskolen
Glentevej
67
lokale
2
22
2400
NV
a
38
16
88
88
a
dir
38
16
88
28
14
anker
it
c
dk
Ekstern
lektor
Bjarne
Sandstrøm
Allerød
Gymnasium
Rådshusvej
6
3450
Allerød
a
48
17
75
55
15
bjsa
post2
tele
dk
Ekstern
lektor
Christian
Høyer
Pedersen
16
chp
internet
dk
Ekstern
lektor
Claus
Jensen
ABC
Public
Relations
A
S
Bredgade
73
1260
K
a
33
13
14
33
17
cj
abc
pr
dk
Ekstern
lektor
Claus
Thor
Nielsen
Egmont
Online
Halmtorvet
29
1700
V
a
33
26
69
00
a
dir
33
26
69
43
18
claus
thor
onl
egmont
com
Ekstern
lektor
Denis
Virlogeux
Danmarks
Designskole
Strandboulvd
47
2100
Ø
a
35
27
75
00
a
dir
35
27
75
73
19
devi
dk
designskole
dk
Amanuensis
Ida
Engholm
IT
højskolen
Glentevej
67
lokale
4
02
2400
NV
a
38
16
88
88
a
dir
38
16
88
71
20
ie
it
c
dk
Ph
D
studerende
21
Jesper
Juul
IT
højskolen
Glentevej
67
lokale
2
46
2400
NV
a
38
16
88
88
a
dir
38
16
88
41
22
jjuul
it
c
dk
Studieleder
lektor
Ph
D
23
John
Paulin
Hansen
IT
højskolen
Glentevej
67
lokale
4
02
2400
NV
a
38
16
88
88
a
dir
38
16
88
25
24
paulin
it
c
dk
Amanuensis
Klaus
Bjerager
IT
højskolen
Glentevej
67
lokale
4
02
2400
NV
a
38
16
88
88
a
dir
38
16
88
92
25
designco
post4
tele
dk
Ekstern
lektor
Klaus
Bruhn
Jensen
Institut
for
Film
og
Medievidenskab
Njalsgade
80
2300
S
a
35
32
88
11
a
dir
35
32
81
04
26
kbj
hum
ku
dk
Ph
D
studerende
27
Lisbeth
Klastrup
IT
højskolen
Glentevej
67
lokale
2
46
2400
NV
a
38
16
88
88
a
dir
38
16
88
32
28
klastrup
it
c
dk
Ekstern
lektor
Lise
Jensen
p
00
46
435
44
03
40
29
Lise
Jensen
telia
com
AC
fuldmægtig
30
Lise
Louv
IT
højskolen
Glentevej
67
lokale
3
20
2400
NV
a
38
16
88
88
a
dir
38
16
88
60
31
louv
it
c
dk
Ekstern
lektor
Ph
D
Margit
Neisig
TeleDanmark
Mediecenter
Telegade
2
2630
Høje
Tåstrup
a
43
34
56
52
32
mnei
tdk
dk
Adjunkt
Ph
D
33
Martin
Elsman
IT
højskolen
Glentevej
67
lokale
2
42
2400
NV
a
38
16
88
88
a
dir
38
16
88
43
34
mael
it
c
dk
35
mael
dina
kvl
dk
Ekstern
lektor
Morten
Remmer
re
public
Vestergade
10d
2
sal
1456
Kbh
K
a
33
91
33
10
a
dir
33
91
33
27
36
morten
dj360
com
Undervisningsassistent
Morten
Ulf
Bøll
37
boell
post4
tele
dk
Ekstern
lektor
Niels
Hallenberg
IT
højskolen
Glentevej
67
lokale
2
38
2400
NV
a
38
16
88
88
a
dir
38
16
88
24
38
nh
it
c
dk
Undervisningsassistent
Nikolaj
de
fine
Licht
39
nikolaj
musicmedia
dk
Ekstern
lektor
Pernille
Eisenhardt
RUC
Marbjerg
Mark
Postbox
260
4000
Roskilde
a
dir
46
74
38
70
40
pnille
ruc
dk
Ekstern
lektor
Peter
Olaf
Looms
DR
Online
TV
Byen
Television
Centre
DK
2860
Søborg
a
35
20
30
40
a
dir
35
20
83
66
41
poo
dr
dk
42
polooms
inet
uni2
dk
43
polooms
hotmail
com
Forskningsadjunkt
Ph
D
Raine
Koskimaa
IT
højskolen
Glentevej
67
lokale
2
08
2400
NV
a
38
16
88
88
a
dir
38
16
88
23
44
Koskimaa
it
c
dk
Ekstern
lektor
Stine
Gotved
Institut
for
Film
og
Medievidenskab
Njalsgade
80
2300
S
a
35
32
88
11
a
dir
35
32
81
31
45
gotved
hum
ku
dk
AC
medarbejder
46
Sven
Bastrup
IT
højskolen
Glentevej
67
lokale
3
20
2400
NV
a
38
16
88
88
a
dir
38
16
88
61
a
47
bastrup
it
c
dk
p
48
sven
bastrup
adr
dk
Ekstern
lektor
Tijana
Paludan
Duus
Danmarks
Radio
H
C
Ørstedsvej
47
1879
Frederiksberg
C
a
3520
6522
49
tidu
dr
dk
Ekstern
lektor
50
Troels
Degn
Johansson
Forskningscenter
for
Skov
Landskab
Hørsholm
Kongevej
11
2970
Hørsholm
a
45
76
32
00
a
dir
45
76
32
20
45
17
83
20
51
tdj
fsl
dk
Ph
D
studerende
Ulrik
Hartmann
Gade
IT
højskolen
Glentevej
67
lokale
2
46
2400
NV
a
38
16
88
88
a
dir
38
16
88
90
52
ulrik
acm
org
53
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
54
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
DKM
Fakultetsklub
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
inter
menu
bund
gif
DKMs
Fakultetsklub
I
DKM
s
fakultetsklub
diskuteres
og
udvikles
DKM
s
faglige
indhold
forskning
og
uddannelse
Fakultetsklubben
er
åben
for
ansatte
ved
DKM
Fakultetsklubben
mødes
en
gang
om
måneden
DKM
s
13
Fakultetsklub
Næste
møder
Tirsdag
d
17
04
01
kl
17
00
i
lokale
4
20
medarbejdernes
frokoststue
14
Dagsorden
Tirsdag
d
15
05
01
kl
17
00
i
lokale
4
20
medarbejdernes
frokoststue
15
Dagsorden
Referater
16
Referat
af
fakultetsklubmøde
tirsdag
den
20
marts
2001
17
Referat
af
fakultetsklubmøde
tirsdag
den
20
februar
2001
18
Referat
af
fakultetsklubmøde
tirsdag
den
23
januar
2001
19
Referat
af
fakultetsklubmøde
tirsdag
den
12
december
2000
20
Referat
af
fakultetsklubmøde
tirsdag
den
24
oktober
2000
21
Referat
af
fakultetsklubmøde
tirsdag
den
19
september
2000
22
Referat
af
fakultetsklubmøde
tirsdag
den
15
august
2000
23
Referat
af
fakultetsklubmøde
tirsdag
den
13
juni
2000
24
Referat
af
fakultetsklubmøde
tirsdag
den
23
maj
2000
25
Referat
af
fakultetsklubmøde
tirsdag
den
25
april
2000
26
Referat
af
fakultetsklubmøde
tirsdag
den
21
marts
2000
Vedligeholdes
af
27
Lise
Louv
28
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
29
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
DKM
Fagudvalg
6
Stillinger
7
Aktiviteter
8
Home
9
Find
person
10
SiteMap
11
Intranet
12
English
13
DKM
s
faglighed
inter
menu
bund
gif
DKMs
Fagudvalg
I
DKM
s
fagudvalg
har
de
studerende
mulighed
for
at
påvirke
det
faglige
indhold
af
uddannelsen
på
DKM
Fagudvalget
er
åbent
for
alle
studerende
og
ansatte
på
DKM
Udvalget
mødes
ca
en
gang
om
måneden
Fagudvalget
består
nu
af
følgende
faste
medlemmer
Stud
Louise
Barkhuus
Astrid
Dyhr
Pedersen
Carsten
Schmidt
Christoffer
Soya
VIP
John
Paulin
Hansen
Anker
Helms
Jørgensen
Denis
Virlogeux
Stine
Gotved
14
mailingliste
Næste
møder
onsdag
9
maj
01
kl
15
15
17
15
i
lokale
2
03
15
Dagsorden
Referater
fra
møderne
16
Referat
af
fagudvalgsmøde
DKM
18
april
2001
17
Referat
af
fagudvalgsmøde
DKM
14
marts
2001
18
Referat
af
fagudvalgsmøde
DKM
14
feb
2001
19
Referat
af
fagudvalgsmøde
DKM
13
dec
2000
20
Referat
af
fagudvalgsmøde
DKM
8
nov
2000
21
Referat
af
fagudvalgsmøde
DKM
11
okt
2000
22
Referat
af
fagudvalgsmøde
DKM
13
sep
2000
23
Referat
af
fagudvalgsmøde
DKM
16
aug
2000
24
Referat
af
fagudvalgsmøde
DKM
7
juni
2000
25
Referat
af
fagudvalgsmøde
DKM
10
maj
2000
26
Referat
af
fagudvalgsmøde
DKM
12
april
2000
27
Referat
af
fagudvalgsmøde
DKM
8
marts
2000
Vedligeholdes
af
28
Lise
Louv
29
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
30
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
4
5
Mere
om
DKM
6
Fagudvalg
DKM
s
faglighed
7
Stillinger
8
Aktiviteter
9
Home
10
Find
person
11
SiteMap
12
Intranet
13
English
inter
menu
bund
gif
DKM
s
faglighed
denne
side
er
under
opbygning
Vedligeholdes
af
14
Lise
Louv
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
Søg
om
optagelse
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Søg
om
optagelse
Her
kan
du
downloade
11
ansøgningsmaterialet
for
forårssemesteret
2001
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
Enkeltfag
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Enkeltfag
REFRESH
0
sec
11
http
www
it
c
dk
pub
db
453
html
Denne
side
sender
dig
videre
til
IT
Højskolens
side
om
enkeltfag
Hvis
dette
ikke
sker
benyt
venligst
dette
link
12
http
www
it
c
dk
pub
db
453
html
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kandidat
Uddannelses
katalog
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Uddannelseskatalog
REFRESH
0
sec
11
http
www
it
c
dk
pub
db
454
html
Denne
side
sender
dig
videre
til
IT
Højskolens
uddannelseskatalog
Hvis
dette
ikke
sker
benyt
dette
link
12
http
www
it
c
dk
pub
db
454
html
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Kurser
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Kursusbog
11
Kursernes
hjemmesider
12
Kursusevaluering
13
Tidligere
kurser
inter
menu
bund
gif
Kurser
IT
højskolens
kurser
omfatter
fra
grundlæggende
kurser
i
IT
til
meget
avancerede
og
specialiserede
IT
emner
Nogle
af
kurserne
er
helt
eller
overvejende
teoretiske
mens
de
fleste
kurser
har
en
blanding
af
teori
praktiske
øvelser
ugentlige
afleveringsopgaver
og
projekter
Du
kan
se
en
oversigt
over
de
aktuelle
kursusudbud
i
vores
kursusbog
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kurser
Kursusbog
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Kursusbog
REFRESH
0
sec
11
http
www
it
c
dk
kursusbog
F2001
index
php3
Denne
side
sender
dig
videre
til
IT
Højskolens
kursusbog
Hvis
dette
ikke
sker
benyt
venligst
dette
link
12
http
www
it
c
dk
kursusbog
F2001
index
php3
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kurser
Kursernes
hjemmesider
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Kursernes
hjemmesider
REFRESH
0
sec
11
http
www
it
c
dk
courses
Denne
side
sender
dig
videre
til
oversigten
over
IT
Højskolens
kursers
hjemmesider
Hvis
dette
ikke
sker
benyt
venligst
dette
link
12
http
www
it
c
dk
courses
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kurser
Kursusevaluering
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Kursusevaluering
11
Resultaterne
for
kursusevalueringen
efterårssemestret
2000
er
tilgængelige
for
alle
Intranetbrugere
IT
højskolen
gennemfører
hvert
semester
en
samlet
elektronisk
evaluering
af
kurser
og
undervisere
Evalueringssystemet
der
såvidt
vides
er
det
første
af
sin
art
i
landet
er
baseret
på
evaluering
og
informationsdeling
via
internettet
Resultatet
af
evalueringen
af
kurser
for
efteråret
2000
er
offentliggjort
på
intranettet
Målet
er
at
skabe
et
veldokumenteret
grundlag
for
en
løbende
og
åben
diskussion
af
kvaliteten
og
kvantiteten
af
undervisningen
på
IT
højskolen
Konkret
sker
evalueringen
ved
at
hver
studerende
indtaster
deres
personlige
evaluering
af
kurser
og
undervisere
Indtastningerne
samles
til
en
rapport
som
studienævn
og
undervisere
bearbejder
og
drøfter
Endelig
bliver
resultaterne
offentliggjort
på
IT
højskolens
intranet
så
alle
har
mulighed
for
at
se
evalueringen
af
samtlige
kurser
og
undervisere
og
læse
hvordan
IT
højskolen
og
underviserne
har
kommenteret
evalueringerne
Den
første
evaluering
blev
gennemført
i
marts
2000
På
spørgsmålet
Overordnet
konklusion
dette
er
et
kursus
jeg
er
glad
for
scorede
kurserne
i
gennemsnit
4
9
på
en
skala
fra
1
til
6
På
spørgsmålet
Overordnet
konklusion
dette
er
en
lærer
jeg
er
glad
for
scorede
lærerne
i
gennemsnit
5
1
på
en
skala
fra
1
til
6
Du
kan
selv
prøve
den
elektroniske
12
evaluering
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kurser
Tidligere
kurser
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Tidligere
kurser
Klik
11
her
for
at
se
en
liste
over
hvilke
kurser
der
tidligere
har
været
udbudt
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Kurser
4
Tidligere
kurser
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Kurser
efteråret
2000
Kursushjemmesider
Kursernes
hjemmesider
for
efteråret
2000
findes
12
her
Elektronisk
kursusbog
Kurser
for
efteråret
2000
er
annonceret
i
den
elektroniske
13
kursusbog
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Ph
D
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Ph
D
REFRESH
0
sec
10
http
www
it
c
dk
pub
db
25
html
Denne
side
sender
dig
videre
til
IT
Højskolens
side
om
Ph
D
Hvis
dette
ikke
sker
klik
venligst
her
på
dette
link
11
http
www
it
c
dk
pub
db
25
html
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Studieliv
og
projekter
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Socialt
liv
11
Studenter
projekter
12
Praktik
13
Udenlandsophold
14
Studerende
fortæller
inter
menu
bund
gif
IT
højskolens
vision
IT
højskolen
vil
i
dialog
med
sine
omgivelser
skabe
et
attraktivt
og
levende
forsknings
og
uddannelsesmiljø
der
bidrager
til
vækst
og
udvikling
i
det
danske
og
internationale
samfund
ved
at
skabe
et
IT
miljø
der
favner
naturvidenskab
humaniora
design
og
erhverv
at
uddanne
personer
med
en
stor
og
bred
viden
om
IT
og
ITs
muligheder
gennem
forskning
at
skabe
ny
teknologi
og
bedre
anvendelse
af
ny
teknologi
at
øge
samfundets
indsigt
i
IT
og
ITs
muligheder
Målsætninger
i
forhold
til
studerende
IT
højskolen
vil
i
samarbejde
med
de
studerende
skabe
et
attraktivt
studiemiljø
der
er
forskningsbaseret
udviklende
og
inspirerende
og
uddanne
velkvalificerede
personer
der
har
et
helhedssyn
på
IT
behersker
den
nyeste
teknologi
har
dyb
indsigt
i
informationsteknologiens
grundlag
og
muligheder
15
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
Socialt
liv
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Socialt
liv
På
IT
højskolen
arbejder
de
studerende
i
stor
udstrækning
i
grupper
og
de
studerende
danner
selv
læsegrupper
og
studiekredse
Med
jævne
mellemrum
holder
de
studerende
fredagscaf
som
typisk
er
præget
af
et
tema
De
fleste
fredage
er
der
desuden
11
BuzzTalks
som
er
et
foredrag
og
efterfølgende
diskussion
af
et
IT
relevant
emne
Foredragsholderne
kan
være
forskere
folk
fra
erhvervslivet
og
andre
med
tilknytning
til
IT
branchen
Desuden
er
der
blandt
andet
en
kunstgruppe
et
12
fodboldhold
og
en
13
linuxgruppe
på
IT
højskolen
14
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
Studenter
projekter
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Studenterprojekter
IT
højskolens
11
Projektbørs
er
en
ressource
for
Virksomheder
der
er
interesserede
i
at
lave
projekt
eller
specialeaftaler
med
studerende
fra
IT
højskolen
Studerende
fra
IT
højskolen
der
søger
projektkontakter
i
erhvervslivet
forsknings
miljøet
eller
blandt
andre
studerende
Forskere
der
søger
studerende
til
projekter
Alle
der
interesserer
sig
for
specialer
projekter
og
ny
forskning
på
IT
højskolen
i
København
12
Projektbørsen
er
designet
og
programmeret
af
tre
studerende
fra
IT
højskolen
i
København
som
en
del
af
et
fire
ugers
studenterprojekt
i
kurset
Databasebaseret
webpublisering
De
studerende
bag
projektet
er
13
John
Udo
Ukpo
fra
Softwareudviklingslinjen
14
Lise
Bennedsen
fra
linjen
i
Design
Kommunikation
og
Medier
og
15
Mathias
Johansen
From
fra
linjen
i
E
handel
Adjunkt
16
Martin
Elsman
var
vejleder
på
projektet
Her
kan
du
se
tidligere
projektforslag
17
Projektbørs
efterår
2000
18
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
Praktik
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Praktik
REFRESH
0
sec
11
http
www
it
c
dk
pub
db
268
html
Denne
side
skulle
gerne
videresende
dig
til
siden
om
praktik
Hvis
dette
ikke
sker
bedes
du
benytte
dette
link
12
http
www
it
c
dk
pub
db
268
html
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
Udenlandsophold
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Udenlandsophold
Igennem
samarbejde
med
Handelshøjskolen
i
København
har
studerende
ved
IT
højskolen
i
København
mulighed
for
at
tage
en
del
af
deres
uddannelse
i
udlandet
Hvis
du
ønsker
at
søge
om
udlandsophold
for
efterårssemesteret
2001
er
der
ansøgningsfrist
allerede
den
15
december
2000
Nye
studerende
der
er
optaget
til
studiestart
i
januar
2001
har
dog
ansøgningsfrist
til
den
22
december
Ansøgningen
skal
sendes
til
det
internationale
kontor
på
Handelshøjskolen
Få
mere
information
ved
henvendelse
til
det
internationale
kontor
på
Handelshøjskolen
eller
kontakt
11
studievejledningen
på
IT
højskkolen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
Studerende
fortæller
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
11
Ikke
fortrudt
12
Høj
energi
13
I
grænselandet
14
Egne
udfordringer
15
Nye
input
inter
menu
bund
gif
Studerende
fortæller
Her
kan
du
læse
om
en
række
studerende
ved
IT
højskolen
De
studerende
fortæller
om
deres
baggrund
deres
studier
og
hvad
de
venter
sig
af
fremtiden
16
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
4
Studerende
fortæller
Ikke
fortrudt
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Har
ikke
fortrudt
INT
kandidat
David
Simonsen
Jeg
har
ikke
en
plan
men
det
her
er
spændende
siger
David
Simonsen
der
startede
på
internetteknologi
linien
i
februar
2000
Muligheden
for
at
påvirke
vores
brug
af
internetteknologi
trak
i
studenten
der
ellers
kun
manglede
et
halvt
år
af
sit
speciale
i
molekylær
biologi
Det
var
svært
at
træffe
den
beslutning
men
jeg
har
ikke
fortrudt
Lærerne
her
på
min
linie
er
velkvalificerede
og
motiverende
og
er
også
lydhøre
over
for
os
studenter
Men
det
er
hårdt
arbejde
og
pensum
er
stort
Studiemiljøet
er
ikke
helt
på
plads
endnu
Det
er
jo
noget
som
bliver
bygget
op
lige
så
stille
Mange
har
travlt
og
er
også
engagerede
andre
steder
Det
er
noget
vi
studerende
i
sidste
ende
selv
skal
skabe
men
de
fysiske
rammer
kunne
også
være
bedre
lyder
det
fra
David
Hvor
jeg
er
om
to
tre
år
Det
ved
jeg
ikke
vi
får
se
Jeg
har
arbejdet
på
Experimentarium
i
seks
år
og
jeg
kunne
godt
tænke
mig
at
arbejde
med
formidling
og
fjernundervisning
gennem
ny
teknologi
David
Simonsen
bruger
en
del
af
sin
tid
på
at
få
et
kollegienet
op
at
stå
så
alle
kollegier
i
Danmark
er
koblet
sammen
i
et
netværk
Det
skal
nok
lykkes
siger
en
engageret
David
Simonsen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
4
Studerende
fortæller
Høj
energi
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Høj
energi
og
hårdt
arbejde
SWU
kandidat
Rikke
Vogelsang
Jeg
fik
lyst
til
at
søge
ind
på
IT
højskolen
fordi
stedet
blev
eksponeret
som
universitetet
hvor
studerende
med
forskellig
uddannelsesmæssig
baggrund
mødes
og
jeg
er
ikke
blevet
skuffet
siger
31
årige
Rikke
Vogelsang
som
går
på
softwarelinien
og
har
en
baggrund
som
bibliotekar
1999
Hun
fik
lyst
til
IT
verdenen
da
hun
skrev
hovedopgave
i
computerstøttet
journalistik
på
Danmarks
Biblioteksskole
Jeg
får
meget
ud
af
at
studere
sammen
med
folk
med
en
anden
baggrund
end
min
egen
Det
giver
utrolig
mange
indfaldsvinkler
og
beriger
mit
eget
perspektiv
Det
betyder
også
at
vi
har
et
spændende
studiemiljø
og
IT
højskolen
er
præget
af
høj
energi
Det
samme
går
igen
på
lærersiden
de
har
meget
at
byde
på
De
kræver
meget
og
vi
skal
nå
et
stort
pensum
i
løbet
af
to
år
så
man
skal
virkelig
hænge
i
Rikke
har
glæde
af
sin
bibliotekaruddannelse
på
IT
højskolen
På
min
gamle
uddannelse
har
jeg
lært
at
systematisere
og
strukturere
viden
Det
er
jeg
god
til
og
det
har
jeg
stor
gavn
af
Et
muligt
job
efter
endt
uddannelse
kunne
f
eks
være
database
administrator
Her
er
der
brug
for
min
nye
viden
plus
systematikken
og
strukturen
som
jeg
havde
med
i
bagagen
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
4
Studerende
fortæller
I
grænselandet
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
I
det
teknologiske
grænseland
Uffe
Damgaard
Pedersen
er
fascineret
af
3
D
Det
er
en
af
grundene
til
at
han
i
februar
2000
begyndte
på
multimedieteknologi
linien
Egentlig
er
28
årige
Uffe
Damgaard
Pedersen
uddannet
svagsstømsingeniør
i
1997
og
har
arbejdet
for
IBM
som
han
stadig
studenterjobber
hos
10
timer
om
ugen
Det
er
rigtig
godt
at
gå
her
Her
er
spændende
faglige
oplevelser
og
en
god
stemning
præget
af
pionerånd
Men
jeg
har
ikke
involveret
mig
så
meget
socialt
siger
Uffe
Damgard
Pedersen
Det
faglige
niveau
er
højt
og
det
kræver
både
tid
og
hårdt
arbejde
at
gå
her
I
fritiden
eksperimenterer
Uffe
Damgard
Pedersen
med
elektronisk
at
behandle
lyd
og
med
at
lave
effekter
til
lydanlæg
Det
grafiske
er
også
spændende
men
Uffe
synes
det
er
svært
at
blive
god
til
begge
dele
på
en
gang
I
øjeblikket
er
han
i
gang
med
at
lave
et
projekt
om
texturemapping
hvor
han
på
en
computer
lægger
et
billede
på
et
buet
objekt
Teknikken
bruges
blandt
andet
meget
i
3D
simulationer
og
Virtual
Reality
Jeg
kunne
godt
tænke
mig
at
komme
til
at
arbejde
med
konstruktion
af
multimedier
og
det
skal
helst
være
en
blanding
af
produktion
og
forskning
Jeg
ved
ikke
hvor
jeg
er
om
et
par
år
men
det
må
helt
sikkert
gerne
være
i
det
teknologiske
grænseland
slutter
han
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
4
Studerende
fortæller
Egne
udfordringer
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Jeg
vælger
mine
egne
udfordringer
SWU
kandidat
Kasper
Vilhelm
Torp
Det
er
godt
at
kunne
definere
egne
projekter
og
sammensætte
sit
studie
efter
eget
valg
På
den
måde
kan
jeg
vælge
egne
udfordringer
og
det
er
jo
interessant
siger
Kasper
Vilhelm
Torp
26
og
studerende
på
IT
højskolens
softwarelinie
Han
kommer
med
en
bachelor
fra
1996
i
biokemi
fra
Københavns
Universitet
og
fik
smag
for
IT
området
da
han
senere
på
Handelshøjskolen
i
forbindelse
med
et
kursus
endte
med
at
komme
til
at
programmere
et
system
til
videndeling
Systemet
er
stadig
i
brug
IT
højskolen
er
et
rart
og
interessant
sted
at
studere
ikke
mindst
fordi
her
er
så
mange
spændende
mennesker
Jeg
har
bl
a
lavet
et
projekt
med
studerende
som
tidligere
har
studeret
retorik
teatervidenskab
økonomi
og
psykologi
Det
var
utroligt
spændende
at
kunne
se
problemstillingerne
med
så
mange
indfaldsvinkler
og
vi
mødes
stadig
Der
opstår
ganske
enkelt
et
inspirerende
miljø
når
folk
med
så
forskellig
faglighed
mødes
I
sommer
var
Kasper
i
Kina
og
modtog
en
pris
for
at
være
innovativ
og
have
lyst
til
at
være
igangsætter
Det
var
Pionerakademiet
der
uddelte
prisen
Han
ser
sig
selv
som
selvstændig
erhvervsdrivende
inden
for
software
og
id
udvikling
når
han
er
færdig
med
sin
uddannelse
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Studieliv
og
projekter
4
Studerende
fortæller
Nye
input
5
Stillinger
6
Aktiviteter
7
Home
8
Find
person
9
SiteMap
10
Intranet
11
English
inter
menu
bund
gif
Får
nye
input
Kathrine
Bohus
Madsen
er
gynmasielærer
og
underviser
på
fuld
tid
Samtidig
er
hun
i
gang
med
en
masteruddannelse
i
softwareudvikling
som
hun
begyndte
på
i
september
1999
Da
hun
arbejder
på
fuld
tid
nøjes
hun
med
et
fag
hvert
semester
Jeg
er
her
især
for
at
lære
noget
nyt
og
fordi
jeg
synes
det
er
spændende
at
beskæftige
mig
med
IT
Her
er
det
mig
der
får
nogle
input
og
ikke
mig
der
er
i
formidlerrollen
som
jo
i
høj
grad
karakteriserer
en
gynmasielærer
siger
den
34
årige
cand
scient
i
matematik
og
statistik
der
også
har
et
bedaget
datalogikursus
med
i
bagagen
fra
Universitetet
Det
er
både
sjovt
og
spændende
at
gå
her
og
undervisningen
er
udmærket
og
engageret
Og
så
er
det
tydeligt
at
mærke
at
de
studerende
har
meget
forskellige
forudsætninger
og
vidt
forskellige
baggrunde
Jeg
har
ikke
engageret
mig
så
meget
i
det
sociale
Det
skyldes
i
høj
grad
mangel
på
tid
når
man
arbejder
på
fuld
tid
og
læser
ved
siden
af
siger
Kathrine
Bohus
Madsen
Masteruddannelsen
giver
mig
helt
bestemt
den
ny
viden
og
de
nye
udfordringer
jeg
har
brug
for
12
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
Love
og
regler
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
10
Uddannelses
katalog
11
Udenlandsophold
12
Praktikpladser
13
EU
Course
Transfer
System
inter
menu
bund
gif
Love
og
regler
Studieordninger
Studieordning
for
kandidatuddannelsen
i
informationsteknologi
på
IT
højskolen
i
København
25
08
2000
som
14
word
dokument
og
som
15
pdf
dokument
Errata
30
stk
2
Korrekt
ordlyd
Orlov
efter
optjening
af
30
ECTS
point
kan
meddeles
i
op
til
6
måneder
Orlov
ud
over
6
måneder
kræver
dispensation
fra
Studieadministrationen
Studieordning
for
masteruddannelser
i
informationsteknologi
på
IT
højskolen
i
København
Fællesregler
25
08
2000
som
16
word
dokument
og
17
pdf
dokument
Studieordning
for
masteruddannelsen
i
Design
Kommunikation
og
Medier
25
08
2000
som
18
word
dokument
og
19
pdf
dokument
Studieordning
for
masteruddannelsen
i
Internetteknologi
25
08
2000
som
20
word
dokument
og
21
pdf
dokument
Studieordning
for
masteruddannelsen
i
Multimedieteknologi
25
08
2000
som
22
word
dokument
og
23
pdf
dokument
Studieordning
for
masteruddannelsen
i
Softwareudvikling
25
08
2000
som
24
word
dokument
og
25
pdf
dokument
Studieordning
for
diplomuddannelsen
i
informationsteknologi
på
IT
højskolen
i
København
25
08
2000
som
26
word
dokument
og
27
pdf
dokument
Bekendtgørelser
Undervisningsministeriets
bekendtgørelser
om
IT
højskolens
uddannelser
findes
28
her
IT
højskolens
optagelsesregler
IT
højskolens
optagelsesregler
som
29
word
dokument
eller
som
30
ren
tekst
31
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
32
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Love
og
regler
Uddannelses
katalog
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Uddannelseskatalog
REFRESH
0
sec
11
http
www
it
c
dk
pub
db
454
html
Denne
side
sender
dig
videre
til
IT
Højskolens
uddannelseskatalog
Hvis
dette
ikke
sker
klik
venligst
her
på
dette
link
12
http
www
it
c
dk
pub
db
454
html
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Love
og
regler
Udenlandsophold
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Udenlandsophold
REFRESH
0
sec
11
http
www
it
c
dk
pub
db
447
html
Denne
side
sender
dig
videre
til
IT
Højskolens
side
om
udenlandsophold
Hvis
dette
ikke
sker
klik
venligst
her
på
dette
link
12
http
www
it
c
dk
pub
db
447
html
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Love
og
regler
Praktikpladser
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
Praktikpladser
REFRESH
0
sec
11
http
www
it
c
dk
pub
db
268
html
Denne
side
sender
dig
videre
til
IT
Højskolens
side
om
praktikpladser
Hvis
dette
ikke
sker
klik
venligst
her
på
dette
link
12
http
www
it
c
dk
pub
db
268
html
13
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Love
og
regler
EU
Course
Transfer
System
4
Stillinger
5
Aktiviteter
6
Home
7
Find
person
8
SiteMap
9
Intranet
10
English
inter
menu
bund
gif
ECTS
ECTS
er
et
europæisk
system
der
gør
det
lettere
for
studerende
inden
for
EU
og
EFTA
at
tage
dele
af
uddannelsen
i
et
andet
land
ECTS
står
for
European
Community
Course
Credit
Transfer
System
IT
højskolen
benytter
ECTS
så
IT
højskolens
studier
direkte
kan
relateres
til
uddannelser
i
andre
lande
Et
års
fuldtidsstudier
svarer
til
60
ECTS
Det
betyder
at
et
semester
på
kandidatuddannelserne
svarer
til
30
ECTS
mens
et
semester
på
henholdsvis
masteruddannelserne
og
diplomuddannelsen
svarer
til
15
ECTS
Et
kursus
på
IT
højskolen
svarer
som
udgangspunkt
til
7
5
ECTS
11
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
Dokumenter
2
Stillinger
3
Aktiviteter
4
Home
5
Find
person
6
SiteMap
7
Intranet
8
English
inter
menu
bund
gif
Dokumentoversigt
Generelt
om
præsentation
og
dataformater
HTML
Beregnet
til
preview
i
browser
Word
Word
fil
til
evt
redigering
og
udskrift
på
Microsoft
maskine
TeX
TeX
fil
til
evt
redigering
og
udskrift
på
Unix
Linux
maskine
PS
PostScript
fil
beregnet
til
udskrift
på
PostScript
printer
PDF
PDF
fil
beregnet
til
læsning
og
udskrift
via
PDF
viewer
Det
anbefales
som
hovedregel
at
downloade
PDF
eller
alternativt
PS
filer
Uddannelseskatalog
9
Word
og
som
10
PDF
Beskrivelse
af
uddannelser
udbudt
på
IT
C
i
foråret
2001
Kursusbog
11
Online
Virksomhedsregnskab
12
HTML
13
Word
14
PS
15
PDF
Virksomhedsregnskabet
som
aflagt
for
1999
IT
C
sitens
indholdssider
16
HTML
Alle
siderne
fra
denne
hjemmeside
samlet
i
et
dokument
17
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Find
person
Hvem
underviser
på
hvilke
linier
3
Stillinger
4
Aktiviteter
5
Home
6
Find
person
7
SiteMap
8
Intranet
9
English
inter
menu
bund
gif
Hvem
underviser
på
hvilke
linier
Vælg
en
af
følgende
perioder
Efterår
2000
Vælg
en
kategori
af
undervisere
alle
undervisere
på
linien
uddannelsen
Vælg
en
linie
uddannelse
Kandidatlinien
i
tværfaglig
IT
Klik
endelig
på
fortsæt
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
IT
højskolens
nyhedstjeneste
Det
er
muligt
automatisk
at
modtage
nyheder
om
IT
højskolens
uddannelser
med
epost
Der
er
ligeledes
mulighed
for
at
modtage
epost
om
annoncering
af
stillinger
ved
IT
højskolen
Hvis
du
er
interesseret
i
automatisk
at
modtage
sådan
information
så
tilmeld
dig
nedenfor
Du
kan
til
enhver
tid
1
afmelde
dig
ordningen
Endelig
kan
du
2
kontrollere
om
du
stadig
er
tilmeldt
nyhedstjenesten
Tilmelding
Efternavn
Fornavn
e
Adresse
linie1
Adresse
linie2
Adresse
linie3
Adresse
linie
4
epostadresse
Elektronisk
post
vil
blive
sendt
til
den
epostadresse
du
har
angivet
ovenfor
Elektronisk
post
sendes
separat
og
altså
anonymt
til
hver
modtager
Sæt
desuden
kryds
ved
de
typer
af
informationer
du
ønsker
at
modtage
1
Diplomstudiet
kursusudbud
og
ansøgningsprocedure
2
Masterstudiet
kursusudbud
og
ansøgningsprocedure
3
Internationale
Masterstudier
kursusudbud
og
ansøgningsprocedure
4
Kandidatstudiet
kursusudbud
og
ansøgningsprocedure
5
Enkeltfag
kursusudbud
og
ansøgningsprocedure
6
Ph
d
studiet
ansøgningsprocedure
7
TAP
stillinger
når
de
annonceres
8
VIP
stillinger
når
de
annonceres
9
Åbne
foredrag
og
konferencer
10
Generel
orienterende
information
Sprog
1
Jeg
ønsker
at
modtage
de
beskeder
der
er
på
dansk
2
Jeg
ønsker
at
modtage
de
beskeder
der
er
på
engelsk
Sådanne
beskeder
henvender
sig
fortrinsvis
til
personer
der
ikke
taler
dansk
Der
er
beskeder
der
udsendes
til
dansktalende
som
ikke
også
sendes
i
en
engelsk
udgave
Tryk
på
denne
knap
for
at
effektuere
tilmeldingen
bekræftelsen
sendes
til
dig
med
epost
Tilmeld
mig
Afmelding
Indtast
den
epost
addresse
som
du
ønsker
at
melde
fra
ordningen
Hvis
du
ikke
har
nogen
epost
addresse
og
ønsker
at
stoppe
almindelige
breve
så
ring
eller
skriv
venligst
til
IT
højskolen
epostadresse
Tryk
på
denne
knap
for
at
effektuere
afmelding
Afmeld
mig
Kontrol
Hvis
du
undrer
dig
over
ikke
at
have
modtaget
post
fra
nyhedslisten
kan
du
kontrollere
om
du
stadig
er
på
den
Vi
fjerner
nemlig
fra
tid
til
anden
epostadresser
som
det
ikke
lykkes
os
at
sende
beskeder
til
epostadresse
Tryk
på
denne
knap
for
at
kontrollere
om
du
er
tilmeldt
Kontrol
1
IT
højskolen
2
Uddannelser
3
Stillinger
4
Aktiviteter
5
Home
6
Personer
7
SiteMap
8
Intranet
9
English
Kursusoversigt
med
deltagerlister
for
alle
IT
højskolens
kurser
E2000
Antal
kurser
alle
nedenstående
linier
64
10
Design
Kommunikation
og
Medier
11
3D
begynder
12
Avanceret
multimedie
produktion
på
Internet
13
Brugerperspektiver
og
fremtidens
medier
14
Databasebaseret
web
publicering
15
Digital
lyd
16
Digital
videoproduktion
17
Grafisk
Design
1
18
Grundlæggende
Web
Design
19
Interaktionsdesign
20
Internettets
rum
og
geografi
21
Introduktion
til
IT
som
medie
22
Målgruppeanalyse
23
Projektledelse
og
produktion
af
digitalt
indhold
24
Tekstformidling
på
Internet
25
Usability
Engineering
26
Elektronisk
Handel
27
B3
Logistik
og
Supply
Chain
Management
28
B5
E
commerce
markets
and
business
models
29
B6
IT
innovation
og
virksomhedsopstart
30
B8
Projektledelse
31
B9
Knowledge
Management
32
P1
Internet
jura
33
P2
Virtual
Contracts
digital
signatures
and
Regulation
34
T1
Object
Oriented
Programming
in
Java
35
T4
Centrale
Databaser
36
T6
IT
sikkerhed
37
Internetteknologi
38
Datasikkerhed
39
Internetprogrammering
40
Netværk
og
protokoller
41
Operativsystemer
og
Maskinnær
Programmering
42
Parallelle
Systemer
43
Multimedieteknologi
44
Animation
45
Computergrafik
46
Digital
Videoteknologi
47
Introduktion
til
multimediesystemer
48
Mønstergenkendelse
og
datamatsyn
49
Robot
eksperimentarium
50
Signalbehandling
51
Videregaaende
billedanalyse
52
Virtual
reality
53
Softwareudvikling
54
Avanceret
algoritmik
55
Databasesystemer
56
Design
af
brugergrænseflader
og
data
57
Grundlæggende
programmering
58
IT
projektledelse
59
IT
støttet
samarbejde
60
IT
Platforme
og
Organisation
61
Introduktion
til
algoritmik
og
datastrukturer
62
Objekt
orienteret
programmering
63
Performance
engineering
64
Programmeringssprog
fortolkere
og
oversættere
65
Systemudvikling
66
Videregående
objekt
orienteret
programmering
67
Tværfaglig
IT
68
Begreber
og
redskaber
i
programmering
69
Databaser
70
Distribuerede
Systemer
71
Indledende
programmering
72
Interaktive
Systemer
og
Projektledelse
73
Objektorienteret
Programmering
74
Sprog
Logik
75
Systemudvikling
i
organisationer
Samannoncerede
76
Grundlæggende
Programmering
Fleksibel
uddannelse
77
IT
Platforme
og
Organisation
lørdag
kl
9
00
13
00
uge
9
21
78
Innovation
og
Iværksættere
79
Tekstformidling
på
Internet
onsdag
kl
16
00
21
30
This
document
was
created
using
Standard
ML
on
Mon
Mar
26
15
47
17
2001
80
USEMAP
icon
totop
gif
opdateret
21
08
2000
81
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Stillinger
4
Aktiviteter
5
Home
6
Personer
7
SiteMap
8
Intranet
9
English
Deltagerliste
for
Innovation
og
Iværksættere
linie
uddannelse
Samannoncerede
UL
Semester
E2000
Kursets
form
og
indhold
er
beskrevet
i
10
kursusbogen
Kursusansvarlig
lærer
Robert
B
Mellor
11
mellor
it
c
dk
Samtlige
undervisere
på
kurset
Robert
B
Mellor
12
mellor
it
c
dk
Antal
deltagere
på
kurset
7
Mailingliste
til
deltagerne
på
kurset
13
IIV
stud
Deltagere
Navn
email
Linie
Uddannelse
enkeltfag
immatrikuleret
Bettina
Ovgaard
14
ovgaard
it
c
dk
KDKM
E2000
Kaspar
Bøcher
15
kaspar
it
c
dk
KDKM
E1999
Lise
Bennedsen
16
lise
it
c
dk
KDKM
F2000
Mikkel
Veis
Feld
Thomsen
17
mvt
it
c
dk
KEBUSS
F2000
Oskar
Philip
Justesen
Lauritzen
18
oskar
it
c
dk
KEBUSS
F2000
Rasmus
Wolff
Hansen
19
wolff
it
c
dk
UL
F2001
Tess
Gaston
20
tess
it
c
dk
KSWU
E1999
Forkortelser
DIT
Diplomuddannelsen
i
Informationsteknologi
KDKM
Kandidatlinien
i
Design
Kommunikation
og
Medier
KEBUSS
Kandidatlinien
i
Elektronisk
Handel
KINT
Kandidatlinien
i
Internetteknologi
KMMT
Kandidatlinien
i
Multimedieteknologi
KSWU
Kandidatlinien
i
Softwareudvikling
KTIT
Kandidatlinien
i
Tværfaglig
IT
MDKM
Masteruddannelsen
i
Design
Kommunikation
og
Medier
MINT
Masteruddannelsen
i
Internetteknologi
MMMT
Masteruddannelsen
i
Multimedieteknologi
MSWU
Masteruddannelsen
i
Softwareudvikling
UL
Uden
liniebetegnelse
Bemærk
kursusevalueringen
starter
Mon
Mar
26
18
00
00
2001
This
document
was
created
using
Standard
ML
on
Mon
Mar
26
15
56
58
2001
21
USEMAP
icon
totop
gif
opdateret
21
08
2000
22
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Stillinger
4
Aktiviteter
5
Home
6
Personer
7
SiteMap
8
Intranet
9
English
Deltagerliste
for
Introduktion
til
algoritmik
og
datastrukturer
linie
uddannelse
10
Softwareudvikling
KSWU
Semester
E2000
Kursets
form
og
indhold
er
beskrevet
i
11
kursusbogen
Kursusansvarlig
lærer
Stephen
Alstrup
12
stephen
it
c
dk
Samtlige
undervisere
på
kurset
Stephen
Alstrup
13
stephen
it
c
dk
Philip
Bille
14
bille
it
c
dk
Theis
Rauhe
15
theis
itu
dk
Antal
deltagere
på
kurset
32
Mailingliste
til
deltagerne
på
kurset
16
IADS
stud
Deltagere
Navn
email
Linie
Uddannelse
enkeltfag
immatrikuleret
Anders
Kron
17
kron
it
c
dk
KSWU
E2000
Anne
Mette
Mørkbak
18
anne
it
c
dk
KSWU
E2000
Arja
Tiina
Silitamies
19
tiina
it
c
dk
KSWU
F2000
Camilla
B
chler
Seier
Petersen
20
camillas
it
c
dk
KSWU
E2000
Christian
Hube
Elbrandt
21
celbrandt
it
c
dk
KINT
E2000
Dennis
Jensen
22
jensen
it
c
dk
KINT
E2000
Dorthe
Clemens
Koch
23
qaz
it
c
dk
KSWU
F2000
Finn
Danvar
24
finndanvar
it
c
dk
MSWU
F2000
Hai
Son
Nguyen
25
hai
it
c
dk
KSWU
E2000
Hanus
Reinert
26
reinert
it
c
dk
KSWU
F2000
Henrik
Langebjerg
Sørensen
27
hls
it
c
dk
KSWU
E2000
Jesper
Thaning
28
thaning
it
c
dk
KINT
E2000
John
Udo
Ukpo
29
juu
it
c
dk
KSWU
F2000
Jos
Alvaro
Ramirez
Orellana
30
joseo
it
c
dk
KINT
E2000
Kenneth
Ahn
Jensen
31
kaj
it
c
dk
KINT
E2000
Mads
Peter
Nymand
32
pete
it
c
dk
KSWU
E2000
Maria
Rita
Kondor
33
kondor
it
c
dk
MSWU
E2000
Marie
Louise
Nielsen
34
mlouise
it
c
dk
KSWU
E2000
Martin
Schiøtz
Jensen
35
msc
it
c
dk
KINT
E2000
Michael
Berliner
Pedersen
36
mbp
it
c
dk
KSWU
F2001
Mikkel
Hugo
Skovsgaard
Jensen
37
mskovsgaard
it
c
dk
KSWU
E1999
Minh
Duc
Tran
38
mdt
it
c
dk
KSWU
F2001
Nguyen
Trung
Vo
39
ntv
it
c
dk
KINT
E2000
Olav
Madsen
40
olav
it
c
dk
KSWU
E2000
Siddhartha
Raychaudhuri
41
src2001
it
c
dk
KSWU
F2000
Simon
Faarup
42
simonfaarup
it
c
dk
KSWU
E2000
Simon
Kohrtz
43
kohrtz
it
c
dk
KSWU
E2000
Sten
Graff
Larsen
44
graff
it
c
dk
KSWU
E2000
Susanne
Pehrsson
45
tusser
it
c
dk
KSWU
F2000
Theis
Poulsen
46
theispoulsen
it
c
dk
KSWU
E1999
Thomas
Blomseth
Christiansen
47
blomseth
it
c
dk
KINT
E2000
Thomas
Rasmussen
48
whomas
it
c
dk
KSWU
F2000
Forkortelser
DIT
Diplomuddannelsen
i
Informationsteknologi
KDKM
Kandidatlinien
i
Design
Kommunikation
og
Medier
KEBUSS
Kandidatlinien
i
Elektronisk
Handel
KINT
Kandidatlinien
i
Internetteknologi
KMMT
Kandidatlinien
i
Multimedieteknologi
KSWU
Kandidatlinien
i
Softwareudvikling
KTIT
Kandidatlinien
i
Tværfaglig
IT
MDKM
Masteruddannelsen
i
Design
Kommunikation
og
Medier
MINT
Masteruddannelsen
i
Internetteknologi
MMMT
Masteruddannelsen
i
Multimedieteknologi
MSWU
Masteruddannelsen
i
Softwareudvikling
UL
Uden
liniebetegnelse
Bemærk
kursusevalueringen
starter
Mon
Mar
26
18
00
00
2001
This
document
was
created
using
Standard
ML
on
Mon
Mar
26
15
56
58
2001
49
USEMAP
icon
totop
gif
opdateret
21
08
2000
50
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Stillinger
4
Aktiviteter
5
Home
6
Personer
7
SiteMap
8
Intranet
9
English
Deltagerliste
for
Avancerede
datastrukturer
linie
uddannelse
10
Softwareudvikling
KSWU
Semester
E2000
Kursets
form
og
indhold
er
beskrevet
i
11
kursusbogen
Kursusansvarlig
lærer
Stephen
Alstrup
12
stephen
it
c
dk
Samtlige
undervisere
på
kurset
Theis
Rauhe
13
theis
it
c
dk
Stephen
Alstrup
14
stephen
it
c
dk
Inge
Li
Gørtz
15
inge
it
c
dk
Antal
deltagere
på
kurset
16
Mailingliste
til
deltagerne
på
kurset
16
ADS
stud
Deltagere
Navn
email
Linie
Uddannelse
enkeltfag
immatrikuleret
Allan
Odgaard
17
alod
it
c
dk
KSWU
enkeltfag
E2000
Benny
Kjær
Nielsen
18
beni
it
c
dk
KSWU
enkeltfag
E2000
Christian
Strøyer
Pedersen
19
chpe
it
c
dk
KSWU
enkeltfag
E2000
Christian
Worm
Mortensen
20
chmo
it
c
dk
KSWU
enkeltfag
E2000
Hans
Christian
Hammerstoft
21
hch
it
c
dk
KSWU
E1999
Inge
Li
Gørtz
22
inge
it
c
dk
KSWU
enkeltfag
E2000
Jeppe
Nejsum
Madsen
23
nejsum
it
c
dk
KSWU
enkeltfag
E2000
John
Erik
Knudsen
24
jek
it
c
dk
MSWU
E1999
Klavs
Bo
Bonnevie
25
bobonnevie
it
c
dk
KSWU
E1999
Marianne
Otzen
Terkildsen
26
janse
it
c
dk
KSWU
enkeltfag
E2000
Morten
Fjord
Larsen
27
mfl
it
c
dk
KSWU
enkeltfag
E2000
Ole
Johan
Gr
nbaum
28
olegrunbaum
it
c
dk
KSWU
F2000
Philip
Bille
29
beetle
it
c
dk
KSWU
enkeltfag
E2000
Søren
Eduard
Jacobsen
30
sej
it
c
dk
KSWU
E1999
Thomas
Bartvig
31
bartvig
it
c
dk
KSWU
enkeltfag
E2000
Thor
Jessen
32
thorjes
it
c
dk
KSWU
enkeltfag
E2000
Forkortelser
DIT
Diplomuddannelsen
i
Informationsteknologi
KDKM
Kandidatlinien
i
Design
Kommunikation
og
Medier
KEBUSS
Kandidatlinien
i
Elektronisk
Handel
KINT
Kandidatlinien
i
Internetteknologi
KMMT
Kandidatlinien
i
Multimedieteknologi
KSWU
Kandidatlinien
i
Softwareudvikling
KTIT
Kandidatlinien
i
Tværfaglig
IT
MDKM
Masteruddannelsen
i
Design
Kommunikation
og
Medier
MINT
Masteruddannelsen
i
Internetteknologi
MMMT
Masteruddannelsen
i
Multimedieteknologi
MSWU
Masteruddannelsen
i
Softwareudvikling
UL
Uden
liniebetegnelse
Bemærk
kursusevalueringen
starter
Fri
Dec
29
08
00
00
2000
This
document
was
created
using
Standard
ML
on
Wed
Jan
24
15
07
44
2001
33
USEMAP
icon
totop
gif
opdateret
21
08
2000
34
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Stillinger
4
Aktiviteter
5
Home
6
Personer
7
SiteMap
8
Intranet
9
English
Deltagerliste
for
Effektive
algoritmer
og
programmer
linie
uddannelse
10
Internetteknologi
KINT
Semester
E2000
Kursets
form
og
indhold
er
beskrevet
i
11
kursusbogen
Kursusansvarlig
lærer
Henrik
Reif
Andersen
12
hra
it
c
dk
Samtlige
undervisere
på
kurset
Henrik
Reif
Andersen
13
hra
it
c
dk
Henrik
Hulgaard
14
henrik
it
c
dk
Antal
deltagere
på
kurset
6
Mailingliste
til
deltagerne
på
kurset
15
EAP
stud
Deltagere
Navn
email
Linie
Uddannelse
enkeltfag
immatrikuleret
Allan
Larsen
16
al
it
c
dk
KSWU
E1999
Jens
Morten
Primdahl
17
morten
it
c
dk
KINT
F2000
Johannes
Beyer
18
jbeyer
it
c
dk
KSWU
E2000
Kasper
Bilsted
Graversen
19
kbilsted
it
c
dk
KSWU
E2000
Kasper
Bøgebjerg
Pedersen
20
kasperp
it
c
dk
KSWU
F2000
Michael
Berantzino
Hansen
21
miha96ac
it
c
dk
KINT
enkeltfag
E2000
Forkortelser
DIT
Diplomuddannelsen
i
Informationsteknologi
KDKM
Kandidatlinien
i
Design
Kommunikation
og
Medier
KEBUSS
Kandidatlinien
i
Elektronisk
Handel
KINT
Kandidatlinien
i
Internetteknologi
KMMT
Kandidatlinien
i
Multimedieteknologi
KSWU
Kandidatlinien
i
Softwareudvikling
KTIT
Kandidatlinien
i
Tværfaglig
IT
MDKM
Masteruddannelsen
i
Design
Kommunikation
og
Medier
MINT
Masteruddannelsen
i
Internetteknologi
MMMT
Masteruddannelsen
i
Multimedieteknologi
MSWU
Masteruddannelsen
i
Softwareudvikling
UL
Uden
liniebetegnelse
Bemærk
kursusevalueringen
starter
Fri
Dec
29
08
00
00
2000
This
document
was
created
using
Standard
ML
on
Wed
Jan
24
15
07
44
2001
22
USEMAP
icon
totop
gif
opdateret
21
08
2000
23
wwwadm
it
c
dk
1
IT
højskolen
2
Uddannelser
3
Stillinger
4
Aktiviteter
5
Home
6
Personer
7
SiteMap
8
Intranet
9
English
Deltagerliste
for
Grundlæggende
programmering
linie
uddannelse
10
Softwareudvikling
KSWU
Semester
E2000
Kursets
form
og
indhold
er
beskrevet
i
11
kursusbogen
Kursusansvarlig
lærer
Peter
Sestoft
12
sestoft
it
c
dk
Samtlige
undervisere
på
kurset
Peter
Sestoft
13
sestoft
it
c
dk
Lars
Birkedal
14
birkedal
it
c
dk
Thomas
B
Jørgensen
15
thj
jubii
dk
Kasper
B
Pedersen
16
kasperp
it
c
dk
Søren
Eduard
Jacobsen
17
sej
it
c
dk
Antal
deltagere
på
kurset
83
Mailingliste
til
deltagerne
på
kurset
18
GP
stud
Deltagere
Navn
email
Linie
Uddannelse
enkeltfag
immatrikuleret
Allan
Lundgaard
19
lanky
it
c
dk
KDKM
E2000
Anna
Bizova
20
anbi
it
c
dk
KSWU
F2001
Anne
Merete
Hvid
Larsen
21
mhl
it
c
dk
DIT
F2001
Asem
Butt
22
asem
it
c
dk
KINT
F2001
Assi
Herve
Euloge
Yapaud
23
assi
it
c
dk
KMMT
F2001
Christian
Jussi
Arstorp
24
jussi
it
c
dk
KDKM
E2000
Christian
Pedersen
25
cp
it
c
dk
KSWU
F2001
Christina
Haustrup
Hansen
26
haustrup
it
c
dk
KSWU
F2001
Christina
Schou
Christensen
27
christina
it
c
dk
KDKM
E2000
Claus
Bennett
Christiansen
28
cc
it
c
dk
KEBUSS
E1999
Dan
Aakerhjelm
Sørensen
29
dan
it
c
dk
DIT
F2001
David
Simonsen
30
david
it
c
dk
KINT
F2000
Eydun
Rannvaarson
Jensen
31
eydun
it
c
dk
KSWU
F2001
Grete
Ellersgaard
32
ge
it
c
dk
KDKM
E2000
Halina
Tomaszewska
33
halina
it
c
dk
KSWU
F2001
Henning
Høy
Hansen
34
hhhansen
it
c
dk
KSWU
F2001
Henriette
Diana
Rolskov
35
Henry
it
c
dk
UL
F2001
Iskinder
Berhane
36
iswoldu
it
c
dk
KINT
F2001
Ivan
Westh
Christensen
37
ivanwesth
it
c
dk
KSWU
E2000
Jacob
Ingversen
38
ingversen
it
c
dk
KSWU
F2001
Jacques
Holm
Villaume
Johansen
39
jacques
it
c
dk
KSWU
E2000
Jakob
Haaber
40
jh
it
c
dk
UL
F2001
Janus
Friis
Bindslev
41
janus
it
c
dk
KSWU
F2001
Jesper
Guhle
Mogensen
42
guhle
it
c
dk
KDKM
E2000
Jesper
Linvald
43
linvald
it
c
dk
KSWU
F2001
Joachim
Halse
44
joachim
it
c
dk
KDKM
E2000
Jon
Ebbe
Larsen
45
jow
it
c
dk
KINT
F2001
Jonas
Damgaard
Jensen
46
jodam
it
c
dk
KSWU
F2001
Kar
Chun
Chong
47
kcc
it
c
dk
KEBUSS
E2000
Kasper
Frøhlich
48
kasperf
it
c
dk
UL
F2001
Kasper
Kock
49
kock
it
c
dk
KINT
F2001
Katja
Rudloff
50
karu
it
c
dk
KSWU
F2001
Kim
An
Pham
51
kapham
it
c
dk
KSWU
F2001
Kim
Larsen
52
timo
it
c
dk
MMMT
E2000
Klaus
Jakobsen
53
klausj
it
c
dk
MINT
F2001
Kristian
Ramskov
Føge
Jensen
54
kristian
it
c
dk
KDKM
E2000
Kristian
Rastrup
55
rastrup
it
c
dk
KSWU
F2001
Kristian
Stengaard
Munkholm
56
krismunk
it
c
dk
KSWU
F2001
Kristian
Tørning
57
toerning
it
c
dk
KDKM
F2001
Lars
Arne
Conrad
Hansen
58
l
it
c
dk
KMMT
F2001
Lars
Gyldenkærne
59
lgy
it
c
dk
KSWU
F2001
Lars
Høyrup
Jensen
60
robinhat
it
c
dk
KSWU
F2001
Laurance
Stanford
Vinson
61
stanford
it
c
dk
KDKM
E2000
Lene
Nørgaard
62
norgaard
it
c
dk
KDKM
E2000
Louise
Kragh
63
lokra
it
c
dk
KSWU
F2001
Luise
Søe
64
luisesoe
it
c
dk
KSWU
F2001
Mads
Thøger
Grønne
65
mtg
it
c
dk
KSWU
F2001
Mads
Jørn
Nørgaard
66
m
jn
it
c
dk
KSWU
F2001
Magnus
Nilsson
67
nilsson
it
c
dk
KSWU
E2000
Mahshad
Rezaali
68
mahshad
it
c
dk
KSWU
F2001
Maibrittt
Brink
Larsen
69
maier
it
c
dk
KSWU
F2001
Marie
Kathrine
Fryland
70
marie
it
c
dk
KDKM
F2000
Michael
Berliner
Pedersen
71
mbp
it
c
dk
KSWU
F2001
Michael
Grusgaard
Andersen
72
grus
it
c
dk
KDKM
E2000
Mikkel
Ramskov
Føge
Jensen
73
mfoege
it
c
dk
KEBUSS
F2001
Mikkel
Westh
Pedersen
74
mwp
it
c
dk
KSWU
F2001
Muayad
Ahmad
Bakir
75
muayad
it
c
dk
KINT
E2000
Nada
Yahyah
Alzubeidi
76
nada
it
c
dk
KINT
F2000
Nasim
Odeh
77
nassim
it
c
dk
KSWU
F2001
Natalia
Nielsen
78
natasha
it
c
dk
KMMT
F2001
Niels
Engelund
79
nielse
it
c
dk
DIT
F2001
Nikolaj
Aggeboe
80
aggeboe
it
c
dk
KINT
F2001
Nikolas
Dragsdorff
81
dragsdorff
it
c
dk
KSWU
F2001
Paolo
Lund
Tonolli
82
tonolli
it
c
dk
KINT
E2000
Paul
Henning
Fabricius
Kjær
83
fabric
it
c
dk
KINT
F2001
Pernille
Platz
84
platz
it
c
dk
KSWU
F2001
Peter
Krogstrup
85
peterk
it
c
dk
MDKM
E2000
Pia
Lene
Giversen
86
giversen
it
c
dk
KEBUSS
E2000
Poul
Erik
Stenger
87
stenger
it
c
dk
KINT
F2001
Sadegh
Eghbal
88
noor
it
c
dk
KINT
E2000
Saif
Alghanemi
89
saal
it
c
dk
KMMT
F2001
Salman
Iqbal
Khan
90
khan
it
c
dk
KSWU
F2001
Samar
Tamur
Mirza
91
samata
it
c
dk
KINT
F2001
Sigrid
Jensdottir
Dalsgaard
92
sigrid
it
c
dk
KINT
F2001
Steinar
Logi
Sigurdsson
93
steinar
it
c
dk
KDKM
E2000
Susanne
Bisgaard
94
bisgaard
it
c
dk
KSWU
F2001
Thomas
Alexander
Hoelgaard
95
thalex
it
c
dk
UL
F2001
Thomas
Holst
Petersen
96
holst
it
c
dk
KDKM
F2001
Thomas
Lynge
97
thomaslynge
it
c
dk
KMMT
F2001
Tore
Fornes
98
torefornes
it
c
dk
KTIT
F2001
Ulf
Toke
99
ulftoke
it
c
dk
KINT
F2001
Ulrik
Rasmussen
100
ur
it
c
dk
DIT
F2001
Wajiha
Rehman
101
missrehman
it
c
dk
KSWU
F2001
Forkortelser
DIT
Diplomuddannelsen
i
Informationsteknologi
KDKM
Kandidatlinien
i
Design
Kommunikation
og
Medier
KEBUSS
Kandidatlinien
i
Elektronisk
Handel
KINT
Kandidatlinien
i
Internetteknologi
KMMT
Kandidatlinien
i
Multimedieteknologi
KSWU
Kandidatlinien
i
Softwareudvikling
KTIT
Kandidatlinien
i
Tværfaglig
IT
MDKM
Masteruddannelsen
i
Design
Kommunikation
og
Medier
MINT
Masteruddannelsen
i
Internetteknologi
MMMT
Masteruddannelsen
i
Multimedieteknologi
MSWU
Masteruddannelsen
i
Softwareudvikling
UL
Uden
liniebetegnelse
Bemærk
kursusevalueringen
starter
Mon
Mar
26
18
00
00
2001
This
document
was
created
using
Standard
ML
on
Mon
Mar
26
15
56
58
2001
102
USEMAP
icon
totop
gif
opdateret
21
08
2000
103
wwwadm
it
c
dk
Visioner
for
en
IT
højskole
Af
Mads
Tofte
Direktør
for
IT
højskolen
i
København
Informationsteknologi
IT
er
al
teknologi
hvor
computere
spiller
en
væsentlig
rolle
IT
højskolen
har
til
opgave
at
varetage
forskning
og
uddannelse
inden
for
informationsteknologi
Hvorfor
skal
vi
have
en
IT
højskole
Informationsteknologien
gennemsyrer
vores
liv
og
påvirker
næsten
enhver
arbejdsopgave
IT
er
ikke
længere
noget
som
kun
dataloger
og
ingeniører
skal
forstå
sig
på
Det
er
i
stigende
grad
nødvendigt
at
højtuddannede
inden
for
alle
fag
udnytter
teknologiens
muligheder
og
forstår
dens
begrænsninger
Vi
taler
frejdigt
om
informationsteknologien
som
om
det
er
klart
hvad
den
er
Faktum
er
at
den
er
alt
andet
end
givet
IT
skabes
i
et
dynamisk
samspil
mellem
teknik
design
og
mennesker
Man
kan
ikke
bruge
en
teknologi
hvis
man
ikke
ved
hvad
man
vil
bruge
den
til
Det
at
opstille
krav
til
systemer
at
designe
systemer
der
er
elegante
og
lette
at
bruge
at
bruge
teknologi
til
at
kommunikere
med
hinanden
at
forstå
de
udfordringer
og
muligheder
IT
rummer
for
vore
virksomheder
og
studere
det
teoretiske
grundlag
for
IT
alle
disse
ting
er
tæt
forbundet
og
fortjener
at
blive
behandlet
inden
for
en
og
samme
organisation
På
IT
højskolen
vil
vi
skabe
ny
teknologi
og
finde
nye
måder
at
bruge
den
på
Vi
tror
på
at
ny
teknologi
og
nye
anvendelser
bliver
skabt
når
mennesker
med
forskellig
baggrund
og
faglighed
mødes
For
at
komme
ind
på
IT
højskolens
kandidatstudium
skal
man
have
en
bachelorgrad
men
det
kan
i
princippet
være
en
hvilken
som
helst
bachelorgrad
Vi
vil
skabe
et
studiemiljø
der
er
udfordrende
for
alle
studerende
uanset
deres
faglige
baggrund
og
det
stiller
store
krav
til
såvel
lærere
som
studerende
Men
det
giver
også
mulighed
for
meget
spændende
former
for
uddannelse
IT
højskolen
er
skabt
fordi
der
er
brug
for
den
Erhvervslivet
og
det
offentlige
har
et
meget
stort
udækket
behov
for
højtuddannede
med
IT
kompetencer
Det
er
fint
at
vi
i
Danmark
er
kommet
igang
med
at
bruge
computere
men
Danmark
skulle
nødig
udvikle
sig
til
udelukkende
at
være
et
IT
brugerland
Det
er
vigtigt
at
Danmark
er
med
på
den
bølge
af
pionerånd
og
iværksættertrang
som
præger
informationsteknologien
andre
steder
i
verden
Forhåbentlig
kan
IT
højskolen
yde
et
markant
bidrag
til
en
sådan
vækst
til
fordel
for
de
studerende
virksomhederne
og
samfundet
generelt
Hvad
er
IT
højskolen
Her
er
et
kort
over
det
faglige
landskab
som
IT
højskolen
bevæger
sig
i
image2
gif
I
det
ene
hjørne
har
vi
den
del
af
informationsteknologien
som
er
baseret
på
naturvidenskaben
datalogi
matematik
og
ingeniørfagene
I
det
andet
hjørne
har
vi
de
humanistisk
kunstnerisk
kreative
aspekter
af
informations
teknologien
f
eks
design
af
multimediepræsentationer
IT
psykologi
design
af
brugergrænseflader
og
web
design
I
det
tredje
hjørne
har
vi
erhvervsfag
f
eks
økonomi
organisation
og
projektledelse
Påstanden
er
at
hvis
man
i
fremtiden
vil
begå
sig
inden
for
informationsteknologien
så
skal
man
kende
til
alle
tre
hjørner
og
man
skal
være
god
til
mindst
en
af
de
tre
ting
Nørden
der
sidder
isoleret
i
det
naturvidenskabelige
hjørne
mangler
evnen
til
at
lave
systemer
der
sætter
mennesket
og
brugen
af
teknologien
i
centrum
Der
er
brug
for
personer
der
kan
udvikle
software
som
virker
er
elegant
og
let
at
bruge
Tilsvarende
er
den
designer
der
udelukkende
ser
computeren
gennem
sit
grafikprogram
forhindret
i
at
udnytte
teknologiens
virkelige
potentiale
Og
erhvervspersonen
har
brug
for
at
forstå
hvordan
de
kreative
personer
hvad
enten
de
er
til
det
matematiske
eller
det
kunstneriske
arbejder
og
hvordan
deres
viden
og
arbejdsform
påvirker
organisationen
Men
relationen
mellem
de
forskellige
faglige
hjørner
er
mere
end
blot
et
tvungent
samarbejde
Det
er
en
nøgle
til
succes
Tænk
på
hvad
en
specialegruppe
på
IT
højskolen
vil
kunne
præstere
hvis
den
er
sammensat
af
en
person
fra
hvert
hjørne
en
ny
teknisk
ide
realiseret
som
et
funktionelt
og
æstetisk
tiltalende
produkt
som
passer
ind
i
en
forretningsplan
Med
andre
ord
Man
vil
have
prototypen
på
en
opstartsvirksomhed
Masterplan
for
uddannelserne
Når
man
prøver
at
kombinere
meget
forskellige
fagligheder
er
der
en
fare
for
at
man
laver
en
uddannelse
der
har
meget
bredde
men
for
lidt
dybde
Derfor
er
uddannelserne
på
IT
højskolen
organiseret
i
linier
Som
studerende
bliver
man
optaget
på
en
af
linierne
omend
der
vil
være
mulighed
for
at
følge
kurser
fra
andre
linier
IT
højskolen
arbejder
med
følgende
linier
som
fordeler
sig
jævnt
i
trekanten
Design
kommunikation
og
medier
Elektronisk
handel
Internetteknologi
Multimedieteknologi
Softwareudvikling
Tværfaglig
IT
Yderligere
information
om
disse
uddannelser
og
andre
uddannelser
på
IT
højskolen
findes
på
hjemmesiden
1
www
itu
dk
Fælles
for
alle
uddannelserne
er
at
man
hælder
over
til
et
af
hjørnerne
i
trekanten
men
man
skal
også
lære
noget
om
de
to
andre
hjørner
For
eksempel
skal
en
softwareudvikler
fra
IT
højskolen
være
dygtig
til
at
programmere
men
vedkommende
skal
også
kunne
opstille
krav
til
et
system
designe
en
god
brugergrænseflade
og
forstå
sig
på
projektstyring
og
økonomi
Mulige
jobprofiler
er
softwareudvikler
projektleder
IT
chef
og
konsulent
En
kandidat
i
linien
Design
kommunikation
og
medier
skal
kunne
arbejde
teoretisk
med
for
eksempel
psykologiske
aspekter
af
IT
eller
IT
i
et
samfundsmæssigt
perspektiv
Men
vedkommende
skal
også
kunne
designe
web
sider
konstruere
en
multimediepræsentation
og
anvende
teknologien
på
et
højt
niveau
Mulige
jobprofiler
informationsmedarbejder
mulitimedieproducent
alle
former
for
formidler
af
budskaber
via
de
elektroniske
medier
webmaster
salg
og
marketing
En
kandidat
i
Elektronisk
handel
skal
kende
til
de
juridiske
og
organisatoriske
aspekter
af
elektronisk
handel
og
skal
forstå
hvorledes
elektronisk
handel
influerer
på
f
eks
forholdet
mellem
kunde
og
leverandør
Dertil
skal
personen
være
velbevandret
i
de
særlige
tekniske
problemer
der
er
forbundet
med
e
handel
f
eks
sikkerhed
beskyttelse
af
privatlivets
fred
elektronisk
betaling
distribuerede
databaser
og
netværksteknologi
Denne
kombination
af
fagligheder
er
vigtig
fordi
elektronisk
handel
på
mange
måder
revolutionerer
vores
måde
at
handle
på
og
samtidig
kun
kan
lade
sig
gøre
hvis
der
er
tilstrækkeligt
mange
personer
der
forstår
sig
på
de
teknologiske
udfordringer
elektronisk
handel
indebærer
En
kandidat
i
Internetteknologi
skal
have
grundlæggende
viden
om
de
teknologier
der
til
sammen
udgør
internettet
Kandidaten
skal
forstå
netværksteknologien
som
gør
det
muligt
at
kommunikere
mellem
to
vilkårlige
punkter
på
internettet
og
forstå
og
kunne
anvende
de
grundlæggende
principper
for
konstruktion
af
internetprogrammel
Desuden
skal
kandidaten
kende
til
hvilke
muligheder
internetteknologi
giver
for
forbedrede
samarbejdsformer
og
services
i
organisationer
som
bruger
inter
og
intranet
Kandidaten
skal
være
i
stand
til
at
deltage
i
projekter
med
udvikling
design
konstruktion
aftestning
og
vedligeholdelse
af
internetprogrammel
Mulige
jobprofiler
er
netværksspecialist
ekspert
i
datasikkerhed
udvikler
eller
driftsansvarlig
indenfor
et
af
følgende
områder
distribuerede
internetløsninger
kommunikationssoftware
til
f
eks
mobiltelefoner
apparatsoftware
internetbutikker
distribuerede
databaser
eller
sikkerhedskritisk
udstyr
En
kandidat
i
Multimedieteknologi
vil
kende
de
grundlæggende
problemer
i
at
repræsentere
og
behandle
billeder
lyd
og
geometri
i
en
computer
Vedkommende
skal
forstå
den
tekniske
opbygning
af
konkrete
multimediesystemer
men
også
forstå
og
kunne
arbejde
med
de
underliggende
videnskabelige
discipliner
tale
genkendelse
signalbehandling
billedanalyse
datamatsyn
mønstergenkendelse
computergrafik
animation
virtual
reality
og
kodning
Oftest
er
det
de
underliggende
teknologier
der
begrænser
anvendeligheden
af
et
system
og
en
multimediesystemansvarlig
må
derfor
mestre
disse
discipliner
Mulige
job
profiler
teknisk
koordinator
af
udviklingsprojekter
indenfor
tv
produktion
industriautomation
grafisk
produktion
hospitalsdigitalisering
systemansvarlig
indenfor
samme
områder
forsker
og
innovator
En
kandidat
i
Tværfaglig
IT
skal
kunne
slå
bro
mellem
IT
og
et
andet
fagområde
Kandidaten
skal
dels
have
et
solidt
fundament
i
IT
med
fortrolighed
i
de
forskellige
aspekter
af
udviklingen
af
software
Dels
skal
personen
udnytte
sin
baggrund
fra
en
bacheloruddannelse
i
et
andet
fag
til
at
skabe
sin
helt
særlige
profil
med
en
viden
og
indsigt
i
hvordan
IT
kan
bruges
i
faget
image16
gif
Forskningen
Forskningen
på
IT
højskolen
omfatter
både
grundforskning
og
teknologiudvikling
Formålet
med
grundforskningen
er
at
forfølge
nye
ideer
for
at
få
større
forståelse
af
principper
om
informationsteknologiens
væsen
og
brug
Teknologiudviklingen
drejer
sig
om
at
omsætte
ny
viden
og
indsigt
til
teknologi
som
gør
det
muligt
at
udnytte
eller
i
hvert
fald
vurdere
nytten
af
grundforskningen
Forskningen
omfatter
meget
forskellige
emner
alt
lige
fra
at
finde
og
løse
år
2000
problemer
i
gamle
COBOL
programmer
til
at
forstå
de
dybere
matematiske
mysterier
i
billedbehandling
Flere
emner
kan
ses
på
hjemmesiden
2
www
itu
dk
Det
kræver
en
ph
d
og
dokumenteret
forskningsexcellence
at
blive
forsker
på
IT
højskolen
Dertil
er
det
nødvendigt
at
have
vilje
til
at
strække
sig
fagligt
i
tråd
med
IT
højskolens
vision
om
at
en
ny
faglighed
skal
vokse
i
samspillet
med
de
eksisterende
Forskningen
skal
have
internationalt
format
og
der
skal
være
levende
kontakt
med
forskning
i
ind
og
udland
Forskningen
behøver
ikke
at
være
direkte
orienteret
mod
anvendelse
men
den
del
af
forskningen
der
er
anvendelsesorienteret
skal
afprøves
i
praksis
meget
gerne
gennem
samarbejde
med
virksomheder
eller
ved
opstart
af
nye
virksomheder
Samtidig
skal
der
også
være
plads
til
grundforskningen
Det
har
altid
været
vigtigt
at
forstå
grundlæggende
principper
og
jo
mere
informationsteknologien
omfatter
jo
mere
akut
bliver
behovet
for
dyb
indsigt
Ellers
ender
vi
med
et
babelstårn
af
dimser
som
ikke
kan
kommunikere
med
hinanden
eller
med
os
Vi
skal
give
os
den
tid
og
de
ressourcer
det
kræver
at
udvikle
de
teorier
og
principper
som
kan
give
os
en
lille
smule
orden
i
det
kaos
som
givetvis
altid
vil
være
der
Det
er
gennem
ny
indsigt
der
skabes
grundlag
for
de
helt
store
forandringer
Det
kan
være
en
enkelt
genial
id
som
fører
til
en
teknologisk
revolution
Men
ofte
som
i
tilfældet
Java
er
det
en
kop
af
viden
og
indsigt
der
langsomt
er
fyldt
op
af
forskerne
en
kop
der
til
sidst
løber
over
og
resulterer
i
hvad
der
virker
som
en
teknologisk
revolution
Derfor
er
det
vigtigt
at
vi
på
IT
højskolen
hæger
om
forskningsmiljøerne
så
de
både
kan
finde
nye
stier
og
sørge
for
at
små
stier
kan
blive
til
rigtige
veje
Image3
jpg
Grundlaget
for
etablering
af
IT
højskolen
i
København
IT
højskolen
er
etableret
som
et
frifakultet
i
henhold
til
12
stk
1
i
universitetsloven
af
23
december
1992
med
senere
ændringer
Etableringen
er
sket
på
baggrund
af
rapport
afgivet
af
udvalg
om
styrkelse
af
IT
uddannelser
og
forskning
hvilket
udvalg
blev
nedsat
i
maj
1998
af
forskningsministeren
og
undervisningsministeren
Det
bevillingsmæssige
grundlag
for
IT
højskolens
etablering
er
Forskningsministeriets
aktstykke
nr
138
af
9
marts
1999
som
er
tiltrådt
af
finansudvalget
den
17
marts
1999
Handelshøjskolen
i
København
HHK
Roskilde
Universitetscenter
RUC
og
Danmarks
Tekniske
Universitet
DTU
har
som
konsortium
indstillet
Handelshøjskolen
som
værtsinstitution
for
IT
højskolen
Efter
godkendelser
af
Handelshøjskolens
styrelsesråd
og
konsistorium
er
Handelshøjskolen
af
Forskningsministeriet
efter
samråd
med
bestyrelsesformanden
og
undervisningsministeren
udpeget
som
værtsinstitution
Udpegningen
af
Handelshøjskolen
som
værtsinstitution
er
gældende
indtil
den
31
august
2004
IT
højskolen
er
en
del
af
den
selvejende
institution
HHK
Den
kompetence
og
det
ansvar
der
er
tillagt
Styrelsesrådet
for
Handelshøjskolen
i
København
jf
4
i
Undervisningsministeriets
bekendtgørelse
om
styrelse
af
Handelshøjskolen
i
København
nr
340
af
21
juni
1974
er
i
henhold
til
disse
vedtægter
tillagt
bestyrelsen
for
IT
højskolen
Hvis
værtsskabet
flyttes
eller
IT
højskolen
omdannes
til
en
selvstændig
institution
udskilles
den
til
IT
højskolen
hørende
formue
fra
HHK
s
formue
Med
henblik
herpå
føres
der
særskilt
formueregnskab
for
IT
højskolen
Retningslinierne
herfor
godkendes
af
Forskningsministeriet
VEDTÆGTER
for
IT
højskolen
i
København
IT
C
the
IT
University
of
Copenhagen
I
Navn
og
hjemsted
1
Frifakultetets
navn
er
IT
højskolen
i
København
Højskolens
hjemsted
og
værneting
er
Frederiksberg
Kommune
II
Formål
2
IT
højskolen
har
til
formål
at
drive
forskning
og
give
undervisning
inden
for
informationsteknologi
IT
højskolen
skal
tilstræbe
et
offentligt
privat
samspil
i
såvel
uddannelse
som
forskning
og
skal
medvirke
til
at
styrke
det
tværinstitutionelle
samarbejde
mellem
IT
uddannelses
og
forskningsinstitutioner
IT
højskolen
skal
udvikle
og
gennemføre
uddannelsesprogrammer
der
er
attraktive
for
et
stort
antal
personer
og
som
er
egnet
til
at
bibringe
dem
IT
kompetencer
der
er
relevante
i
forhold
til
den
til
enhver
tid
værende
efterspørgsel
IT
højskolen
skal
desuden
gennem
sin
forskning
bidrage
til
videnskabelig
og
industriel
innovation
III
Økonomisk
grundlag
3
Det
økonomiske
grundlag
for
IT
højskolen
tilvejebringes
fortrinsvis
ved
årlige
bevillinger
til
anlæg
drift
og
forskning
under
Forskningsministeriet
samt
uddannelsestaxameterbevillinger
under
Undervisningsministeriet
midler
fra
private
forskningsmidler
fra
nationale
og
EU
forskningsprogrammer
samt
indtægtsdækket
virksomhed
IT
højskolens
ledelse
råder
over
IT
højskolens
bevillinger
øvrige
indtægter
og
tilskud
Midlernes
administration
opbevaring
m
v
fastlægges
i
en
administrationsaftale
med
værtsinstitutionen
IV
Organisatoriske
forhold
A
Ledelse
4
IT
højskolen
ledes
af
en
bestyrelse
og
en
direktør
Bestyrelse
5
Bestyrelsen
udpeges
af
forskningsministeren
i
samråd
med
undervisningsministeren
Bestyrelsen
består
af
9
medlemmer
5
medlemmer
der
repræsenterer
aftagersiden
og
4
medlemmer
der
repræsenterer
universiteterne
Bestyrelsens
formand
udpeges
blandt
aftagerrepræsentanterne
af
forskningsministeren
i
samråd
med
undervisningsministeren
Universitetsrepræsentanterne
udpeges
efter
indstilling
fra
den
uddannelsesinstitution
der
er
vært
for
IT
højskolen
og
skal
medmindre
forskningsministeren
måtte
træffe
anden
afgørelse
så
vidt
muligt
bestå
af
rektorerne
for
Københavns
Universitet
KU
RUC
DTU
og
HHK
Bestyrelsens
medlemmer
beskikkes
for
en
periode
af
5
år
Genbeskikkelse
kan
finde
sted
Forskningsministeren
kan
bestemme
at
bestyrelsen
suppleres
med
1
medarbejderrepræsentant
og
1
studenterrepræsentant
Bestyrelsen
fastlægger
de
nærmere
regler
for
valg
af
disse
repræsentanter
6
Bestyrelsen
træffer
afgørelser
ved
simpel
stemmeflerhed
dog
kræves
til
vedtagelse
af
forslag
at
mindst
7
medlemmer
af
bestyrelsen
er
til
stede
samt
at
5
af
de
af
forskningsministeren
og
efter
samråd
med
undervisningsministeren
udpegede
bestyrelsesmedlemmer
stemmer
for
forslaget
Bestyrelsen
kan
træffe
afgørelser
ved
skriftlig
votering
dog
ikke
i
spørgsmål
om
vedtægtsændringer
og
budgetgodkendelse
7
Bestyrelsen
1
ansætter
og
afskediger
direktøren
for
IT
højskolen
2
fastlægger
overordnede
retningslinier
for
IT
højskolens
forskning
og
uddannelser
samt
godkender
forslag
vedrørende
IT
højskolens
langsigtede
virksomhed
og
udvikling
3
godkender
efter
indstilling
fra
direktøren
oprettelse
af
studienævn
4
fastlægger
IT
højskolens
uddannelsesudbud
5
godkender
studieordninger
efter
oplæg
fra
studienævnet
og
indstilling
fra
direktøren
og
tildeler
ressourcer
i
overensstemmelse
med
det
af
bestyrelsen
godkendte
budget
6
nedsætter
sagkyndige
udvalg
til
bedømmelse
af
videnskabelige
arbejder
med
henblik
på
erhvervelse
og
tildeling
af
ph
d
og
dr
grader
7
godkender
efter
indstilling
fra
direktøren
IT
højskolens
budget
og
regnskab
8
godkender
efter
indstilling
fra
direktøren
overordnede
retningslinier
for
optagelsesprocedurer
9
foretager
efter
oplæg
fra
direktøren
løbende
opfølgning
og
kontrol
af
IT
højskolens
regnskab
og
økonomi
Bestyrelsen
kan
bemyndige
bestyrelsesformanden
til
at
træffe
beslutninger
på
bestyrelsens
vegne
Bestyrelsen
foranlediger
udarbejdet
en
forretningsorden
for
bestyrelsens
arbejde
Bestyrelsesmøder
afholdes
efter
behov
dog
minimum
4
gange
om
året
Bestyrelsens
aftagerrepræsentanter
modtager
særskilt
vederlag
i
overensstemmelse
med
statens
regler
8
Bestyrelsesformanden
1
godkender
efter
indstilling
fra
direktøren
samarbejds
og
udliciteringsaftaler
med
andre
universiteter
og
institutioner
2
godkender
efter
forslag
fra
direktøren
indstillinger
til
Forskningsministeriet
om
oprettelse
af
professorater
3
godkender
efter
indstilling
fra
direktøren
og
efter
samråd
med
rektor
for
værtsinstitutionen
sammensætningen
af
bedømmelsesudvalg
til
videnskabelige
stillinger
4
godkender
efter
indstilling
fra
direktøren
og
efter
samråd
med
rektor
for
værtsinstitutionen
ansættelse
og
afskedigelse
af
professorer
og
ledende
personale
5
godkender
efter
indstilling
fra
direktøren
rammerne
for
individuelle
lønforhandlinger
meddeler
fuldmagter
til
at
direktøren
alene
eller
sammen
med
andre
kan
forpligte
IT
højskolen
i
forbindelse
med
den
daglige
ledelse
og
drift
af
IT
højskolen
6
repræsenterer
bestyrelsen
indadtil
og
udadtil
7
træffer
beslutninger
på
bestyrelsens
vegne
efter
bemyndigelse
af
denne
9
Direktøren
1
er
ansvarlig
over
for
bestyrelsen
i
ethvert
spørgsmål
Direktøren
har
ansvaret
for
den
daglige
ledelse
af
IT
højskolen
Ledelsesretten
omfatter
alt
personale
der
har
tjenestested
på
IT
højskolen
jf
20
2
disponerer
IT
højskolens
bevillinger
og
indtægter
i
øvrigt
i
overensstemmelse
med
de
af
bestyrelsen
godkendte
budgetter
og
retningslinier
samt
gældende
lovgivning
og
bevillingsforudsætninger
3
udarbejder
forslag
vedrørende
IT
højskolens
langsigtede
virksomhed
og
udvikling
4
er
ansvarlig
for
udarbejdelse
af
forslag
til
budget
og
aflæggelse
af
regnskab
samt
for
at
holde
bestyrelsen
løbende
underrettet
om
IT
højskolens
økonomiske
udvikling
5
ansætter
og
afskediger
IT
højskolens
personale
Ledende
personale
og
professorer
ansættes
og
afskediges
efter
godkendelse
fra
bestyrelsesformanden
6
opretter
efter
forudgående
godkendelse
af
bestyrelsesformanden
og
forskningsministeren
professorater
7
indstiller
til
bestyrelsesformanden
sammensætningen
af
bedømmelsesudvalg
til
videnskabelige
stillinger
8
forhandler
og
aftaler
løn
og
ansættelsesvilkår
hvor
gældende
aftaler
og
overenskomster
giver
hjemmel
hertil
inden
for
rammer
godkendt
af
bestyrelsesformanden
9
fastlægger
størrelsen
af
studienævn
bestemmer
om
der
skal
afholdes
indirekte
valg
til
et
studienævn
gennem
valg
af
et
fagudvalg
herunder
hvornår
og
for
hvor
lang
en
periode
dette
valg
skal
finde
sted
sikrer
udskrivelse
af
valg
til
studienævn
og
fagudvalg
og
godkender
valgresultater
10
godkender
studieledere
og
godkender
og
indstiller
til
bestyrelsen
studieordninger
efter
oplæg
fra
studienævnene
11
indstiller
til
bestyrelsesformandens
godkendelse
samarbejds
og
udliciteringsaftaler
med
andre
universiteter
og
institutioner
Direktøren
er
endvidere
ansvarlig
for
at
IT
højskolen
til
enhver
tid
overholder
gældende
lovgivning
og
regler
og
er
pligtig
at
foretage
enhver
anden
handling
der
er
nødvendig
til
god
og
forsvarlig
ledelse
af
IT
højskolen
hvadenten
sådanne
handlinger
måtte
være
beskrevet
i
nærværende
vedtægt
eller
ej
B
Nævn
og
udvalg
10
Studienævn
Der
etableres
studienævn
der
dækker
de
enkelte
uddannelser
linjer
eller
flere
uddannelser
linjer
Til
studienævn
for
uddannelser
linjer
der
ikke
er
udliciteret
jf
18
vælges
et
antal
VIP
videnskabeligt
personale
og
studerende
VIP
vælges
af
og
blandt
de
VIP
der
underviser
på
uddannelserne
linjerne
og
har
tjenestested
på
IT
højskolen
jf
20
De
studerende
vælges
af
og
blandt
de
studerende
der
er
indskrevet
på
uddannelserne
linjerne
Til
studienævn
for
uddannelser
linjer
der
er
udliciteret
i
deres
helhed
jf
18
vælges
et
antal
VIP
og
studerende
VIP
vælges
af
og
blandt
de
VIP
der
underviser
på
uddannelserne
linjerne
uanset
ansættelsessted
De
studerende
vælges
af
og
blandt
de
studerende
der
er
indskrevet
på
uddannelserne
linjerne
Til
studienævn
for
uddannelser
linjer
der
er
delvist
udliciteret
jf
18
vælges
et
antal
VIP
og
studerende
VIP
vælges
af
og
blandt
de
VIP
der
underviser
på
uddannelserne
linjerne
og
har
tjenestested
på
IT
højskolen
jf
20
De
studerende
vælges
af
og
blandt
de
studerende
der
er
indskrevet
på
uddannelserne
linjerne
Der
kan
i
de
konkrete
udliciteringsaftaler
indsættes
bestemmelser
om
at
VIP
der
underviser
på
uddannelserne
linjerne
men
som
ikke
har
tjenestested
på
IT
højskolen
jf
20
kan
blive
tildelt
en
plads
i
studienævnet
I
så
fald
overlades
det
til
den
uddannelsesinstitution
som
udliciteringsaftalen
er
indgået
med
at
udpege
institutionens
repræsentant
i
studienævnet
Til
studienævn
der
dækker
flere
uddannelser
linjer
kan
medlemmerne
vælges
ved
indirekte
valg
Der
vælges
i
så
fald
et
fagudvalg
på
hver
uddannelse
linje
Til
fagudvalget
vælges
et
antal
VIP
videnskabeligt
personale
og
studerende
VIP
vælges
af
og
blandt
de
VIP
der
underviser
på
uddannelsen
linjen
og
har
tjenestested
på
IT
højskolen
jf
20
De
studerende
vælges
af
og
blandt
de
studerende
der
er
indskrevet
på
uddannelsen
linjen
VIP
i
fagudvalget
vælger
af
deres
midte
en
VIP
til
studienævnet
De
studerende
i
fagudvalget
vælger
af
deres
midte
en
studerende
til
studienævnet
Til
studienævn
hvor
medlemmerne
er
valgt
ved
direkte
valg
vælger
studienævnet
af
sin
midte
blandt
sine
VIP
medlemmer
en
formand
Studienævnet
vælger
blandt
de
studerende
en
næstformand
Til
studienævn
hvor
medlemmerne
er
valgt
ved
indirekte
valg
gennem
fagudvalg
vælges
formanden
og
næstformanden
ved
direkte
valg
Formanden
vælges
af
og
blandt
de
VIP
der
underviser
på
uddannelserne
linjerne
og
har
tjenestested
på
IT
højskolen
jf
20
og
næstformanden
af
og
blandt
de
studerende
der
er
indskrevet
på
uddannelserne
linjerne
Næstformanden
deltager
i
tilrettelæggelsen
af
studienævnets
arbejde
Formanden
for
et
studienævn
er
tillige
studieleder
Studienævn
udarbejder
oplæg
til
studieordninger
og
fastlægger
studieplaner
for
den
eller
de
pågældende
uddannelser
linjer
i
overensstemmelse
med
de
af
bestyrelsen
godkendte
studieordninger
11
Der
nedsættes
indtil
videre
et
interimstudienævn
som
sammensættes
af
bestyrelsen
efter
indstilling
fra
direktøren
Interimstudienævnet
fungerer
indtil
ordinære
studienævn
etableres
Bestyrelsen
fastlægger
interimstudienævnets
funktionsperiode
som
ikke
må
overskride
et
år
Andre
nævn
og
udvalg
12
Der
etableres
for
IT
højskolen
eget
samarbejds
og
sikkerhedsudvalg
IT
højskolen
omfattes
ikke
af
værtsinstitutionens
samarbejdsudvalg
og
sikkerhedsudvalg
13
For
nedsættelse
af
nævn
og
råd
i
øvrigt
i
henhold
til
denne
vedtægt
eller
bestyrelsens
beslutning
gælder
at
i
det
omfang
der
skal
vælges
kandidater
til
sådanne
nævn
og
råd
skal
de
pågældende
have
tjenestested
på
IT
højskolen
jf
20
eller
være
tilmeldt
som
studerende
ved
IT
højskolens
uddannelser
medmindre
bestyrelsen
måtte
træffe
anden
beslutning
14
Centerråd
Bestyrelsen
kan
beslutte
at
nedsætte
et
centerråd
og
fastlægger
i
så
fald
retningslinier
for
dets
sammensætning
og
virke
15
Administration
m
v
IT
højskolen
indgår
med
værtsinstitutionen
aftale
om
bistand
for
så
vidt
angår
administrative
opgaver
mod
dækning
af
værtsinstitutionens
dermed
forbundne
omkostninger
Aftalen
skal
godkendes
af
forskningsministeriet
16
Rektor
ved
værtsinstitutionen
er
ansvarlig
for
legalitetskontrollen
og
bevillingskontrollen
Klager
behandles
i
overensstemmelse
med
de
til
enhver
tid
gældende
regler
herfor
og
indgives
til
rektor
for
værtsinstitutionen
som
videresender
klagen
til
den
relevante
klageinstans
Klager
over
IT
højskolens
personale
behandles
af
IT
højskolen
Klage
over
en
afgørelse
truffet
af
IT
højskolen
vedrørende
IT
højskolens
personale
kan
for
så
vidt
angår
retlige
spørgsmål
behandles
af
rektor
for
værtsinstitutionen
Klager
over
andet
personale
end
IT
højskolens
personale
behandles
af
den
institution
hvor
den
pågældende
medarbejder
er
ansat
Klager
over
eksamen
behandles
af
IT
højskolen
i
overensstemmelse
med
de
til
enhver
tid
for
eksamensklager
gældende
regler
herunder
de
relevante
uddannelsesbekendtgørelser
17
Værtsinstitutionen
udsteder
eksamensbevis
for
de
uddannelser
der
udbydes
af
IT
C
Eksamensbeviser
designes
af
IT
C
efter
samråd
med
værtsinstitutionen
18
IT
højskolen
vil
som
et
led
i
at
koordinere
og
styrke
IT
uddannelserne
i
regionen
indgå
udliciteringsaftaler
om
uddannelsessamarbejder
med
HHK
RUC
DTU
og
KU
samt
andre
uddannelsesinstitutioner
Sådanne
aftaler
skal
være
skriftlige
og
skal
sikre
IT
højskolens
faglige
indflydelse
på
og
evaluering
af
sådanne
udliciterede
uddannelser
19
Værtsinstitutionen
og
konsortiets
øvrige
universiteter
involveres
i
øvrigt
i
IT
højskolens
virke
via
repræsentation
i
IT
højskolens
bestyrelse
C
Personale
20
Ansættelsessted
for
IT
højskolens
personale
er
indtil
videre
Handelshøjskolen
i
København
med
tjenestested
ved
IT
højskolen
i
København
V
Uddannelse
og
forskning
21
IT
højskolen
udbyder
uddannelser
på
master
diplom
kandidat
og
Ph
D
niveau
samt
kortere
videre
og
efteruddannelsesforløb
samt
kursusvirksomhed
22
Uddannelserne
skal
være
forskningsbaserede
IT
højskolen
skal
frembringe
attraktive
alternativer
og
supplementer
til
de
eksisterende
uddannelsestilbud
på
IT
området
Uddannelsestilbuddene
skal
tilrettelægges
og
gennemføres
på
en
sådan
måde
at
der
sikres
høje
gennemførelsesprocenter
uden
at
kompromittere
det
faglige
niveau
Der
skal
således
skabes
fleksible
rammer
for
undervisningen
der
bl
a
skal
åbne
mulighed
for
fjernundervisning
og
hjemmeuddannelsespladser
IT
højskolen
skal
kunne
tilbyde
stor
fleksibilitet
for
studerende
og
undervisere
og
samtidig
etablere
et
kompakt
integreret
attraktivt
undervisnings
og
forskningsmiljø
23
Det
påhviler
IT
højskolen
at
nedsætte
et
eller
flere
rådgivende
IT
foresight
paneler
bestående
af
såvel
repræsentanter
for
aftagere
som
forskere
med
henblik
på
at
gøre
IT
højskolens
forskningsaktiviteter
og
uddannelsesudbud
fremtidsorienterede
24
Undervisningsministeriet
udarbejder
uddannelsesbekendtgørelser
og
godkender
uddannelsesudbuddet
for
så
vidt
Master
Diplom
og
kandidatuddannelser
VI
Evaluering
25
Med
henblik
på
at
vurdere
IT
højskolens
langsigtede
organisationsform
og
dens
evne
til
at
nå
de
opstillede
krav
og
mål
iværksætter
bestyrelsen
i
samarbejde
med
forskningsministeren
en
ekstern
evaluering
af
IT
højskolen
Resultatet
af
evalueringen
skal
foreligge
ved
udgangen
af
år
2003
VII
Vedtægtsændringer
26
Bestyrelsen
kan
fremsætte
forslag
til
ændringer
af
nærværende
vedtægter
Vedtagelse
af
ændringsforslag
til
vedtægterne
kræver
i
tillæg
til
reglerne
i
6
at
mindst
6
bestyrelsesmedlemmer
stemmer
for
forslaget
Vedtægtsændringer
skal
godkendes
af
værtsinstitutionens
ledende
organer
og
af
forskningsministeren
VIII
Tegning
27
IT
højskolen
tegnes
af
bestyrelsens
formand
sammen
med
enten
direktøren
eller
et
andet
bestyrelsesmedlem
IX
Regnskab
og
revision
m
v
28
Bestyrelsen
kan
antage
ekstern
bistand
til
kontrol
og
styring
af
IT
højskolens
budgetter
og
regnskabsrapportering
IT
højskolen
indgår
udviklingskontrakt
med
Forskningsministeriet
og
udarbejder
særskilt
virksomhedsregnskab
og
forskningsårsberetning
X
Ikrafttræden
29
Nærværende
vedtægter
træder
i
kraft
1
marts
2000
o0o
Vedtaget
på
konsistoriums
møde
d
Finn
Junge
Jensen
Rektor
Vedtaget
på
styrelsesrådsmøde
d
Niels
Kjeldsen
Direktør
På
bestyrelsens
vegne
for
IT
højskolen
i
København
Mogens
Munk
Rasmussen
Bestyrelsesformand
Mads
Tofte
Direktør
Godkendt
af
Forskningsministeriet
den
Forslag
til
studenterprojekter
IT
højskolen
i
København
Forår
2000
Nedenfor
findes
korte
beskrivelser
af
de
indkomne
projektforslag
fra
ansatte
og
studerende
Firmaet
Agency
com
Copenhagen
tidligere
Visionik
A
S
tilbyder
også
en
række
forskellige
projekter
1
de
kan
ses
her
Cardio
megali
Jesus
og
hjertet
Beskrivelse
En
web
baseret
audiovisuel
installation
der
skal
indgå
som
n
ud
af
24
selvstændige
scener
under
forestillingen
jesus
c
odd
size
en
forestilling
af
Hotel
Pro
Forma
under
ledelse
af
Kirsten
Dehlholm
der
udspiller
sig
i
området
omkring
og
på
Malm
Hogskola
i
Malm
Cardio
megali
skal
ses
som
et
selvstændigt
værk
der
efter
forestillingen
skal
formidles
videre
til
udvalgte
web
kunstmuseer
En
installation
på
webben
der
vil
indeholde
audio
visuelle
billeder
Cardio
megali
opbygges
så
den
får
karakter
af
collage
stoflighed
rumlighed
en
sammenstykning
af
billeder
i
nye
konstellationer
hvor
du
aldrig
ser
den
første
sandhed
Et
sammenstød
af
tid
i
et
elektronisk
rum
Deadline
for
siten
d
4
september
2000
Den
visuelle
oplevelse
skal
underbygges
af
en
teknisk
kunnen
der
gør
oplevelsen
af
navigation
gådefuld
Omfanget
af
siten
vil
være
afhængig
af
vores
økonmiske
fundament
vores
budget
bygger
på
15
images
Målgruppe
forudsætninger
Cardio
megali
tænkes
primært
blive
produceret
i
Flash
4
0
Dette
program
er
valgt
fordi
det
giver
mulighed
for
høj
grad
af
interaktion
Lingo
programmering
Interaktionen
skal
give
cardio
megali
en
stor
fremdrift
i
dialog
med
brugeren
uden
at
siten
bliver
for
tungt
til
webben
Cardio
megali
skal
have
spil
karakter
dog
uden
fast
løsning
eller
afslutning
Fremdriften
opnås
ved
dynamisk
tilpasning
til
brugerens
adfærd
ved
hjælp
af
registrering
af
brugerens
hit
mouse
over
på
billeder
symboler
og
tekst
i
kombination
med
en
random
funktion
Dette
skulle
føre
til
fornemmelse
af
en
systematik
som
dog
til
stadighed
brydes
Nuværende
medlemmer
af
gruppen
kontaktpersoner
Nikolaj
de
Fine
Licht
2
nikolaj
itu
dk
undervisningsassistent
pt
ingen
ITU
studerende
Derudover
Anette
Væring
3
vaering
hotmail
com
projektleder
og
Peter
Dammand
4
dammanddesign
get2net
dk
grafiker
Der
er
tilknyttet
følgende
konsulenter
Kirsten
Dehlholm
Hotel
Pro
Forma
dr
med
Jesper
Trillingsgaard
lektor
dr
theol
Troels
Nørager
avatar
researcher
John
Westworth
Oplæg
den
14
april
Dorit
Shoshan
Beskrivelse
Oplæg
til
kommunikationsplan
og
dummy
produktion
af
et
web
site
for
tøjdesigner
Dorit
Shoshan
som
er
rekvirent
Ekstern
opdragsgiver
Målgruppe
forudsætninger
Web
design
I
II
Projektledelse
Interaktionsdesign
og
Grafisk
Design
Nuværende
medlemmer
af
gruppen
Thomas
Lyngdam
Pedersen
5
Lyngdam
itu
dk
32
96
24
21
Therese
Juncker
6
Juncker
itu
dk
45
42
59
16
20
61
17
92
Erik
Hansen
Hansen
7
Eh
itu
dk
40
74
91
96
Kontaktperson
Therese
Juncker
8
Juncker
itu
dk
Oplæg
den
14
april
Net
Virksomhed
Beskrivelse
I
samarbejde
med
3
udøvende
arkitekter
ønsker
vi
at
lave
et
forslag
til
hvordan
en
netbaseret
arkitektvirksomhed
kunne
se
ud
Udgangspunktet
er
at
skabe
et
website
med
en
tilhørende
arbejdsplatform
i
form
af
et
intranet
På
intranetsiden
ligger
firmaets
aktuelle
arbejdsprojekter
med
tilhørende
konferencer
og
evt
synkron
arbejds
og
evalueringsmulighed
Inden
for
mange
brancher
er
dette
en
ny
arbejdsform
som
skaber
mulighed
for
et
kommunikations
og
interaktionsforum
uafhængig
af
tid
og
sted
Konceptet
øger
muligheden
for
dialog
og
samarbejde
mellem
klient
og
firma
under
projekters
tilblivelse
Målgruppe
forudsætninger
Vi
er
allerede
2
DKM
er
som
gerne
vil
tage
os
af
konceptplanlægning
og
website
Vi
mangler
nogle
friske
programmører
som
syntes
det
kunne
være
en
udfordring
at
udarbejde
et
mindre
program
til
intranetdelen
Nuværende
medlemmer
af
gruppen
kontaktperson
Susanne
Bendixen
9
susb
itu
dk
og
Hanne
Beier
Sørensen
10
hanne
itu
dk
2
Semester
DKM
Oplæg
den
14
april
Ja
Konceptudvikling
af
software
til
børn
Beskrivelse
Multimediekoncept
en
art
hjemmesideprogram
for
børn
Målgruppen
er
8
11
årige
en
gruppe
der
oftest
må
tage
til
takke
med
spøgelser
med
forkølelser
og
skeletter
med
kasketter
Vores
mål
er
at
udvikle
et
koncept
der
giver
muligheder
for
en
mere
aktiv
tilgang
til
computermediet
end
de
traditionelle
produkter
til
børn
giver
en
art
voksen
it
for
børn
Vægten
lægges
på
brugernes
egen
kreativitet
og
produktivitet
og
ikke
så
meget
på
spilleelementer
Vi
vil
fokusere
på
ide
og
konceptudvikling
og
knap
så
meget
den
tekniske
implementering
Målgruppe
forudsætninger
Projektet
retter
sig
mod
web1
og
interaktionsdesign
Nuværende
medlemmer
af
gruppen
Astrid
Dyhr
Pedersen
11
astridity
itu
dk
Christine
Fyhn
12
christine
itu
dk
Rune
Mejlvang
13
runem
itu
dkrunem
itu
dk
Kontaktperson
Astrid
Dyhr
Pedersen
14
astridity
itu
dk
Oplæg
den
14
april
Nørrebro
portal
Beskrivelse
Når
man
søger
efter
en
speciel
butik
eller
f
eks
et
galleri
på
nettet
er
det
en
fordel
på
forhånd
at
vide
hvad
man
er
ude
efter
Det
betyder
at
de
på
forhånd
kendte
etablerede
forretninger
står
bedst
i
kampen
om
internetkunder
Der
findes
på
nuværende
nogle
få
blandt
andre
http
www
aok
dk
guides
over
hvad
der
findes
af
små
butikker
gallerier
i
København
Men
vi
mener
at
det
kan
gøres
bedre
Vores
id
går
i
alt
sin
enkelthed
ud
på
at
lave
designet
til
en
hjemmeside
der
informerer
reklamerer
om
de
små
butikker
gallerier
og
cafeer
på
Nørrebro
som
ikke
har
råd
til
at
stå
alene
i
den
store
kamp
om
internetkunderne
Projektet
skal
lede
frem
til
en
oversigts
hjemmeside
over
udvalgte
selvbestaltede
butikker
med
kunsthåndværk
tøj
musik
gallerier
evt
også
cafeer
og
små
restauranter
At
f
eks
også
en
fynbo
kan
få
bruge
internettet
og
derigennem
få
informationer
om
hvad
der
sker
af
latinerkvarter
agtige
ting
på
Nørrebro
Ikke
så
meget
en
traditionel
E
handels
site
men
om
arrangementer
nye
tiltag
butikker
fælles
galleri
ferniseringer
vi
anbefaler
En
kultur
Nørrbro
butikker
portal
Ideen
kunne
udvikle
sig
til
også
at
indeholde
en
tilsvarende
Vesterbro
portal
Odense
portal
osv
Det
følgende
er
kun
forslag
til
indhold
og
kan
selvfølgelig
ændres
En
analyse
af
tilsvarende
også
udenlandske
hjemmesider
der
vil
noget
tilsvarende
Findes
der
f
eks
en
god
Underground
hjemmeside
om
de
kunstgallerier
i
Berlin
Hvad
er
der
godt
skidt
ved
f
eks
Alt
om
København
En
målgruppeanalyse
Hvem
hvad
hvorfor
og
alt
det
Design
En
løsning
der
ikke
dominerer
de
deltagende
forretninger
i
sit
design
Men
fungerer
som
effektiv
oversigt
Teknisk
realisering
Især
om
hensigtsmæssig
database
og
opdatering
En
prototype
hjemmeside
som
på
grund
af
opgavens
omfang
nok
kun
kan
blive
delvis
fungerende
Målgruppe
forudsætninger
Må
meget
gerne
bestå
af
folk
på
tværs
af
linierne
Ideelt
set
skal
projektgruppen
bestå
af
folk
med
forskellig
viden
og
interesse
for
1
design
2
brugerperspektiver
3
realisering
af
hjemmeside
4
Databaseløsninger
blandt
andet
om
effektiv
opdatering
Nuværende
medlemmer
af
gruppen
På
nuværende
tidspunkt
gruppen
lidt
usikker
men
består
af
3
DKMer
Karin
Katja
og
Viktor
Kontaktperson
Viktor
Rasmussen
Tlf
35
39
32
82
E
mail
15
viktor
itu
dk
Oplæg
den
14
april
www
skole
it
dk
version
2
0
Beskrivelse
Analyse
af
eksisterende
website
med
henblik
på
konceptudvikling
og
demoversion
af
en
ny
website
med
baggrund
I
erfaringer
med
den
eksisterende
site
Tanken
er
en
konceptudviklingsfase
der
tager
udgangspunkt
i
de
gode
og
dårlige
sider
ved
sitet
Vi
vil
også
tage
udgangspunkt
i
de
erfaringer
folkene
bag
Skole
IT
har
haft
med
sitet
og
med
webdelen
af
kurset
Spørgsmål
i
projektet
Er
det
fjernundervisning
med
udgangspunkt
der
ligner
det
traditionelle
PC
kørekort
eller
er
læringsbegrebet
overvejet
I
forhold
til
fjernundervisning
Ligner
sitets
struktur
normale
undervisningmaterialer
eller
bruges
mediets
muligheder
for
interaktion
og
alternative
strukturer
Opgaven
er
tænkt
som
en
samlet
pakke
sammen
med
eksamensopgave
i
Introduktion
til
IT
som
medie
Målgruppe
forudsætninger
DKM
med
fagene
Interaktionsdesign
og
Webdesign
I
Nuværende
medlemmer
af
gruppen
Carsten
Schmidt
16
cs
itu
dk
Sune
Børsen
17
suneb
itu
dk
Gruppen
er
halv
lukket
Kontaktperson
Carsten
Schmidt
18
cs
itu
dk
Sune
Børsen
19
suneb
itu
dk
Oplæg
den
14
april
FYSIO
COM
hjemmeside
Beskrivelse
Ideen
er
kommet
i
forlængelse
af
den
nye
rapport
om
arbejdsmiljøet
på
ITU
foretaget
af
en
gruppe
fysioterapeut
studerende
De
har
indsamlet
en
stor
mængde
viden
om
sådan
nogle
som
os
der
sidder
og
kæmper
med
ondt
i
nakke
og
arm
på
grund
af
computerarbejde
Jeg
har
kontakt
meden
af
rapportens
forfattere
som
er
interesseret
i
at
der
samarbejdes
Formålet
er
at
kreere
en
hjemmeside
hvor
man
blandt
andet
kan
få
gode
råd
og
f
eks
downloade
hjælpeprogrammer
vedrørende
computerskader
En
slags
net
doktor
specielt
for
IT
folk
Det
følgende
er
kun
forslag
til
indholddet
og
kan
selvfølgelig
ændres
Et
afsnit
om
de
vigtige
af
rapportens
pointer
som
det
vil
være
relevante
at
indbygge
hjemmesiden
Ideen
er
ikke
ny
se
bl
a
http
www
computer
smerter
dk
Derfor
bør
opgaven
indeholde
en
analyse
af
andres
løsninger
på
hvordan
sådan
en
site
bør
se
ud
En
målgruppeanalyse
Hvem
hvad
hvorfor
og
alt
det
Design
Teknisk
realisering
En
id
der
sikkert
heller
ikke
er
ubetinget
ny
kunne
være
at
lave
et
program
der
fortæller
brugeren
at
man
nu
har
siddet
og
arbejdet
ved
sin
computer
i
f
eks
45
min
og
at
det
er
tid
til
at
lave
armbøjninger
En
hjemmeside
som
selvfølgelig
helst
skal
være
fuldt
fungerende
Eventuelt
udviklet
specielt
til
ITU
s
intranet
Målgruppe
forudsætninger
Kunne
gerne
bestå
af
folk
på
tværs
af
linierne
Projektgruppen
kunne
f
eks
bestå
af
folk
med
forskellig
interesse
for
1
design
2
brugerperspektiver
3
realisering
af
hjemmeside
4
programmering
af
eksempelvis
små
downloads
Nuværende
medlemmer
af
gruppen
NB
Gruppen
har
på
nuværende
tidspunkt
ingen
medlemmer
Formentligt
heller
ikke
undertegnede
da
jeg
er
med
på
en
anden
id
Men
det
kunne
jo
være
der
var
nogle
andre
der
ville
tage
id
en
op
Kontaktperson
Chr
Viktor
Rasmussen
Jeg
læser
på
første
semester
DKM
linien
og
er
sociolog
uden
speciale
fra
Københavns
Universitet
Tlf
35
39
32
82
E
mail
20
viktor
itu
dk
Oplæg
den
14
april
www
museumguide
dk
Beskrivelse
Www
museumsguide
dk
er
en
web
baseret
museumsguide
hvis
formål
er
at
gøre
det
lettere
for
den
alment
kunst
og
kultur
interesserede
at
få
adgang
til
information
om
museer
til
museale
samlinger
web
udstillinger
Ideen
er
at
museumsguiden
ikke
blot
skal
være
en
guide
til
museer
den
skal
ligeledes
inddrage
nogle
af
de
nye
formidlingsmuligheder
der
ligger
i
web
mediet
Projektets
fem
faser
1
Konceptudvikling
ideforslag
design
lay
out
osv
2
Udarbejdelse
af
site
3
Brugertest
tilgængelighed
funktionalitet
etc
4
Markedsføring
økonomi
5
Vedligeholdelse
og
videreudvikling
Udelades
i
4
ugers
projektforløbet
Mulige
eksterne
opdragsgivere
kunne
være
Kulturnet
Danmark
Nationalmuseet
m
fl
Målgruppe
forudsætninger
Projektet
formodes
at
være
relevant
for
studerende
på
linjerne
Design
Kommunikation
og
Medier
Internetteknologi
Multimedieteknologi
Nuværende
medlemmer
af
gruppen
Gruppen
er
åben
for
flere
deltagere
2
stk
og
består
d
d
af
Stig
Sloth
Christensen
21
stigsc
itu
dk
og
Kim
Jacobsen
22
kjacobsen
itu
dk
begge
fra
DKM
linjen
1
semester
Der
kan
tages
kontakt
til
begge
Kontaktperson
Stig
Sloth
Christensen
23
stigsc
itu
dk
og
Kim
Jacobsen
24
kjacobsen
itu
dk
Oplæg
den
14
april
Karrieredagene
dk
Beskrivelse
Studenterorganisationen
Aiesec
har
gennem
de
sidste
15
år
afholdt
en
karrieremesse
hvor
studerende
på
videregående
uddannelser
har
mulighed
for
at
komme
i
kontakt
med
virksomheder
Aiesec
har
siden
sidste
år
haft
et
website
hvor
de
studerende
kan
indhente
information
omkring
messen
www
karrieredagene
dk
men
der
er
endnu
ingen
business
to
business
side
for
virksomheder
og
organisationer
Projektet
går
ud
på
at
lave
en
side
for
de
virksomheder
som
enten
allerede
deltager
i
Karrieredagene
eller
kunne
have
interesse
i
at
gøre
det
fremover
Der
skal
derfor
være
et
oplysende
markedsførende
element
for
nysgerrige
samt
praktiske
funktioner
for
de
virksomheder
der
allerede
er
tilmeldt
arrangementet
Elementer
i
opgaven
design
af
siden
tekst
informationsbearbejdning
udvikling
af
databaser
til
behandling
af
brugernes
specifikke
informationer
Anvendelse
Eftersom
vi
har
kontakt
med
Aiesec
både
før
under
og
efter
forløbet
er
der
mulighed
for
at
resultatet
bliver
brugt
i
deres
fremtidige
arbejde
og
markedsføring
Målgruppe
forudsætninger
Vi
læser
på
DKM
og
kunne
godt
tænke
os
at
arbejde
sammen
med
studerende
fra
andre
linjer
for
at
få
en
større
bredde
i
arbejdet
Eftersom
vi
primært
beskæftiger
os
med
konceptudvikling
design
informationsbehandling
o
lign
ville
det
være
perfekt
hvis
nogen
med
en
mere
teknisk
indfaldsvinkel
har
lyst
til
at
deltage
i
projektet
men
det
er
absolut
intet
krav
Eftersom
vi
allerede
er
to
personer
er
der
plads
til
op
til
yderligere
to
deltagere
Nuværende
medlemmer
af
gruppen
Malin
Lindeblad
25
malin
itu
dk
33216052
og
Heidi
Møller
26
heidimarie
itu
dk
39273087
Kontaktperson
Malin
Lindeblad
27
malin
itu
dk
Oplæg
den
14
april
3
D
Internet
Community
Beskrivelse
Vores
vision
er
at
skabe
et
tredimensionelt
miljø
i
forlængelse
af
distributionen
af
musik
i
digitalt
form
Konkret
er
der
tale
om
et
samtaleforum
i
tredimensionelle
rammer
Med
udgangspunkt
i
3d
modellering
og
VRML
teknologien
ønsker
vi
således
at
skabe
et
fokuseret
tredimensionelt
rum
for
kommunikation
der
er
målrettet
mod
den
kunstneriske
udvikling
af
musik
Rummets
arkitektur
vil
stå
i
musikkens
tegn
Således
skal
rummets
arkitektoniske
fremtræden
baseres
på
metaforer
der
hentes
fra
musikkens
verden
Koncertsalen
festivalpladsen
øvelokalet
osv
kunne
være
konkrete
eksempler
på
genkendelige
lokaliter
Mere
abstrakte
metaforer
for
musik
som
man
eksempelvis
finder
dem
i
Kandinskys
kunst
kunne
ligeledes
med
fordel
etableres
som
tredimensionelle
lokaliteter
Disse
lokaliteter
vil
udgøre
en
inspirerende
og
provokerende
kontekst
for
samtale
om
musik
Rammerne
for
samtalen
vil
tvinge
brugeren
til
at
forholde
sig
til
musik
og
ønskeligt
være
med
til
at
stimulere
en
frugtbar
kunstnerisk
udfoldelse
Projektets
formål
er
altså
konkret
såvel
som
konceptuelt
at
udvikle
et
3
D
Internet
community
med
fokus
på
musik
Den
eksterne
rekvirent
er
Det
Virtuelle
Pladeselskab
aps
Målgruppe
forudsætninger
Projektet
er
rettet
mod
deltagerne
på
DKM
s
3
D
modelleringskursus
Nuværende
medlemmer
af
gruppen
Lars
Rune
Christensen
Simon
Jørgensen
Helene
Madsen
Alle
fra
DKM
linien
Gruppens
er
åben
for
flere
deltagere
Kontaktperson
Lars
Rune
Christensen
28
Lrc
itu
dk
Oplæg
den
14
april
TranzMobil
Beskrivelse
Tranzistor
er
en
udergrunds
netradio
som
har
til
formål
å
promotere
den
københavnske
DJ
og
club
scene
Tranzistor
består
av
10
frivillige
og
ulønnede
medarbeidere
samt
ca
30
40
løst
tilknyttede
DJs
Tranzistor
vil
inn
på
det
håndholdte
markedet
og
planlegger
å
sette
opp
en
WAP
tjeneste
Siden
skal
i
første
omgang
bestå
av
en
kalender
med
oversikt
over
hva
som
skjer
på
klub
og
konsert
stedene
i
københavn
Det
skal
være
mulig
for
utsendte
Tranzistor
medarbeidere
å
oppdatere
siden
via
håndholdte
enheter
og
en
database
slik
at
brukerne
kan
få
en
fortløpende
tilstandsrapport
over
de
ulike
arrangementene
Målgruppen
er
hovedsakelig
unge
mennesker
som
benytter
seg
av
det
københavnske
nattelivet
og
mobiltelefoni
med
andre
ord
early
adaptors
av
begge
kjønn
i
alderen
17
til
30
Oppgaven
består
derfor
i
å
konstruere
en
WAP
side
tilknyttet
en
database
hvor
brukerne
kan
hente
og
legge
inn
information
Det
legges
vekt
på
at
siden
skal
være
hurtig
og
brukervennlig
og
at
det
taes
høyde
for
mediets
begrensniger
Målgruppe
forudsætninger
Opgaven
har
relevanse
i
følgende
fag
WW2
WW1
Målgruppeanalyse
Nuværende
medlemmer
af
gruppen
Gruppen
er
delvis
åpen
og
består
så
langt
av
Henrik
Norberg
29
norberg
itu
dk
Mikkel
Cauchi
30
mc
itu
dk
Kontaktperson
Henrik
Norberg
31
norberg
itu
dk
Oplæg
den
14
april
Grundlæggende
Programmering
som
fjernundervisning
Beskrivelse
Udvikling
af
koncept
for
fjernundervisning
på
IT
C
med
faget
Grundlæggende
Programmering
som
konkret
eksempel
Vi
kommer
til
at
arbejde
med
design
funktionalitet
tekniske
betragtninger
kommunikation
og
pædagogik
inden
for
netbaseret
undervisning
Opgaven
skal
munde
ud
i
et
forslag
som
IT
C
kan
bygge
videre
på
når
de
skal
udvikle
deres
fjernundervisnings
program
Målgruppe
forudsætninger
Vi
søger
en
tredje
partner
med
pædagogisk
og
eller
undervisnings
erfaring
fx
lærer
pædagog
Det
er
ikke
nødvendigt
at
vedkommende
har
fulgt
kurset
Nuværende
medlemmer
af
gruppen
Anders
Skovgaard
Petersen
DKM
David
Simonsen
INT
Kontaktperson
David
32
david
studnet
dk
35370202
149
Anders
33
post
bagmanden
dk
35370202
121
Oplæg
den
14
april
Nej
Online
introduktionslektioner
for
kommende
itu
studerende
Beskrivelse
Der
skal
udvikles
et
koncept
til
online
undervisning
af
kommende
studerende
på
itu
Formålet
er
at
hæve
det
teknisk
faglige
niveau
ved
at
gøre
grundlæggende
færdigheder
tilgængelige
for
alle
studerende
via
online
undervisning
inden
studiestart
Projektet
skal
udvikle
et
koncept
en
struktur
og
en
brugerflade
til
undervisnings
forløbet
i
overensstemmelse
med
feks
pædagoisk
teori
og
teori
og
brugerfladedesign
Konceptet
skal
omfatte
tre
elementer
et
undervisningsforløb
en
database
med
ordforklaringer
og
sider
med
links
og
litteraturhenvisning
til
videre
læsning
Der
skal
produceres
en
prototype
eller
en
dummy
men
der
skal
ikke
udvikles
et
færdigt
produkt
Målgruppe
forudsætninger
De
nye
studerende
og
i
et
vist
omfang
nuværende
studerende
Nuværende
medlemmer
af
gruppen
Lori
Webb
34
webb
itu
dk
Ida
Wang
Carlsen
35
iwc
itu
dk
Karl
Kjær
36
karl
itu
dk
Vi
har
en
god
gruppe
og
er
så
småt
gået
i
gang
Men
vi
er
åbne
hvis
du
er
interesseret
og
for
eksempel
har
en
pædagoisk
baggrund
eller
lignende
Kontaktperson
karl
itu
dk
Oplæg
den
14
april
Ja
gerne
men
primært
med
henblik
på
lidt
feedback
Anvendelse
af
systemudviklingsmetoder
Beskrivelse
Anvendelse
af
en
konkret
systemudviklingsmetode
på
et
mindre
projekt
Det
kunne
fx
dreje
sig
om
anvendelse
af
objekt
orienteret
analyse
og
design
til
beskrivelse
og
specifikation
af
en
mindre
case
fx
administration
af
IT
C
s
bibliotek
Hvis
der
er
interesse
for
det
og
ressourcer
nok
i
gruppen
kan
dele
af
det
eventuelt
også
programmeres
og
testes
Undertegnede
er
meget
åben
for
præcisering
og
drejning
af
disse
løse
ideer
Målgruppe
forudsætninger
Grundlæggende
programmering
og
gerne
lidt
viden
om
systemudvikling
i
gruppen
fx
fra
kurserne
Kravspec
og
forundersøgelser
Systemudvikling
og
IT
støttet
samarbejde
eller
Projektledelse
Nuværende
medlemmer
af
gruppen
Pt
ingen
Kontaktperson
Forslaget
er
stillet
af
Peter
Carstensen
som
tilbyder
at
vejlede
det
Oplæg
den
14
april
Nej
men
eventuelt
interesserede
kan
henvende
sig
til
Peter
Carstensen
lokale
2
24
37
carstensen
itu
dk
Vurdering
af
styrker
og
svagheder
i
forskellige
systemudviklingsmetoder
Beskrivelse
Litteraturbaseret
sammenligning
af
forskellige
tilgange
til
systemudvikling
Undertegnede
har
visse
forslag
til
litteratur
som
eventuelt
kunne
bruges
Undertegnede
er
meget
åben
for
præcisering
og
drejning
af
ideerne
Målgruppe
forudsætninger
Grundlæggende
programmering
og
gerne
lidt
viden
om
systemudvikling
i
gruppen
fx
fra
kurserne
Kravspec
og
forundersøgelser
Systemudvikling
og
IT
støttet
samarbejde
eller
Projektledelse
Nuværende
medlemmer
af
gruppen
Pt
ingen
Kontaktperson
Forslaget
er
stillet
af
Peter
Carstensen
som
tilbyder
at
vejlede
det
Oplæg
den
14
april
Nej
men
eventuelt
interesserede
kan
henvende
sig
til
Peter
Carstensen
lokale
2
24
38
carstensen
itu
dk
IT
baseret
samarbejde
Systemer
til
dokumenthåndtering
og
deling
Beskrivelse
Baseret
på
litteratur
eller
egne
eksperimenter
beskrives
og
diskuteres
hvilke
muligheder
IT
giver
for
at
håndtere
de
store
mængder
dokumenter
vi
ofte
er
konfronteret
med
i
forskellige
samarbejdssammenhænge
Dette
kan
analyseres
med
vægten
lagt
på
temaer
som
brugergrænsefaldedesign
systemernes
brugbarhed
faciliteter
til
at
støtte
samarbejdet
etc
Undertegnede
er
meget
åben
for
præcisering
og
drejning
af
ideerne
Målgruppe
forudsætninger
Ingen
væsentlige
Problemet
kan
formuleres
forskelligt
i
lyset
af
gruppens
forhåndsviden
Nuværende
medlemmer
af
gruppen
Pt
ingen
Kontaktperson
Forslaget
er
stillet
af
Peter
Carstensen
som
tilbyder
at
vejlede
det
Oplæg
den
14
april
Nej
men
eventuelt
interesserede
kan
henvende
sig
til
Peter
Carstensen
lokale
2
24
39
carstensen
itu
dk
Web
Informations
Systemer
Beskrivelse
Web
teknologien
ændrer
på
mange
af
de
måder
vi
udvikler
og
anvender
informationsteknologien
Web
systemer
har
en
anderledes
mere
primitiv
brugerflade
systemerne
er
ikke
så
centralt
kontrollerede
som
tidligere
sammenlignet
med
gammeldags
IT
systemer
systemudviklingen
kan
foregå
stærkt
distribueret
og
anarkistisk
rollerne
omkring
hvem
der
er
udviklere
og
hvem
der
er
brugere
opløses
etc
Grupper
som
vil
beskrive
og
diskutere
nogle
af
disse
aspekter
under
dette
tema
kan
tage
fat
i
de
aspekter
de
selv
finder
interessante
Projektarbejdet
kan
være
baseret
på
konkrete
eksperimenter
undersøgelse
af
specifikke
systemer
eller
litteratur
baserede
studier
Undertegnede
er
meget
åben
for
præcisering
og
drejning
af
ideerne
Målgruppe
forudsætninger
Ingen
specifikke
dog
vil
det
være
en
klar
fordel
at
visse
af
gruppemedlemmerne
har
haft
kurser
indenfor
de
temaer
den
vinkel
de
vælger
Nuværende
medlemmer
af
gruppen
Pt
ingen
Kontaktperson
Forslaget
er
stillet
af
Peter
Carstensen
som
tilbyder
at
vejlede
det
Oplæg
den
14
april
Nej
men
eventuelt
interesserede
kan
henvende
sig
til
Peter
Carstensen
lokale
2
24
40
carstensen
itu
dk
Webcasting
projekt
interaktivt
TV
Beskrivelse
Vores
ide
går
ud
på
at
lave
et
webcasting
program
hvor
temaet
er
at
udforske
mediets
interaktive
muligheder
Konceptet
går
kort
beskrevet
ud
på
at
lave
interaktivt
teater
hvor
mediet
bliver
en
del
af
udtrykket
Vi
har
I
samarbejde
med
mimeren
og
skuespilleren
Kristjan
Ingimarsson
og
andre
fra
performance
gruppen
Neander
udtænkt
en
ide
hvor
publikum
kan
interagere
med
Kristjan
på
scenen
I
form
af
forslag
som
han
vil
respondere
på
Eftersom
ideen
er
at
teaterstykket
skal
være
real
time
på
internettet
har
vi
taget
kontakt
med
Tvropa
om
mulig
samarbejde
Vi
vil
udvikle
et
site
som
er
tænkt
for
at
være
en
platform
for
debat
underholdning
og
alle
mulige
eksperimenter
Udover
at
lave
en
spændende
side
med
logo
præsentation
dokumentation
vil
vi
inkorporere
andre
funktioner
som
games
quiz
og
kommentarer
For
at
få
indtryk
af
Kristjan
og
hans
arbejde
kan
I
kigge
ind
på
Neanders
hjemmeside
41
http
www
neander
dk
index
htm
Målgruppe
forudsætninger
Vi
håber
at
to
tre
samstuderende
med
kundskaber
i
f
eks
database
programmering
målgruppe
og
markedsanalyse
samt
streaming
teknologi
Nuværende
medlemmer
af
gruppen
kontaktpersoner
Torben
Kjærgård
torb
itu
dk
Thor
Magnusson
thorh
post
tele
dk
Oplæg
den
14
april
Grundlæggende
programmering
Søgemaskiner
Beskrivelse
På
hvilke
IT
C
tidligere
ITU
hjemmesider
finder
man
information
om
f
eks
fodbold
eller
oplysing
om
eksamensdatoer
Til
at
svare
på
et
sådan
spørgsmål
ville
det
være
rart
med
en
søgemaskine
til
IT
C
En
sådan
søgemaskine
består
dels
af
teknologi
der
muliggøre
at
flere
bruger
systemet
samtidigt
mange
bruger
f
eks
yahoo
samtidigt
og
teknologi
der
muliggøre
hurtige
søgninger
Disse
teknologier
kan
man
lære
om
i
dybden
på
hhv
internetprogrammerings
og
algoritmekurser
på
IT
C
I
projektet
begrænser
vi
os
til
forudsætninger
fra
grundlæggende
programmering
Hensigten
er
at
projektet
skal
munde
ud
i
et
simpelt
program
som
kan
1
Indlæse
en
fil
med
en
masse
ord
som
abemor
katte
og
husvogn
2
En
simpel
brugergrænseflade
hvorfra
der
kan
spørges
om
et
givet
ord
var
i
filen
For
at
kunne
besvare
et
spørgsmål
hurtigere
end
at
undersøge
samtlige
ord
fra
filen
starter
projekter
med
en
enkelt
forklaring
i
hvorledes
man
kan
kostruere
en
simpel
hurtig
søgerutine
Forslag
til
varianter
af
opgaven
er
velkommen
Hensigten
med
dette
kursus
er
at
de
studerende
skal
opnå
erfaring
med
at
konstruere
et
større
program
ved
at
sammensætte
og
anvende
de
ting
der
er
blevet
undervist
i
på
kurset
grundlæggende
programmering
Denne
erfaring
er
en
stor
støtte
for
en
bred
vifte
af
efterfølgende
kurser
på
IT
C
F
eks
hvis
man
tager
et
kursus
som
omhandler
estimering
af
hvor
lang
tid
det
tager
at
udvikle
større
programmer
eller
et
teknik
kursus
der
bygger
vider
på
grundlæggende
programmering
Dette
projekt
har
som
det
fremgår
en
teknisk
orientering
der
specielt
understøtter
et
kursusforløb
i
vidergående
programmering
som
f
eks
introduktion
til
algoritmik
og
datastruktur
Målgruppe
forudsætninger
Grundlæggende
programmering
Nuværende
medlemmer
af
gruppen
Kontaktperson
42
stephen
itu
dk
43
jcg
itu
dk
eller
44
theis
itu
dk
Oplæg
den
14
april
Algoritmik
Søgemaskiner
Beskrivelse
På
hvilke
IT
C
tidligere
ITU
hjemmesider
finder
man
information
om
f
eks
fodbold
eller
oplysing
om
eksamensdatoer
Til
at
svare
på
et
sådan
spørgsmål
ville
det
være
rart
med
en
søgemaskine
til
IT
C
Projektet
går
ud
på
at
konstruere
et
forslag
til
en
søgemaskine
for
IT
C
En
søgemaskine
består
dels
af
client
server
teknologi
og
søgerutiner
Afhængig
af
interesser
kan
man
ignorer
client
server
delen
og
fokusere
på
at
lave
hurtige
og
funktionelle
søgerutiner
eller
lave
en
banal
søgerutine
med
client
server
teknologi
Projektperioden
vil
starte
med
en
gennemgang
af
de
nødvendige
teknologier
som
f
eks
søgerutiner
Forslag
til
varianter
af
opgaven
eller
andre
algoritmeprojekter
er
velkomne
Målgruppe
forudsætninger
Introduktion
til
algoritmik
og
data
struktur
Alle
med
interesse
for
algoritmik
Da
et
lignende
projekt
udbydes
til
studerende
der
har
fulgt
internetprogrammeringskurset
vil
der
være
mulighed
for
gode
gruppeprojekter
Nuværende
medlemmer
af
gruppen
Kontaktperson
45
stephen
itu
dk
46
jcg
itu
dk
eller
47
theis
itu
dk
Oplæg
den
14
april
Internetprogrammering
søgemaskiner
Beskrivelse
På
hvilke
IT
C
tidligere
ITU
hjemmesider
finder
man
information
om
f
eks
fodbold
eller
oplysing
om
eksamensdatoer
Til
at
svare
på
et
sådan
spørgsmål
ville
det
være
rart
med
en
søgemaskine
til
IT
C
Projektet
går
ud
på
at
konstruere
et
forslag
til
en
søgemaskine
for
IT
C
Løsningen
skal
indeholde
en
client
server
program
Afhængig
af
forudsætninger
og
interesser
stilles
forskellige
forslag
af
lærerne
til
at
implementere
selve
søgerutinen
og
metoden
til
opsamling
af
data
Egne
forslag
er
ligeledes
meget
velkomne
Projektperioden
vil
starte
med
en
gennemgang
af
f
eks
søgerutiner
som
understøtter
forskellig
funktionalitet
for
søgning
Målgruppe
forudsætninger
Internetprogrammering
Deltagere
Alle
med
interesse
for
konstruktion
af
søgemaskiner
Nuværende
medlemmer
af
gruppen
Kontaktperson
Stephen
Alstrup
48
stephen
itu
dk
Jens
Christian
Godskesen
49
jcg
itu
dk
eller
Theis
Rauhe
50
theis
itu
dk
Oplæg
den
14
april
Ja
Webbutik
baseret
på
lagerdatabaser
Beskrivelse
I
kurset
systemer
for
elektronisk
handel
er
gennemgået
hvorledes
man
kan
bruge
JDBC
TM
JAVA
TM
API
til
udførelse
af
SQL
kommandoer
Opgaven
går
ud
på
at
implementere
et
prototypesystem
i
e
lab
DIKU
s
e
handelslaboratorium
for
en
Webbutik
baseret
på
2
eller
flere
lagerdatabaser
databaser
for
nogle
fjernlagre
I
Webbutikken
skal
implementeres
ordrehåndtering
samt
instrukser
til
fjernlagre
om
ekspedition
af
ordrer
der
vedrører
deres
lager
vareudbringning
samt
databaseopdatering
E
lab
systemet
er
forberedt
til
opgaven
På
e
lab
systemet
findes
MySQL
JAVA
og
JDBC
for
MySQL
Målgruppe
forudsætninger
Kendskab
til
databaser
SQL
og
JAVA
Programmeringserfaring
Kurset
Systemer
for
elektronisk
handel
Nuværende
medlemmer
af
gruppen
Kontaktperson
vejleder
Jens
Damgaard
Andersen
51
jda
diku
dk
Oplæg
den
14
april
Analyse
af
sikkerhedsrisici
i
e
handels
projekter
Beskrivelse
Projektet
går
ud
på
at
skrive
en
rapport
der
analyserer
sikkerhedsrisici
i
e
handels
projekter
hvad
kan
gå
galt
I
lærebogen
DSIC
kap
13
Security
er
opregnet
et
antal
sikkerhedsrisici
og
farer
i
forbindelse
med
e
handel
Disse
ønskes
undersøgt
mere
detaljeret
m
h
p
danske
forhold
Målgruppe
forudsætninger
Kurset
Systemer
for
elektronisk
handel
Nuværende
medlemmer
af
gruppen
Kontaktperson
vejleder
Jens
Damgaard
Andersen
52
jda
diku
dk
Oplæg
den
14
april
Firewalls
for
e
handelssystemer
Projektbeskrivelse
I
dette
projekt
skal
konstrueres
et
firewall
system
for
en
Web
forretning
De
forskellige
typer
af
mulige
hacker
angreb
skal
analyseres
og
man
skal
beskrive
hvorledes
man
bedst
afværger
dem
og
hvorledes
man
evt
kan
afsløre
hvem
hackerne
er
Herefter
er
opgaven
at
konstruere
et
sikkert
system
med
en
eller
flere
firewalls
Desuden
skal
beskrives
hvor
de
forskellige
funktioner
i
Web
forretningen
skal
placeres
Målgruppe
forudsætninger
Kurset
Systemer
for
elektronisk
handel
Nuværende
medlemmer
af
gruppen
Kontaktperson
vejleder
Jens
Damgaard
Andersen
53
jda
diku
dk
Oplæg
den
14
april
En
oversigt
over
andre
mulige
skriftlige
projekter
hos
Jens
Damgaard
Andersen
emneområder
samt
eksempler
på
valgte
projekter
i
efterårssemestret
1999
findes
på
Web
adressen
54
http
www
diku
dk
teaching
2
del
kandidatuddannelsen
Kursernes
hjemmesider
Systemer
for
elektronisk
handel
kursus
336
Bryllupssite
Beskrivelse
Det
at
skulle
arrangere
en
stor
fest
som
f
eks
et
bryllup
er
et
kæmpe
arbejde
Blandt
andet
skal
der
en
hel
del
koordination
til
Jeg
tror
at
man
ville
kunne
lave
et
site
der
kunne
understøtte
den
slags
planlægning
og
som
kunne
blive
populært
Målgruppe
forudsætninger
Jeg
vil
gerne
lave
usability
og
brugertests
Det
vil
sige
at
jeg
gerne
vil
blive
bedre
til
at
teste
prototyper
og
ufærdige
tests
Udover
det
er
der
som
minimum
behov
for
design
og
programmering
database
etc
Det
berør
områder
som
it
støttet
samarbejde
CSCW
HCI
usability
tcl
oracle
eller
php
MySQL
eller
hvad
man
nu
kan
finde
på
Design
web
og
sikkert
andre
fagområder
Jeg
er
meget
åben
også
overfor
usability
folk
Jeg
har
bare
gået
og
rodet
med
id
en
Det
kunne
blive
godt
hvis
andre
er
på
Der
er
ingen
der
siger
at
det
skal
begrænses
til
bryllupper
det
ville
bare
give
en
god
afgrænset
målgruppe
Det
ville
også
være
nemmere
at
målrette
reklamer
informationer
mod
dem
end
mod
fest
arrangører
generelt
Nuværende
medlemmer
af
gruppen
Christian
Hagel
Sørensen
hvis
jeg
finder
på
noget
andet
at
lave
er
id
en
til
fri
afbenyttelse
og
jeg
kræver
ingen
form
for
ejerskab
over
den
Kontaktperson
Christian
Hagel
Sørensen
55
hagel
itu
dk
Oplæg
den
14
april
Nej
Ray
tracing
Beskrivelse
Implement
a
simple
ray
tracer
in
Java
Light
is
casted
on
a
scene
from
some
light
sources
The
ray
tracer
follows
the
rays
of
light
and
thereby
construct
an
image
of
the
scene
The
image
may
contain
reflections
etc
This
has
to
programmed
in
Java
Målgruppe
forudsætninger
Grundlæggende
programmering
Nuværende
medlemmer
af
gruppen
Kontaktperson
Mads
Nielsen
56
malte
itu
dk
Oplæg
den
14
april
Jaj
Loud
reader
Beskrivelse
Make
a
Java
program
that
can
scan
an
input
string
and
read
it
loud
by
combining
sound
samples
One
example
is
reading
loud
the
time
of
the
day
a
string
like
16
32
16
The
program
must
then
combine
pre
recorded
sound
samples
into
sixteen
thirtytwo
sixteen
The
sounds
may
be
sampled
by
use
of
matlab
and
exported
into
a
small
database
Målgruppe
forudsætninger
Grundlæggende
programmering
mmsys
eller
signalbehandling
Nuværende
medlemmer
af
gruppen
Kontaktperson
Mads
Nielsen
57
malte
itu
dk
Oplæg
den
14
april
Jaj
Image
processing
Beskrivelse
Construct
a
small
Java
program
that
can
make
simple
operations
on
images
rotate
scale
crop
sub
sample
resize
This
Java
program
may
be
made
interactive
being
the
back
bone
of
a
small
Java
photoshop
Målgruppe
forudsætninger
Forudsætning
Grundlæggende
programmering
matematik
evt
signalbehandling
eller
mmsys
Nuværende
medlemmer
af
gruppen
Kontaktperson
Mads
Nielsen
58
malte
itu
dk
Oplæg
den
14
april
Jaj
Visualisering
af
Parametriske
Flader
Beskrivelse
Projektet
går
ud
på
at
analysere
designe
og
implementere
et
simpelt
grafiksystem
til
visualisering
af
Bezier
flader
Disse
skal
kunne
visualiseres
med
både
Gouraud
og
Phong
shading
skjulte
flader
og
perspektivisk
korrekt
Texture
mapping
Fladerne
kunne
visualiseres
fra
en
vilkårlig
position
i
rummet
Målgruppe
forudsætninger
Studerende
som
har
gennemført
kurset
introduktion
til
grafik
Forudsætningerne
er
gennemførelse
af
dette
kursus
Nuværende
medlemmer
af
gruppen
Kontaktperson
Knud
henriksen
59
kaiip
diku
dk
Oplæg
den
14
april
Nej
det
kan
jeg
desværre
ikke
da
jeg
skal
til
institutmøde
i
samme
tidsrum
System
til
syntese
og
behandling
af
lyd
Beskrivelse
Der
udvikles
et
system
til
syntese
af
vilkaarlige
lyde
samt
generering
af
ekko
og
efterklang
Målgruppe
forudsætninger
Kurset
Introduktion
til
Signalbehandling
Nuværende
medlemmer
af
gruppen
Kontaktperson
John
Aasted
Sorensen
60
jaas
imm
dtu
dk
Oplæg
den
14
april
Ja
System
til
analyse
af
tale
Beskrivelse
Der
udvikles
et
system
til
analyse
af
talesignaler
Ved
analysen
benyttes
Fast
Fourier
Transform
FFT
Talesignalers
egenskaber
undersoeges
og
modificeres
eventuelt
Formanter
og
stemte
ustemte
passager
identificeres
og
benyttes
ved
modifikationen
Målgruppe
forudsætninger
Kurset
Introduktion
til
Signalbehandling
Nuværende
medlemmer
af
gruppen
Kontaktperson
John
Aasted
Sorensen
61
jaas
imm
dtu
dk
Oplæg
den
14
april
Ja
System
til
konstruktion
af
digitale
filtre
Beskrivelse
Der
arbejdes
med
metoder
til
kontruktion
af
filtre
til
f
eks
syntese
af
lyd
Der
lægges
vægt
på
at
arbejde
med
forskellige
filtreringsmetoder
og
undersøge
disses
egenskaber
i
relation
til
anvendelsen
Målgruppe
forudsætninger
Kurset
Introduktion
til
Signalbehandling
Nuværende
medlemmer
af
gruppen
Kontaktperson
John
Aasted
Sorensen
62
jaas
imm
dtu
dk
Oplæg
den
14
april
Ja
Kontrol
af
robotter
i
produktionscelle
Beskrivelse
Målet
med
dette
projekt
er
at
designe
implementere
og
dokumentere
et
større
parallelt
system
inspireret
af
en
virkelige
produktionscelle
der
indpræger
metalplader
på
en
fabrik
i
Karlsruhe
Der
vil
lægges
stor
vægt
på
en
systematisk
design
proces
dvs
hvilke
afgørelser
der
træffes
undervejs
og
hvordan
disse
dokumenteres
Implementationen
af
kontrol
systemet
foretages
ved
hjælp
af
en
CSP
pakke
CSP
er
et
FSP
lignende
processsprog
i
Java
og
afprøves
op
i
mod
en
simulator
af
produktionscellen
udviklet
af
Forschungscentrum
Informatik
FZI
i
Karlsruhe
Projektet
har
tidligere
kørt
med
stor
success
på
DTU
og
er
en
oplagt
chance
for
at
afprøve
teori
og
praksis
fra
Parallelle
Systemer
kurset
på
et
spændende
eksempel
og
derved
binde
de
to
aspekter
tættere
sammen
Mere
information
kan
fås
ved
henvendelse
til
en
af
nedenstående
vejledere
Målgruppe
forudsætninger
Parallelle
systemer
Nuværende
medlemmer
af
gruppen
Kontaktperson
Hans
Rischel
DTU
Hans
Henrik
Løvengreen
Thomas
T
Hildebrandt
Oplæg
den
14
april
Ja
Java
in
your
pocket
project
Beskrivelse
Grundelementet
er
at
udvikle
programmer
til
Java
Cards
og
iButtons
og
programmer
til
en
standard
PC
evt
browser
der
kan
kommunikere
med
et
kort
eller
en
knap
Dette
vil
blive
gennemgået
ved
et
par
indledende
forelæsninger
øvelser
Dernæst
vælger
hver
gruppe
en
applikation
der
hvis
tiden
tillader
det
implementeres
Problemer
omkring
test
verifikation
og
sikkerhed
skal
overvejes
Som
eksempler
på
applikationer
kan
nævnes
Kopi
eller
udskriftskort
PIN
kode
Adressebog
Adgangskontrol
til
internetsider
E
handel
Mere
information
kan
findes
på
denne
side
Målgruppe
forudsætninger
Grundlæggende
programmering
som
udgangspunkt
Internetprogrammering
kræves
hvis
der
vælges
en
internetapplikation
og
Parallelle
systemer
er
en
fordel
Nuværende
medlemmer
af
gruppen
Kontaktperson
Thomas
Hildebrandt
63
hilde
itu
dk
Oplæg
den
14
april
Ja
Vare
søgemaskine
Beskrivelse
Ideen
med
projektet
er
at
det
skal
være
nemt
at
købe
brugt
Jeg
forestiller
mig
en
site
i
stil
med
www
bogpriser
dk
bare
med
opslag
hos
auktioner
brugtmarkeder
og
lignende
i
stedet
Man
skal
således
bare
indtaste
sin
vare
en
bagemaskine
f
eks
og
efter
5
sekunder
plinger
halvtreds
bagemaskiner
op
på
skærmen
med
links
til
det
rette
marked
DBA
Jubii
Forum
mv
Der
skal
nok
kodes
lidt
på
dette
projekt
jeg
kunne
forestille
mig
at
cgi
kunne
bruges
men
er
ikke
sikker
Målgruppe
forudsætninger
Opgaven
bygger
vel
mest
på
faget
internetprogrammering
Lasse
Jeremiassen
er
eneste
nuværende
deltager
kunne
godt
have
brug
for
en
to
kodemagikere
og
en
designer
Nuværende
medlemmer
af
gruppen
Lasse
Jeremiassen
Kontaktperson
Lasse
Jeremiassen
lasse
itu
dk
Oplæg
den
14
april
Ja
Webserver
log
analyzer
Beskrivelse
Der
skal
udvikles
et
program
til
analyse
af
logfiler
fra
diverse
webservers
Logfilerne
skal
parses
på
baggrund
af
en
JavaCC
grammatik
eller
et
regulært
udtryk
De
rensede
data
IP
tid
URL
bytes
code
kommes
i
en
database
Herfra
kan
der
evt
via
views
trækkes
statistik
on
the
fly
efter
diverse
kriterier
Denne
statistik
trækkes
ud
af
databasen
fra
en
Servlet
via
JDBC
hvorefter
den
præsenteres
i
HTML
JSP
Et
separat
modul
kan
bygges
til
serverside
generering
af
jpg
statistik
grafer
Delopgaver
Logfil
analyzer
multitrådet
DB
layout
Servlet
JSP
sider
Serverside
grafik
modul
JAI
Backup
rutiner
Da
praktisk
taget
al
data
kommer
i
DB
en
kan
al
information
om
load
hits
pages
hvorfra
osv
trækkes
ud
Opgaven
kan
moduliseres
kraftigt
så
den
kan
tilpasses
4
uger
Målgruppe
forudsætninger
Databasesystemer
Parallelle
systemer
Java
programmering
Gerne
viden
om
OOD
div
design
patterns
f
eks
Observer
Observable
til
multitrådet
indlæsning
af
flere
logfiler
eller
erfaring
med
JAI
Java
Advanced
Imaging
Nuværende
medlemmer
af
gruppen
Morten
Primdahl
Kontaktperson
Morten
Primdahl
morten
itu
dk
Oplæg
den
14
april
Ja
Sundhedscheck
af
Web
sites
Beskrivelse
Projektet
skal
udvikle
software
der
kan
foretage
et
sundhedscheck
af
et
web
site
En
del
af
opgaven
er
at
gøre
klart
hvad
man
vil
mene
med
et
sundt
web
site
men
nogle
oplagte
krav
børe
være
opfyldt
Der
må
ikke
være
url
er
som
peger
på
ikke
eksisterende
sider
siderne
skal
virke
under
både
Internet
Explorer
og
Netscape
der
bør
ikke
være
sider
som
man
ikke
kan
klikke
sig
frem
til
Projektet
skal
resultere
i
noget
software
som
foretager
en
del
af
checkene
og
i
rapporten
skal
beskrives
hvordan
disse
udføres
og
hvilke
andre
checks
man
kunne
forestille
sig
og
hvordan
disse
kan
udføres
Målgruppe
forudsætninger
Internetprogrammering
Netværk
og
protokoller
Nuværende
medlemmer
af
gruppen
Kontaktperson
Henrik
Reif
Andersen
64
hra
itu
dk
Oplæg
den
14
april
Ja
Indledning
til
8
projektforslag
Forslagene
vedrører
konstruktionsprojekter
Man
skal
beskrive
designe
og
realisere
et
system
der
faktisk
kører
men
hvor
man
formentlig
udelader
en
række
faciliteter
som
ville
være
ønskelige
i
den
virkelige
verden
Projekterne
bør
laves
i
grupper
på
2
4
personer
Af
praktiske
grunde
må
vi
begrænse
antallet
af
grupper
til
ca
5
Projekterne
er
åbne
for
alle
studerende
fra
SWU
Diplom
INT
MMT
TIT
DKM
og
EBUSS
Hver
projektgruppe
kan
med
fordel
involvere
studerende
med
forskellig
baggrund
og
interesser
og
må
gerne
bygge
på
arbejdsdeling
så
forskellige
studerende
står
for
design
og
realisering
af
brugergrænseflade
programmering
af
den
tekniske
funktionalitet
afprøvning
og
kvalitetssikring
osv
Alle
skal
dog
medvirke
til
rapportskrivning
f
eks
udarbejdelse
af
dokumentation
Projektforslagene
angivet
nedenfor
er
ment
som
inspiration
Det
er
meningen
at
I
selv
skal
præcisere
indhold
mål
ambitionsniveau
og
tidsplan
for
projektet
Dette
er
nemlig
indholdet
af
projektaftalen
der
skal
udarbejdes
i
løbet
af
de
to
første
projektdage
Da
de
fleste
projektforslag
nedenfor
involverer
brug
af
Internet
webserver
databaseserver
og
lignende
vil
vi
i
projektperiodens
første
dage
holde
indledende
forelæsninger
om
disse
emner
HTML
og
maskinel
generering
af
websider
webserver
skripts
i
Java
såkaldte
servletter
databaseadgang
fra
Java
programmer
og
appletter
SQL
og
JDBC
udfærdigelse
af
projektrapport
tekstfiler
hvis
nødvendigt
Online
registrering
af
studerendes
kursusønsker
Beskrivelse
Formålet
er
at
lave
online
registrering
af
kursusønsker
for
studerende
på
IT
højskolen
Der
er
en
database
med
kurser
der
udbydes
og
hvilke
kurser
de
forudsætter
Derudover
er
der
en
database
med
studerende
og
de
kurser
de
allerede
har
haft
Opgaven
er
at
lave
online
registrering
af
kursusønsker
ved
hjælp
af
cgi
scripts
servlets
Brugeren
indtaster
sine
ønsker
som
behandles
af
et
eller
flere
Java
programmer
der
kører
på
WEB
serveren
Java
programmerne
opdaterer
databaserne
og
sender
html
sider
tilbage
med
oplysninger
om
de
registrerede
ønsker
Opgaven
gør
brug
af
databaseteori
brugergrænseflader
design
og
programmering
Projektet
kan
evt
indeholde
en
lille
foranalyse
og
eller
kravspecifikation
hvor
studieadministrationen
på
ITU
samt
studerende
kan
interviewes
i
forbindelse
med
funktionalitet
og
brugergrænseflade
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
og
database
Hjælpemidler
Databaseserver
evt
Apache
web
server
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
samt
yderligere
emner
der
vil
blive
præsenteret
ved
indledende
forelæsninger
i
projektperioden
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
65
sestoft
itu
dk
og
Niels
Hallenberg
66
nh
itu
dk
Oplæg
den
14
april
Ja
Salg
af
biografbilletter
1
billetluge
Beskrivelse
Formålet
er
at
lave
et
program
som
kan
benyttes
ved
salg
af
billetter
i
en
lille
biograf
med
n
billetluge
Programmet
skal
kunne
håndtere
flere
sale
og
forestillinger
og
skal
på
en
bekvem
måde
muliggøre
salg
af
en
eller
flere
billetter
på
ønskede
steder
i
salen
Programmet
skal
holde
styr
på
hvilke
pladser
der
er
solgt
til
hvilke
sale
og
forestillinger
Programmet
skal
kunne
gemme
disse
data
på
disk
når
billetsalget
lukker
og
skal
kunne
indlæse
dem
igen
når
billetsalget
åbner
igen
Eventuelt
kan
der
indbygges
søgefaciliteter
så
programmet
selv
vælger
en
fornuftig
placering
hvis
kunden
blot
ønsker
3
billetter
men
ikke
stiller
krav
til
placering
Problemet
kan
i
modsætning
til
nedenstående
løses
med
et
selvstændigt
Java
program
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
67
sestoft
itu
dk
og
Niels
Hallenberg
68
nh
itu
dk
Oplæg
den
14
april
Ja
Salg
af
biografbilletter
flere
billetluger
Beskrivelse
Formålet
er
at
lave
et
billetsalgssystem
der
kan
bruges
i
en
biograf
med
flere
billetluger
Programmet
i
hver
enkelt
billetluge
kan
f
eks
køre
som
en
applet
der
tilgår
en
fælles
database
eller
lignende
fælles
server
via
Internettet
I
denne
udgave
af
projektet
kunne
også
indgå
overvejelser
om
hvilke
yderligere
faciliteter
der
kræves
for
at
biografkunder
kan
købe
deres
billetter
på
WWW
inden
de
går
hjemmefra
Ellers
gælder
mange
af
de
samme
forhold
som
for
projektet
Salg
af
biografbilletter
1
billetluge
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
og
database
Hjælpemidler
Databaseserver
og
evt
Apache
web
server
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
samt
yderligere
emner
der
vil
blive
præsenteret
ved
indledende
forelæsninger
i
projektperioden
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
69
sestoft
itu
dk
og
Niels
Hallenberg
70
nh
itu
dk
Oplæg
den
14
april
Ja
Fælles
beskedsystem
for
en
arbejdsplads
Beskrivelse
Formålet
er
at
lave
et
webbaseret
system
med
hvilket
medarbejderne
på
en
arbejdsplads
kan
orientere
hinanden
om
hvornår
de
er
til
møde
på
forretningsrejse
er
syge
arbejder
hjemme
er
på
ferie
osv
Man
skal
kunne
indtaste
og
læse
beskeder
ved
hjælp
af
en
almindelig
webbrowser
Systemet
skal
kunne
vise
alle
dagens
beskeder
uanset
hvem
de
vedrører
og
skal
kunne
vise
alle
beskeder
om
en
given
medarbejder
uanset
hvilke
dage
de
vedrører
Systemet
kan
enten
baseres
på
HTML
og
webserver
skripts
eller
på
Java
appletter
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
og
database
Hjælpemidler
Databaseserver
og
evt
Apache
web
server
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
samt
yderligere
emner
der
vil
blive
præsenteret
ved
indledende
forelæsninger
i
projektperioden
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
71
sestoft
itu
dk
og
Niels
Hallenberg
72
nh
itu
dk
Oplæg
den
14
april
Ja
Udklipsbureau
Beskrivelse
At
lave
et
webbaseret
udklipsbureau
hvor
man
kan
registrere
artikler
under
diverse
emnekategorier
Det
skal
være
muligt
at
søge
efter
artikler
givet
diverse
søgekriterier
Et
udklipsbureau
gennemlæser
daglig
mange
aviser
og
blade
for
at
finde
omtaler
af
virksomheder
institutioner
lande
personer
og
forskellige
emnekategorier
uddannelsesforhold
udlandshandel
sociale
forhold
finans
økonomi
miljø
For
hver
artikel
i
hver
avis
registreres
avis
sidetal
overskrift
forfatter
hvis
angivet
og
omtrentlig
artikellængde
for
hvert
relevant
emne
Udklipsbureauets
kunder
virksomheder
organisationer
ambassader
bruger
udklipsbureauets
database
til
at
finde
bestemte
slags
artikler
f
eks
om
virksomheden
selv
om
konkurrenter
eller
om
branchen
Det
ville
være
smart
med
en
webgrænseflade
så
kunderne
løbende
kan
se
hvad
der
er
blevet
lagt
ind
Overvej
organisering
af
dataene
central
database
brugergrænsefladen
for
de
ansatte
avislæsere
og
brugergrænsefladen
for
kunderne
Udvidelsesmuligheder
1
Hver
artikel
skannes
og
arkiveres
som
billede
så
den
kan
læse
direkte
fra
nettet
I
så
fald
skal
kundens
tilgang
til
artiklen
registreres
så
der
kan
betales
til
avisen
2
Hvordan
skal
udklipsbureauet
organiseres
hvis
det
henviser
til
websteder
i
stedet
for
papiraviser
Hvad
med
websteder
der
opdateres
hele
tiden
så
det
samme
link
i
morgen
henviser
til
en
helt
anden
artikel
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
og
database
Hjælpemidler
Databaseserver
og
evt
Apache
web
server
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
samt
yderligere
emner
der
vil
blive
præsenteret
ved
indledende
forelæsninger
i
projektperioden
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
73
sestoft
itu
dk
og
Niels
Hallenberg
74
nh
itu
dk
Oplæg
den
14
april
Ja
Spil
og
rangliste
Beskrivelse
Formålet
er
at
implementere
et
simpelt
spil
som
en
applet
Det
er
vigtigt
at
man
kan
blive
målt
på
hvor
god
man
er
til
at
spille
spillet
idet
der
også
skal
implementeres
en
central
rangliste
Der
skal
implementeres
et
eller
flere
simple
spil
hvor
spillernes
duelighed
kan
måles
f
eks
yatzi
memory
minestryger
Spillet
skal
implementeres
som
en
applet
Appletten
skal
vedligeholde
en
rangliste
på
en
central
database
hvor
en
deltagers
resultat
registreres
Det
skal
overvejes
om
alle
resultater
skal
registreres
eller
kun
de
resultater
som
spillerne
ønsker
registreret
Databasen
kan
udvides
til
også
at
håndtere
små
turneringer
hvor
en
gruppe
spillere
kæmper
indbyrdes
om
at
være
den
bedste
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
og
database
Hjælpemidler
Databaseserver
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
samt
yderligere
emner
der
vil
blive
præsenteret
ved
indledende
forelæsninger
i
projektperioden
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
75
sestoft
itu
dk
og
Niels
Hallenberg
76
nh
itu
dk
Oplæg
den
14
april
Ja
Webbaseret
diskusionsforum
Beskrivelse
Formålet
er
at
lave
et
webbaseret
diskusionsforum
hvor
man
kan
oprette
et
nyt
emne
samt
kommentere
på
de
emner
indlæg
der
allerede
findes
Man
kan
opfatte
systemet
som
en
lang
liste
af
emner
der
bliver
diskuteret
Under
hvert
emne
findes
en
række
indlæg
der
vedrører
emnet
Alle
indlæg
registreres
i
en
central
database
Det
skal
overvejes
hvorledes
man
skal
kunne
starte
en
tråd
af
indlæg
og
give
direkte
svar
på
tidligere
indlæg
Det
er
tænkeligt
at
hvert
emne
kan
indeholde
mange
tråde
Systemet
er
tænkt
implementeret
ved
CGI
programmering
med
Java
servlets
Bemærk
at
dette
projektforslag
ligner
projektforslag
nummer
4
men
her
er
indlægene
ordnet
som
tråde
I
projektforslag
4
er
indlæggene
mere
ordnet
efter
medarbejer
og
dato
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
og
database
Hjælpemidler
Databaseserver
og
Apache
web
server
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
samt
yderligere
emner
der
vil
blive
præsenteret
ved
indledende
forelæsninger
i
projektperioden
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
77
sestoft
itu
dk
og
Niels
Hallenberg
78
nh
itu
dk
Oplæg
den
14
april
Ja
Analyse
af
webserverlog
Beskrivelse
Formålet
er
at
analysere
en
webserverlog
og
beregne
statistik
for
hvorledes
ens
webserver
anvendes
En
webserver
registrerer
alle
henvendelser
i
en
log
som
er
en
tekstfil
i
et
nærmere
specificeret
layout
Projektet
går
ud
på
at
læse
loggen
og
finde
interessant
information
i
den
besøgendes
fordeling
på
døgnet
på
ugen
på
websider
på
domæner
osv
Overvej
hvordan
man
finder
antal
besøgende
ikke
bare
sideforespørgsler
træk
søgemaskiner
fra
osv
Lav
grafiske
fremstillinger
Programmet
kan
evt
vedlige
holde
en
central
database
over
den
statistik
som
beregnes
regelmæssigt
Evaluering
Skriftlig
rapport
med
design
konstruktion
og
beskrivelse
af
program
og
database
Hjælpemidler
Apache
web
server
og
evt
databaseserver
Målgruppe
forudsætninger
Benytter
Grundlæggende
Programmering
samt
yderligere
emner
der
vil
blive
præsenteret
ved
indledende
forelæsninger
i
projektperioden
Nuværende
medlemmer
af
gruppen
Kontaktperson
Peter
Sestoft
79
sestoft
itu
dk
og
Niels
Hallenberg
80
nh
itu
dk
Oplæg
den
14
april
Ja
E
handelsløsning
for
smykkebutikken
Creol
Beskrivelse
Projektet
hører
ind
under
e
handelsliniens
W1
kursus
og
går
kort
fortalt
ud
på
at
opsætte
og
implementere
en
internetbutik
for
smykkebutikken
Creol
Målgruppe
forudsætninger
Nuværende
medlemmer
af
gruppen
Camilla
Bartholdy
EH
Anders
Kofoed
EH
Jens
Høystad
EH
Rikke
Bygballe
Møller
DKM
Karsten
Mottlau
EH
Kontaktperson
Rikke
Bygballe
Møller
81
rikke
itu
dk
yderligere
oplysninger
82
www2
itu
dk
mottlau
Oplæg
den
14
april
Nej
Ateli
r
Jarvis
Beskrivelse
Projekt
til
handel
med
billedkunst
på
nettet
Markeder
USA
DK
D
I
Der
samarbejdes
med
en
kvindelige
billedkunstner
aktiv
i
kvindebevægelsen
Målgruppe
forudsætninger
Gruppen
søger
en
DKM
er
til
den
designmæssige
udformning
af
billeder
på
nettet
og
i
markedsføringsmateriale
Nuværende
medlemmer
af
gruppen
Maria
Møller
og
Per
Rasmussen
Kontaktperson
83
karenmaria
itu
dk
eller
84
pbras
itu
dk
Oplæg
den
14
april
Ja
Databasedesign
på
Steno
Diabetes
Center
Beskrivelse
Vores
gruppe
på
Steno
Diabetes
Center
har
gennem
ca
10
år
arbejdet
med
at
identificere
de
arvelige
årsager
til
aldersukkersyge
type
2
diabetes
Vi
er
ca
20
medarbejdere
en
sekretær
laboranter
specialestuderende
ingeniører
biokemikere
biologer
human
biologer
og
læger
der
arbejder
med
denne
forksning
Som
led
i
vores
søgen
efter
diabetes
gener
har
vi
undersøgt
en
masse
personer
1000
både
med
og
uden
diabetes
mange
personer
er
i
familie
med
hinanden
Deltagerne
i
vores
undersøgelser
er
i
visse
tilfælde
blot
undersøgt
med
spørgeskema
højde
og
vægt
samt
enkelte
blodprøver
i
andre
tilfælde
med
spørgeskemaer
ekstensive
undersøgelser
af
kropssammensætning
insulin
sekretion
o
a
For
tiden
er
alle
data
lagt
ind
i
statistikprogammet
SPSS
som
en
stor
flad
fil
cases
nedad
og
variable
ca
300
forskellige
henad
Dette
design
er
uhåndterbart
svært
at
opdatere
og
det
er
vanskeligt
at
være
sikker
på
at
data
ikke
ved
en
fejl
ændres
af
en
bruger
En
optimal
database
ville
være
en
database
med
høj
datasikkerhed
overskkuelig
for
brugeren
nem
at
indtaste
ny
data
i
bør
foregå
ved
dobbeltindtastning
Desuden
bør
det
være
nemt
at
trække
relevante
data
ud
af
databasen
også
afledte
variable
dvs
data
som
er
udregnet
på
baggrund
af
de
rå
data
som
primært
er
lagt
ind
i
databasen
Målgruppe
forudsætninger
Nuværende
medlemmer
af
gruppen
Kontaktperson
Torben
Hansen
læge
tlf
4443
9391
e
mail
85
toha
novo
dk
Funktionelt
software
engineering
projekt
Beskrivelse
Projektet
gaar
ud
paa
at
give
deltagerne
ifm
udvikling
af
et
specifikt
software
system
en
introduktion
til
praktiske
metoder
og
vaerktoej
til
brug
i
softwareudviklingsprojekter
som
udvikles
af
en
gruppe
projektstyring
module
level
design
inkrementel
softwareudvikling
software
configuration
management
testdesign
og
testimplementering
regressionstest
osv
Fokus
er
paa
software
engineering
aspekterne
frem
for
programmeringssprog
Der
er
flere
muligheder
hvilket
system
der
skal
udvikles
f
eks
implementation
af
en
database
af
XML
dokumenter
Det
er
op
til
diskussion
Målgruppe
forudsætninger
Projektet
er
en
overbygning
til
kurset
FP
Funktionelt
design
og
programmering
NB
Metoderne
og
vaerktoej
er
ikke
specifikke
til
funktionel
programmering
Nuværende
medlemmer
af
gruppen
Kontaktperson
Fritz
Henglein
86
mailto
henglein
it
edu
Oplæg
den
14
april
Nej
Databasedesign
for
IT
Cs
studieadministration
Beskrivelse
Målet
er
at
lave
en
datamodel
databasedesign
alternativt
et
objekt
orienteret
design
samt
prototype
implementation
af
IT
Cs
studieadministration
Modellen
skal
inkludere
beskrivelse
af
studerende
kurser
og
projekter
samt
krav
til
uddannelsesforløb
Datamodellet
skal
f
eks
gøre
det
muligt
at
checke
automatisk
om
en
kursusdeltager
har
opfyldt
de
obligatoriske
kursusforudsætninger
for
et
kurus
han
hun
vil
tilmelde
sig
at
checke
automatisk
om
en
interesseret
i
at
blive
optaget
paa
IT
C
har
opfyldt
alle
formelle
forudsætninger
at
sikre
om
en
studerende
har
opfyldt
alle
sammensætningskrav
for
sin
uddannelseslinje
at
kontrollere
at
studerende
skal
op
til
eksamen
i
mere
end
et
fag
om
dagen
Baggrund
IT
C
har
nedsat
en
arbejdsgruppe
work
flow
som
beskæftiger
sig
med
problemstill
Projektet
forudsætter
at
det
kan
koordineres
med
arbejdsgruppen
Målgruppe
forudsætninger
Enten
GP
DBS
DBD
er
anbefalet
eller
GP
OODV
Dette
projekt
kan
gennemføres
baseret
på
en
objekt
orienteret
data
model
eller
et
relationelt
baseret
model
Begge
modeller
kan
udvikles
enten
inden
for
en
og
samme
gruppe
eller
af
flere
grupper
separat
Nuværende
medlemmer
af
gruppen
Kontaktperson
Fritz
Henglein
87
mailto
henglein
it
edu
Oplæg
den
14
april
Nej
Den
tekniske
snabel
a
Beskrivelse
Mål
i
hvilken
grad
offentlige
og
private
websites
i
Danmark
og
andre
steder
overholder
standarder
for
HTML
dokumenter
f
eks
HTML
4
01
og
relater
resultaterne
til
en
raekke
kvalitetskriterier
for
websites
fejlbehæftethed
tilgængelighed
med
forskellige
brugeragenter
browsere
såsom
Lynx
Opera
Navigator
Internet
Explorer
og
tilgængelighed
for
handicappede
Baggrund
De
fleste
websites
overholder
langt
fra
HTML
standarden
Det
er
dels
begrundet
i
at
værktøjene
som
producerer
HTML
koden
ikke
overholder
standarden
browserne
har
leverandørspecifikke
udvidelser
som
understøtter
dynamisk
indhold
f
eks
ActiveX
controls
Målgruppe
forudsætninger
Gruppen
skal
samlet
have
ekspertise
nok
til
at
læse
og
forstå
HTML
standarden
inkl
læse
formelle
grammatikker
implementere
rutiner
som
manipulerer
HTML
kode
evaluere
grafisk
design
og
brugerfunktionalitet
evaluere
kommercielle
konsekvenser
af
brugen
af
proprietaere
udvidelser
i
HTML
Kunne
f
eks
være
en
blanding
af
SWU
INT
DKM
og
EH
studerende
Nuværende
medlemmer
af
gruppen
Kontaktperson
Fritz
Henglein
88
mailto
henglein
it
edu
Oplæg
den
14
april
Nej
C
parser
Beskrivelse
Skriv
en
C
parser
ved
hjælp
af
funktionel
parsing
parser
kombinatorer
som
producerer
et
abstrakt
syntaks
træ
i
XML
format
Baggrund
C
er
det
mest
anvendte
programmeringssprog
i
system
og
applikationsprogrammering
i
øjeblikket
C
programmer
er
ogsaa
notoriske
for
at
være
fejlbehæftede
og
svært
gennemskuelige
Desuden
er
C
kendt
for
at
være
svært
at
parse
med
konventionelle
parsing
vaerktøjer
C
parsere
som
kan
producere
abstrakte
syntakstræer
er
stærkt
efterspurgte
fordi
de
er
centrale
i
at
udvikle
programmer
som
kan
analysere
C
programmer
finde
fejl
og
efterbehandle
dem
XML
er
en
offentlig
W3
standard
for
repræsentation
af
træ
strukturerede
dokumenter
Målgruppe
forudsætninger
Grundlaeggende
programming
GP
funktionelt
design
og
programmering
FP
forudgående
praktisk
kendskab
til
C
og
XML
er
ønskværdige
men
ikke
påkrævede
Nuværende
medlemmer
af
gruppen
Kontaktperson
Fritz
Henglein
89
mailto
henglein
it
edu
Oplæg
den
14
april
Nej
Fremtidens
interaktive
muligheder
Beskrivelse
En
analyse
hvad
fremtiden
kan
være
for
firmaet
MTV
s
interaktive
TV
kanaler
PDA
samt
broadband
systemer
Det
fx
være
en
rapport
med
tilhørende
CD
rom
presentation
De
studerende
får
materiale
videoer
og
grafik
samt
rådgivning
fra
kontaktperson
i
firmaet
Målgruppe
forudsætninger
Interesse
for
fremtidens
medier
interaktive
præsentationer
samt
grafisk
design
Nuværende
medlemmer
af
gruppen
Kontaktperson
Henrik
Werdelin
Firmaet
MTV
90
henrik
tripledash
com
John
Paulin
Hansen
91
paulin
itu
dk
Oplæg
den
14
april
Nej
Virtuel
tøjbutik
Beskrivelse
Dette
er
et
forslag
til
et
muligt
erhvervsrelateret
projekt
på
ITU
for
især
DKM
studerende
Det
er
dog
nødvendigt
med
en
smule
programmeringserfaring
da
projektet
kræver
etablering
af
en
database
og
viden
om
hvordan
websider
kan
interagere
med
denne
f
eks
php3
Derudover
er
der
designmæssige
udfordringer
da
det
grafiske
koncept
skal
viderudvikles
med
kreativitet
Projektet
går
kort
ud
på
at
designe
og
implementere
et
website
til
en
virtuel
tøjbutik
samt
implementere
en
lille
database
med
oplysninger
omkring
kunder
Der
er
lagt
vægt
på
det
kreative
og
grafiske
design
som
skal
udvikles
til
en
allerede
etableret
målgruppe
Projektet
er
afgrænset
og
det
er
ikke
krævet
at
projektgruppen
skal
arbejde
med
det
udover
projektperioden
Med
hensyn
til
det
teoretiske
kunne
det
være
relevant
at
undersøge
hvordan
der
kan
sælges
tøj
og
lignende
over
Internettet
Flere
oplysninger
kan
fås
ved
at
henvendelse
til
92
nilaus
itu
dk
Systemudviklings
og
samarbejdsanalyse
af
udviklingen
af
basisprogrammel
Beskrivelse
Analyse
og
karakterisering
af
samarbejdet
omkring
systemudviklingen
af
en
compiler
For
dermed
at
kunne
sammenfatte
et
øjebliksbillede
af
systemudviklingen
og
sekundært
at
kunne
anskue
udviklingen
som
et
sammenhængende
forløb
Målgruppe
forudsætninger
ITSS
Nuværende
medlemmer
af
gruppen
Annette
Millner
Britt
Gadegaard
Stig
K
Lundbech
Stine
Kalmer
Jørgensen
gruppen
er
lukket
Kontaktperson
e
mail
93
bass
itu
dk
Ønsker
man
at
holde
oplæg
den
14
April
Nej
Digitalt
studiearkiv
Beskrivelse
Hensigten
med
det
digitale
studiearkiv
er
at
skabe
et
udbygget
indeks
over
nulevende
danske
kunstnere
Arkivet
vil
indeholde
materiale
om
enkeltkunstnere
med
værkpræsentation
fra
1960
erne
til
i
dag
De
enkeltstående
kunstnerprofiler
vil
kun
være
introducerende
For
yderligere
information
henvises
til
Center
for
Dansk
Billedkunsts
eksisterende
studiearkiv
Kunstakademiets
bibliotek
ect
Formål
Center
for
Dansk
Billedkunst
har
igennem
de
senere
år
opbygget
et
omfangsrigt
studiearkiv
over
nulevende
danske
kunstnere
Studiearkivet
har
en
uvurderlig
praktisk
værdi
for
folk
i
ind
og
udland
der
søger
materiale
om
danske
kunstnere
med
henblik
på
udstillinger
artikler
og
bogudgivelser
Studiearkivet
besidder
samtidig
en
dokumentarisk
såvel
som
historisk
værdi
idet
der
er
tale
om
dokumentation
af
danske
kunstneres
produktion
gennem
de
senere
år
Arkivet
fungerer
derfor
som
et
dokumentationsarkiv
hvor
udbredelsen
men
også
bevaringen
er
i
fokus
Det
er
dette
studiearkiv
Center
for
Dansk
Billedkunst
ønsker
at
tilpasse
til
en
digitalpræget
virkelighed
hvor
folk
er
mere
og
mere
vant
til
at
søge
information
på
internettet
Det
digitale
studiearkiv
skal
være
et
led
i
centerets
formidling
af
dansk
kunst
Dels
i
forhold
til
et
internationalt
professionelt
publikum
af
kritikere
kuratorer
men
også
som
værktøj
i
etableringen
af
en
umiddelbar
tilgængelighed
til
dansk
nutids
kunst
Gennem
internettet
håber
Center
for
Dansk
Billedkunst
på
at
kunne
udbrede
kendskabet
til
dansk
kunst
til
en
bredere
offentlighed
af
interesserede
og
nysgerrige
der
normalt
ikke
opsøger
centeret
for
at
få
tilgang
til
studiearkivet
Samtidig
åbner
internettet
helt
nye
muligheder
for
at
præsentere
kunst
idet
der
gives
mulighed
for
at
inkorporere
dias
kunstvideo
og
optagelse
i
en
sammenhængende
form
Det
digitale
studiearkiv
opdateres
på
foranledning
af
den
enkelte
kunstner
der
selv
henvender
sig
til
centeret
med
ønske
om
en
opdatering
Det
digitale
studiearkiv
repræsenterer
derfor
ikke
samtlige
nulevende
kunstnere
i
Danmark
men
de
kunstnere
som
supplerer
Center
for
Dansk
Billedkunst
med
materiale
Udarbejdelsen
Pilotprojektet
som
skal
være
færdigt
til
januar
2001
vil
rumme
materiale
på
100
kunstnere
Strukturen
og
opbygningen
af
et
sådan
projekt
skal
ske
forsøgsvis
ved
udarbejdelsen
af
en
test
model
indeholdende
11
udvalgte
kunstnere
De
er
følgende
Pia
Arke
Peter
Bonde
Jes
Brinch
Ursula
Reuter
Christiansen
Jes
Fomsgaard
Bjørn
Nørgaard
Lilibeth
Cuenca
Rasmussen
Superflex
William
Louis
Sørensen
Elsabeth
Toubro
og
Gitte
Villesen
Det
er
meningen
at
Det
Digitale
Studiearkiv
i
sidste
ende
skal
tælle
mere
end
300
kunstnere
Kravene
til
Det
digitale
Studiearkiv
er
Arkivet
skal
bygges
alfabetisk
op
omkring
hver
kunstner
Arkivet
skal
indeholde
materiale
om
enkeltkunstnerne
med
værkpræsentation
fra
1960
erne
til
i
dag
Der
skal
udvikles
en
digitaliseringsmetode
der
formidlingsmæssigt
tager
højde
for
det
enkelte
kunstværks
beskaffenhed
og
krav
Under
hver
kunstnerprofil
skal
der
være
links
til
de
steder
på
nettet
hvor
man
vil
kunne
finde
yderligere
oplysninger
om
den
enkelte
kunstner
Tekstmateriale
på
både
dansk
og
engelsk
Det
tekniske
aspekt
Kulturnet
Danmark
har
givet
tilladelse
til
at
Det
Digitale
Studiearkiv
må
ligge
på
Kulturnet
Danmarks
server
FTP
server
guest
kb
dk
som
understøtter
Linux
og
apache
php3
perl
og
MySql
Databaseserverne
NT
4
0
servicepack
5
Microsofts
informationserver
4
0
MS
SQL
6
5
ASP
cgi
Lyd
videoserver
Linux
Real
Servr
Quicktime
Teknisk
anskuelt
skal
det
digitale
studiearkiv
indeholde
to
databaser
en
tekstdatabase
og
en
billeddatabase
med
lav
opløsning
En
billeddatabase
i
høj
opløsning
skal
ligge
fast
hos
Center
for
Dansk
Billedkunst
og
denne
vil
man
kun
kunne
få
adgang
til
ved
henvendelse
til
centeret
De
to
databaser
skal
sammenkædes
med
en
søgemaskine
et
interface
der
kan
koble
oplysninger
fra
de
to
databaser
Man
skal
kunne
søge
på
kunstnerens
navn
ikke
på
et
værk
da
det
vil
kræve
alt
for
mange
ressourcer
både
teknisk
og
arbejdsmæssigt
Hver
kunstnerprofil
skal
gennemsnitteligt
ikke
fylde
mere
end
max
2
gB
Man
kan
vælge
at
præsentere
et
stykke
videokunst
eller
et
forløb
af
en
optagelse
i
stedet
for
at
opfylde
kravene
om
fem
værk
per
kunstner
så
man
måske
kun
præsentere
2
eller
3
værker
af
den
pågældende
kunstner
Men
kun
i
de
tilfælde
at
optagelsen
vurderes
at
være
essentiel
for
kunstnerens
produktion
Eksempel
på
et
forløb
Billed
a
SØG
KUNSTNER
søgemaskiner
på
både
fornavn
efternavn
kombineret
og
dele
af
navn
Liste
over
repræsenterede
kunstnere
i
alfabetisk
orden
på
scroll
Billed
b
SPECIFIK
kort
data
med
navn
fødselsdato
titel
og
erhverv
kort
biografisk
CV
hvilke
uddannelse
kunstsammenslutninger
kollegaer
ect
LINK
til
CV
LINK
til
artikler
Indeks
over
fem
repræsenterede
værker
hver
med
LINK
til
VÆRKSITE
kort
tekst
med
titel
årstal
og
tilhørssted
Billed
c
VÆRKSITE
værket
i
fuld
længde
størrelse
Kort
introducerende
tekst
vedrørende
tilblivelsen
og
interessante
omstændigheder
Billede
d
CV
Liste
over
henholdsvis
i
nogle
tilfælde
selekteret
gruppeudstillinger
enkeltudstillinger
LINKs
til
relevante
museer
gallerier
websider
ect
Billede
e
Artikler
m
m
Indeks
over
artikler
i
kronologisk
rækkefælge
Kort
introduktion
til
hver
enkelt
Ved
KLIK
kommer
hele
artiklen
frem
på
skærmen
Udover
kunstnerindeks
skal
det
digitale
studiearkiv
indeholde
en
informationsside
en
diskussionsside
en
side
med
relevante
links
til
kunst
på
nettet
og
en
kontaktside
med
email
adresse
telefonnummer
til
Center
for
Dansk
Billedkunst
Alle
siderne
skal
være
med
fast
ramme
og
design
links
med
frem
tilbage
og
en
link
til
CDB
og
Søg
Kunstner
Der
vil
endvidere
blive
lagt
vægt
på
at
en
opdatering
af
scene
vil
kunne
forløbe
enkelt
Center
for
Dansk
Billedkunst
vil
producere
tekstmaterialet
i
samarbejde
med
den
enkelte
kunstner
En
faguddannet
gruppe
vil
varetage
den
tekniske
opbygning
det
digitale
studiearkiv
Kontaktperson
Mette
Mechlenborg
Rasmussen
94
mechlenborg73
hotmail
com
agencylogo
gif
Visionik
Interactive
A
S
Struensegade
9
4
floor
DK
2200
Copenhagen
North
Contact
Your
contact
at
AGENCY
COM
Copenhagen
is
Maz
Spork
1
mspork
agency
com
45
36960021
Feel
free
to
contact
Maz
if
you
have
any
questions
or
suggestions
Background
AGENCY
COM
is
a
professional
services
company
From
a
30
000
foot
perspective
we
create
interactive
services
and
build
interactive
relationship
management
between
content
owners
and
their
customers
and
end
users
AGENCY
COM
has
offices
in
8
countries
worldwide
with
headquarters
in
New
York
and
the
client
portfolio
includes
British
Airways
Coca
Cola
Bank
of
America
Deutsche
Bank
Benetton
and
Colgate
Palmolive
From
a
10
000
foot
perspective
we
work
with
multiple
digital
channels
and
build
our
own
technologies
to
support
interactive
services
across
a
number
of
target
platforms
Some
of
these
platforms
are
the
Worldwide
Web
Wireless
devices
and
Interactive
Television
We
have
an
understanding
of
the
differences
in
these
platforms
not
least
the
design
issues
that
distinguish
them
In
the
Interactive
TV
division
which
is
headed
from
Copenhagen
Denmark
AGENCY
COM
works
with
both
content
owners
network
operators
and
public
service
broadcasters
in
creating
interactive
solutions
with
an
end
to
end
understanding
of
the
entire
process
model
from
content
to
user
We
work
with
second
generation
set
top
boxes
deployed
in
both
cable
satellite
and
terrestrial
digital
networks
These
domains
are
still
in
their
infancy
with
regard
to
standardisation
and
market
coverage
Our
work
is
therefore
partly
to
develop
our
own
knowledge
and
technology
to
facilitate
standardisation
from
above
and
integration
of
legacy
domains
such
as
TV
production
We
are
offering
students
at
ITU
access
to
some
of
our
resources
in
conjunction
with
their
studies
We
are
able
to
advice
groups
on
projects
and
we
can
provide
access
to
the
infrastructure
and
technology
used
in
digital
TV
and
ITV
broadcast
AGENCY
COM
have
an
interest
in
working
with
educational
institutions
because
we
want
to
broaden
our
understanding
of
the
new
interactive
media
We
may
later
be
able
to
offer
students
working
with
their
theses
closer
cooperation
Subject
ideas
for
student
projects
We
acknowledge
the
fact
that
projects
at
ITU
are
either
carried
out
in
conjunction
with
courses
concentrated
in
four
week
full
time
periods
or
as
part
of
individual
thesis
work
Nothing
is
assumed
about
size
in
the
subject
matter
presented
here
rather
it
is
decomposed
to
partly
fit
the
departmental
subjects
at
ITU
However
we
do
encourage
students
to
create
projects
that
cross
the
boundaries
of
these
subjects
Design
communication
and
media
We
are
preoccupied
with
the
differences
between
the
look
feel
and
understanding
of
the
various
target
platforms
of
the
future
What
constitutes
e
g
televisual
navigation
in
contrast
to
the
established
interactive
services
How
do
graphic
design
and
content
presentation
including
levels
of
detail
differ
Who
is
the
target
audience
and
what
is
their
age
in
Denmark
one
third
of
the
population
will
be
above
60
in
a
few
years
is
this
a
factor
To
AGENCY
COM
design
and
communication
are
dependent
on
the
medium
User
interfaces
for
Interactive
Television
The
TV
in
contrast
to
a
PC
has
a
history
of
being
a
passive
platform
in
front
of
which
the
user
is
practically
inactive
in
selecting
information
apart
from
the
odd
zap
As
the
TV
platform
becomes
increasingly
interactive
it
becomes
necessary
to
understand
how
user
interfaces
for
a
passive
platform
is
best
designed
in
order
to
create
interactive
services
for
the
TV
media
that
people
want
to
use
In
a
broad
sense
the
TV
audience
is
much
more
established
and
probably
a
lot
less
forgiving
than
the
WWW
community
and
according
to
some
analyses
the
e
commerce
market
will
be
larger
on
ITV
than
on
the
Worldwide
Web
before
2003
Questions
to
ask
yourselves
1
What
is
the
difference
between
a
pointer
device
based
GUI
on
a
PC
workstation
and
a
televisual
user
interface
What
GUI
metaphor
suits
televisual
user
interfaces
2
How
do
you
navigate
complex
information
with
a
conventional
remote
control
3
What
are
the
differences
in
graphic
design
on
the
TV
compared
to
a
browser
on
a
PC
workstation
4
Which
interactive
services
works
better
on
the
PC
workstation
and
which
work
better
on
the
TV
5
What
connotations
are
attached
to
the
TV
screen
and
how
does
that
reflect
visual
representation
and
navigation
6
User
interfaces
are
increasingly
dependent
on
the
user
being
able
to
control
a
certain
amount
of
state
Will
that
work
on
the
TV
e
g
does
a
back
button
make
sense
Convergence
of
TV
and
the
Internet
A
major
issue
in
the
market
is
how
television
and
the
Internet
mainly
the
Worldwide
Web
will
eventually
come
together
A
major
issue
in
blending
these
media
is
the
means
of
data
transport
which
is
streaming
broadcast
for
television
and
IP
connectivity
for
the
Internet
Some
Web
centric
companies
are
working
towards
TV
on
the
Web
e
g
WebTV
where
viewers
will
be
able
to
watch
TV
essentially
using
appropriate
plug
ins
to
their
browsers
and
appropriate
digital
broadband
subscriber
lines
Some
broadcasters
focus
on
IP
traffic
over
their
cables
and
satellites
directly
to
the
viewers
allowing
browser
like
functionality
on
the
television
screen
Questions
to
ask
yourselves
1
What
will
happen
to
the
Internet
if
content
owners
begin
fencing
it
to
control
what
content
goes
to
the
users
2
Does
it
make
sense
to
browse
generic
web
content
on
the
TV
Are
the
platforms
too
dissimilar
3
Does
TV
demand
a
more
rich
experience
than
the
Worldwide
Web
Multi
media
technology
Two
issues
are
in
focus
First
content
owners
will
soon
face
a
plethora
of
digital
channels
to
support
WWW
WAP
ITV
how
will
they
manage
their
content
for
such
different
target
platforms
Using
XML
and
style
sheets
does
not
solve
the
problem
alone
Second
TV
as
a
medium
will
want
to
produce
TV
programmes
with
interactive
features
What
does
this
mean
to
TV
viewing
and
what
are
the
implications
for
producing
TV
programmes
with
which
the
viewers
can
interact
to
some
degree
Enhanced
TV
Presently
Interactive
TV
is
chiefly
about
moving
content
from
existing
digital
channels
to
the
TV
screen
The
TV
production
companies
are
interested
in
adding
value
to
their
programmes
by
augmenting
them
with
interactivity
This
is
currently
known
as
eTV
or
Enhanced
TV
examples
are
game
shows
in
which
viewers
can
actively
participate
broadcast
news
that
allow
the
viewer
to
skip
select
or
deepen
the
news
stories
and
live
sports
events
allowing
the
viewer
to
personally
produce
the
broadcast
by
selecting
camera
angles
etc
and
will
be
made
possible
using
third
generation
set
top
boxes
But
how
should
such
truly
multi
media
applications
look
and
feel
Questions
to
ask
yourselves
1
Does
interactivity
make
sense
in
live
events
It
is
too
expensive
to
produce
TV
allowing
viewers
a
broad
selection
in
content
depth
2
Can
you
design
a
television
show
that
has
interactive
features
3
Will
the
whole
family
understand
what
is
going
on
4
How
is
traditional
television
personalised
5
Define
pay
TV
pay
per
view
PPV
video
on
demand
VOD
and
near
video
on
demand
NVOD
Content
Management
At
the
end
of
the
day
the
quantity
and
quality
of
content
will
determine
the
usefulness
of
online
connectivity
Before
long
the
end
user
apparatus
will
span
a
plethora
of
target
platforms
for
which
content
has
to
be
treated
in
special
ways
to
be
useful
What
strategies
may
work
for
easy
management
of
information
in
the
form
of
text
graphics
video
snippets
audio
and
broadcast
quality
radio
and
video
Questions
to
ask
yourselves
1
Can
you
categorise
the
various
target
platforms
into
families
that
should
be
treated
as
abstract
platforms
Is
a
family
a
superset
or
some
denominator
of
the
features
of
its
representatives
set
top
boxes
PDAs
mobile
phones
etc
2
How
is
a
homogeneous
workflow
ensured
in
authoring
content
3
How
may
an
interactive
service
be
configured
e
g
as
changes
to
the
site
map
if
it
spans
multiple
target
platforms
4
Will
content
management
limitations
eventually
result
in
limitations
on
new
target
platforms
Set
top
box
technology
Much
competition
is
going
on
in
the
set
top
box
market
Vendors
of
set
top
boxes
e
g
Nokia
Sagem
Phillips
General
Instruments
typically
choose
a
simple
operating
system
e
g
OpenTV
MediaHighway
DVB
MHP
HTML
based
to
allow
third
party
developers
of
applications
easy
transition
to
their
hardware
Effort
is
made
to
standardise
set
top
boxes
in
generations
and
to
standardise
the
capabilities
of
operating
systems
New
players
in
the
field
may
however
emerge
quickly
e
g
vendors
of
cheap
game
console
devices
may
choose
to
integrate
a
tuner
digital
conversion
and
MPEG
decoding
in
their
next
offering
which
may
become
a
de
facto
standard
A
survey
of
set
top
box
technology
is
required
to
understand
this
situation
What
are
the
capabilities
of
the
first
second
and
third
generation
set
top
boxes
What
are
the
strengths
and
weaknesses
of
the
different
set
top
box
operating
systems
Who
uses
them
and
how
difficult
is
it
to
phase
in
new
generations
of
technology
How
easy
is
it
to
develop
applications
for
the
distinct
systems
Internet
technology
The
growth
of
the
Internet
in
both
sheer
user
base
and
data
transport
speed
may
eventually
mean
the
end
of
TV
broadcast
as
we
know
it
today
Rather
than
being
TV
channels
such
as
DR
TV2
TV3
announcing
events
we
will
be
able
to
choose
from
a
multitude
of
events
detached
from
actual
channels
Questions
to
ask
yourselves
1
Will
near
future
digital
subscriber
lines
support
broadcast
quality
video
2
Can
the
Internet
sustain
the
traffic
3
Is
it
possible
that
the
Internet
may
be
fenced
off
by
content
providers
each
claiming
their
own
part
Consider
the
Europeans
landing
in
the
New
World
with
its
vast
open
spaces
Their
first
activity
was
to
fence
off
their
claimed
properties
Will
this
also
happen
to
the
Internet
when
it
becomes
massively
commercialised
4
What
are
the
pros
and
cons
of
using
packet
based
communications
for
high
bandwidth
demanding
point
to
point
connectivity
The
set
top
box
as
a
network
computer
Parts
of
the
industry
e
g
Oracle
Corporation
are
determined
that
the
computing
community
will
revert
to
a
situation
similar
to
that
of
the
mid
70s
i
e
powerful
server
installations
and
thin
clients
The
NC
or
network
computer
has
been
suggested
as
a
replacement
for
the
personal
computer
The
set
top
box
has
undergone
changes
twice
First
from
devices
with
digital
receivers
and
MPEG
decoders
to
devices
with
processing
power
and
simple
return
path
connectivity
and
then
to
devices
with
fast
return
paths
advanced
graphics
keyboards
large
disks
for
spooling
video
etc
May
the
set
top
box
may
become
the
network
computer
of
the
modern
home
replacing
even
the
idea
of
a
home
server
E
commerce
on
the
TV
The
TV
is
already
extensively
used
for
in
yer
face
advertising
including
prolonged
home
shopping
presentations
With
interactive
capabilities
the
TV
may
become
even
more
accepted
as
a
shopping
device
But
which
methods
are
best
and
how
are
the
TV
medium
integrated
into
e
commerce
Advertising
on
Interactive
TV
Digital
advertising
opens
possibilities
for
submitting
only
advertisements
that
are
relevant
to
the
viewer
and
it
creates
new
ways
of
offering
information
in
advertising
Think
of
a
TV
advertisement
for
clothing
offering
a
link
to
an
interactive
version
where
you
can
see
models
with
your
measures
on
a
catwalk
wearing
it
Questions
to
ask
yourselves
1
How
may
relevant
as
used
in
the
above
paragraph
be
defined
2
Dog
food
adverts
shouldn
t
find
their
way
to
viewers
without
dogs
But
how
will
the
advertiser
broadcaster
know
this
What
are
the
legal
issues
3
Who
wants
to
pay
for
an
ad
that
follows
an
interactive
ad
4
Can
more
advertisements
be
sold
in
this
way
Ordering
Placing
an
order
on
a
digital
device
today
involves
a
transaction
with
a
credit
card
company
through
a
dial
in
somewhere
The
Interactive
TV
community
wants
all
transactions
to
go
through
their
domain
in
order
to
control
subscription
and
security
With
a
multitude
of
products
to
order
on
the
set
top
box
what
is
the
business
model
lying
beneath
this
How
are
orders
routed
processed
and
fulfilled
Which
domain
network
operator
broadcaster
content
owner
retailer
bank
should
contain
which
server
functions
Questions
to
ask
yourselves
1
How
is
the
BUY
button
on
the
remote
control
linked
to
the
current
on
screen
content
2
How
will
the
customer
know
if
there
are
problems
with
delivery
3
Will
the
telecommunications
companies
take
over
the
role
of
banks
think
also
of
the
mobile
phone
as
a
replacement
of
the
credit
card
and
simply
issue
the
purchased
goods
each
month
on
the
telephone
bill
4
Security
issues
Do
set
top
boxes
offer
encryption
today
Digital
goods
With
digital
broadband
channels
we
see
possibilities
for
selling
digital
goods
such
as
computer
programs
and
games
videos
and
motion
pictures
music
and
books
directly
from
producer
to
consumer
saving
a
large
number
of
chains
from
distribution
over
export
and
import
to
retail
Questions
to
ask
yourselves
1
Is
anyone
already
doing
this
Are
they
successful
2
What
is
currently
missing
in
the
infrastructure
to
sustain
this
Software
development
Contrary
to
the
dot
com
IT
sector
Interactive
TV
is
very
much
in
its
infancy
First
it
is
not
based
on
standard
off
the
shelf
products
and
second
a
few
big
players
are
moving
slowly
as
dinosaurs
these
are
the
network
operators
For
both
reasons
the
ITV
industry
is
moving
comparatively
slow
compared
to
the
Internet
On
the
other
hand
the
demands
may
be
considerably
higher
when
talking
about
scalability
stability
and
security
Questions
to
ask
yourselves
1
Survey
the
software
technology
used
in
interactive
TV
from
content
to
television
What
are
the
missing
pieces
that
must
be
specially
constructed
Is
history
repeating
itself
2
Can
any
conventional
high
end
server
sustain
20
000
000
eurovision
song
contest
votes
within
60
seconds
What
are
the
demands
for
high
volume
scalability
3
Is
there
any
legacy
software
in
the
industry
and
how
is
the
best
way
to
handle
the
legacy
issue
Tools
A
number
of
tools
are
missing
which
ITV
companies
build
themselves
We
currently
investigate
possibilities
for
runtime
generation
of
MPEG
streams
and
construction
of
tools
to
generate
p
frames
with
special
functionality
What
effects
can
be
achieved
by
e
g
changing
the
quantizer
matrix
for
a
frame
and
replaying
it
etc
1
IT
højskolen
2
Kurser
forår
2001
Introduktion
til
algoritmik
og
datastrukturer
inter
vandret
gif
Deltagerliste
for
kurset
Introduktion
til
algoritmik
og
datastrukturer
forår
2001
Kursets
form
og
indhold
er
beskrevet
i
3
kursusbogen
Kursusansvarlig
lærer
Stephen
Alstrup
stephen
it
c
dk
Mailinglisten
til
kurset
er
4
IADS
stud
it
c
dk
Der
er
i
alt
32
deltagere
på
kurser
Navn
Email
Anders
Kron
5
kron
it
c
dk
Anne
Mette
Mørkbak
6
anne
it
c
dk
Arja
Tiina
Silitamies
7
tiina
it
c
dk
Camilla
B
chler
Seier
Petersen
8
camillas
it
c
dk
Christian
Hube
Elbrandt
9
celbrandt
it
c
dk
Dennis
Jensen
10
jensen
it
c
dk
Dorthe
Clemens
Koch
11
qaz
it
c
dk
Finn
Danvar
12
finndanvar
it
c
dk
Hai
Son
Nguyen
13
hai
it
c
dk
Hanus
Reinert
14
reinert
it
c
dk
Henrik
Langebjerg
Sørensen
15
hls
it
c
dk
Jesper
Thaning
16
thaning
it
c
dk
John
Udo
Ukpo
17
juu
it
c
dk
Jos
Alvaro
Ramirez
Orellana
18
joseo
it
c
dk
Kenneth
Ahn
Jensen
19
kaj
it
c
dk
Mads
Peter
Nymand
20
pete
it
c
dk
Maria
Rita
Kondor
21
kondor
it
c
dk
Marie
Louise
Nielsen
22
mlouise
it
c
dk
Martin
Schiøtz
Jensen
23
msc
it
c
dk
Michael
Berliner
Pedersen
24
mbp
it
c
dk
Mikkel
Hugo
Skovsgaard
Jensen
25
mskovsgaard
it
c
dk
Minh
Duc
Tran
26
mdt
it
c
dk
Nguyen
Trung
Vo
27
ntv
it
c
dk
Olav
Madsen
28
olav
it
c
dk
Siddhartha
Raychaudhuri
29
src2001
it
c
dk
Simon
Faarup
30
simonfaarup
it
c
dk
Simon
Kohrtz
31
kohrtz
it
c
dk
Sten
Graff
Larsen
32
graff
it
c
dk
Susanne
Pehrsson
33
tusser
it
c
dk
Theis
Poulsen
34
theispoulsen
it
c
dk
Thomas
Blomseth
Christiansen
35
blomseth
it
c
dk
Thomas
Rasmussen
36
whomas
it
c
dk
37
USEMAP
inter
icon2top
gif
opdateret
2001
02
22
Autogenerated
1
IT
højskolen
2
Kurser
forår
2001
3D
begynder
inter
vandret
gif
Deltagerliste
for
kurset
3D
begynder
forår
2001
Kursets
form
og
indhold
er
beskrevet
i
3
kursusbogen
Kursusansvarlig
lærer
Lise
Jensen
Mailinglisten
til
kurset
er
4
3DM
stud
it
c
dk
Der
er
i
alt
24
deltagere
på
kurser
Navn
Email
Alan
Engelhardt
5
alan
it
c
dk
Allan
Folke
Larsson
6
afl
it
c
dk
Anne
Sofie
Nielsen
Man
7
fieman
it
c
dk
Annette
Havlit
8
havlit
it
c
dk
Camilla
Hvilsom
9
hvilsom
it
c
dk
Christian
G
ttler
10
guttler
it
c
dk
Christina
Schou
Christensen
11
christina
it
c
dk
David
Carlinfanti
Zahle
12
zahle
it
c
dk
Dennis
Foss
Jacobsen
13
dennis
it
c
dk
Ida
Marie
Nissen
14
idamarie
it
c
dk
Jesper
Linvald
15
linvald
it
c
dk
Kaspar
Munk
16
kasparmunk
it
c
dk
Katja
Jakobsen
17
katja
it
c
dk
Kevin
Cook
McLean
18
kcm
it
c
dk
Kristian
Tørning
19
toerning
it
c
dk
Lene
Nørgaard
20
norgaard
it
c
dk
Morten
Greve
21
grendel
it
c
dk
Nicolai
Garhøj
Larsen
22
hrafn
it
c
dk
Saso
Tomovski
23
saso
it
c
dk
Simon
Kohrtz
24
kohrtz
it
c
dk
Theodor
Sebastian
B
low
25
zeppo
it
c
dk
Tom
Lau
Kristensen
26
tomlau
it
c
dk
Torben
Kjærgaard
27
torb
it
c
dk
Torben
Munksgaard
28
munksgaard
it
c
dk
29
USEMAP
inter
icon2top
gif
opdateret
2001
02
22
Autogenerated
1
IT
højskolen
2
Kurser
forår
2001
Animation
inter
vandret
gif
Deltagerliste
for
kurset
Animation
forår
2001
Kursets
form
og
indhold
er
beskrevet
i
3
kursusbogen
Kursusansvarlig
lærer
Jon
Sporring
Mailinglisten
til
kurset
er
4
AN
stud
it
c
dk
Der
er
i
alt
9
deltagere
på
kurser
Navn
Email
Bent
Larsen
5
bdl
it
c
dk
Bjarke
Jakobsen
6
bj
it
c
dk
Camilla
Helgesen
Pedersen
7
camilla
it
c
dk
Kim
Steen
Petersen
8
ksp
it
c
dk
Mads
Parviz
Nyholm
Larsen
9
mnl
it
c
dk
Marianne
Bilsted
Pedersen
10
mbilsted
it
c
dk
Poul
Martin
Swanholm
Rasmussen
11
swanholm
it
c
dk
Rasmus
Henrik
Espholm
12
rasesp
it
c
dk
Uffe
Damgaard
Pedersen
13
udp
it
c
dk
14
USEMAP
inter
icon2top
gif
opdateret
2001
02
22
Autogenerated
1
IT
højskolen
2
Kurser
forår
2001
Grundlæggende
programmering
inter
vandret
gif
Deltagerliste
for
kurset
Grundlæggende
programmering
forår
2001
Kursets
form
og
indhold
er
beskrevet
i
3
kursusbogen
Kursusansvarlig
lærer
Peter
Sestoft
Mailinglisten
til
kurset
er
4
GP
stud
it
c
dk
Der
er
i
alt
83
deltagere
på
kurser
Navn
Email
Allan
Lundgaard
5
lanky
it
c
dk
Anna
Bizova
6
anbi
it
c
dk
Anne
Merete
Hvid
Larsen
7
mhl
it
c
dk
Asem
Butt
8
asem
it
c
dk
Assi
Herve
Euloge
Yapaud
9
assi
it
c
dk
Christian
Jussi
Arstorp
10
jussi
it
c
dk
Christian
Pedersen
11
cp
it
c
dk
Christina
Haustrup
Hansen
12
haustrup
it
c
dk
Christina
Schou
Christensen
13
christina
it
c
dk
Claus
Bennett
Christiansen
14
cc
it
c
dk
Dan
Aakerhjelm
Sørensen
15
dan
it
c
dk
David
Simonsen
16
david
it
c
dk
Eydun
Rannvaarson
Jensen
17
eydun
it
c
dk
Grete
Ellersgaard
18
ge
it
c
dk
Halina
Tomaszewska
19
halina
it
c
dk
Henning
Høy
Hansen
20
hhhansen
it
c
dk
Henriette
Diana
Rolskov
21
Henry
it
c
dk
Iskinder
Berhane
22
iswoldu
it
c
dk
Ivan
Westh
Christensen
23
ivanwesth
it
c
dk
Jacob
Ingversen
24
ingversen
it
c
dk
Jacques
Holm
Villaume
Johansen
25
jacques
it
c
dk
Jakob
Haaber
26
jh
it
c
dk
Janus
Friis
Bindslev
27
janus
it
c
dk
Jesper
Guhle
Mogensen
28
guhle
it
c
dk
Jesper
Linvald
29
linvald
it
c
dk
Joachim
Halse
30
joachim
it
c
dk
Jon
Ebbe
Larsen
31
jow
it
c
dk
Jonas
Damgaard
Jensen
32
jodam
it
c
dk
Kar
Chun
Chong
33
kcc
it
c
dk
Kasper
Frøhlich
34
kasperf
it
c
dk
Kasper
Kock
35
kock
it
c
dk
Katja
Rudloff
36
karu
it
c
dk
Kim
An
Pham
37
kapham
it
c
dk
Kim
Larsen
38
timo
it
c
dk
Klaus
Jakobsen
39
klausj
it
c
dk
Kristian
Ramskov
Føge
Jensen
40
kristian
it
c
dk
Kristian
Rastrup
41
rastrup
it
c
dk
Kristian
Stengaard
Munkholm
42
krismunk
it
c
dk
Kristian
Tørning
43
toerning
it
c
dk
Lars
Arne
Conrad
Hansen
44
l
it
c
dk
Lars
Gyldenkærne
45
lgy
it
c
dk
Lars
Høyrup
Jensen
46
robinhat
it
c
dk
Laurance
Stanford
Vinson
47
stanford
it
c
dk
Lene
Nørgaard
48
norgaard
it
c
dk
Louise
Kragh
49
lokra
it
c
dk
Luise
Søe
50
luisesoe
it
c
dk
Mads
Thøger
Grønne
51
mtg
it
c
dk
Mads
Jørn
Nørgaard
52
m
jn
it
c
dk
Magnus
Nilsson
53
nilsson
it
c
dk
Mahshad
Rezaali
54
mahshad
it
c
dk
Maibrittt
Brink
Larsen
55
maier
it
c
dk
Marie
Kathrine
Fryland
56
marie
it
c
dk
Michael
Berliner
Pedersen
57
mbp
it
c
dk
Michael
Grusgaard
Andersen
58
grus
it
c
dk
Mikkel
Ramskov
Føge
Jensen
59
mfoege
it
c
dk
Mikkel
Westh
Pedersen
60
mwp
it
c
dk
Muayad
Ahmad
Bakir
61
muayad
it
c
dk
Nada
Yahyah
Alzubeidi
62
nada
it
c
dk
Nasim
Odeh
63
nassim
it
c
dk
Natalia
Nielsen
64
natasha
it
c
dk
Niels
Engelund
65
nielse
it
c
dk
Nikolaj
Aggeboe
66
aggeboe
it
c
dk
Nikolas
Dragsdorff
67
dragsdorff
it
c
dk
Paolo
Lund
Tonolli
68
tonolli
it
c
dk
Paul
Henning
Fabricius
Kjær
69
fabric
it
c
dk
Pernille
Platz
70
platz
it
c
dk
Peter
Krogstrup
71
peterk
it
c
dk
Pia
Lene
Giversen
72
giversen
it
c
dk
Poul
Erik
Stenger
73
stenger
it
c
dk
Sadegh
Eghbal
74
noor
it
c
dk
Saif
Alghanemi
75
saal
it
c
dk
Salman
Iqbal
Khan
76
khan
it
c
dk
Samar
Tamur
Mirza
77
samata
it
c
dk
Sigrid
Jensdottir
Dalsgaard
78
sigrid
it
c
dk
Steinar
Logi
Sigurdsson
79
steinar
it
c
dk
Susanne
Bisgaard
80
bisgaard
it
c
dk
Thomas
Alexander
Hoelgaard
81
thalex
it
c
dk
Thomas
Holst
Petersen
82
holst
it
c
dk
Thomas
Lynge
83
thomaslynge
it
c
dk
Tore
Fornes
84
torefornes
it
c
dk
Ulf
Toke
85
ulftoke
it
c
dk
Ulrik
Rasmussen
86
ur
it
c
dk
Wajiha
Rehman
87
missrehman
it
c
dk
88
USEMAP
inter
icon2top
gif
opdateret
2001
02
22
Autogenerated
IT
højskolen
ønsker
Symbion
velkommen
til
Nordvestkvarteret
af
Mads
Tofte
Forskerparken
1
Symbion
har
åbnet
en
ny
afdeling
på
Vibevej
få
minutters
gang
fra
IT
højskolen
IT
højskolens
opgave
er
at
drive
forskning
og
forskningsbaseret
uddannelse
En
af
grundideerne
i
IT
højskolen
er
at
medvirke
til
innovation
på
IT
området
IT
højskolen
gør
dette
bl
a
ved
at
arbejde
med
områder
som
har
stort
kommercielt
potentiale
såsom
Internet
design
og
software
generelt
Studerende
og
ansatte
der
har
fået
en
id
der
kan
danne
grundlag
for
en
virksomhed
har
imidlertid
ofte
brug
for
hjælp
og
vejledning
Det
er
i
denne
forbindelse
særdeles
glædeligt
at
forskerparken
Symbion
nu
har
placeret
en
afdeling
så
tæt
på
IT
højskolen
Forskerparken
er
en
privat
virksomhed
som
specialiserer
sig
i
at
hjælpe
med
opstart
af
nye
virksomheder
Forskerparken
kan
altså
fungere
som
kuvøse
for
IT
virksomheder
som
udspringer
af
forskningen
og
undervisningen
på
IT
højskolen
til
gavn
for
alle
parter
Bemærk
at
Elisabeth
Gr
ner
direktør
for
Symbion
holdt
en
2
BuzzTalk
om
Symbion
fredag
d
15
oktober
1999
Velkommen
til
Symbion
i
Nordvest
The
News
Service
of
the
IT
University
of
Copenhagen
It
is
possible
to
receive
news
about
the
IT
University
of
Copenhagen
via
email
It
is
also
possible
to
receive
news
about
vacant
positions
If
you
would
like
to
receive
such
information
then
please
register
below
We
use
the
news
service
sparingly
but
you
can
always
1
cancel
your
registration
Finally
you
can
2
check
whether
you
are
currently
registered
Registration
Last
name
First
name
s
Address
line
1
Address
line
2
Address
line
3
Address
line
4
email
News
will
be
sent
to
the
email
address
you
register
in
the
email
field
News
are
sent
individually
and
hence
anonymously
to
each
recepient
Please
tick
the
types
of
news
you
wish
to
receive
1
Master
programmes
in
English
admission
procedure
etc
2
The
Ph
d
programme
notification
of
scholarships
etc
3
Vacant
academic
positions
4
Talks
and
conferences
at
the
ITU
5
General
information
Language
1
I
wish
to
receive
those
messages
that
are
in
English
2
I
wish
to
receive
those
messages
that
are
in
Danish
Messages
that
are
only
relevant
to
people
who
speak
Danish
are
not
distributed
in
an
English
version
Klick
below
in
order
to
register
Confirmation
will
be
emailed
to
you
Register
Cancel
a
registration
Enter
the
email
address
you
wish
to
delete
email
Unsubscribe
Check
subscription
In
case
you
wonder
wheter
you
are
still
registered
you
can
check
your
registration
here
We
sometimes
remove
email
addresses
that
do
not
work
email
Click
to
check
whether
you
are
still
registered
Check
DSC1226
jpg
DSC1226
jpg
DSC1227
jpg
DSC1227
jpg
DSC1231
jpg
DSC1231
jpg
DSC1232
jpg
DSC1232
jpg
DSC1233
jpg
DSC1233
jpg
1
Næste
DSC1236
jpg
DSC1236
jpg
DSC1237
jpg
DSC1237
jpg
DSC1243
jpg
DSC1243
jpg
DSC1244
jpg
DSC1244
jpg
DSC1245
jpg
DSC1245
jpg
1
Næste
DSC1248
jpg
DSC1248
jpg
DSC1249
jpg
DSC1249
jpg
DSC1251
jpg
DSC1251
jpg
DSC1255
jpg
DSC1255
jpg
DSC1256
jpg
DSC1256
jpg
1
Næste
DSC1258
jpg
DSC1258
jpg
DSC1260
jpg
DSC1260
jpg
DSC1261
jpg
DSC1261
jpg
DSC1262
jpg
DSC1262
jpg
DSC1266
jpg
DSC1266
jpg
1
Næste
DSC1267
jpg
DSC1267
jpg
DSC1276
jpg
DSC1276
jpg
DSC1279
jpg
DSC1279
jpg
DSC1281
jpg
DSC1281
jpg
DSC1283
JPG
DSC1283
JPG
1
Næste
DSC1285
JPG
DSC1285
JPG
DSC1288
jpg
DSC1288
jpg
DSC1291
jpg
DSC1291
jpg
DSC1292
jpg
DSC1292
jpg
DSC1295
jpg
DSC1295
jpg
1
Næste
DSC1297
jpg
DSC1297
jpg
DSC1299
jpg
DSC1299
jpg
DSC1300
jpg
DSC1300
jpg
DSC1303
jpg
DSC1303
jpg
DSC1305
jpg
DSC1305
jpg
1
Næste
DSC1307
jpg
DSC1307
jpg
DSC1309
jpg
DSC1309
jpg
DSC1310
jpg
DSC1310
jpg
DSC1316
jpg
DSC1316
jpg
DSC1322
jpg
DSC1322
jpg
1
Næste
DSC1324
jpg
DSC1324
jpg
DSC1325
jpg
DSC1325
jpg
DSC1327
jpg
DSC1327
jpg
DSC1328
jpg
DSC1328
jpg
DSC1333
jpg
DSC1333
jpg
DSC1336
jpg
DSC1336
jpg
1
Næste
DSC1337
jpg
DSC1337
jpg
DSC1338
jpg
DSC1338
jpg
DSC1340
jpg
DSC1340
jpg
DSC1341
jpg
DSC1341
jpg
DSC1344
jpg
DSC1344
jpg
1
Næste
DSC1348
jpg
DSC1348
jpg
DSC1349
jpg
DSC1349
jpg
DSC1350
jpg
DSC1350
jpg
DSC1351
jpg
DSC1351
jpg
DSC1352
jpg
DSC1352
jpg
1
Næste
DSC1353
jpg
DSC1353
jpg
DSC1354
jpg
DSC1354
jpg
DSC1355
jpg
DSC1355
jpg
DSC1356
jpg
DSC1356
jpg
DSC1360
jpg
DSC1360
jpg
1
Næste
DSC1362
jpg
DSC1362
jpg
DSC1363
jpg
DSC1363
jpg
DSC1364
jpg
DSC1364
jpg
DSC1366
jpg
DSC1366
jpg
DSC1367
jpg
DSC1367
jpg
1
Næste
DSC1370
jpg
DSC1370
jpg
DSC1371
jpg
DSC1371
jpg
DSC1373
jpg
DSC1373
jpg
DSC1375
jpg
DSC1375
jpg
DSC1376
jpg
DSC1376
jpg
1
Næste
DSC1377
jpg
DSC1377
jpg
DSC1378
jpg
DSC1378
jpg
DSC1381
jpg
DSC1381
jpg
DSC1383
jpg
DSC1383
jpg
1
Næste
DSC1384
jpg
DSC1384
jpg
DSC1385
jpg
DSC1385
jpg
DSC1387
jpg
DSC1387
jpg
DSC282
jpg
DSC282
jpg
Dsc1273
jpg
Dsc1273
jpg
1
Tilbage
til
første
Brugerkontrol
af
oplysninger
om
studerende
og
kursustilmeldinger
for
IT
højskolen
i
København
Denne
blanket
benyttes
til
at
kontrollere
korrektheden
af
studenterfortegnelsen
og
kursusregistreringer
på
IT
højskolen
i
København
fortsæt
Studenteradministrationssystemet
er
skrevet
af
Mads
Tofte
i
sommeren
2000
1
IT
højskolen
2
Research
Publications
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Publications
Technical
Reports
TR
2000
1
9
Satisfiability
Checking
Using
Boolean
Expression
Diagrams
Authors
Poul
F
Williams
Henrik
R
Andersen
Henrik
Hulgaard
TR
2000
2
10
Greedy
Model
Checking
Authors
Poul
F
Williams
Antoine
Rauzy
TR
2000
3
11
Optimal
Static
Range
Reporting
in
One
Dimension
Authors
Stephen
Alstrup
Gerth
S
Brodal
and
Theis
Rauhe
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
i
København
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
8
Studies
and
degrees
9
Research
10
Media
info
11
About
the
IT
University
12
Links
13
Contact
Us
inter
menu
bund
gif
Welcome
to
the
IT
University
of
Copenhagen
14
Register
to
receive
news
e
g
announcements
of
jobs
and
scholarships
by
email
The
IT
University
of
Copenhagen
IT
C
is
a
teaching
and
research
based
tertiary
institution
concerned
with
information
technology
IT
and
the
opportunities
it
offers
The
University
was
established
in
1999
It
is
funded
to
undertake
both
theoretical
research
and
applied
research
into
the
interaction
and
growing
importance
of
information
technology
to
society
Vacancies
The
IT
University
of
Copenhagen
invites
applications
for
15
13
vacant
Associate
or
Assistant
Professorships
Application
deadline
1
May
2001
16
International
Master
of
Science
in
IT
multimedia
technology
The
IT
University
welcomes
applications
from
international
students
who
wish
to
study
multimedia
technology
PhD
Course
17
Topics
in
Language
Based
Security
by
Assistant
Professor
Greg
Morrisett
Cornell
University
June
11
15
2001
PhD
Course
18
Streaming
video
for
wireless
networks
v
Professor
K
J
Ray
Liu
University
of
Maryland
17
23
May
2001
International
conference
19
Computer
Games
and
Digital
Textualities
More
than
160
participants
from
Denmark
and
abroad
took
part
in
the
first
ever
European
conference
on
computer
games
at
the
IT
University
of
Copenhagen
on
1
2
March
2001
See
the
20
conference
program
21
pictures
and
22
press
coverage
Assoc
Professor
from
IT
University
becomes
chair
of
IEEE
Computer
Society
Associate
Professor
23
Mads
Nielsen
has
been
elected
the
new
chair
of
the
Danish
Section
of
the
24
Institute
of
Electrical
and
Electronics
Engineers
Computer
Society
Denmark
s
largest
Open
Source
initiative
25
LinuxLab
dk
is
situated
at
the
IT
University
of
Copenhagen
Its
mission
is
to
gain
insight
into
and
knowledge
about
open
systems
and
to
supply
this
knowledge
to
the
IT
University
external
collaborators
and
in
the
public
debate
Our
new
domicile
The
architecture
competition
for
the
IT
University
s
domicile
in
the
Oerestad
was
won
by
the
Henning
Larsen
s
Drawing
Room
in
cooperation
with
Carl
Bro
A
S
See
the
26
Winning
Project
and
the
27
pictures
of
the
Prize
Presentation
28
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
29
wwwadm
it
c
dk
1
IT
højskolen
Vacancies
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
8
13
Associate
or
Assistant
Professorships
inter
menu
bund
gif
Staff
Vacancies
Vacancies
at
the
IT
C
Here
is
an
outline
of
all
the
posted
vacancies
at
the
IT
University
of
Copenhagen
IT
C
9
13
Associate
or
Assistant
Professorships
10
Information
about
the
Ph
D
program
Each
listing
includes
the
name
of
the
contact
person
the
job
conditions
and
the
application
deadline
If
you
have
any
questions
regarding
vacancies
at
the
IT
C
you
are
welcome
to
contact
human
resources
manager
Kirsten
Talbro
Laraignou
on
phone
number
45
38
16
88
03
or
email
11
ktl
it
c
dk
Ad
hoc
applications
should
be
sent
to
The
IT
University
of
Copenhagen
Human
Resources
Glentevej
67
DK
2400
Copenhagen
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
Find
employee
staff
and
Ph
D
students
inter
vandret
gif
2
Courses
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
grey
vert
r
gif
inter
grey
bund
gif
Find
staff
and
Ph
D
students
at
the
IT
C
Name
or
part
of
it
Type
of
position
all
staff
Affiliation
IT
C
and
partners
Find
person
s
9
USEMAP
inter
icon2top
gif
opdateret
26
09
2000
10
wwwadm
it
c
dk
1
IT
højskolen
English
inter
vandret
gif
2
Educations
3
Jobs
4
Home
5
Persons
6
SiteMap
7
Intranet
8
Danish
9
Find
employee
staff
and
Ph
D
students
10
tilbage
inter
grey
vert
r
gif
inter
grey
bund
gif
The
IT
University
of
Copenhagen
Welcome
to
the
IT
University
of
Copenhagen
IT
C
11
Contact
Information
12
Research
Projects
13
Ph
D
studies
at
IT
C
14
Master
and
kandidat
courses
in
English
some
text
in
Danish
15
Vacant
positions
16
USEMAP
inter
icon2top
gif
opdateret
26
09
2000
17
wwwadm
it
c
dk
1
IT
højskolen
none
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
inter
menu
bund
gif
Under
construction
Undskyld
Du
har
ramt
en
planlagt
side
som
er
under
udformning
men
desværre
endnu
ikke
færdigredigeret
Sorry
this
page
is
currently
under
construction
8
USEMAP
inter
icon2top
gif
opdateret
11
05
2000
9
wwwadm
it
c
dk
1
IT
højskolen
SiteMap
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
inter
menu
bund
gif
IT
C
site
overview
8
A
wide
range
of
courses
9
International
Master
of
Science
in
IT
multimedia
technology
o
10
About
the
degree
o
11
Language
requirements
12
TOEFL
test
o
13
Academic
requirements
o
14
Other
requirements
o
15
Curriculum
16
The
degree
structure
17
Courses
on
offer
o
18
A
vibrant
student
life
19
Relevant
and
fun
20
From
France
to
Denmark
with
love
o
21
Meet
the
teachers
o
22
Apply
to
study
23
When
to
apply
24
The
application
process
25
Application
form
and
instructions
o
26
Frequently
asked
questions
27
How
much
does
it
cost
to
live
in
Denmark
28
How
do
I
find
accommodation
29
How
much
does
it
cost
to
study
at
the
IT
University
30
Can
I
get
any
financial
assistance
31
Can
I
earn
money
in
Denmark
while
studying
32
Do
I
need
a
residence
visa
33
What
about
health
insurance
34
How
do
I
survive
the
Danish
winter
35
Useful
links
about
Denmark
and
living
in
DK
o
36
About
the
IT
University
of
Copenhagen
o
37
Contact
us
38
Master
of
Science
courses
o
39
Master
of
Science
Design
Communication
and
Media
40
John
Paulin
Hansen
41
Read
more
about
Design
Communication
and
Media
o
42
Master
of
Science
Electronic
Business
43
Kim
Viborg
Andersen
44
Read
more
about
the
degree
in
Electronic
Business
o
45
Master
of
Science
Internet
Technology
46
Thomas
Hildebrandt
47
Read
more
about
Internet
Technology
o
48
Master
of
Science
Software
Development
49
Soren
Lauesen
50
Focus
on
principles
51
Read
more
about
Software
Development
o
52
Master
of
Science
Multimedia
Technology
53
John
Aa
Sørensen
54
Read
more
about
Multimedia
Technology
o
55
Master
of
Science
Interdisciplinary
IT
56
Read
more
about
Interdisciplinary
IT
57
Master
of
Information
Technology
58
Graduate
Diploma
o
59
Peter
Carstensen
60
Single
Subjects
61
European
Union
Course
Credit
Transfers
62
Courses
on
offer
63
International
students
64
Staff
Vacancies
65
13
Associate
or
Assistant
Professorships
66
Contact
information
67
Contact
Information
68
Media
Information
69
Research
70
Visions
Goals
71
Publications
72
External
lecturers
o
73
External
Lecturer
Lise
Jensen
74
Ph
D
Studies
o
75
Lisbeth
Klastrup
o
76
Application
o
77
Studies
o
78
Funding
o
79
Courses
80
Topics
in
Language
Based
Security
81
Advanced
algorithms
F2001
82
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
83
Constructive
Logic
Project
F2001
84
Streaming
video
for
wireless
networks
85
Department
of
Digital
Aesthetics
and
Communication
o
86
The
staff
and
their
research
interests
87
Department
home
88
Anker
Helms
Jørgensen
s
homepage
89
CV
90
Anker
home
91
Research
92
Anker
home
93
Teaching
and
consulting
94
Anker
home
Publications
95
Anker
home
96
Hiring
now
o
97
Department
home
98
The
conference
Computer
Games
Digital
Textualities
o
99
Department
home
100
The
IT
University
of
Copenhagen
at
a
glance
o
101
Department
home
102
Theory
Department
103
Visions
and
Goals
o
104
Department
Home
105
Members
of
the
Theory
Department
o
106
Department
Home
107
Visitors
at
the
Theory
Department
o
108
Department
Home
o
109
Past
Visitors
at
the
Theory
Department
110
Department
Home
111
Research
Projects
o
112
Department
Home
113
Selected
Publications
from
the
Theory
Department
o
114
Department
Home
115
Seminars
o
116
Department
Home
117
Activities
o
118
Department
Home
o
119
Conference
Organization
120
Department
Home
121
Activities
o
122
Conferences
and
Workshops
Located
at
IT
C
123
Department
Home
124
Activities
o
125
Invited
Talks
126
Department
Home
127
Department
Activities
o
128
Editorials
129
Department
Home
130
Activities
o
131
Ph
D
activities
132
Department
Home
133
Department
Activities
134
Joint
Ph
D
activities
135
Department
Home
136
Department
Activities
137
Ph
D
Activities
138
Ph
D
Courses
139
Department
Home
140
Department
Activities
141
Ph
D
Activities
o
142
Summer
School
143
Department
Home
144
Activities
145
Teaching
o
146
Department
Home
o
147
Courses
fall
2000
mainly
in
Danish
148
Department
Home
149
Teaching
o
150
Courses
Spring
2001
151
Department
Home
152
Teaching
o
153
Previous
Courses
154
Department
Home
155
Teaching
o
156
Master
of
Science
Theses
157
Department
Home
158
Teaching
159
Department
of
Innovation
160
People
o
161
Home
162
Visitors
o
163
Autumn
2000
164
Visitors
o
165
Spring
2001
166
Visitors
o
167
Home
168
Seminars
o
169
SPACE
2001
170
Seminars
o
171
Home
172
Projects
o
173
Home
174
Publications
o
175
Home
176
Teaching
o
177
Courses
autumn
2000
178
Teaching
o
179
Courses
spring
2001
180
Teaching
o
181
Home
182
Dept
of
Design
and
Use
of
Information
Technology
DUIT
183
Visions
and
goals
for
the
Department
of
Design
and
Use
of
Information
Technology
184
Members
of
the
Department
of
Design
and
Use
of
Information
Technology
o
185
Department
Home
186
Research
Projects
o
187
Department
Home
188
Visitors
to
the
Department
of
Design
and
Use
of
Information
Technology
o
189
Past
visitors
to
the
department
of
DUIT
190
Visitors
191
Department
Home
o
192
Department
Home
193
Publications
by
the
members
of
DUIT
o
194
Department
Home
195
Teaching
by
the
members
of
DUIT
o
196
Courses
in
spring
2001
197
Teaching
198
Department
Home
o
199
Previous
courses
taught
by
the
members
of
DUIT
200
Courses
in
fall
2000
201
Teaching
202
Department
Home
203
Courses
in
spring
2000
204
Teaching
205
Department
Home
o
206
Master
of
Science
theses
supervised
by
the
members
of
DUIT
207
Teaching
208
Department
Home
o
209
Student
s
projects
at
IT
C
210
Teaching
211
Department
Home
o
212
Department
Home
213
Lars
Birkedal
214
About
the
IT
University
of
Copenhagen
215
Vision
216
Contact
Details
217
Courses
o
218
The
winning
project
the
IT
C
s
new
domicile
in
the
Ørestad
o
219
The
Judges
Report
220
Facts
Figures
221
How
to
get
to
the
IT
University
of
Copenhagen
222
The
rules
for
IT
C
223
Links
224
International
students
225
The
IT
University
s
News
Service
226
News
Service
in
Danish
227
Find
medarbejder
e
228
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
229
wwwadm
it
c
dk
1
IT
højskolen
Studies
and
degrees
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
8
International
Master
of
Science
in
IT
multimedia
technology
9
Master
of
Science
IT
10
Master
of
IT
11
Graduate
Diploma
12
Single
Subjects
13
EU
course
credit
transfer
14
Courses
on
offer
15
International
students
inter
menu
bund
gif
A
wide
range
of
courses
The
IT
University
of
Copenhagen
IT
C
offers
a
range
of
courses
in
Information
Technology
IT
Master
of
Science
Information
Technology
The
Master
of
Science
in
Information
Technology
degree
is
a
two
year
full
time
course
which
includes
a
research
component
Students
can
enrol
in
one
of
the
following
areas
Design
Communication
and
Media
Electronic
Business
Internet
Technology
Multimedia
Technology
Software
Development
Interdisciplinary
IT
Only
students
who
have
completed
a
Bachelor
degree
can
be
considered
for
enrolment
in
the
Master
of
Science
Information
Technology
course
In
principle
any
Bachelor
degree
is
a
prerequisite
for
the
Master
course
Master
of
Information
Technology
Also
on
offer
are
a
number
of
three
year
part
time
Master
of
Information
Technology
degrees
These
courses
are
designed
for
students
who
participate
in
the
workforce
These
degrees
do
not
include
a
research
component
Students
specialise
in
one
of
the
following
four
areas
Design
Communication
and
Media
Internet
Technology
Multimedia
Technology
Software
Development
Course
prerequisites
include
any
Bachelor
degree
and
two
years
of
work
experience
Graduate
Diploma
It
is
also
possible
to
study
a
Graduate
Diploma
course
This
course
is
a
two
year
part
time
program
aimed
at
students
who
participate
in
the
workforce
Individual
subjects
The
IT
University
also
offers
individual
subjects
if
places
are
available
in
the
particular
course
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
International
Master
of
Science
in
IT
multimedia
technology
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
About
the
degree
10
Language
requirements
11
Academic
requirements
12
Other
requirements
13
Curriculum
14
Student
life
15
Meet
the
teachers
16
Apply
to
study
17
FAQ
18
About
the
University
19
Contact
us
inter
menu
bund
gif
International
Master
of
Science
in
IT
multimedia
technology
Welcome
The
IT
University
of
Copenhagen
IT
C
welcomes
applications
from
international
students
who
wish
to
enrol
in
the
International
Master
of
Science
in
Information
Technology
multimedia
technology
degree
The
aim
of
the
degree
is
to
graduate
highly
qualified
IT
professionals
to
work
in
the
broad
field
of
multimedia
Graduates
will
gain
the
necessary
technical
skills
for
using
and
creating
cutting
edge
technology
and
learn
to
push
the
limits
of
existing
multimedia
applications
The
degree
has
a
scientific
emphasis
and
focuses
on
sense
stimuli
such
as
pattern
recognition
image
analysis
speech
technology
computer
graphics
signal
processing
and
interactive
3D
graphics
Entry
into
the
degree
is
highly
competitive
Students
must
meet
both
academic
and
English
language
requirements
of
the
course
15
international
students
are
accepted
each
semester
for
the
Multimedia
Technology
degree
The
courses
are
taught
in
English
and
the
international
students
will
study
together
with
Danish
students
International
students
are
not
charged
tuition
fees
to
study
for
the
degree
The
Danish
Government
has
decided
to
offer
this
degree
free
of
charge
in
order
to
attract
qualified
IT
students
from
abroad
to
study
in
Denmark
It
is
projected
that
Denmark
needs
to
graduate
around
40
000
more
computer
scientists
in
the
next
three
years
Here
you
can
read
more
about
the
Danish
Government
s
IT
strategy
20
Digital
Denmark
21
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
About
the
degree
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
About
the
degree
The
degree
is
offered
on
a
full
time
basis
over
two
years
Graduates
are
awarded
the
title
Master
of
Science
in
Information
Technology
multimedia
technology
The
graduates
gain
a
thorough
knowledge
of
basic
technologies
and
systems
and
will
be
able
to
develop
and
maintain
such
systems
Multimedia
graduates
are
able
to
work
with
film
TV
medical
systems
transmissions
of
image
and
sound
industrial
automatisation
and
geographical
information
systems
Graduates
may
also
choose
to
start
a
research
career
by
enrolling
in
a
Ph
D
study
program
at
the
IT
University
of
Copenhagen
or
elsewhere
The
IT
University
of
Copenhagen
is
committed
to
building
on
the
students
variety
of
educational
backgrounds
so
their
diversity
becomes
an
asset
to
the
community
Theory
is
supported
by
hands
on
practical
exercises
in
order
to
give
the
students
a
clear
picture
of
what
they
can
create
with
their
knowledges
Students
will
be
able
to
take
advantage
of
the
IT
C
s
new
multimedia
laboratory
for
their
assignments
The
academic
year
at
the
IT
C
comprises
two
semesters
The
autumn
semester
starts
approximately
1
September
and
The
spring
semester
starts
approximately
1
February
Students
can
enrol
to
start
their
studies
at
the
beginning
of
either
semester
The
Multimedia
Technology
degree
is
offered
in
collaboration
with
the
10
Technical
University
of
Denmark
Copenhagen
and
the
11
Department
of
Computer
Science
University
of
Copenhagen
Most
of
the
courses
take
place
at
the
IT
University
of
Copenhagen
Here
you
can
find
more
detailed
information
about
the
12
curriculum
of
the
Master
of
Science
in
Information
Technology
multimedia
technology
degree
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Curriculum
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Degree
structure
11
Courses
on
offer
inter
menu
bund
gif
Curriculum
The
Master
of
Science
in
Information
Technology
multimedia
technology
is
a
scientific
degree
which
provides
the
graduate
with
the
necessary
technical
skills
for
constructing
and
programming
multimedia
systems
and
applications
The
degree
combines
cutting
edge
technologies
with
established
IT
solutions
The
degree
is
research
based
and
can
lead
to
Ph
D
studies
at
the
IT
University
of
Copenhagen
or
elsewhere
The
essential
data
in
a
multi
media
system
are
sensing
stimuli
images
sounds
and
haptics
The
objective
of
the
degree
is
to
graduate
IT
professionals
who
can
analyse
and
synthesise
such
stimuli
in
a
computer
system
The
core
of
the
curriculum
is
basic
technologies
such
as
computer
graphics
image
analysis
signal
processing
and
computer
systems
On
top
of
these
skills
students
will
specialise
in
an
application
area
or
in
a
basic
technology
area
Graduates
will
be
able
to
use
state
of
the
art
technology
as
well
as
create
their
own
technologies
Graduates
are
awarded
the
title
of
Master
of
Science
in
Information
Technology
multimedia
technology
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Curriculum
Degree
structure
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
The
degree
structure
The
degree
is
a
two
year
full
time
course
consisting
of
four
semesters
Each
of
the
first
three
semesters
contains
three
3
courses
and
one
1
project
activity
The
final
semester
is
dedicated
to
the
master
thesis
The
IT
University
uses
the
European
Community
Course
Credit
Transfer
System
ECTS
to
directly
relate
the
courses
on
offer
to
those
at
international
universities
Each
course
or
project
activity
is
worth
7
5
ECTS
points
The
table
below
shows
the
point
structure
of
the
degree
Semester
1
Course
1
7
5
ECTS
points
Course
1
7
5
ECTS
points
Course
1
7
5
ECTS
points
Project
7
5
ECTS
points
Exam
Semester
2
Course
1
7
5
ECTS
points
Course
1
7
5
ECTS
points
Course
1
7
5
ECTS
points
Project
7
5
ECTS
points
Exam
Semester
3
Course
1
7
5
ECTS
points
Course
1
7
5
ECTS
points
Course
1
7
5
ECTS
points
Project
7
5
ECTS
points
Exam
Semester
4
Master
thesis
30
ECTS
points
Defence
of
thesis
To
successfully
complete
the
degree
students
must
complete
at
least
three
3
activities
worth
7
5
ECTS
points
in
the
area
of
multimedia
systems
and
applications
at
least
two
2
activities
worth
7
5
ECTS
points
in
the
area
basic
technologies
at
least
one
1
activity
worth
7
5
ECTS
points
in
the
area
of
thesis
preparation
The
IT
University
has
developed
the
curriculum
in
collaboration
with
the
11
Technical
University
of
Denmark
Copenhagen
and
the
12
Department
of
Computer
Science
University
of
Copenhagen
Students
can
study
elected
courses
at
these
collaborating
institutions
free
of
charge
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Curriculum
Courses
on
offer
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Courses
on
offer
Courses
in
the
area
of
multimedia
systems
and
applications
Multimedia
systems
Speech
and
IT
systems
Musical
signal
processing
Virtual
Reality
Courses
in
basic
technologies
Computer
graphics
Signal
processing
Image
analysis
Computer
vision
Information
theory
The
curriculum
is
still
under
development
and
the
number
of
courses
at
the
IT
University
is
expected
to
increase
in
the
future
In
addition
to
the
courses
listed
above
students
can
enrol
in
11
other
courses
at
the
IT
University
of
Copenhagen
at
the
12
Department
of
Computer
Science
University
of
Copenhagen
and
at
the
13
Technical
University
of
Denmark
Copenhagen
subject
to
spaces
being
available
Please
note
that
some
of
the
courses
on
offer
at
collaborating
institutions
may
be
taught
in
Danish
only
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Language
requirements
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
TOEFL
test
inter
menu
bund
gif
Language
requirements
All
courses
are
taught
in
English
International
students
must
provide
sufficient
evidence
of
their
proficiency
in
English
to
be
considered
for
the
degree
This
does
not
apply
to
nationals
from
the
Nordic
countries
and
students
who
have
completed
their
bachelor
degrees
in
English
The
IT
Univerisity
of
Copenhagen
accepts
only
the
Test
of
English
as
a
Foreign
Language
TOEFL
as
evidence
of
English
proficiency
Applicants
must
have
achieved
a
minumum
TOEFL
score
of
230
Computer
Based
TOEFL
Test
or
573
Paper
Based
TOEFL
Test
for
admission
to
the
multimedia
technology
degree
The
TOEFL
university
code
for
the
IT
University
of
Copenhagen
is
9015
Please
make
sure
to
enter
this
code
on
your
TOEFL
answer
sheets
when
sitting
the
examination
You
should
also
include
the
code
on
the
Score
Report
Request
Forms
for
tests
previously
taken
The
IT
University
will
not
process
your
application
until
we
have
received
your
official
TOEFL
test
score
The
TOEFL
office
will
send
your
score
directly
to
the
IT
University
To
register
for
the
TOEFL
test
contact
your
regional
11
TOEFL
test
centre
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Language
requirements
TOEFL
test
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Academic
requirements
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Academic
requirements
Only
students
who
have
completed
a
Bachelor
degree
in
the
areas
of
science
or
engineering
are
considered
for
the
Master
of
Science
in
Information
Technology
multimedia
technology
course
Students
can
apply
for
the
course
prior
to
completion
of
the
undergraduate
degree
However
enrolment
is
conditional
on
the
successful
completion
of
the
undergraduate
degree
at
least
three
3
months
prior
to
the
semester
start
at
the
IT
University
of
Copenhagen
For
example
You
must
have
completed
your
Bachelor
degree
by
1
June
to
enrol
in
the
autumn
semester
starting
on
1
September
You
must
have
completed
your
Bachelor
degree
by
1
November
to
enrol
in
the
autumn
semester
starting
on
1
February
The
following
criteria
are
used
to
assess
applications
Degree
transcript
including
grades
Letter
of
motivation
eg
no
more
than
one
A
4
sheet
outlining
the
motivation
for
applying
including
a
detailed
description
of
your
education
Documented
skills
in
computer
science
mathematics
and
physics
The
application
must
include
a
brief
description
of
previous
or
prior
courses
undertaken
and
an
official
transcript
of
grades
In
addition
to
the
above
academic
requirements
the
applicant
must
also
meet
the
specified
10
language
requirements
of
this
course
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Other
requirements
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Other
requirements
Financial
requirements
International
students
are
not
charged
tuition
fees
to
study
at
the
IT
University
of
Copenhagen
However
students
will
have
to
cover
living
expenses
eg
accommodation
meals
transport
books
and
materials
during
their
stay
in
Denmark
The
immigration
office
through
the
Danish
embassy
will
ask
students
from
outside
the
Nordic
countries
and
EU
countries
to
demonstrate
funds
corresponding
to
DKK
50
000
US
6
500
before
issuing
a
one
year
residence
permit
You
must
be
able
to
document
that
1
you
have
the
full
legal
rights
of
disposal
of
the
amount
and
that
2
these
funds
are
available
to
you
in
Denmark
Please
note
that
the
Danish
currency
is
linked
to
the
Euro
and
may
display
variations
to
the
US
Visa
requirements
Students
from
the
Nordic
countries
need
no
visa
or
residence
permit
A
visa
is
required
for
students
from
many
countries
Please
contact
your
local
Danish
Embassy
or
Consulate
to
see
if
you
require
a
visa
EU
citiziens
do
not
need
a
permit
for
the
first
three
months
of
their
stay
After
three
months
EU
citiziens
are
required
to
apply
for
a
residence
permit
This
is
usually
only
a
formality
Students
from
non
Nordic
countries
must
apply
for
a
residence
permit
prior
to
arrival
Application
for
a
residence
permit
must
be
submitted
to
the
Danish
Embassy
or
Consulate
in
the
student
s
home
country
at
least
two
months
before
arrival
To
speed
up
the
process
the
IT
University
will
forward
successful
applicants
a
purple
supplement
form
posted
with
the
letter
of
acceptance
which
states
that
you
have
been
invited
to
study
here
by
a
Danish
tertiary
institution
Applicants
must
submit
this
form
together
with
the
residence
permit
application
to
the
local
Embassy
or
Consulate
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Student
life
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Relevant
and
fun
11
From
France
to
Denmark
inter
menu
bund
gif
A
vibrant
student
life
The
students
at
the
IT
University
often
work
in
groups
it
is
common
practice
for
students
to
form
their
own
study
groups
The
IT
University
has
a
vibrant
social
life
Each
Friday
afternoon
students
are
invited
to
socialise
in
the
Scroll
Bar
Most
Fridays
the
IT
University
organises
an
open
lecture
called
BuzzTalk
A
key
note
speaker
will
address
a
current
IT
topic
The
speakers
are
either
leading
IT
researchers
or
IT
practitioners
from
a
business
community
or
government
organisation
The
IT
C
also
hosts
an
arts
group
a
soccer
team
and
a
12
Linux
laboratory
Links
to
pictures
13
working
together
and
14
studying
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Student
life
Relevant
and
fun
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Relevant
and
fun
Student
Stine
Grith
Relevant
exciting
and
fun
That
s
how
Multimedia
Technology
student
Stine
Grith
describes
her
time
at
the
IT
University
of
Copenhagen
The
degree
is
very
relevant
to
the
needs
of
the
IT
sector
The
curriculum
seems
to
reflect
the
requirements
of
private
enterprises
so
I
am
certain
of
getting
a
job
afterwards
Stine
said
Stine
Grith
enrolled
in
the
Master
of
Science
in
Information
Technology
multimedia
technology
degree
recently
because
it
sounded
like
an
exciting
course
Before
that
she
studied
electronic
engineering
at
the
Danish
Technical
University
Stine
enjoys
the
practical
emphasis
of
the
courses
We
are
often
taught
the
heavier
theoretical
elements
in
the
morning
During
the
afternoon
we
put
theory
into
practice
with
hands
on
exercises
Stine
said
At
the
end
of
each
semester
students
are
required
to
combine
theory
and
practice
when
they
complete
a
practical
project
for
a
real
client
as
part
of
a
group
exercise
Diverse
backgrounds
According
to
Stine
one
of
the
greatest
assets
of
the
Multimedia
Technology
degree
is
the
diverse
academic
backgrounds
of
the
students
In
my
classes
there
are
students
with
backgrounds
in
biology
micro
biology
philosophy
geology
mathematics
and
library
studies
We
supplement
each
other
well
and
learn
a
lot
from
each
other
The
teachers
are
very
approachable
and
are
good
at
listening
to
the
individual
needs
of
each
student
Stine
also
likes
the
social
life
at
the
IT
University
Every
Friday
we
are
invited
to
an
open
lecture
called
BuzzTalk
to
hear
a
keynote
speaker
from
the
IT
sector
In
general
people
are
helpful
and
relaxed
which
creates
a
positive
atmosphere
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Student
life
From
France
to
Denmark
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
From
France
to
Denmark
with
love
Student
Francois
Lauze
Frenchman
Francois
Bernard
Lauze
experienced
a
fair
bit
of
the
world
before
enrolling
as
a
multimedia
technology
student
at
the
IT
University
He
completed
his
Ph
D
degree
in
mathematics
at
the
Universit
de
Nice
Sophia
Antipolis
in
France
seven
years
ago
Then
he
and
his
Danish
wife
decided
to
move
to
the
small
West
African
country
of
Burkina
Faso
Francois
got
a
job
at
the
local
hospital
teaching
children
who
were
long
term
patients
as
well
as
a
small
teaching
job
at
the
local
university
Unfortunately
it
wasn
t
really
possible
for
me
to
continue
my
research
in
Burkina
Faso
and
after
more
than
three
years
in
West
Africa
it
was
too
difficult
to
re
enter
the
research
systems
in
Europe
Instead
Francois
and
his
wife
moved
to
Denmark
to
start
a
new
life
Francois
got
a
teaching
job
at
a
local
high
school
but
needed
more
challenges
in
his
professional
life
When
the
IT
University
of
Copenhagen
opened
its
doors
in
August
1999
Francois
was
one
of
the
first
students
to
enrol
in
the
Master
of
Science
in
Information
Technology
multimedia
technology
course
I
was
keen
to
learn
more
about
multimedia
applications
and
especially
image
processing
Francois
said
It
is
strange
to
be
a
student
again
but
so
far
I
haven
t
been
disappointed
No
more
globetrotting
Now
I
am
looking
forward
to
getting
my
diploma
next
year
or
and
start
a
Ph
D
or
get
a
job
in
the
area
of
image
processing
or
image
analysis
Francois
thinks
a
degree
from
a
Danish
university
is
highly
regarded
internationally
I
know
that
many
Danish
companies
have
heard
about
this
University
They
often
try
to
recruit
students
to
do
part
time
jobs
and
projects
Francois
doesn
t
spend
a
lot
of
time
on
campus
outside
classes
I
have
a
six
month
old
son
Victor
who
demands
a
lot
of
attention
So
I
tend
to
go
straight
home
after
classes
to
spend
time
with
my
family
For
the
time
being
Francois
and
his
wife
have
had
enough
of
the
globetrotting
life
style
Now
we
want
to
settle
and
work
in
Denmark
for
a
while
Francois
said
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Meet
the
teachers
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Meet
the
teachers
John
Aasted
Sorensen
Head
of
studies
Ph
D
Electric
Engineering
I
am
the
head
of
the
multimedia
technology
studies
and
I
teach
the
courses
Signal
Processing
and
Speech
and
IT
systems
Education
Ph
D
Electrical
Engineering
1982
Technical
University
of
Denmark
Master
of
Science
Electrical
Engineering
MScEE
1975
Research
interests
Signal
processing
in
multimedia
systems
Speech
analysis
coding
recognition
and
animation
Noise
reduction
of
speech
signals
Architectures
for
signal
processing
systems
General
methods
for
signal
analysis
filtering
detection
and
classification
Mads
Nielsen
Mads
Nielsen
Associate
Professor
Ph
D
I
teach
the
courses
Advanced
Image
Analyis
and
Medical
Image
Analysis
10
My
homepage
can
be
found
here
Education
Ph
D
from
the
Department
of
Computer
Science
University
of
Copenhagen
DIKU
April
1995
International
studies
at
the
INRIA
Sophia
Antipolis
France
93
94
Master
of
computer
science
University
of
Copenhagen
KU
August
1992
Bachelor
of
physics
and
computer
science
June
1989
Research
interests
Computer
vision
image
analysis
and
especially
medical
image
analysis
Erik
Dam
Ph
D
Candidate
I
am
an
assistant
teacher
in
the
course
Image
Analysis
11
My
homepage
can
be
found
here
Education
Ph
D
candidate
at
the
IT
University
of
Copenhagen
August
2000
Master
in
Computer
Science
University
of
Copenhagen
April
2000
Bachelor
in
Mathematics
University
of
Copenhagen
Research
interests
Image
analysis
inspired
by
scale
space
theory
and
medical
image
analysis
applications
Theo
Engell
Nielsen
Ph
D
Candidate
I
teach
the
course
Introduction
to
Computer
Graphics
12
My
homepage
can
be
found
here
Education
Ph
D
Candidate
Animation
and
Visualisation
of
Fire
Explosions
at
the
IT
University
of
Copenhagen
dissertation
expected
in
december
2002
Master
of
Computer
Science
graduated
from
DIKU
Department
of
Computer
Science
University
of
Copenhagen
1999
Bachelor
of
Computer
Science
DIKU
Department
of
Computer
Science
University
of
Copenhagen
and
Information
Psychology
Laboratory
of
Psychology
University
of
Copenhagen
1996
Research
interests
Computer
Graphics
Dan
Witzner
Hansen
Ph
D
Candidate
I
am
an
instructor
at
the
course
Introduction
to
Multimedia
Technology
13
My
homepage
can
be
found
here
Education
Ph
D
Candidate
in
the
IT
University
of
Copenhagen
since
July
2000
Master
of
Computer
Science
University
of
Aarhus
1999
Research
interests
Image
processing
Tracking
Geometric
Algebra
and
Gaze
estimation
Ole
Fogh
Olsen
Ole
Fogh
Olsen
Assistant
research
professor
Ph
D
I
teach
the
courses
Image
Analysis
14
My
homepage
can
be
found
here
Education
Ph
D
in
Computer
Science
from
the
Department
of
Computer
Science
University
of
Copenhagen
DIKU
2000
International
studies
at
the
University
of
Minnesota
USA
97
98
Master
of
Computer
Ccience
from
the
Department
of
Computer
Science
University
of
Copenhagen
DIKU
1996
International
studies
at
the
Vision
Lab
University
of
Melbourne
Australia
1995
Bachelor
of
Computer
Science
from
the
Department
of
Computer
Science
University
of
Copenhagen
DIKU
1994
Research
interests
Image
analysis
especially
diffusion
differential
geometry
and
singularity
theory
Kristoffer
Jensen
Ph
D
I
teach
the
course
Musical
Signal
Processing
15
My
homepage
can
be
found
here
Education
Ph
D
from
the
Department
of
Computer
Science
at
the
Copenhagen
University
1998
Research
interests
Musical
Signal
Processing
Declean
Murphy
Ph
D
Candidate
Patterns
in
Music
16
My
homepage
can
be
found
here
Education
Ph
D
Candidate
at
the
Computer
Science
Department
of
Copenhagen
University
Research
interests
Computer
music
and
Interactive
multimedia
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Apply
to
study
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
When
to
apply
11
Application
process
12
Application
form
and
instructions
inter
menu
bund
gif
Apply
to
study
The
IT
University
of
Copenhagen
welcomes
international
applications
for
the
Master
of
Science
in
Information
Technology
multimedia
technology
degree
Admission
to
the
degree
is
very
competitive
It
is
best
to
apply
early
to
allow
yourself
plenty
of
time
to
organise
your
student
visa
to
study
at
the
IT
University
of
Copenhagen
Applicants
must
complete
the
application
form
and
provide
sufficient
evidence
of
their
academic
background
and
English
language
proficiency
The
application
package
must
be
forwarded
to
The
Admission
Office
IT
University
of
Copenhagen
Glentevej
67
2400
Copenhagen
NV
Denmark
Fax
45
38
16
88
99
Click
here
to
read
more
about
the
International
13
Master
of
Science
in
Information
Technology
multimedia
technology
degree
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Apply
to
study
When
to
apply
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
When
to
apply
You
may
apply
to
the
IT
University
at
any
time
But
the
University
must
receive
your
application
no
later
than
three
months
prior
to
semester
start
see
below
International
students
can
apply
for
the
course
prior
to
completion
of
the
undergraduate
degree
However
enrolment
is
conditional
on
the
successful
completion
of
the
undergraduate
degree
at
least
three
3
months
prior
to
the
semester
start
at
the
IT
University
of
Copenhagen
For
example
You
must
have
completed
your
Bachelor
degree
by
1
June
to
enrol
in
the
autumn
semester
starting
on
1
September
You
must
have
completed
your
Bachelor
degree
by
1
November
to
enrol
in
the
autumn
semester
starting
on
1
February
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Apply
to
study
Application
process
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
The
application
process
Here
is
an
outline
of
the
application
process
Step
One
The
application
package
The
applicant
must
forward
the
completed
application
form
together
with
the
following
material
A
degree
transcript
A
letter
of
motivation
eg
no
more
than
one
A
4
sheet
outlining
the
motivation
for
applying
including
a
detailed
description
of
your
education
Documentation
of
skills
in
computer
science
mathematics
and
physics
Certified
copies
of
supporting
documents
The
IT
University
will
not
process
your
application
until
we
have
received
your
official
TOEFL
test
score
as
proof
of
your
11
English
language
proficiency
Certified
photocopies
of
relevant
documents
must
be
enclosed
with
the
application
form
Certificates
and
academic
transcripts
in
a
language
other
than
English
or
one
of
the
Scandinavian
languages
must
be
accompanied
by
a
certified
translation
in
English
Applicants
are
requested
not
to
submit
original
documents
as
these
will
not
be
returned
See
the
section
12
Application
form
and
instructions
for
detailed
information
on
how
to
apply
Step
two
Confirmation
of
receipt
Within
a
week
of
receiving
the
application
the
IT
University
will
e
mail
a
confirmation
of
receipt
to
the
applicant
The
application
procedure
normally
takes
about
one
to
two
months
and
the
IT
University
will
advise
you
whether
your
application
is
successful
Step
three
Notification
of
acceptance
Applicants
are
notified
whether
their
application
has
been
successful
Applications
will
be
dealt
with
on
a
competitive
basis
and
are
considered
by
a
M
Sc
Programme
Steering
Committee
consisting
of
faculty
members
The
Steering
Group
reserves
the
right
not
to
accept
applicants
Step
four
Applying
for
a
Danish
visa
Successful
applicants
must
apply
for
a
Danish
student
and
resident
visa
at
the
Danish
Embassy
or
Consulate
in
their
home
country
It
is
the
responsibility
of
the
student
to
obtain
the
necessary
visa
This
process
can
take
up
to
two
months
The
IT
University
will
forward
successful
applicants
a
special
purple
visa
application
form
which
states
that
you
have
been
invited
to
study
here
by
a
Danish
tertiary
institution
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
Apply
to
study
Application
form
and
instructions
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Application
form
and
instructions
Please
click
below
to
download
the
application
form
and
instructions
11
Application
form
as
a
word
document
12
Application
form
as
a
pdf
document
13
Instructions
as
a
word
document
on
how
to
complete
the
application
form
14
Instructions
as
a
pdf
document
on
how
to
complete
the
application
form
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
FAQ
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Cost
of
living
in
Denmark
11
How
do
I
find
accommodation
12
Cost
of
tuition
fees
13
Can
I
get
any
financial
assistance
14
Can
I
earn
money
while
studying
15
Do
I
need
a
residence
visa
16
What
about
health
insurance
17
How
do
I
survive
the
Danish
winter
18
Useful
links
about
Denmark
inter
menu
bund
gif
Frequently
asked
questions
Here
is
a
list
of
answers
to
frequently
asked
questions
about
studying
in
Denmark
the
IT
University
of
Copenhagen
and
the
international
Master
of
Science
in
Information
Technology
multimedia
technology
degree
For
further
information
email
the
19
information
office
20
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
21
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
Cost
of
living
in
Denmark
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
How
much
does
it
cost
to
live
in
Denmark
Naturally
such
costs
tend
to
display
individual
variations
In
my
experience
these
costs
will
vary
from
DKK
50
000
to
DKK
60
000
per
year
corresponding
to
US
6
000
8
000
The
amount
allows
for
some
expenditure
for
clothing
and
recreation
Insurance
and
travel
costs
to
and
from
Denmark
are
excluded
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
How
do
I
find
accommodation
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
How
do
I
find
accommodation
The
IT
University
of
Copenhagen
offers
advice
and
assistance
with
accommodation
We
will
help
you
to
find
private
accommodation
at
prices
in
the
range
of
DKK
1
600
2
000
single
rooms
furnished
no
meals
included
but
access
to
kitchen
facilities
If
you
want
the
IT
University
to
help
find
you
accommodation
then
email
our
11
accommodation
help
desk
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
Cost
of
tuition
fees
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
How
much
does
it
cost
to
study
at
the
IT
University
International
students
are
not
charged
tuition
fees
to
study
at
the
IT
University
of
Copenhagen
The
Danish
Government
has
decided
to
offer
this
degree
free
of
charge
in
order
to
attract
qualified
IT
students
from
abroad
to
study
in
Denmark
It
is
projected
that
Denmark
needs
to
graduate
around
40
000
more
computer
scientists
in
the
next
three
years
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
Can
I
get
any
financial
assistance
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Can
I
get
any
financial
assistance
Students
will
have
to
cover
living
expenses
eg
accommodation
meals
transport
books
and
materials
during
their
stay
in
Denmark
The
immigration
office
through
the
Danish
embassy
will
ask
students
from
outside
the
Nordic
countries
and
EU
countries
to
demonstrate
funds
corresponding
to
DKK
50
000
US
6
500
before
issuing
a
one
year
residence
permit
You
must
be
able
to
document
that
1
you
have
the
full
legal
rights
of
disposal
of
the
amount
and
that
2
these
funds
are
available
to
you
in
Denmark
Please
note
that
the
Danish
currency
is
linked
to
the
Euro
and
may
display
variations
to
the
US
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
Can
I
earn
money
while
studying
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Can
I
earn
money
in
Denmark
while
studying
You
can
apply
for
a
work
permit
The
work
permit
will
allow
you
to
work
15
hours
a
week
during
the
semester
and
full
time
in
June
July
and
August
Students
from
the
Nordic
countries
and
EU
countries
need
no
work
permit
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
Do
I
need
a
residence
visa
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Do
I
need
a
residence
visa
Students
from
the
Nordic
countries
need
no
visa
or
residence
permit
A
visa
is
required
for
students
from
many
countries
Please
contact
your
local
Danish
Embassy
or
Consulate
to
see
if
you
require
a
visa
EU
citiziens
do
not
need
a
permit
for
the
first
three
months
of
their
stay
After
three
months
EU
citiziens
are
required
to
apply
for
a
residence
permit
This
is
usually
only
a
formality
Students
from
non
Nordic
countries
must
apply
for
a
residence
permit
prior
to
arrival
Application
for
a
residence
permit
must
be
submitted
to
the
Danish
Embassy
or
Consulate
in
the
student
s
home
country
at
least
two
months
before
arrival
To
speed
up
the
process
the
IT
University
will
forward
successful
applicants
a
purple
supplement
form
posted
with
the
letter
of
acceptance
which
states
that
you
have
been
invited
to
study
here
by
a
Danish
tertiary
institution
Applicants
must
submit
this
form
together
with
the
residence
permit
application
to
the
local
Embassy
or
Consulate
The
immigration
office
through
the
Danish
embassy
will
ask
you
to
demonstrate
funds
corresponding
to
DKK
50
000
US
6
500
before
issuing
a
one
year
residence
permit
You
must
be
able
to
document
that
1
you
have
the
full
legal
rights
of
disposal
of
that
amount
and
that
2
these
funds
are
available
to
you
in
Denmark
Please
note
that
the
Danish
currency
is
linked
to
the
Euro
and
may
display
variations
to
the
US
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
What
about
health
insurance
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
What
about
health
insurance
European
Union
EU
citizens
staying
in
Denmark
on
a
residence
permit
and
bringing
an
E
104
E
111
form
from
their
home
country
are
automatically
covered
by
the
National
Health
Service
which
gives
free
access
to
medical
treatment
Citizens
from
Nordic
countries
are
entitled
to
the
same
medical
treatment
as
Danish
nationals
Nationals
from
outside
Nordic
and
EU
countries
are
not
covered
during
the
first
6
weeks
of
their
stay
in
Denmark
after
which
they
are
covered
by
the
National
Health
Insurance
Service
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
How
do
I
survive
the
Danish
winter
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
How
do
I
survive
the
Danish
winter
The
Danish
winter
can
be
rather
cold
with
temperatures
down
to
minus
10
degrees
Danes
however
will
tell
you
that
there
is
no
such
thing
as
bad
weather
only
inappropriate
clothing
So
don
t
forget
to
bring
your
warm
sweaters
and
wollen
socks
On
the
upside
all
Danish
housing
has
central
heating
and
the
public
infrastructure
is
designed
to
deal
with
the
winter
weather
During
the
summer
temperatures
can
reach
25
degrees
and
it
does
not
get
dark
until
11pm
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
4
FAQ
Useful
links
about
Denmark
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Useful
links
about
Denmark
and
living
in
DK
Here
are
some
useful
links
about
Denmark
11
Royal
Danish
ministry
of
foreign
affairs
12
Facts
and
figures
on
Denmark
13
Danish
export
directory
click
on
the
words
Export
directory
in
the
left
navigation
bar
14
Wonderful
Copenhagen
tourist
guide
15
Official
information
guide
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
About
the
University
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
About
the
IT
University
of
Copenhagen
Here
you
can
read
more
about
the
10
IT
University
of
Copenhagen
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
About
the
IT
University
of
Copenhagen
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
8
Vision
9
Contact
Details
10
Courses
11
The
Ørestad
Building
12
Facts
Figures
13
How
to
find
us
14
Rules
15
Links
inter
menu
bund
gif
About
the
IT
University
of
Copenhagen
The
IT
University
of
Copenhagen
IT
C
is
a
teaching
and
research
based
tertiary
institution
concerned
with
information
technology
IT
and
the
opportunities
it
offers
The
University
was
established
in
1999
It
is
funded
to
undertake
both
theoretical
research
and
applied
research
into
the
interaction
and
growing
importance
of
information
technology
to
society
The
IT
C
offers
a
range
of
courses
in
IT
including
Six
two
year
Master
of
Science
courses
These
courses
are
offered
on
a
full
time
basis
and
include
a
research
component
After
completing
one
of
these
courses
the
graduate
is
awarded
the
title
of
Master
of
Science
in
Information
Technology
Four
Master
courses
These
courses
are
offered
on
a
part
time
basis
over
three
years
Graduates
are
awarded
the
title
of
Master
of
Information
Technology
One
part
time
graduate
diploma
course
Graduates
are
awarded
the
t
tle
Diploma
in
Information
Technology
The
IT
C
covers
all
aspects
of
information
technology
including
natural
sciences
humanities
and
social
sciences
business
impact
and
the
commercialisation
of
IT
The
IT
C
cooperates
with
a
number
of
institutions
for
instance
the
University
of
Copenhagen
the
Copenhagen
Business
School
the
Technical
University
of
Denmark
and
the
University
of
Roskilde
The
IT
C
is
a
so
called
independent
faculty
which
is
hosted
by
the
Copenhagen
Business
School
The
president
of
the
IT
C
is
16
Mads
Tofte
The
chair
of
the
board
is
Mogens
Munk
Rasmussen
president
and
CEO
of
Nykredit
A
S
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
Vision
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Vision
IT
C
s
vision
The
IT
C
is
committed
to
the
development
of
a
vibrant
research
and
learning
environment
that
contributes
to
the
growth
and
further
development
of
Danish
and
international
societies
This
vision
will
be
achieved
by
creating
an
IT
environment
which
incorporates
key
aspects
from
the
natural
sciences
the
business
sector
and
the
arts
and
humanities
equipping
students
with
a
thorough
understanding
of
IT
and
its
possiblities
creating
new
technologies
and
improving
the
use
of
existing
technologies
through
research
collaborating
with
the
professions
business
government
and
the
wider
community
in
promoting
the
use
of
IT
enhancing
society
s
knowledge
of
IT
Read
the
IT
C
President
s
9
elaboration
on
this
vision
Danish
only
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
Contact
Details
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Contact
Details
Address
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
NV
Telephone
45
38
16
88
88
Fascimile
45
38
16
88
99
IT
C
s
Student
Advisory
Service
The
Student
Advisory
Office
Telephone
45
38
16
88
73
9
Studievejledningen
it
c
dk
Corporate
Relations
Journalist
Mikael
Kjærbye
Telephone
45
38
16
88
80
10
mk
it
c
dk
Staff
Vacancies
Human
Resources
Manager
Kirsten
Talbro
Laraignou
Telephone
45
38
16
88
03
11
ktl
it
c
dk
Media
information
Journalist
and
webeditor
Mikael
Kjærbye
Telephone
45
38
16
88
80
12
mk
it
c
dk
Public
Lectures
BuzzTalks
Tanja
Danner
Telephone
45
38
16
88
09
13
td
it
c
dk
Buildings
Operations
and
Internal
Services
Head
of
Department
Margit
Achen
Telephone
45
38
16
88
10
14
margit
it
c
dk
Comments
about
IT
C
s
homepage
Information
Secretariat
15
wwwadm
it
c
dk
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
Courses
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Courses
The
IT
University
of
Copenhagen
IT
C
offers
a
range
of
courses
in
Information
Technology
IT
Master
of
Science
Information
Technology
The
Master
of
Science
in
Information
Technology
degree
is
a
two
year
full
time
course
which
includes
a
research
component
Students
can
enrol
in
one
of
the
following
areas
Design
Communication
and
Media
Electronic
Business
Internet
Technology
Multimedia
Technology
Software
Development
Interdisciplinary
IT
Only
students
who
ve
completed
a
Bachelor
degree
can
be
considered
for
enrolment
in
the
Master
of
Science
Information
Technology
course
In
principle
any
Bachelor
degree
is
a
prerequisite
for
the
Master
course
Master
of
Information
Technology
Also
on
offer
are
a
number
of
three
year
part
time
Master
of
Information
Technology
degrees
These
courses
are
designed
for
students
who
participate
in
the
workforce
These
degrees
do
not
include
a
research
component
Students
specialise
in
one
of
the
following
four
areas
Design
Communication
and
Media
Internet
Technology
Multimedia
Technology
Software
Development
Course
prerequisites
include
any
Bachelor
degree
and
two
years
of
work
experience
Graduate
Diploma
It
is
also
possible
to
study
a
Graduate
Diploma
course
This
course
is
a
two
year
part
time
program
aimed
at
students
who
participate
in
the
workforce
Individual
subjects
The
IT
University
also
offers
individual
subjects
if
places
are
available
in
the
particular
course
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
3
Courses
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
The
Ørestad
Building
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
Report
inter
menu
bund
gif
The
winning
project
the
IT
C
s
new
domicile
in
the
Ørestad
The
winning
project
was
drawn
by
the
Henning
Larsen
s
Drawing
Room
in
cooperation
with
Carl
Bro
A
S
From
above
sitplan
IT
jpg
The
IT
C
as
seen
from
above
with
the
north
pointing
upwards
The
black
blocks
on
the
left
are
the
canal
The
IT
C
s
1st
stage
19
000m2
consists
of
the
big
H
on
the
bottom
left
hand
side
of
the
plan
The
wing
immediately
to
the
east
is
the
IT
C
s
2nd
stage
10
000m2
The
IT
C
s
1st
stage
is
made
up
of
two
wings
that
are
connected
to
a
central
room
Users
can
access
the
building
via
the
ramps
in
the
north
and
south
The
closest
neighbour
to
the
north
is
the
University
of
Copenhagen
The
closest
neighbour
to
the
south
is
the
Danish
Broadcasting
Corporation
DR
A
look
from
the
west
A
FACADE1200
jpg
The
IT
C
as
seen
from
the
west
i
e
from
the
canal
side
The
building
is
six
floors
high
and
rests
on
a
deck
The
north
end
of
the
building
on
the
left
hand
side
of
the
illustration
rises
to
the
1st
floor
s
height
The
orange
area
is
the
auditorium
Immediately
to
the
right
of
this
is
the
canteen
which
continues
outside
the
building
on
the
southernmost
part
of
the
deck
A
look
from
the
north
main
45
CMYK
jpg
The
IT
C
as
seen
from
the
northwest
The
roof
together
with
the
facades
facing
north
and
west
are
wrapped
in
metal
while
the
Central
Room
ceiling
the
eastern
and
western
facades
consist
of
glass
Under
the
ramps
in
the
north
and
south
is
a
place
to
park
bicycles
Connecting
ramps
provide
access
to
the
bicycle
parking
area
The
Central
Room
50
sketch2
jpg
The
Central
Room
as
seen
from
the
canteen
firstly
as
a
sketch
and
below
as
a
computer
illustration
The
glass
cubicles
are
meant
as
areas
where
students
can
socialize
low
20
CMYK
jpg
A
long
stairway
up
through
the
Central
Room
gives
the
visitor
a
picturesque
climb
through
the
building
box
20
RGB
jpg
The
glass
cubicles
as
seen
from
one
of
the
middle
floors
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
3
The
Ørestad
Building
Report
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
The
Judges
Report
The
Judges
Report
on
the
new
building
can
be
seen
10
here
in
Danish
only
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
Facts
Figures
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Facts
Figures
Number
of
enrolled
students
target
figures
1999
2000
2001
2002
M
Sc
courses
119
405
616
948
Master
courses
15
33
155
291
Diploma
courses
0
36
171
318
Number
of
employees
target
figures
1999
2000
2001
2002
Researchers
and
lecturers
excl
lecturers
based
at
collaborating
institutions
8
3
31
9
58
5
90
0
Administrative
support
1
3
3
0
6
0
6
0
Other
administrative
staff
6
8
13
7
24
5
32
5
Government
Grant
Kr
Mill
1999
2000
2001
2002
Government
Budget
39
0
61
0
83
1
95
2
Established
in
year
1999
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
How
to
find
us
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
How
to
get
to
the
IT
University
of
Copenhagen
Address
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
NV
Telephone
45
38
16
88
88
Fascimile
45
38
16
88
99
With
public
transport
From
the
Copenhagen
Airport
Outside
the
airport
terminal
take
the
public
bus
No
250S
towards
the
Buddinge
Station
On
week
days
the
bus
leaves
every
10
minutes
from
the
airport
Ask
the
bus
driver
to
let
you
off
at
the
stop
at
Hillerødgade
Borups
All
The
bus
trip
takes
around
40
minutes
It
takes
around
five
minutes
to
walk
from
the
bus
stop
to
the
IT
University
You
walk
straight
down
Vibevej
and
then
left
at
Glentevej
The
IT
University
is
at
Glentevej
67
See
the
map
below
map
gif
From
the
Central
Railway
Station
Hovedbanegården
Take
bus
No
250S
towards
Buddinge
Station
The
250S
bus
stop
is
situated
outside
the
central
railway
station
in
Bernstorffsgade
outside
the
Tivoli
amusement
park
Ask
the
bus
driver
to
let
you
off
at
the
stop
at
Hillerødgade
Borups
All
The
bus
trip
takes
around
10
minutes
It
takes
around
five
minutes
to
walk
from
the
bus
stop
to
the
IT
University
You
walk
straight
down
Vibevej
and
then
left
at
Glentevej
The
IT
University
is
at
Glentevej
67
See
the
map
above
Cab
prices
From
the
airport
during
the
day
approximately
170
00
DDK
From
the
airport
at
night
time
approximately
200
00
DDK
From
the
Central
Railway
Station
during
the
day
approximately
100
00
DDK
From
the
Central
Railway
Station
during
the
night
time
approximately
130
00
DDK
These
prices
are
correct
as
of
November
2000
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
Rules
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
The
rules
for
IT
C
The
rules
that
apply
to
IT
C
can
be
found
9
here
in
Danish
only
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
About
the
IT
University
of
Copenhagen
Links
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Links
Tertiary
Institutions
9
University
of
Copenhagen
10
Roskilde
University
11
University
of
Aarhus
12
Aalborg
University
13
University
of
Southern
Denmark
14
Copenhagen
Business
School
15
Technical
University
of
Denmark
16
The
Royal
Veterinary
and
Agricultural
University
17
Malm
University
18
Lund
University
Ministries
and
other
Government
institutions
19
Ministry
of
Information
Technology
and
Research
20
The
Danish
Ministry
of
Education
21
State
Educational
Grant
and
Loan
Scheme
Agency
22
Institutions
in
Denmark
offering
programmes
degrees
of
higher
education
in
English
23
The
Copenhagen
Institute
for
Futures
Studies
24
The
Danish
Board
of
Technology
25
Centre
for
Pervasive
Computing
26
CTU
Denmark
s
national
information
centre
for
technology
supported
learning
27
Copenhagen
Capacity
Copenhagen
s
official
investment
agency
Industrial
Organizations
28
The
Danish
IT
Industry
Association
29
Danish
Technological
Institute
30
Danish
Association
of
Professional
Technicians
31
Symbion
Science
Park
32
Technological
Information
Centre
Student
Organizations
33
Board
of
European
Students
of
Technology
BEST
34
Studenterhuset
The
International
Caf
IT
media
35
IDG
net
36
Computerworld
online
Internatioal
37
MIT
38
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
39
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
International
Master
of
Science
in
IT
multimedia
technology
Contact
us
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Contact
us
Address
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
Denmark
Phone
45
38
16
88
88
Fax
45
38
16
88
99
If
you
have
further
questions
regarding
the
international
Master
of
Science
in
Information
Technology
multimedia
technology
which
are
not
answered
on
these
pages
you
are
welcome
to
email
our
10
information
office
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
Master
of
Science
IT
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
Design
Communication
and
Media
10
Electronic
Business
11
Internet
Technology
12
Software
Development
13
Multimedia
Technology
14
Interdisciplinary
IT
inter
menu
bund
gif
Master
of
Science
courses
The
IT
University
offers
six
6
two
year
full
time
Master
of
Science
courses
in
the
following
areas
Design
Communciation
and
Media
Electronic
Business
Internet
Technology
Software
Development
Multimedia
Technology
Interdisciplinary
IT
The
Master
of
Science
degree
is
approved
according
to
the
Danish
Government
s
student
allowance
regulations
SU
approved
Upon
completing
the
course
the
student
is
awarded
the
title
of
Master
of
Science
in
Information
Technology
The
courses
are
comprised
of
a
number
of
mandatory
courses
optional
courses
electives
projects
and
the
Master
of
Science
thesis
which
is
written
during
the
final
semester
All
courses
and
projects
are
individually
assessed
Only
students
who
have
completed
a
Bachelor
degree
can
be
considered
for
the
Master
of
Science
in
Information
Technology
course
In
principle
any
Bachelor
degree
is
a
prerequisite
for
the
Master
of
Science
courses
You
must
have
studied
mathematics
at
the
highest
level
A
level
in
secondary
school
to
be
considered
for
the
Multimedia
Technology
course
or
the
Internet
Technology
course
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
Design
Communication
and
Media
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Head
of
Studies
11
More
about
Design
Communcation
and
Media
inter
menu
bund
gif
Master
of
Science
Design
Communication
and
Media
The
Master
of
Science
Design
Communication
and
Media
consists
of
three
areas
Construction
Interactive
Design
and
Media
The
course
is
concerned
with
Design
and
Interactivity
and
IT
as
a
social
and
cultural
media
Graduates
are
empowered
to
use
the
new
IT
for
communication
purposes
including
a
hands
on
practical
approach
to
construct
and
design
web
sites
and
multimedia
3
D
animations
and
games
This
course
offers
knowledge
of
project
management
graphic
design
organisation
usability
and
interaction
Some
of
the
keywords
of
the
course
are
communication
argumentation
reflection
an
interdisciplinary
orientation
and
the
ability
to
be
abstract
The
Master
of
Science
Design
Communication
and
Media
is
offered
by
the
IT
C
in
collaboration
with
the
University
of
Copenhagen
and
the
Danish
School
of
Design
in
Copenhagen
The
course
takes
place
at
the
IT
C
and
the
12
the
Danish
School
of
Design
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Design
Communication
and
Media
Head
of
Studies
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
John
Paulin
Hansen
Practitioners
with
insight
Head
of
studies
lecturer
John
Paulin
Hansen
The
Master
of
Science
in
Design
Communication
and
Media
is
an
intensive
addition
to
a
Bachelor
degree
Graduates
will
be
able
to
work
with
all
forms
of
digital
media
John
Paulin
said
Students
learn
to
become
confident
in
developing
concepts
communicating
with
target
groups
implementing
projects
and
gaining
a
deep
knowledge
of
the
possibilities
of
the
digital
media
now
and
in
the
future
The
Design
Communication
and
Media
degree
is
concerned
with
gaining
an
understanding
of
the
technology
behind
IT
and
the
ability
to
reflect
technically
and
analytically
on
IT
as
a
media
Students
will
also
gain
knowledge
about
IT
s
societal
sociological
and
organizational
role
and
possibilities
To
a
large
extent
the
degree
in
Design
Communication
and
Media
can
be
used
in
web
communication
but
also
in
other
forms
of
electronic
media
such
as
DVD
CD
rom
movies
sound
and
video
Furthermore
graduates
can
work
with
public
based
service
systems
and
large
database
systems
It
has
been
a
rewarding
challenge
to
be
part
of
establishing
the
degree
in
Design
Communication
and
Media
at
the
IT
C
It
is
inspiring
to
have
students
from
a
variety
of
backgrounds
A
brief
biography
of
John
Paulin
Hansen
41
years
old
M
A
in
Psychology
University
of
Aarhus
1984
Ph
D
University
of
Aarhus
1992
researcher
and
senior
researcher
at
the
Research
Center
Risø
Roskilde
1992
principal
at
the
Space
Invaders
multimedia
design
school
1996
Head
of
Studies
and
lecturer
at
the
IT
C
1999
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Design
Communication
and
Media
More
about
Design
Communcation
and
Media
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Read
more
about
Design
Communication
and
Media
See
the
11
course
catalog
for
a
list
of
all
courses
currently
on
offer
at
the
IT
University
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
Electronic
Business
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Head
of
Studies
11
More
about
EBUSS
inter
menu
bund
gif
Master
of
Science
Electronic
Business
The
Master
of
Science
in
Electronic
Business
is
at
the
cutting
edge
of
the
development
of
e
business
practices
in
Denmark
and
abroad
The
course
qualifies
graduates
to
work
in
the
three
most
important
areas
relating
to
e
business
including
the
technical
business
and
policy
legal
spheres
The
Master
of
Science
in
Electronic
Business
degree
focuses
on
the
technical
solutions
the
logistics
the
payment
systems
the
marketing
the
sale
and
distribution
of
physical
as
well
as
digital
goods
and
services
A
graduate
knows
how
e
business
impacts
on
the
customer
supplier
relationship
and
has
a
thorough
knowledge
of
the
technical
problems
relating
to
the
industry
A
graduate
is
also
able
to
offer
corporate
businesses
academic
and
applied
knowledges
of
contemporary
and
relevant
e
business
competencies
In
the
main
the
course
takes
place
at
the
12
Copenhagen
Business
School
which
manages
the
daily
administration
and
planning
of
the
program
For
more
information
contact
13
www
ebuss
dk
You
can
also
contact
the
EBUSS
Study
Secretariat
Department
for
Informatics
Copenhagen
Business
School
Howitzvej
60
3rd
floor
DK
2000
Copenhagen
e
mail
14
heje
it
c
dk
telephone
38
15
24
68
fascimile
38
15
24
01
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Electronic
Business
Head
of
Studies
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Kim
Viborg
Andersen
Think
globally
and
differently
Head
of
Studies
lecturer
Kim
Viborg
Andersen
There
is
an
enormous
demand
in
the
business
world
for
people
with
an
understanding
of
e
business
both
in
the
private
and
public
sectors
Kim
Viborg
Andersen
said
He
is
the
Head
of
Studies
of
the
Electronic
Business
degree
at
the
IT
C
When
we
talk
about
e
business
we
often
think
about
the
sales
of
goods
over
the
Internet
but
there
is
also
an
electronic
transfer
of
knowledge
competencies
and
advice
Consequently
e
business
has
an
immense
influence
on
the
corporate
organisation
and
work
processes
The
Electronic
Business
degree
contains
the
technical
commercial
strategic
and
legal
areas
pertaining
to
e
business
A
graduate
in
e
business
should
know
something
about
everything
but
it
is
also
important
to
specialize
in
one
of
these
areas
Kim
Viborg
Andersen
said
It
is
about
thinking
globally
differently
and
with
a
purpose
because
everything
changes
very
fast
in
this
line
of
business
Kim
Viborg
Andersen
says
that
he
has
experienced
a
great
exciting
challenge
developing
the
e
business
degree
He
envisions
the
graduates
in
positions
such
as
consultants
strategists
and
projects
managers
for
e
business
in
companies
or
e
business
entrepreneurs
At
the
IT
University
we
work
in
a
theoretical
manner
as
well
as
in
an
applied
manner
You
can
say
that
we
are
developing
a
lab
for
e
business
Kim
Viborg
Andersen
said
A
short
biography
of
Kim
Viborg
Andersen
33
years
old
M
A
in
Political
Science
1989
University
of
California
1991
1993
Ph
D
University
of
Copenhagen
1994
research
presentation
at
the
University
of
Tokyo
1996
1997
lecturer
at
the
Copenhagen
Business
School
Department
1997
Head
of
Studies
for
the
E
business
degree
at
the
IT
C
1999
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Electronic
Business
More
about
EBUSS
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Read
more
about
the
degree
in
Electronic
Business
See
the
11
course
catalog
for
a
list
of
all
courses
currently
on
offer
at
the
IT
University
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
Internet
Technology
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Head
of
Studies
11
More
about
Internet
Technology
inter
menu
bund
gif
Master
of
Science
Internet
Technology
Graduates
of
the
Master
of
Science
Internet
Technology
degree
possess
a
fundamental
knowledge
of
the
technologies
that
make
up
the
Internet
and
they
will
be
able
to
develop
reliable
and
effective
internet
programs
The
degree
consists
of
three
main
areas
Network
technology
Internet
programming
Internet
in
organizations
Network
technology
is
about
building
and
organizing
a
network
network
protocol
fault
tolerance
and
data
security
The
graduate
is
equipped
with
a
sound
knowledge
of
the
basic
functions
of
a
network
Internet
programming
provides
an
insight
into
internet
programming
and
current
technologies
and
tools
This
area
explores
parallel
systems
distributed
data
treatment
databases
internal
and
real
time
systems
operating
platforms
algorithms
datastructures
and
integrity
and
reliability
Internet
in
organizations
deals
with
IT
in
geographically
diverse
organizations
interactive
design
economic
and
organizational
aspects
of
intra
and
internet
and
provides
an
insight
into
cooperative
relationships
services
and
products
This
M
Sc
degree
is
offered
in
collaboration
with
the
12
Technical
University
of
Denmark
Copenhagen
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Internet
Technology
Head
of
Studies
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Thomas
Hildebrandt
Contributing
to
the
internet
agenda
Head
of
studies
Thomas
Hildebrandt
The
internet
is
unique
because
it
makes
computer
science
problems
visible
and
relevant
for
ordinary
users
E
g
netsurfers
rely
on
semantics
and
interpretation
every
time
they
download
a
new
web
page
and
the
fastest
and
smartest
search
engines
use
complicated
algorithms
and
datastructures
according
to
Thomas
Troels
Hildebrandt
head
of
studies
for
the
Internet
Technology
degree
at
the
IT
University
The
technologies
are
changing
and
developing
rapidly
Therefore
it
is
important
for
a
graduate
to
understand
the
underlying
and
permanent
principles
behind
the
technologies
that
make
up
the
internet
The
aim
of
this
degree
is
to
graduate
IT
professionals
to
develop
technologies
and
use
them
in
new
contexts
They
learn
to
set
the
agenda
for
tomorrow
s
internet
instead
of
just
becoming
passive
users
of
other
people
s
technologies
It
is
exciting
that
the
students
come
from
different
academic
backgrounds
Many
of
the
internet
technology
students
have
a
technical
background
but
we
also
have
students
with
bachelor
degrees
in
religion
history
and
music
It
is
important
that
they
remember
and
use
their
academic
knowledges
Thomas
Hildebrandt
said
The
students
can
use
an
IT
master
degree
to
realise
new
ideas
within
their
own
academic
field
E
g
one
student
with
a
bachelor
in
music
designed
an
on
line
playroom
where
musicians
from
around
the
world
could
jam
together
in
real
time
as
part
of
a
student
project
Thomas
Hildebrandt
expects
students
to
continuously
keep
up
to
date
with
the
latest
developments
in
the
IT
sector
by
reading
the
papers
and
attending
some
of
the
regular
research
and
business
talks
at
the
IT
University
If
you
want
to
be
part
of
shaping
the
internet
development
of
the
future
you
must
be
able
to
spot
the
emerging
trends
of
the
business
world
and
keep
an
eye
on
the
relevant
societal
tendencies
which
might
influence
that
development
Assisted
by
education
research
and
collaborations
with
the
business
world
we
intend
to
contribute
to
the
internet
agenda
nothing
less
Thomas
Hildebrandt
said
A
short
biography
of
Thomas
Hildebrandt
1972
Born
1997
Master
of
Computer
Science
Aarhus
University
Denmark
1998
Visiting
Ph
D
student
at
the
Laboratory
for
Foundations
of
Computer
Science
University
of
Edinburgh
Scotland
Also
short
research
visit
at
the
McGill
University
Montreal
1999
Ph
D
in
Computer
Science
from
the
Aarhus
University
Denmark
at
the
BRICS
research
centre
1999
Employed
as
assistant
research
professor
at
the
IT
University
of
Copenhagen
Associated
with
the
11
RCES
research
project
Research
areas
include
semantics
category
theory
and
parallel
and
mobile
systems
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
People
10
Research
projects
11
Publications
12
Teaching
inter
menu
bund
gif
Dept
of
Design
and
Use
of
Information
Technology
DUIT
The
research
aims
at
contributing
to
a
better
understanding
of
the
relationship
between
modern
information
technology
its
users
and
their
work
practice
as
well
as
improving
the
understanding
and
support
of
the
involved
design
and
development
activities
Apart
from
theories
and
concepts
the
objective
is
development
of
useful
methodologies
and
tools
Much
of
the
research
work
is
empirical
and
experimental
and
builds
on
research
from
science
social
science
and
the
humanities
Experienced
and
observed
challenges
in
the
IT
industry
and
in
user
organizations
is
a
major
source
of
inspiration
for
the
work
DUIT
is
involved
in
two
externally
funded
research
projects
13
DIWA
and
14
IDAK
The
participants
in
the
projects
come
from
Danish
research
institutes
as
well
as
from
the
industry
News
Upcoming
events
DUIT
in
the
large
seminar
On
1
May
at
4
00
p
m
Klaus
Jul
Jeppesen
Dept
of
Design
and
Use
of
IT
is
giving
a
seminar
on
15
Diffusing
Software
Product
and
Process
Innovations
The
talk
takes
place
at
the
IT
University
of
Copenhagen
Glentevej
67
room
2
03
Contact
Head
of
Department
16
Peter
Carstensen
17
carstensen
it
c
dk
Administrative
Officer
Hanne
Sørensen
18
hs
it
c
dk
Department
of
Design
and
Use
of
Information
Technology
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
Denmark
Phone
45
3816
8921
Fax
45
3816
8899
URL
www
it
c
dk
19
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
20
wwwadm
it
c
dk
1
IT
højskolen
Research
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
8
Vision
9
Publications
10
External
lecturers
11
Ph
D
Studies
12
Profile
of
researcher
inter
menu
bund
gif
Research
There
are
four
research
departments
at
the
IT
C
13
The
Department
of
Digital
Aesthetics
and
Communication
The
Department
of
Digital
Aesthetics
and
Communication
is
concerned
with
aesthetic
cultural
and
communications
aspects
of
IT
based
on
the
humanities
and
scientific
research
traditions
The
Department
develops
theoretical
interdisciplinary
models
of
understanding
digital
phenomena
from
a
historical
and
functional
viewpoint
14
The
Theory
Department
The
Theory
Department
focuses
on
the
following
research
topics
algorithms
and
complexity
theory
semantics
of
logics
and
programming
languages
categorical
logic
and
type
theory
models
of
concurrency
verification
automatic
test
generation
embedded
systems
and
mobile
computation
15
The
Department
of
Innovation
The
Department
of
Innovation
aims
to
develop
new
technologies
achieved
through
high
class
research
and
its
innovative
application
Currently
focus
is
on
the
areas
of
data
security
and
compression
computer
vision
and
graphics
interaction
technology
and
software
technology
16
The
Department
of
Design
and
Use
of
InformationTechnology
DUIT
The
research
in
the
department
aims
at
contributing
to
a
better
understanding
of
the
relationship
between
modern
information
technology
its
users
and
their
work
practice
as
well
as
improving
the
understanding
and
support
of
the
involved
design
and
development
activities
Apart
from
theories
and
concepts
the
objective
is
development
of
useful
methodologies
and
tools
Much
of
the
research
work
is
empirical
and
experimental
and
builds
on
research
from
science
social
science
and
the
humanities
Experienced
and
observed
challenges
in
the
IT
industry
and
in
user
organizations
is
a
major
source
of
inspiration
for
the
work
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Research
Vision
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Visions
Goals
IT
C
s
vision
The
IT
C
is
committed
to
the
development
of
a
vibrant
research
and
learning
environment
that
contributes
to
the
growth
and
further
development
of
Danish
and
international
societies
This
vision
will
be
achieved
by
creating
an
IT
environment
which
incorporates
key
aspects
from
the
natural
sciences
the
business
sector
communications
and
the
arts
and
humanities
equipping
students
with
a
thorough
understanding
of
IT
and
its
possiblities
creating
new
technologies
and
improving
the
use
of
existing
technologies
through
research
collaborating
with
the
professions
business
government
and
the
wider
community
in
promoting
the
use
of
IT
enhancing
society
s
knowledge
of
IT
Research
Goals
Based
on
a
comprehensive
academic
foundation
the
IT
C
is
committed
to
contribute
to
the
understanding
and
development
of
IT
on
an
international
level
through
the
establishment
of
a
vibrant
research
and
learning
culture
the
application
of
basic
research
in
IT
the
development
of
new
technologies
and
uses
of
IT
the
recruitment
of
eminent
researchers
and
lecturers
a
high
professional
level
of
education
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
Research
External
lecturers
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
Interview
inter
menu
bund
gif
External
lecturers
One
of
the
most
important
ways
the
IT
C
collaberates
with
other
institutions
and
companies
is
by
employing
external
lecturers
The
IT
C
aims
to
build
an
extensive
and
powerful
network
of
external
lecturers
This
network
includes
external
lecturers
from
Tele
Danmark
the
Danish
Broadcasting
Corporation
and
the
University
of
Lund
Sweden
External
lecturers
must
1
possess
the
necessary
technical
expertise
in
a
given
area
preferably
within
an
applied
area
of
IT
2
have
completed
a
M
Sc
degree
or
equivalent
3
have
experience
with
post
graduate
supervision
and
teaching
List
of
vacancies
and
for
voluntary
applications
please
see
10
positions
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
External
lecturers
Interview
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
External
Lecturer
Lise
Jensen
I
teach
3
D
modelling
and
show
students
how
they
can
build
a
3
D
model
digitally
Lise
Jensen
explains
Lise
is
an
external
lecturer
at
the
Design
Communication
and
Media
course
and
an
Assistant
Professor
at
the
University
of
Lund
in
Sweden
3
D
modelling
is
used
for
animation
in
movies
Virtual
Reality
where
you
can
move
freely
in
an
artificial
universe
and
for
stationary
pictures
where
you
can
photograph
something
which
in
reality
does
not
exist
It
is
also
used
extensively
in
the
advertising
world
It
is
fun
and
inspiring
to
teach
at
the
IT
C
Lise
Jensen
says
This
place
has
a
good
atmosphere
and
the
students
are
clever
active
and
interested
That
means
I
am
guaranteed
feedback
as
a
lecturer
Lise
Jensen
is
43
years
old
and
originally
a
qualified
architect
She
has
worked
as
a
multimedia
designer
before
she
became
an
Assistant
Professor
at
the
University
of
Lund
in
Sweden
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Research
Ph
D
Studies
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
Interview
10
Application
11
Studies
12
Funding
13
Courses
inter
menu
bund
gif
Ph
D
Studies
The
IT
C
has
19
Ph
D
students
enrolled
at
present
This
number
is
expected
to
drastically
increase
in
a
short
period
of
time
Information
about
available
Ph
D
scholarships
can
be
seen
at
14
vacancies
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
Interview
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Lisbeth
Klastrup
In
the
Virtual
World
Lisbeth
Klastrup
teaches
a
course
in
Virtual
Societies
She
is
also
organising
the
forthcoming
conference
Computer
Games
digital
textualities
which
will
take
place
at
the
IT
University
on
1
2
March
2001
I
carry
out
research
in
how
to
narrate
and
learn
in
virtual
worlds
Ph
D
student
Lisbeth
Klastrup
says
Firstly
I
read
a
lot
of
literature
about
narrative
theory
Secondly
I
spend
a
lot
of
time
looking
more
closely
at
virtual
worlds
And
finally
I
am
building
my
own
virtual
universe
right
here
at
the
IT
C
30
year
old
Lisbeth
Klastrup
started
on
her
Ph
D
studies
in
October
1999
and
is
part
of
the
Design
Communication
and
Media
degree
Before
she
started
at
the
IT
C
she
finished
her
thesis
on
Interactive
Narratives
in
Literary
Science
at
the
University
of
Copenhagen
in
1999
I
applied
for
a
position
at
the
IT
C
because
I
was
attracted
by
the
interdisciplinary
environment
and
I
felt
it
would
be
exciting
to
help
build
a
new
research
environment
The
place
is
characterized
by
a
pioneer
spirit
innovation
and
hard
work
I
would
like
to
see
more
researchers
with
a
humanities
background
but
more
people
are
coming
and
the
university
is
looking
for
teachers
with
a
broad
educational
background
When
Lisbeth
Klastrup
has
completed
her
Ph
D
she
plans
to
combine
research
with
teaching
and
a
private
job
in
which
she
either
has
a
multimedia
publishing
house
or
works
with
virtual
worlds
in
companies
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
Application
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Application
10
Short
description
of
the
IT
University
further
information
in
Danish
can
be
obtained
from
the
11
homepage
Application
package
in
English
in
various
formats
form
and
guide
Word
2000
12
skemaENG
doc
13
vejlENG
doc
PostScript
14
skemaENG
ps
15
vejlENG
ps
Questions
can
be
directed
to
the
Ph
D
school
at
e
mail
16
phdadm
it
c
dk
or
telephone
45
3816
8888
Maintained
by
17
Lotte
Møller
lm
it
c
dk
18
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
Studies
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Studies
10
The
latest
proposal
for
the
Study
Scheme
Excerpt
from
the
Study
Scheme
Appendix
J
Scheme
for
biannual
reports
o
Latex
source
text
11
biannual
tex
To
fill
out
and
latex
translation
Example
12
biannual
karl
smart
pdf
o
Printable
blank
scheme
to
be
filled
out
by
hand
13
halvaars
blank
pdf
General
questions
regarding
Ph
D
studies
can
be
directed
to
14
phdadm
itu
dk
The
interim
Ph
D
Study
Council
Fritz
Henglein
15
henglein
itu
dk
Lecturer
SWU
Software
Development
Anker
Helms
Jørgensen
16
anker
itu
dk
Lecturer
DKM
Design
Communication
and
Media
Lecturer
17
malte
itu
dk
lektor
MMT
Multimedia
Technology
Lisbeth
Klastrup
18
klastrup
itu
dk
Ph
D
student
Ken
Larsen
19
kfl
itu
dk
Ph
D
student
assistant
Henrik
Reif
Andersen
20
hra
itu
dk
Lecturer
INT
Internet
Technology
chairman
Lotte
Møller
21
lm
itu
dk
AC
principal
22
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
23
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
Funding
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Funding
At
present
Ph
D
students
and
their
supervisors
each
receive
DKK
25
000
anno
2001
which
must
be
used
for
trips
summer
schools
and
petty
purchases
such
as
books
special
PC
accessories
etc
The
chair
of
the
Ph
D
Study
Council
can
grant
smaller
amounts
up
to
DKK
5
000
for
any
additional
expenses
If
the
required
amount
exceeds
DKK
5
000
an
application
must
be
sent
to
the
Ph
D
Study
Council
In
both
instances
an
application
must
be
made
which
includes
the
following
points
Applicant
s
Name
Ph
D
student
and
supervisor
Reason
for
example
a
trip
to
California
to
present
a
research
article
Outline
why
additional
funds
are
required
to
the
Ph
D
Study
Council
for
example
I
have
had
so
many
research
articles
accepted
that
I
have
spent
the
my
entire
allocation
for
trips
this
year
A
detailed
itemised
budget
eg
The
ticket
according
to
the
travel
agency
DKK
8
500
Student
s
fee
for
attending
the
conference
DKK
1200
Food
DKK
500
Signed
by
both
the
Ph
D
student
and
the
supervisor
The
supervisor
must
verify
with
a
signature
the
relevancy
of
the
activity
expenses
The
application
must
be
submitted
through
10
Lotte
Møller
room
1
38
to
the
chair
of
the
Ph
D
Study
Council
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
Courses
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Topics
in
Language
Based
Security
11
Advanced
algorithms
F2001
12
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
F2001
13
Constructive
Logic
Project
F2001
14
Streaming
video
for
wireless
networks
F2001
inter
menu
bund
gif
Courses
Here
is
a
list
of
available
Ph
D
courses
at
the
IT
University
of
Copenhagen
during
the
spring
semester
2001
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
by
15
Professor
James
Damon
May
14
17
2001
Streaming
video
for
wireless
networks
by
16
Professor
K
J
Ray
Liu
May
17
23
2001
Topics
in
Language
Based
Security
by
17
Assistant
Professor
Greg
Morrisett
June
11
15
2001
Courses
at
other
universities
18
Aalborg
University
19
Danmarks
Tekniske
Universitet
20
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
21
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
4
Courses
Topics
in
Language
Based
Security
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Topics
in
Language
Based
Security
by
11
Assistant
Professor
Greg
Morrisett
June
11
15
2001
Preliminary
course
description
When
secure
operating
systems
emerged
in
the
early
1970
s
the
primary
goal
was
to
isolate
users
processes
from
one
another
to
mediate
access
to
files
and
to
facilitate
fair
sharing
of
resources
Back
then
OS
kernels
were
small
and
system
components
were
updated
infrequently
from
tape
or
disk
A
system
administrator
had
a
good
idea
as
to
what
software
components
were
installed
where
to
get
trustworthy
components
and
how
to
configure
the
system
In
short
operating
systems
provided
a
good
architecture
for
ensuring
the
secure
operation
of
systems
In
contrast
today
s
desktops
are
running
primarily
by
a
single
user
so
almost
all
applications
run
with
the
same
privileges
Desktops
are
connected
by
fast
networks
that
allow
new
software
components
to
be
installed
from
various
sites
with
the
click
of
a
button
Worse
some
components
are
installed
and
executed
without
the
user
s
consent
or
knowledge
Furthermore
modern
operating
systems
consist
of
tens
of
millions
of
lines
of
code
code
that
in
practice
has
proven
to
be
buggy
And
finally
because
operating
systems
know
so
little
about
the
semantics
of
the
applications
they
are
running
they
have
no
opportunity
to
intervene
when
something
bad
happens
outside
the
kernel
As
a
result
today
s
operating
systems
do
not
protect
desktops
against
relatively
simple
attacks
e
g
Melissa
the
Love
Bug
etc
and
it
s
only
a
matter
of
time
until
we
are
hit
with
a
really
bad
virus
Consequently
researchers
are
re
visiting
security
architectures
to
find
solutions
that
take
the
modern
networked
world
into
account
Certain
programming
language
based
technologies
have
emerged
as
exciting
contenders
Interpreters
just
in
time
compilers
partial
evaluators
program
analyzers
type
checkers
proof
checkers
binary
rewriters
and
certifying
compilers
have
all
been
suggested
as
security
enforcement
mechanisms
that
in
principle
a
can
enforce
a
wider
range
of
fine
grained
least
privilege
security
policies
than
traditional
OS
based
reference
monitors
b
can
achieve
superior
performance
and
c
require
only
small
trustworthy
components
The
most
widely
known
exemplar
is
the
Java
Virtual
Machine
and
its
associated
Security
Manager
The
recently
announced
Microsoft
IL
and
associated
NET
architecture
is
similar
But
the
JVM
and
MSIL
architectures
suffer
from
a
number
of
shortcomings
and
are
in
danger
of
evolving
towards
the
pitfalls
of
operating
systems
We
will
take
a
quick
survey
through
exciting
language
based
security
technologies
and
access
their
potential
for
moving
out
of
the
lab
and
into
the
real
world
Among
the
topics
that
we
will
cover
1
what
security
policies
can
we
hope
to
enforce
2
language
based
reference
monitors
3
the
role
of
type
systems
in
security
4
proof
carrying
code
and
certifying
architectures
Registration
Please
contact
12
Lotte
Møller
for
registration
and
help
for
booking
accommodation
The
lectures
are
free
of
charge
Credit
The
course
yields
2
ECTS
European
Credit
Transfer
System
Site
The
course
takes
place
at
13
the
IT
University
of
Copenhagen
Glentevej
67
DK
2400
NV
Copenhagen
Denmark
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
4
Courses
Advanced
algorithms
F2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Advanced
algorithms
F2001
Get
further
information
about
the
course
11
here
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
4
Courses
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
F2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Scale
based
Geometry
and
Singularities
for
Computer
Imaging
May
14
17
2001
at
the
IT
University
of
Copenhagen
This
series
of
lectures
will
concern
scale
based
geometry
as
applied
to
computer
images
For
various
problems
in
computer
imaging
we
wish
to
be
able
to
analyze
the
geometry
of
the
objects
in
the
image
In
order
that
geometric
structures
associated
to
objects
in
an
image
can
be
used
for
various
purposes
they
should
satisfy
certain
basic
properties
which
include
the
following
1
They
should
apply
to
discrete
real
world
objects
and
to
the
mathematical
objects
which
model
them
which
include
nondifferentiable
functions
measures
etc
2
Genericity
This
means
that
most
images
have
associated
geometric
structures
which
exhibit
local
properties
described
by
a
finite
catalogue
of
possibilities
3
Structural
Stability
These
structures
must
be
constructed
in
the
presence
of
noise
and
various
distortions
Hence
the
structure
should
be
robust
i
e
the
structural
properties
should
remain
unchanged
under
sufficiently
small
perturbations
4
Generic
Transitions
Variations
in
the
structure
occurring
for
images
changing
with
one
or
5
The
methods
should
be
applicable
to
features
as
well
as
raw
images
The
lectures
will
explain
how
the
introduction
of
scale
together
with
the
methods
of
singularity
theory
provide
rigorous
mathematical
results
establishing
the
list
of
properties
for
a
large
class
of
possible
geometric
structures
and
demonstrating
the
applicability
to
specific
ones
First
we
consider
what
exactly
genericity
means
and
what
it
doesn
t
mean
We
will
explain
how
the
traditional
methods
of
singularity
theory
using
transversality
theory
leads
to
generic
properties
However
genericity
requires
that
we
place
a
topology
on
the
space
of
functions
measures
etc
modeling
the
images
Even
for
images
defined
by
smooth
functions
the
topology
for
genericity
does
not
match
traditional
mathematical
ideas
for
closeness
of
images
More
generally
if
we
wish
to
allow
images
to
be
defined
by
general
nondifferentiable
functions
then
the
stability
in
the
classical
framework
will
fail
Both
of
these
problems
are
overcome
t
hrough
the
introduction
of
scale
The
method
of
Gaussian
blurring
introduces
the
notion
of
scale
and
is
the
prototype
for
a
large
class
of
scaling
kernels
for
which
we
can
apply
the
methods
of
singularity
theory
These
allow
us
to
pass
from
methods
designed
for
idealized
problems
involving
differentiable
functions
such
as
the
Blum
medial
axis
and
Canny
edges
to
more
general
versions
applicable
to
real
world
problems
We
explain
how
the
traditional
methods
of
singularity
theory
must
be
modified
and
what
they
yield
We
illustrate
with
a
number
of
explicit
examples
how
the
results
about
generic
properties
of
local
structures
stability
and
generic
transitions
can
be
obtained
These
include
both
edge
and
medial
scale
based
geometric
structures
Course
material
Ideas
from
the
following
book
and
papers
will
be
presented
at
the
course
Although
not
a
prerequisite
you
might
want
to
look
through
the
introduction
part
of
the
material
prior
to
the
course
The
course
will
not
scrutinize
every
detail
in
these
papers
but
will
explain
the
highlights
and
main
ideas
from
them
as
well
as
from
other
material
Bruce
and
Giblin
Curves
and
Singularities
ISBN
0
521
42999
4
J
N
Damon
Ridges
and
Cores
for
Two
Dimensional
Images
Jour
Math
Imag
and
Vision
10
1999
163
174
J
N
Damon
Generic
Structure
of
Two
Dimensional
Images
under
Gaussian
Blurring
SIAM
Jour
Appl
Math
59
1998
97
138
J
N
Damon
Singularities
with
Scale
Threshold
and
Discrete
Functions
Exhibiting
Generic
Properties
Proc
Int
Workshop
on
Real
and
Complex
Singularities
Sao
Carlos
Maria
Ruas
Ed
Math
Contemp
vol
12
1997
45
65
Lecturer
James
N
Damon
is
professor
in
Mathematics
at
University
of
North
Carolina
Chapel
Hill
since
1983
He
graduated
as
Ph
D
from
Harvard
with
John
Mather
as
supervisor
in
1972
He
has
developed
the
singularity
theory
of
solutions
to
differential
equations
This
constitutes
when
applied
to
the
heat
equation
the
mathematical
basis
of
feature
detection
in
Gaussian
scale
space
Please
see
11
http
www
math
unc
edu
Faculty
jndamon
Registration
Please
contact
12
Lotte
Møller
for
registration
and
help
for
booking
accommodation
The
lectures
are
free
of
charge
Credit
The
course
yields
2
ECTS
European
Credit
Transfer
System
Site
The
course
takes
place
at
13
the
IT
University
of
Copenhagen
Glentevej
67
DK
2400
NV
Copenhagen
Denmark
Further
information
Up
to
date
information
will
be
provided
at
14
http
www
it
c
dk
pub
db
425
html
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
4
Courses
Constructive
Logic
Project
F2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Constructive
Logic
Project
F2001
In
spring
2001
Lars
Birkedal
is
giving
a
PhD
course
entitled
Constructive
Logic
Project
You
can
find
a
description
of
the
course
11
here
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Internet
Technology
More
about
Internet
Technology
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Read
more
about
Internet
Technology
See
the
11
course
catalog
for
a
list
of
all
courses
currently
on
offer
at
the
IT
University
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
Software
Development
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Interview
Head
of
Studies
11
Interview
Lecturer
12
More
about
Software
Development
inter
menu
bund
gif
Master
of
Science
Software
Development
Graduates
of
the
Master
of
Science
Software
Development
degree
are
able
to
create
new
IT
applications
modify
and
use
existing
software
develop
new
software
adapt
to
new
technologies
and
methods
in
the
IT
sector
The
course
consists
of
a
core
curriculum
in
the
following
areas
programming
software
technology
system
development
and
several
electives
which
are
offered
by
the
Software
Development
degree
and
other
degrees
at
the
IT
C
The
degree
in
Software
Development
ranges
from
fundamental
theories
of
program
development
to
the
application
of
acknowledged
development
tools
and
from
theories
of
the
relationship
between
people
and
computers
to
practical
knowledge
of
user
interfaces
The
degree
in
Software
Development
focuses
on
educating
the
system
developers
of
the
future
IT
project
leaders
IT
managers
IT
advisors
researchers
and
educators
in
the
software
sphere
The
M
Sc
degree
in
Software
Development
takes
place
at
the
IT
C
It
is
hosted
by
the
IT
C
in
collaboration
with
13
the
Royal
Veterinary
and
Agricultural
University
of
Denmark
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Software
Development
Interview
Head
of
Studies
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Soren
Lauesen
Professor
Soren
Lauesen
Combining
theory
and
practice
My
vision
for
the
IT
University
is
a
tertiary
institution
where
students
combine
theory
and
practice
Soren
Lauesen
said
The
students
will
learn
the
stuff
that
IT
professionals
need
and
they
have
a
theoretical
basis
that
helps
them
continue
the
life
long
education
on
their
own
They
become
broad
minded
and
don
t
just
live
in
the
IT
world
but
understand
and
cooperate
successfully
with
people
from
other
professions
Bridging
the
gap
The
IT
C
is
a
unique
opportunity
to
bridge
the
gap
between
IT
and
other
disciplines
I
have
seen
this
gap
in
many
companies
where
talented
IT
people
cannot
communicate
with
talented
people
in
other
areas
I
have
successfully
helped
bridge
the
gap
between
economy
and
IT
I
am
also
interested
in
biology
psychology
culture
and
many
other
things
and
I
have
long
time
experience
from
the
IT
industry
as
well
as
research
and
teaching
A
short
biography
of
Soren
Lauesen
Born
in
1942
Master
of
Science
in
Mathematics
and
Physics
from
the
University
of
Copenhagen
1965
In
1962
he
started
in
the
IT
industry
where
he
developed
many
kinds
of
products
ranging
from
bus
scheduling
compilers
and
operating
systems
to
computer
control
of
electricity
distribution
in
Denmark
His
first
assignment
in
1962
was
to
make
a
program
that
could
beat
any
human
in
a
game
developed
by
Piet
Hein
He
has
worked
for
a
Danish
computer
manufacturer
Regnecentralen
and
two
multi
national
companies
ABB
and
NCR
Since
1985
Soren
Lauesen
has
been
a
professor
He
has
co
founded
three
educations
computer
science
at
the
University
of
Copenhagen
economics
computer
science
at
the
Copenhagen
Business
School
and
the
IT
educations
at
the
IT
C
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Software
Development
Interview
Lecturer
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Focus
on
principles
Lecturer
Fritz
Henglein
Fritz
Henglein
The
Software
Development
degree
is
concerned
with
developing
effective
software
of
high
quality
Software
Development
students
receive
an
insight
into
the
fundamental
principles
of
programming
and
development
processes
and
combine
these
with
practical
application
Fritz
Henglein
said
He
was
involved
in
the
development
of
the
Software
Development
program
at
ITU
from
the
beginning
until
recently
as
Head
of
Software
Development
and
Head
of
Studies
at
ITU
Fritz
Henglein
sees
three
types
of
academic
profiles
for
students
completing
the
Software
Development
degree
The
first
profile
emphasises
software
processes
system
specifications
and
interaction
between
people
The
second
profile
focuses
on
programming
and
construction
of
software
systems
The
third
profile
concerns
theoretical
and
mathematical
fundamentals
for
programming
and
software
development
It
is
important
that
we
incorporate
a
variety
of
profiles
that
can
be
tailored
to
the
individual
student
Therefore
it
is
crucial
to
attract
students
with
diverse
educational
backgrounds
including
the
mathematical
and
natural
sciences
the
social
sciences
and
arts
and
humanities
We
create
synergy
and
build
on
valuable
competencies
by
having
students
with
diverse
backgrounds
This
provides
a
stimulating
and
vibrant
learning
environment
with
motivated
and
independent
students
Fritz
Henglein
said
A
short
biography
of
Fritz
Henglein
39
years
old
Master
of
Science
M
S
Rutgers
University
New
Jersey
1986
Research
Scientist
New
York
University
1987
89
IBM
Research
1988
Doctor
of
Philosophy
Ph
D
in
computer
science
Rutgers
University
1989
Postdoctorate
fellow
Utrecht
University
and
New
York
University
1989
1990
Researcher
Assistant
and
Associate
Professor
at
the
Department
of
Computer
Science
at
the
University
of
Copenhagen
1991
1999
President
Hafnium
ApS
1999
present
Associate
Professor
at
The
IT
University
of
Copenhagen
ITU
1999
present
Head
of
Studies
at
ITU
2000
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Software
Development
More
about
Software
Development
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Read
more
about
Software
Development
See
the
11
course
catalog
for
a
list
of
all
courses
currently
on
offer
at
the
IT
University
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
Multimedia
Technology
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Head
of
Studies
11
More
about
Multimedia
Technology
inter
menu
bund
gif
Master
of
Science
Multimedia
Technology
The
Master
of
Science
Multimedia
Technology
is
a
scientific
degree
which
provides
the
graduate
with
the
necessary
technical
skills
for
constructing
and
programming
multimedia
applications
The
degree
combines
cutting
edge
technologies
with
established
IT
solutions
the
course
focuses
on
subjects
such
as
Speech
Technology
Image
Analysis
Computer
Graphics
Signal
Processing
and
Interactive
3D
Graphics
used
in
the
medical
and
industrial
sphere
The
degree
is
concerned
with
the
principles
Pattern
Recognition
Automatic
Image
Analysis
and
Signal
Treatment
The
degree
also
deals
with
theories
about
Human
Perception
and
contains
courses
about
the
use
of
commercial
and
or
research
based
software
for
industry
The
graduates
gain
a
thorough
knowledge
of
basic
technologies
and
systems
and
will
be
able
to
develop
and
maintain
such
systems
Multimedia
graduates
are
able
to
work
with
film
TV
medical
systems
transmissions
of
image
and
sound
industrial
automatisation
and
geographical
information
systems
The
degree
in
Multimedia
Technology
is
offered
in
collaboration
with
the
12
Technical
University
of
Denmark
Copenhagen
and
the
13
University
of
Copenhagen
Most
of
teaching
takes
place
at
the
IT
University
but
a
few
courses
might
take
place
at
the
Technical
University
of
Denmark
or
the
University
of
Copenhagen
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Multimedia
Technology
Head
of
Studies
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
John
Aa
Sørensen
The
technology
behind
IT
solutions
Head
of
Studies
senior
lecturer
John
Aa
Sørensen
There
is
a
large
need
for
people
with
knowledge
on
the
technology
of
IT
systems
so
we
can
participate
in
the
development
of
new
systems
not
only
by
applying
existing
technology
from
foreign
countries
but
also
by
taking
part
in
the
further
development
of
this
technology
states
John
Aa
Sørensen
Associate
Professor
the
Multimedia
Technology
MMT
Program
The
Program
enrolls
students
with
a
comprehensive
technical
background
as
well
as
students
with
no
such
background
In
the
MMT
Program
the
student
can
expand
her
his
individual
background
One
of
the
major
aims
of
the
courses
is
to
further
explain
and
elucidate
the
theory
given
in
the
courses
through
practical
hands
on
exercises
exemplifying
what
type
of
applications
can
be
designed
from
the
course
To
obtain
the
largest
number
of
specializations
some
courses
from
the
Department
of
Computer
Science
at
the
University
of
Copenhagen
and
the
Technical
University
of
Denmark
can
also
be
included
in
the
curriculum
John
Aa
Sørensen
gives
a
few
examples
on
projects
of
relevance
to
candidates
from
the
MMT
Program
When
TV
transmits
from
Tour
de
France
it
would
be
very
attractive
if
the
advertisements
positioned
along
the
French
roads
could
be
substituted
by
Danish
advertisements
through
the
application
of
multimedia
technology
so
the
Danish
TV
user
will
receive
an
advertisement
from
a
bank
and
the
French
user
an
advertisement
of
quality
vine
In
relation
to
the
film
industry
digital
processing
of
film
is
an
important
future
area
e
g
in
connection
with
further
development
of
the
technology
used
in
Jurassic
Park
or
Titanic
Another
important
example
is
projects
on
increasingly
important
systems
which
use
images
and
sound
for
communication
between
geographical
distant
places
A
short
biography
of
John
Aa
Sørensen
Master
of
Science
in
Electrical
Engineering
from
the
Technical
University
of
Denmark
TUD
in
1975
and
Ph
D
in
Electronics
from
TUD
in
1982
Assistant
and
Associate
Professor
at
TUD
and
from
November
2000
Associate
Professor
at
IT
C
Among
others
he
has
carried
out
research
and
teaching
within
the
area
of
signal
processing
and
its
applications
within
coding
and
noise
reduction
of
speech
signals
and
applications
in
systems
for
clinical
diagnosis
His
field
of
interest
is
methods
and
applications
of
Multimedia
Signal
Processing
He
participates
in
international
cooperation
within
the
framework
of
IEEE
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Multimedia
Technology
More
about
Multimedia
Technology
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Read
more
about
Multimedia
Technology
See
the
11
course
catalog
for
a
list
of
all
courses
currently
on
offer
at
the
IT
University
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
Interdisciplinary
IT
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
More
about
Interdisciplinary
IT
inter
menu
bund
gif
Master
of
Science
Interdisciplinary
IT
The
Master
of
Science
Interdisplinary
IT
degree
places
a
heavy
emphasis
on
combining
students
existing
educational
backgrounds
with
a
sound
knowledge
of
information
technology
The
degree
also
provides
an
insight
into
how
IT
systems
are
designed
and
constructed
The
graduate
will
be
able
to
apply
IT
solutions
in
a
wide
range
of
areas
and
use
IT
in
new
contexts
to
solve
assignments
The
graduate
will
be
able
to
work
independently
critically
and
proactively
on
a
wide
range
of
IT
projects
The
degree
focuses
on
providing
each
student
with
their
own
unique
academic
profile
as
well
as
broad
long
term
qualifications
based
on
theoretical
and
methodical
foundations
The
majority
of
the
courses
is
undertaken
at
the
11
University
of
Roskilde
which
manages
the
daily
administration
and
planning
of
the
degree
To
some
extent
it
is
possible
to
enrol
in
courses
from
other
degrees
at
the
IT
C
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Master
of
Science
IT
4
Interdisciplinary
IT
More
about
Interdisciplinary
IT
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Read
more
about
Interdisciplinary
IT
See
the
11
course
catalog
for
a
list
of
all
courses
currently
on
offer
at
the
IT
University
Further
information
about
this
degree
including
the
academic
guidelines
can
be
obtained
from
12
the
webpage
for
Interdisciplinary
IT
at
the
University
of
Roskilde
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
Master
of
IT
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Master
of
Information
Technology
The
Master
of
Information
Technology
is
a
three
year
part
time
degree
aimed
at
students
who
participate
in
the
workforce
Students
can
choose
between
four
4
Master
of
IT
degrees
Design
Communication
and
Media
Internet
Technology
Multimedia
Technology
Software
Development
The
Master
degree
comprises
manadatory
courses
optional
courses
and
a
final
project
The
Master
degree
is
the
equivalent
of
one
and
a
half
years
full
time
study
load
There
are
activities
two
days
a
week
for
twelve
weeks
each
semester
The
Master
of
Information
Technology
degree
costs
DKK
75
000
for
all
six
semesters
and
is
regulated
by
the
Danish
Government
s
law
for
open
education
Course
prerequisites
include
a
Bachelor
degree
and
two
years
of
work
experience
Any
Bachelor
degree
is
considered
a
course
prerequisite
The
Master
of
IT
degree
is
shorter
than
the
Master
of
Science
degree
Both
degrees
contain
the
same
professional
elements
but
the
Master
of
IT
does
not
include
a
final
thesis
On
the
other
hand
the
theoretical
substance
is
higher
in
the
Master
degree
than
in
the
Graduate
Diploma
degree
You
can
find
more
information
about
the
content
of
each
Master
of
IT
degree
by
reading
the
description
of
each
corresponding
Master
of
Science
degree
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
Graduate
Diploma
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
Head
of
Studies
inter
menu
bund
gif
Graduate
Diploma
The
Graduate
Diploma
degree
is
a
two
year
part
time
course
The
Diploma
course
corresponds
to
one
year
s
full
time
study
load
split
between
four
semesters
The
first
three
semesters
consists
of
course
work
Students
will
produce
a
final
project
in
the
last
semester
Course
prerequisites
include
two
years
of
work
experience
and
a
tertiary
degree
The
Graduate
Diploma
degree
costs
DKK
60
000
for
all
four
semesters
it
is
regulated
by
the
Danish
Government
s
Law
for
open
education
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
3
Graduate
Diploma
Head
of
Studies
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Peter
Carstensen
Understanding
the
technology
Head
of
Studies
Peter
Carstensen
The
Graduate
Diploma
degree
supplements
students
existing
experiences
from
the
workforce
with
a
wide
range
of
IT
skills
The
degree
is
designed
to
provide
students
with
a
thorough
understanding
of
IT
technologies
and
how
these
are
designed
Graduates
will
gain
in
depth
knowledge
of
the
possibilities
and
limitations
of
the
IT
technology
lecturer
Peter
Carstensen
of
the
Graduate
diploma
course
said
For
instance
graduates
will
be
qualified
to
assess
and
recommend
the
most
suitable
IT
structure
for
a
specific
company
The
aim
of
the
degree
is
to
create
a
close
connection
with
the
students
working
life
If
possible
the
students
will
write
projects
which
directly
relates
to
their
workplace
This
makes
the
theoretical
knowledge
relevant
and
interesting
while
the
company
benefits
from
having
an
employee
attending
the
course
The
Graduate
Diploma
degree
carries
a
heavy
study
load
Part
of
course
homework
will
be
group
based
A
short
biography
of
Peter
Carstensen
42
years
old
qualified
computer
scientist
from
the
Department
of
Computer
Science
at
the
Universtity
of
Copenhagen
1985
1978
1990
employed
in
the
industrial
sector
in
Sparekassen
Datacenter
Denmark
and
with
Christian
Rovsing
Denmark
as
a
system
developer
designer
and
consultant
1991
1997
at
the
Risø
Research
Centre
Roskilde
working
on
the
research
project
the
interaction
of
humans
and
computer
1994
Ph
D
1997
1999
at
the
Technical
University
of
Denmark
research
leader
of
a
multimedia
lab
1999
lecturer
at
the
IT
C
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
Single
Subjects
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Single
Subjects
The
IT
University
offers
individual
subjects
if
places
are
available
Only
students
who
have
completed
a
bachelor
degree
and
are
currently
enrolled
in
a
Master
degree
at
a
tertiary
institution
can
be
considered
for
admission
For
further
information
please
contact
9
the
Student
Advisory
Council
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
EU
course
credit
transfer
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
European
Union
Course
Credit
Transfers
The
European
Community
Course
Credit
Transfer
System
ECTS
is
designed
to
help
students
in
the
European
Union
and
the
European
Free
Trade
Association
EFTA
to
participate
in
degrees
at
international
universities
The
IT
University
uses
the
ECTS
point
system
to
directly
relate
our
courses
on
offer
to
those
at
international
universities
One
year
s
full
time
study
load
corresponds
to
60
ECTS
points
This
means
that
one
semester
in
a
Master
of
Science
degree
corresponds
to
30
ECTS
whereas
one
semester
in
the
Master
of
IT
and
Graduate
Diploma
degree
corresponds
to
15
ECTS
points
A
general
rule
of
thumb
is
that
one
course
at
the
IT
C
corresponds
to
7
5
ECTS
points
For
further
information
please
contact
9
the
Student
Advisory
Council
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
Courses
on
offer
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
Studies
and
degrees
International
students
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
International
students
International
students
are
eligible
to
apply
to
study
at
the
IT
University
of
Copenhagen
However
most
courses
require
knowledge
of
Danish
Click
here
to
download
an
9
application
form
in
Danish
Courses
taught
in
English
The
degree
International
10
Master
of
Science
in
Information
Technology
multimedia
technology
is
taught
in
English
Click
here
to
download
an
11
application
package
in
English
for
the
multimedia
technology
degree
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Vacancies
13
Associate
or
Assistant
Professorships
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
13
Associate
or
Assistant
Professorships
The
IT
University
of
Copenhagen
invites
applications
for
13
vacant
Associate
or
Assistant
Professorships
The
IT
University
was
created
by
the
Danish
Ministry
of
Research
in
1999
to
boost
research
and
higher
education
in
Information
Technology
in
the
Oresund
Region
The
IT
University
offers
graduate
studies
post
graduate
studies
and
Open
University
using
e
learning
The
first
students
were
admitted
September
1999
By
now
more
than
700
graduate
students
have
been
admitted
More
than
130
people
teach
or
conduct
research
at
the
IT
University
There
are
currently
20
PhD
students
and
the
Faculty
consists
of
19
Assistant
and
Associate
Professors
The
IT
University
continues
to
expand
rapidly
Each
new
Assistant
or
Associate
Professor
shall
belong
to
one
of
the
following
four
research
departments
The
Department
of
Design
and
Use
of
IT
conducts
research
in
systems
development
and
the
interplay
between
IT
its
users
and
their
work
practice
The
Department
of
Digital
Aesthetics
and
Communication
addresses
aesthetic
cultural
social
and
communicative
aspects
of
IT
phenomena
The
Department
of
Innovation
conducts
research
in
various
areas
of
computer
science
with
the
aim
of
taking
the
research
all
the
way
to
being
new
innovative
technology
Subjects
include
computer
vision
and
graphics
multimedia
technology
programming
language
technology
formal
verification
embedded
software
and
interaction
technologies
The
Theory
Department
conducts
research
in
algorithms
and
complexity
theory
and
in
semantics
of
logic
and
programming
languages
Faculty
is
wanted
primarily
within
the
following
areas
Mobility
theory
of
mobility
software
platforms
security
m
business
cultural
and
social
impact
mobile
usability
Media
and
Communication
design
of
interactive
systems
digital
media
digital
aesthetics
convergence
of
technologies
digital
discourse
interaction
technologies
Software
technology
databases
programming
and
programming
languages
software
engineering
operating
systems
software
tools
and
architectures
component
based
systems
embedded
software
verification
Software
applications
design
methodologies
IT
and
organisations
IT
strategies
diffusion
and
adoption
of
IT
computer
supported
co
operative
work
human
computer
interaction
and
usability
Theory
application
of
mathematical
logic
and
category
theory
to
computer
science
especially
concerning
the
semantics
of
programming
languages
and
type
theories
and
algorithms
and
complexity
theory
Virtual
Reality
VR
infrastructure
basic
technologies
contents
and
use
Scientific
Leader
of
Lab
We
seek
an
Associate
Professor
who
will
establish
and
run
a
new
virtual
reality
laboratory
within
the
Department
of
Innovation
The
Associate
Professorship
is
a
tenured
position
and
the
Assistant
Professorship
is
an
untenured
position
for
a
3
year
period
Both
positions
are
with
research
and
teaching
obligations
The
teaching
may
involve
diploma
students
MSc
students
and
PhD
students
Some
of
the
courses
are
specifically
for
part
time
students
at
the
Open
University
The
positions
can
be
filled
at
either
Assistant
or
Associate
Professor
level
depending
on
the
qualifications
of
the
applicants
Since
the
IT
University
is
young
we
seek
candidates
who
are
dedicated
to
the
task
of
building
a
new
organisation
Associate
professor
level
Responsibilities
Research
including
responsibility
for
the
academic
development
of
the
research
field
in
question
Research
management
initiation
and
management
of
research
projects
pedagogical
instruction
supervision
of
PhD
students
and
Assistant
Professors
and
assessment
work
Teaching
preparation
and
participation
in
examinations
at
the
IT
University
of
Copenhagen
Educational
development
and
other
relevant
assignments
at
the
IT
University
of
Copenhagen
Work
of
administrative
nature
The
Associate
Professor
is
expected
to
contribute
to
the
development
of
the
research
profile
of
the
IT
University
Furthermore
the
Associate
Professor
is
expected
to
participate
in
maintaining
and
improving
the
international
research
level
of
the
IT
University
and
in
the
building
of
a
new
organisation
Qualifications
Qualifications
must
correspond
to
the
level
of
Assistant
Professor
with
teaching
obligations
based
on
previous
employment
or
the
equivalent
Applicants
must
be
able
to
document
an
unusually
strong
record
within
university
level
research
and
teaching
as
well
as
research
production
at
an
international
level
Emphasis
is
placed
on
the
applicant
s
research
qualifications
in
relation
to
the
research
area
Furthermore
applicants
must
document
pedagogical
qualifications
or
other
material
for
the
evaluation
of
the
pedagogical
level
Assistant
Professors
who
apply
for
a
position
as
Associate
Professor
must
enclose
an
evaluation
of
the
pedagogical
qualifications
obtained
during
the
employment
as
Assistant
Professor
Applicants
without
teaching
experience
at
the
Associate
Professor
level
or
the
equivalent
will
be
appointed
on
a
probationary
period
of
up
to
1
year
Assistant
Professor
level
Responsibilities
Research
including
responsibility
for
the
academic
development
of
the
research
field
in
question
Teaching
preparation
and
participation
in
examinations
at
the
IT
University
of
Copenhagen
Educational
development
and
other
relevant
assignments
at
the
IT
University
of
Copenhagen
Work
of
administrative
nature
Qualifications
Qualifications
must
correspond
to
the
PhD
level
based
on
previous
employment
or
the
equivalent
Emphasis
is
placed
on
the
applicant
s
research
potential
which
means
that
the
researcher
with
a
large
research
potential
may
be
preferred
to
the
researcher
with
a
large
research
production
The
applicant
is
obliged
to
participate
in
the
Assistant
Professor
development
program
of
teaching
principles
and
methods
at
the
IT
University
in
order
to
elaborate
a
written
evaluation
of
the
pedagogical
qualifications
at
the
termination
of
the
employment
as
Assistant
Professor
For
further
information
please
contact
For
the
Department
of
Design
and
Use
of
IT
Associate
Professor
PhD
Peter
Carstensen
phone
45
3816
8830
e
mail
9
carstensen
it
c
dk
For
the
Department
of
Digital
Aesthetics
and
Communication
Associate
Professor
PhD
Anker
Helms
Jørgensen
phone
45
3816
8888
e
mail
10
anker
it
c
dk
For
the
Department
of
Innovation
Associate
Professor
PhD
Henrik
Reif
Andersen
phone
45
3816
8827
e
mail
11
hra
it
c
dk
For
the
Theory
Department
Assistant
Professor
PhD
Lars
Birkedal
phone
45
3816
8868
e
mail
12
birkedal
it
c
dk
Appointment
and
salary
will
be
in
accordance
with
the
Ministry
of
Finance
s
agreement
with
the
Central
Academic
organisation
with
the
possibility
of
negotiating
extra
allowances
based
on
qualifications
Applications
must
include
1
A
complete
numbered
list
of
publications
with
asterisks
marking
those
publications
to
be
taken
into
account
at
the
evaluation
If
you
apply
for
an
Associate
Professorship
you
can
mark
a
maximum
of
10
publications
If
you
apply
for
an
Assistant
Professorship
only
you
can
mark
a
maximum
of
5
publications
2
Copies
of
those
publications
marked
with
an
3
Co
author
statements
clarifying
the
applicant
s
contribution
to
the
submitted
publications
with
more
than
one
author
4
Assistant
Professor
level
any
documentation
of
previous
teaching
experience
Associate
Professor
level
documentation
of
previous
teaching
experience
for
assessment
of
pedagogical
qualifications
Instruction
is
followed
by
the
job
advertisement
5
Transcripts
and
CV
An
Assessment
Committee
will
be
appointed
to
assess
the
applications
The
applicants
will
receive
only
the
part
of
the
final
recommendation
concerning
the
assessment
of
their
qualifications
The
application
in
Danish
or
English
must
state
explicitly
a
whether
the
application
is
for
Assistant
Professor
Associate
Professor
or
both
and
b
the
reference
number
s
of
the
research
department
s
with
whom
the
appointment
is
sought
see
below
The
application
including
enclosures
in
six
copies
and
the
marked
publications
in
six
copies
must
be
submitted
to
The
IT
University
of
Copenhagen
Att
Kirsten
Talbro
Laraignou
Glentevej
67
DK
2400
Copenhagen
NV
Denmark
Marked
Associate
Professorship
or
Assistant
Professorship
or
both
and
reference
number
s
see
below
For
the
Department
of
Design
and
Use
of
IT
ref
no
33
0525
For
the
Department
of
Digital
Aesthetics
and
Communication
ref
no
33
0522
For
the
Department
of
Innovation
ref
no
33
0523
For
the
Theory
Department
ref
no
33
0524
Application
deadline
1
May
2001
12
00
noon
Applications
received
electronically
will
not
be
taken
into
consideration
All
interested
researchers
irrespective
of
age
sex
race
religion
or
nationality
are
invited
to
apply
for
the
position
Documentation
and
information
on
pedagogical
qualifications
Associate
Professor
level
The
IT
University
of
Copenhagen
requests
that
the
application
is
provided
with
the
below
mentioned
information
for
the
assessment
of
the
applicant
s
pedagogical
qualifications
1
Outline
of
the
instruction
activities
over
the
last
3
years
at
least
Taught
subjects
and
level
Bachelor
Master
PhD
or
other
levels
Extend
of
the
instruction
periods
and
number
of
students
Sort
of
the
instruction
lectures
group
instruction
tutorials
Internet
based
instruction
distance
teaching
Applied
pedagogical
methods
Language
used
Evaluation
and
examination
forms
2
List
of
any
instructional
materials
the
applicant
may
have
written
3
Information
on
participation
in
development
of
teaching
elaboration
of
course
plans
etc
4
Management
and
supervision
of
part
time
instructors
5
Administration
of
the
instruction
including
administrative
responsibilities
6
Evaluation
of
the
pedagogical
qualifications
at
the
termination
of
the
employment
as
Assistant
Professor
in
case
7
Student
evaluations
of
the
instruction
other
kind
of
evaluations
from
colleagues
experts
or
others
8
Reflections
on
the
described
instruction
and
perspectives
for
future
instruction
with
regard
to
the
academic
content
course
and
pedagogics
9
Other
relevant
information
for
the
documentation
of
pedagogical
qualifications
The
information
may
be
organised
otherwise
but
the
same
level
of
details
is
requested
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Vacancies
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
Contact
Us
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
8
Contact
Information
inter
menu
bund
gif
Contact
information
Address
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
Denmark
Phone
45
38
16
88
88
Fax
45
38
16
88
99
Information
for
students
Student
advisory
office
9
Studievejledningen
it
c
dk
Media
Relations
Journalist
Mikael
Kjærbye
10
mk
it
c
dk
Vacant
staff
positions
Human
Resources
Manager
Kirsten
Talbro
Laraignou
11
ktl
it
c
dk
Corporate
Relations
Mikael
Kjærbye
12
mk
it
c
dk
Public
lectures
BuzzTalks
Tanja
Danner
13
td
it
c
dk
Buildings
and
Maintenance
Head
of
dept
of
Buildings
and
Internal
Service
Margit
Achen
14
margit
it
c
dk
Comments
and
suggestions
regarding
the
web
site
Webmaster
15
wwwadm
it
c
dk
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Contact
Us
Contact
Information
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Contact
Information
Address
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
Denmark
Phone
45
38
16
88
88
Fax
45
38
16
88
99
Information
for
students
Student
advisory
office
9
Studievejledningen
it
c
dk
Media
relations
Journalist
Mikael
Kjærbye
10
mk
it
c
dk
Vacant
staff
positions
Human
Resources
Manager
Kirsten
Talbro
Laraignou
11
ktl
it
c
dk
Corporate
relations
Mikael
Kjærbye
12
mk
it
c
dk
BuzzTalks
Tanja
Danner
13
td
it
c
dk
Buildings
and
Maintenance
Head
of
dept
of
Buildings
and
Internal
Service
Margit
Achen
14
margit
it
c
dk
Comments
and
suggestions
regarding
the
web
site
Webmaster
15
wwwadm
it
c
dk
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
Media
info
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
inter
menu
bund
gif
Media
Information
Media
information
Journalist
and
webeditor
Mikael
Kjaerbye
Telephone
45
38
16
88
80
8
mk
it
c
dk
Media
releases
IT
University
of
Copenhagen
opens
doors
for
international
students
18
January
2001
9
word
10
text
and
11
pdf
IT
University
takes
the
lead
with
launch
of
LinuxLab
dk
1
December
2000
12
word
13
text
and
14
pdf
Online
pictures
15
President
Mads
Tofte
16
The
IT
University
17
Information
meeting
1
18
Information
meeting
2
19
Information
meeting
3
20
In
the
class
room
1
21
In
the
class
room
2
22
In
the
class
room
3
23
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
24
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Ph
D
Studies
4
Courses
Streaming
video
for
wireless
networks
F2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
Streaming
video
for
wireless
networks
May
17
23
2001
at
the
IT
University
of
Copenhagen
Course
objective
The
objective
of
this
course
is
to
introduce
the
major
standards
and
signal
processing
methods
necessary
for
video
streaming
systems
in
wireless
networks
This
includes
the
MPEG
family
of
standards
for
transporting
video
images
audio
speech
and
graphics
through
a
network
and
carrying
out
joint
source
and
channel
coding
for
a
wireless
channel
The
course
is
scheduled
as
a
series
of
lectures
before
noon
and
exercise
work
on
selected
course
material
in
the
afternoon
Course
period
Thursday
17
Wednesday
23
May
2001
The
lecturer
Dr
Liu
is
a
Professor
of
Electrical
and
Computer
Engineering
Department
and
Institute
for
Systems
Research
of
University
of
Maryland
College
Park
He
has
a
PhD
degree
from
the
University
of
California
Los
Angeles
in
electrical
engineering
His
research
interests
span
broad
aspects
of
signal
processing
and
communications
including
signal
processing
algorithms
and
architectures
image
and
video
processing
wireless
communications
and
networking
and
medical
and
biomedical
technology
He
holds
five
US
patents
and
has
published
over
200
papers
Among
others
he
received
the
Best
Paper
Award
from
IEEE
50th
Vehicular
Technology
Conference
IEEE
VTC
Amsterdam
1999
References
1
J
Chen
U
V
Koc
K
J
Ray
Liu
Design
of
Digital
Video
Coding
Systems
To
appear
Marcel
Dekker
2
M
T
Sun
A
Reibman
Compressed
Video
over
Networks
Macel
Dekker
2001
3
K
Ngan
C
W
Yap
K
T
Tan
Video
Coding
for
Wireless
Communication
Systems
Marcel
Dekker
2001
4
Research
papers
Course
schedule
Thursday
May
17
Source
Coding
for
Video
Friday
May
18
Recent
Multimedia
Standards
MPEG
1
2
4
and
H
263
Monday
May
21
Wireless
Channel
Model
Channel
Coding
Joint
Source
and
Channel
Coding
Error
Concealment
Error
Resilience
Tuesday
May
22
Advanced
Topics
Secure
Multicast
Communications
Wednesday
May
23
Advanced
Topics
Course
participants
The
course
is
targeted
for
Ph
D
students
in
Computer
Science
Informatics
or
Electrical
Engineering
advanced
level
Master
of
Science
students
in
the
above
areas
and
participants
from
industry
Some
exercises
use
the
c
programming
language
Course
credit
2
ECTS
European
Credit
Transfer
System
points
Course
site
IT
University
of
Copenhagen
Glentevej
67
2400
Copenhagen
Denmark
www
it
c
dk
Registration
and
further
information
Please
contact
11
Lotte
Møller
for
registration
To
a
limited
extent
she
can
assist
in
booking
accomodation
The
lectures
are
free
of
charge
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
Staff
and
research
10
Computer
Games
Digital
Textualities
11
The
IT
University
at
a
glance
inter
menu
bund
gif
Department
of
Digital
Aesthetics
and
Communication
The
department
at
a
glance
The
research
department
Digital
Aesthetics
and
Communication
DiAC
is
one
of
four
research
departments
at
the
IT
University
of
Copenhagen
The
department
addresses
aesthetic
cultural
social
and
communicative
aspects
of
IT
phenomena
DiAC
complements
the
other
research
departments
of
the
IT
University
that
cover
technical
and
organisational
aspects
of
IT
Research
projects
and
staffing
The
current
research
projects
address
e
books
computer
games
story
MOOs
digital
visual
style
user
experience
architecture
and
mental
workload
in
IT
work
The
staff
comprises
so
far
only
one
Associate
Professor
one
Assistant
Research
Professor
four
PhD
students
and
one
administrative
officer
However
we
expect
to
employ
four
more
PhD
students
in
the
nearest
future
but
rest
assured
we
plan
to
grow
considerably
Available
positions
The
IT
University
of
Copenhagen
is
expanding
and
positions
as
Associate
and
Assistant
Professor
post
docs
and
PhD
grants
will
be
announced
in
the
years
to
come
Please
keep
an
eye
on
our
website
in
the
future
as
we
will
be
growing
with
a
considerable
pace
over
the
next
years
Recent
event
On
March
1st
and
2nd
DiAC
hosted
the
conference
Computer
Games
Digital
Textuality
CGDT
The
event
attracted
160
participants
who
enjoyed
keynotes
by
Espen
Aarseth
Selmer
Bringsjord
and
Marie
Laure
Ryan
as
well
as
presentations
by
a
number
of
European
researchers
in
the
field
See
further
12
details
or
visit
the
13
conference
site
Contact
Head
of
Department
14
Anker
Helms
Jørgensen
15
anker
it
c
dk
Administrative
Officer
Trine
Eltang
16
eltang
it
c
dk
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Staff
and
research
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
home
inter
menu
bund
gif
The
staff
and
their
research
interests
The
staff
is
currently
very
small
but
we
plan
to
grow
considerably
in
the
years
to
come
11
Anker
Helms
Jørgensen
Associate
Professor
PhD
Head
of
Department
Anker
s
general
research
interest
is
usability
currently
focussing
on
mental
and
physical
workload
in
IT
work
He
earned
his
PhD
in
Human
Computer
Interaction
in
1983
Anker
has
worked
as
systems
developer
freelance
consultant
and
associate
professor
in
Human
Computer
Interaction
at
Dept
of
Psychology
at
Copenhagen
University
from
1987
to
1999
Ida
Engholm
PhD
Student
Ida
conducts
research
in
the
field
of
digital
design
Currently
she
s
writing
her
PhD
on
the
design
history
of
digital
media
The
aim
of
her
thesis
is
to
survey
the
development
of
graphical
design
at
the
internet
and
to
develop
a
theoretical
framework
for
analysis
of
digital
design
phenomena
Ida
holds
an
MA
in
Danish
Literature
and
Art
History
and
has
published
two
books
about
design
12
Jesper
Juul
PhD
Student
Jesper
s
primary
research
interest
is
computer
games
The
goal
of
his
PhD
project
is
to
help
establish
computer
games
and
partly
non
electronic
games
as
a
field
of
study
Jesper
holds
a
MA
in
Nordic
Language
and
Literature
and
has
developed
graphical
systems
multiplayer
games
and
art
installations
13
Lisbeth
Klastrup
PhD
Student
Lisbeth
s
research
field
is
virtual
worlds
interactive
story
environments
and
digital
literature
She
holds
a
master
in
Comparative
Literature
and
Media
Studies
from
University
of
Copenhagen
and
an
MA
in
Image
Studies
from
University
of
Kent
From
1999
2000
Lisbeth
is
writing
her
PhD
thesis
on
the
construction
of
story
in
narrative
centered
learning
environments
Raine
Koskimaa
PhD
Assistant
Professor
Raine
conducts
research
in
the
field
of
digital
textuality
He
has
published
two
books
and
several
articles
on
the
issues
of
digital
literature
hyper
and
cybertextuality
and
narratology
Furthermore
he
co
edits
the
Cybertext
Yearbook
series
and
he
is
a
member
of
the
Literary
Advisory
Board
for
the
Electronic
Literature
Organisation
Raine
earned
his
PhD
with
a
14
thesis
on
digital
literature
15
Ulrik
Hartmann
Gade
PhD
Student
Ulrik
is
currently
pursuing
a
Ph
D
in
user
centred
design
His
research
interests
are
to
explore
the
desire
for
intentionally
designing
how
digital
media
and
other
computational
artefacts
are
experienced
by
users
in
use
Ulrik
has
a
Master
s
degree
in
Communication
Studies
from
Roskilde
University
Denmark
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
Department
home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
CV
12
Research
13
Teaching
and
consulting
14
Publications
inter
menu
bund
gif
Anker
Helms
Jørgensen
s
homepage
Contact
information
Anker
foto
gif
Anker
Helms
Jørgensen
Associate
Professor
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
NV
Denmark
Phone
45
38
16
88
88
Fax
45
38
16
88
99
Email
15
anker
it
c
dk
Homepage
www
it
c
dk
people
anker
CV
in
brief
I
m
currently
head
of
the
Department
of
Digital
Aesthetics
and
Communication
and
Associate
Professor
in
Design
Communication
Media
at
the
IT
University
of
Copenhagen
From
1987
to
1999
I
was
employed
at
Dept
of
Psychology
at
the
University
of
Copenhagen
Since
my
MSc
and
PhD
I
have
been
working
as
systems
developer
and
consultant
in
HCI
My
research
interests
Mental
and
physical
workload
in
IT
work
Epistemological
aspects
of
usability
evaluation
methods
Selected
recent
publications
Jørgensen
A
H
Jensen
B
R
Laursen
B
and
Garde
A
H
Integrating
HCI
Human
Factors
and
Occupational
Health
An
exploratory
Study
HCI
Intnl
2001
New
Orleans
Aug
2001
accepted
Jacobsen
N
E
H
and
Jørgensen
A
H
2000
The
State
of
Art
in
the
Science
of
Usability
Evaluation
Methods
A
Kuhnnian
Perspective
Proc
XIVth
Triennal
Congress
of
the
International
Ergonomics
Association
and
44th
Annual
Meeting
of
the
Human
Factors
and
Ergonomics
Society
San
Diego
July
30th
August
4th
2000
p
6
577
6
580
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
CV
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
12
Anker
home
inter
menu
bund
gif
CV
Personal
information
I
was
born
in
1946
in
Copenhagen
I
m
a
Danish
Citizen
I
m
married
to
Ulla
Vadstrup
whom
I
met
in
1992
in
front
of
the
beautiful
watercolour
Capron
House
by
Edward
Hopper
at
the
delightful
Danish
museum
of
modern
art
13
Lousiana
Academic
Degrees
1983
PhD
in
Human
Computer
Interaction
from
14
Dept
of
Computer
Science
15
Copenhagen
University
1977
MSc
in
Computer
Science
Dept
of
Computer
Science
University
of
Copenhagen
thesis
in
readability
of
computer
programs
Positions
2000
Head
of
department
Digital
Aesthetics
and
Communication
IT
University
of
Copenhagen
1999
Associate
professor
in
Design
Communication
Media
IT
University
of
Copenhagen
1987
1999
Associate
professor
in
IT
psychology
16
Dept
of
Psychology
University
of
Copenhagen
1985
1987
Independent
consultant
in
Human
Computer
Interaction
1983
1985
In
house
consultant
at
I
S
Datacentralen
now
17
CSC
1980
1983
PhD
student
at
Dept
of
Computer
Science
University
of
Copenhagen
1977
1980
Systems
developer
at
Dept
of
Clinical
Physiology
Bispebjerg
Hospital
Visits
abroad
1993
1993
Dept
of
Psychology
University
of
York
1981
1982
18
Applied
Psychology
Unit
Cambridge
UK
Affiliations
with
Professional
Societies
ACM
Human
Factors
and
Ergonomics
Society
European
Society
of
Cognitive
Ergonomics
Sammenslutningen
af
Medieforskere
i
Danmark
Ingeniørforeningen
i
Danmark
Datalogforeningen
19
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
20
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
6
CV
Anker
home
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
Research
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
12
Anker
home
inter
menu
bund
gif
Research
Current
Research
Interests
Workload
in
IT
work
This
work
addresses
the
cognitive
and
physiological
aspects
of
IT
work
in
particular
use
of
keyboard
and
mouse
This
work
is
done
in
collaboration
with
three
work
physiologists
at
the
IT
laboratory
at
13
National
Institute
of
Occupational
Health
Bente
Rona
Jensen
Bjarne
Laursen
and
Helene
Garde
Epistemological
aspects
of
usability
evaluation
methods
This
work
addresses
the
body
of
evidence
we
have
accumulated
about
usability
evaluation
methods
over
the
years
Development
of
Interactive
Web
applications
The
theme
of
the
14
DIWA
project
is
design
management
and
use
of
interactive
Web
applications
in
distributed
work
settings
DIWA
focusses
on
the
Web
technology
as
an
IT
platform
for
collaborative
distributed
work
inside
an
organization
intranet
or
between
organizations
extranet
Major
Research
Projects
2000
2002
IT
and
the
elderly
with
the
National
Institute
of
Occupational
Health
funded
by
the
Danish
National
Research
Council
2000
2002
DIWA
Design
of
Interactive
Web
Applications
with
University
of
Copenhagen
The
Technical
University
and
Roskilde
University
funded
by
the
Danish
National
Research
Council
1992
1995
15
AMODEUS
II
Assaying
Models
of
Design
Expressions
in
Use
with
9
partners
in
Western
Europe
headed
the
research
package
Transfer
and
Assay
1989
1992
AMODEUS
I
Assimilating
Models
of
Designers
Users
and
Systems
with
9
partners
in
Europe
headed
the
research
package
Empirical
Designer
Studies
Editorial
Experience
Program
committee
member
and
reviewer
at
the
conferences
Human
Factors
in
Computing
Systems
CHI
1992
CHI
2001
Interact
1992
1995
1998
The
British
Conference
on
Human
Computer
Interaction
1998
1999
2000
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
6
Research
Anker
home
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
Teaching
and
consulting
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
12
Anker
home
inter
menu
bund
gif
Teaching
and
consulting
My
main
teaching
area
is
Human
Computer
Interaction
user
interface
design
usability
and
usability
evaluation
Consulting
I
have
been
consulting
widely
in
many
areas
in
Human
Computer
Interaction
in
the
last
18
years
I
have
held
courses
in
user
interface
design
since
1982
for
designers
from
industry
Teaching
At
Copenhagen
University
and
at
the
IT
University
of
Copenhagen
I
have
given
courses
in
Human
Computer
Interaction
Basic
Web
Design
Interaction
Design
and
User
Perspectives
and
Future
Media
Supervision
of
PhD
Students
I
m
currently
supervising
three
PhD
Students
13
Lisbeth
Klastrup
who
is
working
with
virtual
worlds
from
a
linguistic
perspective
14
Jesper
Juul
who
is
working
with
computer
games
15
Ulrik
Hartmann
Gade
who
is
working
with
user
experience
architecture
Former
PhD
Students
Annette
Aboulafia
who
addressed
the
foundations
of
the
field
Human
Computer
Interaction
the
traditional
cognitive
science
based
and
one
based
on
activity
theory
She
s
current
employed
as
Associate
Professor
in
psychology
at
Roskilde
University
Niels
Ebbe
Holm
Jacobsen
who
investigated
the
validity
of
usability
evaluation
methods
He
s
currently
employed
by
Nokia
as
a
usability
specialist
Torkil
Clemmensen
who
did
research
into
human
machine
interaction
in
maritime
IT
systems
He
s
currently
employed
as
Assistant
Professor
at
the
Copenhagen
Business
School
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
6
Teaching
and
consulting
Anker
home
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
Publications
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
12
Anker
home
inter
menu
bund
gif
Publications
This
page
lists
five
recent
publications
followed
by
the
complete
list
of
publications
ordered
by
topic
Within
each
topic
the
papers
are
listed
cronologically
newest
first
Please
bear
with
me
as
you
have
to
scroll
down
this
page
Recent
Publications
Jørgensen
A
H
Jensen
B
R
Laursen
B
and
Garde
A
H
Integrating
HCI
Human
Factors
and
Occupational
Health
An
exploratory
Study
HCI
Intnl
2001
New
Orleans
Aug
2001
accepted
Jørgensen
A
H
Jensen
B
R
Laursen
B
and
Garde
A
H
A
Study
of
Mental
Workload
in
Mouse
and
Keyboard
Input
Proc
NordiCHI
Stockholm
Oct
23
25th
2000
Jacobsen
N
E
H
and
Jørgensen
A
H
The
State
of
Art
in
the
Science
of
Usability
Evaluation
Methods
A
Kuhnnian
Perspective
Proc
XIVth
Triennal
Congress
of
the
International
Ergonomics
Association
and
44thAnnual
Meeting
of
the
Human
Factors
and
Ergonomics
Society
San
Diego
July
30th
August
4th
2000
p
6
577
6
580
Jørgensen
A
H
and
Jacobsen
N
E
H
Towards
an
Epistemology
of
Usability
Evaluation
Methods
Proc
CybErg
99
Australia
August
1999
http
cyberg
curtin
edu
au
and
CD
ROM
CybErg
1999
The
International
Ergonomics
Association
Press
Curtin
University
Perth
Australia
Jørgensen
A
H
Garde
A
H
Laursen
B
and
Jensen
B
R
Mental
Workload
in
IT
Work
Combining
Cognitive
and
Physiological
Perspectives
In
Bullinger
H
J
and
Ziegler
J
eds
Human
Computer
Interaction
Ergonomics
and
User
Interfaces
vol
1
p
97
101
Lawrence
Erlbaum
13
To
the
top
Mental
workload
in
IT
work
Jørgensen
A
H
Jensen
B
R
Laursen
B
and
Garde
A
H
Integrating
HCI
Human
Factors
and
Occupational
Health
An
exploratory
Study
Accepted
at
HCI
International
2001
New
Orleans
Aug
2001
Jensen
B
R
Laursen
Garde
A
H
and
Jørgensen
A
H
Effect
of
mental
demand
on
muscle
activity
during
use
of
computer
mouse
and
keyboard
Proc
2nd
PROCID
Symposium
Prevention
of
Muscle
Disorders
in
Computer
Users
G
teborg
8
10
March
2001
Jørgensen
A
H
Jensen
B
R
Laursen
B
and
Garde
A
H
A
Study
of
Mental
Workload
in
Mouse
and
Keyboard
Input
Proc
NordiCHI
Stockholm
Oct
23
25th
2000
Jørgensen
A
H
Garde
A
H
Laursen
B
and
Jensen
B
R
Applying
the
Concept
of
Mental
Workload
to
IT
work
Proc
CybErg
1999
Australia
August
1999
http
cyberg
curtin
edu
au
and
CD
ROM
CybErg
1999
The
International
Ergonomics
Association
Press
Curtin
University
Perth
Australia
Jørgensen
A
H
Garde
A
H
Laursen
B
and
Jensen
B
R
Mental
Workload
in
IT
Work
Combining
Cognitive
and
Physiological
Perspectives
In
Bullinger
H
J
and
Ziegler
J
eds
Human
Computer
Interaction
Ergonomics
and
User
Interfaces
vol
1
p
97
101
Lawrence
Erlbaum
Proc
HCI
International
99
M
nchen
August
1999
Garde
A
H
Laursen
B
Jensen
B
R
Jørgensen
A
H
The
effect
of
cognitive
demands
on
heart
rate
and
blood
pressure
variability
during
computer
work
In
preparation
Laursen
B
Jensen
B
R
Garde
A
H
Jørgensen
A
H
Effect
of
Mental
Demand
During
Computer
Work
Using
Mouse
and
Keyboard
In
preparation
Jørgensen
A
H
Garde
A
H
Laursen
B
and
Jensen
B
R
Mental
and
Physical
Workload
in
Computer
Work
An
Experimental
Study
of
Mouse
and
Keyboard
Input
In
preparation
Garde
A
H
Laursen
B
Jørgensen
A
H
Jensen
B
R
Heart
rate
variability
as
a
measure
of
autonomic
nervous
activity
during
mentally
demanding
computer
work
In
preparation
14
To
the
top
Epistemology
of
usability
Jacobsen
N
E
H
and
Jørgensen
A
H
The
State
of
Art
in
the
Science
of
Usability
Evaluation
Methods
A
Kuhnnian
Perspective
Proc
XIVth
Triennal
Congress
of
the
International
Ergonomics
Association
and
44thAnnual
Meeting
of
the
Human
Factors
and
Ergonomics
Society
San
Diego
July
30th
August
4th
2000
p
6
577
6
580
Jørgensen
A
H
and
Jacobsen
N
E
H
Towards
an
Epistemology
of
Usability
Evaluation
Methods
Proc
CybErg
99
Australia
August
1999
http
cyberg
curtin
edu
au
and
CD
ROM
CybErg
1999
The
International
Ergonomics
Association
Press
Curtin
University
Perth
Australia
Jørgensen
A
H
og
Jacobsen
N
E
H
Taking
stock
of
what
we
know
and
don
t
know
about
usability
evaluation
methods
Poster
Proc
Human
Factors
and
Ergonomics
Society
s
42nd
Annual
Meeting
Chicago
Oct
5th
9th
1998
p
1638
Jacobsen
N
E
H
and
Jørgensen
A
H
Evaluating
Usability
Evaluation
Methods
CHI
98
Basic
Research
Symposium
Los
Angeles
April
1998
15
To
the
top
User
Interface
Design
in
General
Jørgensen
A
H
Brugervenlige
edb
systemer
en
introduktion
Psyke
og
Logos
1984
pp
302
327
In
Danish
Usable
computer
systems
an
introduction
Beyer
P
Carstensen
P
Jørgensen
A
H
Molich
R
and
Pedersen
F
H
1986
Brugervenlige
edb
systemer
København
Teknisk
Forlag
In
Danish
Usable
Computer
Systems
16
To
the
top
Iterative
Systems
Development
and
Prototyping
Hjæresen
P
Hedegaard
O
Jørgensen
A
H
Quick
Development
of
High
Quality
Applications
in
a
Standardized
Graphical
Environment
Proc
COPE
IT
93
June
14
16
Copenhagen
pp
323
330
Jørgensen
A
H
The
psychology
of
prototyping
In
R
Budde
K
Kuhlenkamp
L
Mathiassen
and
H
Zullighoven
eds
Approaches
to
prototyping
Berlin
Springer
Verlag
278
289
1984
17
To
the
top
Empirical
Studies
of
User
Interface
Design
Practice
Due
B
Jørgensen
A
H
Nielsen
J
An
Observational
Study
of
User
Interface
Design
Proceedings
of
Human
Factors
Society
35th
Annual
Conference
San
Francisco
USA
Sep
2
6th
1991
pp
1219
1222
Due
B
and
Jørgensen
A
H
User
interface
designers
in
action
Preceedings
of
the
conference
Human
Jobs
and
Computer
Interfaces
Tampere
Finland
26
28th
June
1991
pp
274
282
Olsen
K
B
and
Jørgensen
A
H
En
undersøgelse
af
skærmbaseret
vejledning
NORDDATA
1989
s
730
34
København
1989
Milsted
U
Varnild
A
Jørgensen
A
H
Hvordan
sikres
kvaliteten
af
brugergrænsefladen
i
systemudviklingen
NORDDATA
1989
s
479
84
København
1989
Jørgensen
A
H
Barnard
P
Hammond
N
Clark
I
Naming
commands
An
analysis
of
designers
naming
behaviour
In
Green
Payne
and
Veer
eds
The
psychology
of
computer
use
London
Academic
Press
69
88
1983
Hammond
N
Jørgensen
A
H
MacLean
A
Barnard
P
Long
J
Design
practice
and
interface
usability
evidence
from
interviews
with
designers
Proc
CHI
83
Human
Factors
in
Computing
Systems
Boston
Dec
1983
ACM
New
York
40
44
18
To
the
top
Thinking
aloud
in
User
Interface
Design
Jørgensen
A
H
Thinking
Aloud
in
User
Interface
Design
A
Method
promoting
Cognitive
Ergonomics
Ergonomics
vol
33
no
4
501
507
1990
Jørgensen
A
H
Using
the
thinking
aloud
method
in
system
development
I
G
Salvendy
M
J
Smith
eds
Designing
and
using
Human
Computer
Interfaces
and
Knowledge
based
Systems
Elsevier
1989
pp
743
750
19
To
the
top
Evaluation
of
the
Usability
of
Particular
Computer
Systems
Jørgensen
A
H
An
assessment
of
the
learnability
of
UNIX
Mail
In
R
Speth
ed
Research
into
Networks
and
Distributed
Applications
Amsterdam
Elsevier
1988
375
385
Jørgensen
A
H
The
trouble
with
UNIX
Mail
Initial
learning
and
experts
strategies
In
H
J
Bullinger
and
B
Shackel
eds
Human
Computer
Interaction
INTERACT
87
Amsterdam
Elsevier
1987
847
854
20
To
the
top
Evaluations
of
Particular
Design
Appoaches
or
Methods
Jørgensen
A
H
and
May
J
Evaluation
of
a
Theory
Based
Display
Guide
Proc
HCI
97
San
Francisco
Aug
24
29
1997
Smith
M
J
Salvendy
G
and
Koubek
R
J
eds
Advances
in
Human
Factors
Ergonomics
vol
21B
Design
of
Computing
Systems
Social
and
Ergonomic
Considerations
Amsterdam
Elsevier
1997
403
406
Jørgensen
A
H
and
Aboulafia
A
Perceptions
of
Design
Rationale
In
Nordby
K
Helmersen
P
H
Gilmore
D
J
and
Arnesen
S
A
eds
Human
Computer
Interaction
Interact
95
Chapman
and
Hall
London
pp
61
66
1995
Jørgensen
A
H
Nielsen
L
C
and
Carstensen
P
H
Formal
specification
of
user
interfaces
two
application
studies
In
B
Knave
and
P
G
Wideb
ck
Work
With
Display
Units
86
Amsterdam
Elsevier
851
859
21
To
the
top
The
relation
between
theory
and
practice
in
usability
Jørgensen
A
H
Making
Psychology
Serve
Design
of
Information
Technology
The
Case
of
AMODEUS
In
preparation
Buckingham
Shum
S
Jørgensen
A
H
Aboulafia
A
Hammond
N
Communicating
HCI
Modelling
to
Designers
CHI
94
Adjunct
Proc
pp
271
272
1994
Terrins
Rudge
D
and
Jørgensen
A
H
Supporting
the
Designers
Reaching
the
Users
In
P
Byerley
P
Barnard
and
J
May
eds
Computers
Communication
and
Usability
Design
Issues
Research
Methods
for
Integrated
Services
Elsevier
North
Holland
Amsterdam
1993
pp
71
98
Aboulafia
A
Jørgensen
A
H
Nielsen
J
Modelling
in
User
Interface
Design
Designers
Views
of
Application
and
Requirements
Proceedings
of
the
16th
IRIS
Information
Systems
Research
Seminar
in
Scandinavia
pp
298
307
1993
Aboulafia
A
Nielsen
J
Jørgensen
A
H
The
Ambiguous
Reality
and
Formal
Methods
in
User
Interface
Design
Proc
INTERCHI
93
Research
Symposium
Amsterdam
April
23
24
1993
pp
1
2
Nielsen
J
and
Jørgensen
A
H
Design
of
User
Interfaces
Intuitive
Solutions
and
Imagination
CHI
92
Research
Symposium
Monterey
CA
May
3
7
1992
Jørgensen
A
H
Two
approaches
to
usability
the
objective
and
the
subjective
In
Proc
Work
with
Display
Units
Stockholm
May
1986
940
943
22
To
the
top
Miscellaneous
Buch
T
Ødum
J
Jørgensen
A
H
Exploring
the
Use
of
Ideal
Speech
Recognition
Presented
at
the
Electronic
Conference
CybERG
September
1996
www
curtin
edu
au
conference
cyberg
Aboulafia
A
Klausen
T
Jørgensen
A
H
Towards
a
Theoretical
Underpinning
of
Scenarios
In
Proceedings
of
the
17th
Information
Systems
Research
Seminar
IRIS
in
Scandinavia
Part
II
pp
561
571
University
of
Oulu
Finland
August
1994
Jørgensen
A
H
and
Sauer
A
The
Personal
Touch
A
Study
of
Users
Customization
Practice
Proc
Interact
90
Cambridge
Sep
1990
pp
561
565
Jørgensen
A
H
An
experiment
on
the
effect
of
task
structure
in
interactive
computer
systems
In
Proc
Work
with
Display
Units
Stockholm
May
1986
777
780
Jørgensen
A
H
A
methodology
for
measuring
the
readability
and
modifiability
of
computer
programs
BIT
vol
20
394
405
1980
23
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
24
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Staff
and
research
5
6
Publications
Anker
home
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
home
inter
menu
bund
gif
Hiring
now
The
IT
University
of
Copenhagen
is
currently
inviting
applications
for
13
positions
as
Associate
or
Assistant
Professor
The
application
deadline
is
1
May
2001
12
00
noon
See
the
11
full
announcement
Faculty
is
wanted
primarily
within
the
following
five
general
research
areas
Mobility
Media
and
Communication
Software
technology
Software
applications
Theoretical
computer
science
The
fields
of
particular
interest
to
the
Department
of
Digital
Aesthetics
and
Communication
are
Digital
aesthetics
digital
discourse
and
digital
media
Human
computer
interaction
and
usability
in
particular
mobile
usability
Cultural
and
social
impact
of
mobility
Design
of
interactive
systems
and
interaction
technologies
Convergence
of
technologies
Please
check
the
12
full
announcement
re
research
areas
in
question
requirements
for
the
positions
application
procedure
etc
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Department
home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Computer
Games
Digital
Textualities
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
home
inter
menu
bund
gif
The
conference
Computer
Games
Digital
Textualities
On
March
1st
and
2nd
the
Department
of
Digital
Aesthetics
Communication
hosted
the
conference
Computer
Games
and
Digital
Textuality
CGDT
The
aim
of
the
conference
was
to
stimulate
interest
in
this
relatively
new
academic
field
among
academics
and
developers
alike
and
to
promote
the
department
The
event
attracted
160
participants
from
Denmark
the
Nordic
Countries
Germany
Spain
the
Netherlands
England
and
USA
The
participants
represented
both
academia
and
industry
and
the
conference
attracted
considerable
interest
from
the
press
CGDT
was
featured
twice
by
the
Danish
Broadcasting
Corporation
and
twice
by
leading
Danish
newspapers
Espen
Aarseth
keynote
speaker
and
a
leading
figure
into
research
in
digital
textuality
and
computer
games
stated
This
conference
is
probably
the
first
international
academic
conference
on
computer
games
The
keynote
speakers
were
Espen
Aarseth
University
of
Bergen
Norway
Understanding
Computer
Games
Selmer
Bringsjord
Rensselaer
Polytechnic
Institute
USA
Is
It
Possible
to
Build
Dramatically
Compelling
Interactive
Digital
Entertainment
Marie
Laure
Ryan
Independent
Scholar
Colorado
USA
Beyond
Myth
and
Metaphor
The
Case
of
Narrative
in
Digital
Media
Thomas
Jakobsen
IO
Interactive
Denmark
Hitman
a
new
computer
game
from
IO
Interactive
Visit
the
11
conference
website
containing
the
full
programme
photos
from
the
conference
links
to
articles
and
interviews
in
Danish
etc
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Computer
Games
Digital
Textualities
Department
home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
The
IT
University
at
a
glance
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
home
inter
menu
bund
gif
The
IT
University
of
Copenhagen
at
a
glance
The
IT
University
of
Copenhagen
was
established
in
1999
to
boost
research
and
higher
education
in
Information
Technology
in
the
Greater
Copenhagen
Region
The
IT
University
addresses
IT
broadly
including
perspectives
of
natural
sciences
humanities
and
business
impact
The
University
is
featured
by
cross
disciplinarity
a
vivid
pioneering
spirit
and
a
strong
commitment
to
quality
In
2003
the
university
will
be
moving
to
new
premises
in
Greater
Copenhagen
The
closest
neighbours
will
be
the
Faculty
of
Humanities
University
of
Copenhagen
and
the
Danish
Broadcasting
Corporation
Collaboration
is
already
taking
place
and
further
measures
are
being
taken
in
order
to
support
synergy
Research
is
organised
in
four
departments
Dept
of
Digital
Aesthetics
and
Communication
11
Dept
of
Design
and
Use
of
IT
12
Dept
of
Innovation
13
Dept
of
Theory
The
university
offers
educations
at
the
PhD
level
Master
and
Diploma
in
the
following
areas
Design
Communication
Media
Internet
technology
E
business
Multimedia
technology
Software
development
Cross
disciplinary
IT
All
the
students
admitted
have
a
Bachelor
s
degree
The
students
are
extremely
motivated
creative
constructive
and
critical
Visit
the
full
14
website
of
the
IT
University
of
Copenhagen
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
The
IT
University
at
a
glance
Department
home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Visions
and
goals
for
the
Department
of
Design
and
Use
of
Information
Technology
10
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
People
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Members
of
the
Department
of
Design
and
Use
of
Information
Technology
Faculty
11
Peter
Carstensen
Associate
Professor
Head
of
Department
Research
interests
Computer
Supported
Cooperative
Work
CSCW
Work
Analysis
and
Field
Studies
Methodologies
for
Systems
Development
Human
Computer
Interaction
12
Finn
Kensing
Reader
Research
interests
Participatory
Design
Computer
Supported
Cooperative
Work
CSCW
Human
Computer
Interaction
Information
Systems
13
Søren
Lauesen
Professor
Research
interests
Human
Computer
Interaction
Requirements
Specification
Object
Oriented
Design
Quality
Assurance
Systems
Development
Marketing
and
Product
Development
Cooperation
between
Research
and
Industry
14
Kasper
Østerbye
Associate
Professor
Research
interests
Programming
Language
Design
Object
Oriented
Design
and
Programming
Program
Understanding
Framework
Documentation
Software
Development
Tools
Software
Architecture
PhD
students
15
Klaus
Jul
Jeppesen
Research
interests
User
Support
Function
Point
Counting
Life
Cycle
Management
and
Economics
Software
Tailoring
Software
Quality
16
Lasse
Vogelsang
Research
interests
Systems
Development
Information
Systems
Computer
Supported
Cooporative
Work
CSCW
Human
Computer
Interaction
Administration
Hanne
Sørensen
Administrative
Officer
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
People
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Research
projects
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Research
Projects
DUIT
is
involved
in
the
research
projects
11
DIWA
and
12
IDAK
which
are
funded
by
the
13
Danish
Research
Council
and
the
14
Danish
Industry
s
Education
Foundation
Industriens
Uddannelsesfond
respectively
The
participants
in
the
projects
come
from
Danish
research
institutes
as
well
as
from
the
industry
Current
projects
15
DIWA
Design
of
Interactive
Web
Applications
DIWA
is
funded
by
the
16
Danish
Research
Council
s
Program
on
Cross
Disciplinary
Information
Technology
and
runs
from
1999
2003
The
project
addresses
different
aspects
of
Web
technology
as
an
IT
platform
for
collaborative
distributed
work
inside
organizations
e
g
Intranets
or
between
organizations
extranets
Among
the
participants
in
DIWA
are
the
17
IT
University
of
Copenhagen
the
18
Danish
Technical
University
19
University
of
Copenhagen
20
Roskilde
University
21
Novo
Nordisk
22
Unibank
23
Statens
Information
24
Net
Medier
and
25
Net
Bureauet
Araneum
26
Peter
Carstensen
27
Finn
Kensing
28
Lasse
Vogelsang
29
IDAK
IT
støtte
til
Decentralisering
af
Ansvar
og
Kompetence
The
project
was
started
in
1999
as
a
continuation
of
the
30
FASIT
project
It
addresses
planning
and
collaboration
support
for
autonomous
groups
of
shop
floor
workers
The
participants
in
IDAK
include
31
CO
Industri
32
Dansk
Industri
33
Odense
Steel
Shipyard
Ltd
34
OPI
35
Kubix
the
36
Danish
Technical
University
and
37
Aalborg
University
Esbjerg
The
IDAK
project
runs
till
the
end
of
2001
38
Peter
Carstensen
39
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
40
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Research
projects
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Past
visitors
11
Department
Home
inter
menu
bund
gif
Visitors
to
the
Department
of
Design
and
Use
of
Information
Technology
Visitors
spring
2001
The
following
researchers
are
visiting
DUIT
at
IT
C
in
the
spring
term
2001
During
their
stay
they
will
participate
in
the
activities
of
the
research
department
give
seminars
and
supervise
student
s
projects
12
15
February
12
Volker
Wulf
13
Institut
f
r
Informatik
III
14
Universit
t
Bonn
Research
interests
Computer
Supported
Cooperative
Work
Human
Computer
Interaction
Computer
Supported
Cooperative
Learning
Participatory
Software
Engineering
Integrated
Organization
and
Technology
Development
Privacy
Computers
and
Society
April
June
Toni
Robertson
15
Department
of
Computing
and
Information
Sciences
Kansas
State
University
16
November
16
Bjarne
Stroustrup
17
Large
Scale
Programming
Research
Department
18
AT
T
Labs
Research
7
December
Lars
Bak
Sun
Microsystems
19
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
20
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Past
visitors
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Visitors
12
Department
Home
inter
menu
bund
gif
Past
visitors
to
the
department
of
DUIT
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
5
Past
visitors
Visitors
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
5
Past
visitors
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Publications
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Publications
by
the
members
of
DUIT
Below
you
will
find
a
short
list
of
recent
publications
for
each
member
of
DUIT
More
complete
publication
lists
can
be
found
on
each
members
personal
homepage
11
Peter
Carstensen
P
H
Carstensen
and
M
Nielsen
Guiding
the
Thrust
Analytical
Concepts
in
the
Service
of
Coordination
Support
Systems
2000
P
H
Carstensen
and
U
Snis
On
Knowledge
Management
A
Field
Study
2000
P
H
Carstensen
K
Schmidt
and
U
K
Wiil
Supporting
shop
floor
intelligence
A
CSCW
approach
to
production
planning
and
control
in
flexible
manufacturing
1999
12
Klaus
Jul
Jeppesen
13
Finn
Kensing
14
Søren
Lauesen
Søren
Lauesen
Real
life
object
oriented
systems
1998
Søren
Lauesen
Usability
requirements
in
a
tender
process
1998
Søren
Lauesen
Marianne
Mathiassen
Use
cases
in
a
COTS
tender
1999
Søren
Lauesen
Software
Requirements
Styles
and
Techniques
1999
15
Lasse
Vogelsang
16
Kasper
Østerbye
Kasper
Østerbye
Associations
as
a
Language
Construct
1999
Kasper
Østerbye
and
Wolfgang
Kreutzer
Synchronization
abstraction
in
the
BETA
programming
language
1999
Bent
Bruun
Kristensen
and
Kasper
Østerbye
Roles
Conceptual
Foundation
and
Practical
Usage
in
Analysis
Design
and
Programming
1996
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Publications
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Teaching
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Teaching
by
the
members
of
DUIT
Below
you
will
find
a
list
of
courses
and
M
Sc
theses
given
and
supervised
by
members
of
DUIT
The
members
of
DUIT
are
teaching
in
the
study
line
11
Software
Development
SWU
in
topics
covering
Computer
Supported
Cooperative
Work
CSCW
Human
Computer
Interaction
Design
of
User
Interfaces
and
Data
etc
12
Courses
in
spring
2001
13
Previous
courses
by
the
members
of
DUIT
14
Master
of
Science
theses
supervised
by
the
members
of
DUIT
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Teaching
12
Department
Home
inter
menu
bund
gif
Courses
in
spring
2001
13
Design
af
brugergrænseflader
og
data
Design
of
User
Interfaces
and
Data
given
by
14
Søren
Lauesen
15
IT
støttet
samarbejde
Computer
Supported
Cooperative
Work
given
by
16
Peter
Carstensen
17
Systemudvikling
System
Engineering
given
by
18
Lasse
Vogelsang
19
Grundlæggende
programmering
fleksibel
uddannelse
Introductory
Programming
Flexible
Education
given
by
20
Kasper
Østerbye
21
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Teaching
12
Department
Home
inter
menu
bund
gif
Previous
courses
taught
by
the
members
of
DUIT
13
Courses
in
fall
2000
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
12
Teaching
13
Department
Home
inter
menu
bund
gif
Courses
in
fall
2000
14
Design
af
brugergrænseflader
og
data
Design
of
User
Interfaces
and
Data
given
by
15
Søren
Lauesen
16
Design
og
designere
Design
and
Designers
given
by
17
Finn
Kensing
18
IT
støttet
samarbejde
Computer
Supported
Cooperative
Work
given
by
19
Peter
Carstensen
20
Systemudvikling
System
Engineering
given
by
21
Klaus
Jul
Jeppesen
22
Lasse
Vogelsang
23
Videregående
programmering
for
praktikere
Advanced
programming
for
practicians
given
by
24
Kasper
Østerbye
25
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
26
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
6
Teaching
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
6
Department
Home
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
Courses
in
spring
2000
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Teaching
12
Department
Home
inter
menu
bund
gif
Master
of
Science
theses
supervised
by
the
members
of
DUIT
The
members
of
DUIT
are
currently
supervising
a
number
of
master
s
theses
that
will
be
forthcoming
during
spring
and
summer
2001
Date
Title
Author
Supervisor
04
05
99
Anvendelse
af
intranet
til
intellektuelt
arbejde
Adam
Arndt
Peter
H
Carstensen
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Teaching
12
Department
Home
inter
menu
bund
gif
Student
s
projects
at
IT
C
This
page
is
meant
to
hold
presentations
of
student
s
projects
at
IT
C
which
are
related
to
the
research
interests
of
DUIT
Please
forward
information
on
your
project
to
13
Hanne
Sørensen
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
People
10
Visitors
11
Seminars
12
Projects
13
Publications
14
Teaching
inter
menu
bund
gif
Department
of
Innovation
The
Department
of
Innovation
aims
at
developing
new
technologies
achieved
through
research
and
its
innovative
applications
Currently
focus
is
on
the
areas
of
data
security
and
compression
computer
vision
and
graphics
interaction
technology
and
software
technology
For
a
description
of
our
visions
and
goals
please
click
either
15
pdf
version
or
16
ps
version
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
People
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Home
inter
menu
bund
gif
People
11
Henrik
Reif
Andersen
12
Erik
Bjørnager
Dam
13
Martin
Elsman
14
Theo
Engell
Nielsen
15
Nanna
Glerup
16
John
Paulin
Hansen
17
Dan
Witzner
Hansen
18
Fritz
Henglein
19
Henrik
Hulgaard
20
Camilla
Jørgensen
21
Alexandre
Krivoulets
22
Ken
Friis
Larsen
23
Jakob
Lichtenberg
24
Martin
Lillholm
25
Erik
van
der
Meer
26
Jesper
Møller
27
Lotte
Espenhain
Møller
28
Mads
Nielsen
29
Michael
Florentin
Nielsen
30
Niels
Martin
Holm
Olsen
31
Ole
Fogh
Olsen
32
Peter
Sestoft
33
John
Aasted
Sørensen
Andersen
Henrik
Reif
jpg
jpg
34
Henrik
Reif
Andersen
Associate
Professor
Research
Interests
Verification
model
checking
embedded
software
and
concurrency
Dam
Erik
Bjoernager
jpg
jpg
35
Erik
Bjørnager
Dam
PhD
Student
Research
Interests
Image
analysis
inspired
by
scale
space
theory
and
medical
image
analysis
applications
Elsman
Martin
jpg
jpg
Martin
Elsman
Assistant
Professor
Research
Interests
Programming
language
semantics
compiler
construction
type
based
optimization
and
module
languages
Engell
Nielsen
Theo
jpg
jpg
36
Theo
Engell
Nielsen
PhD
Student
Research
Interests
Computer
graphics
Glerup
Nanna
jpg
jpg
Nanna
Glerup
PhD
Student
Hansen
John
Paulin
jpg
jpg
John
Paulin
Hansen
Associate
Professor
Research
Interests
Eye
gaze
interaction
usability
testing
methods
perception
and
cognition
Witzner
Dan
Hansen
jpg
37
Dan
Witzner
Hansen
PhD
Student
Research
Interests
Image
processing
tracking
geometric
algebra
and
gaze
estimation
Henglein
Fritz
jpg
jpg
Fritz
Henglein
Associate
Professor
Research
Interests
Theory
of
programming
languages
design
implementation
of
programming
languages
program
analysis
incl
security
type
systems
type
inference
dynamic
memory
management
staged
computation
incl
partial
evaluation
and
run
time
code
generation
functional
software
technology
and
software
architectures
platforms
for
mobile
distributed
computing
Hulgaard
Henrik
jpg
jpg
38
Henrik
Hulgaard
Associate
Professor
Research
Interests
Timing
analysis
asynchronous
circuits
VLSI
CAD
tools
formal
verification
programming
techniques
computer
security
and
database
backed
web
publishing
Joergensen
Camilla
jpg
jpg
Camilla
Jørgensen
Academic
Research
Officer
Krivoulets
Alexandre
jpg
jpg
Alexandre
Krivoulets
PhD
Student
Research
Interests
Source
coding
theory
information
theory
and
data
compression
Larsen
Ken
Friis
jpg
jpg
39
Ken
Friis
Larsen
PhD
Student
Research
Interests
Language
design
and
formal
methods
Larsen
Peter
Berg
jpg
jpg
Peter
Berg
Larsen
PhD
Student
Lichtenberg
Jakob
jpg
jpg
40
Jakob
Lichtenberg
PhD
Student
Research
Interests
Software
testing
program
analysis
verification
model
checking
embedded
real
time
systems
and
functional
programming
Lilholm
Martin
jpg
jpg
Martin
Lillholm
PhD
Student
Van
Der
Meer
Erik
jpg
jpg
Erik
van
der
Meer
PhD
Student
Research
Interests
Functional
programming
program
analysis
transformation
multimedia
network
applications
and
reliability
of
software
Moeller
Jesper
jpg
jpg
41
Jesper
Møller
PhD
Student
Research
Interests
Verification
real
time
systems
model
checking
timed
automata
binary
decision
diagrams
difference
decision
diagrams
decision
procedures
quantifier
elimination
algorithms
and
data
structures
Moeller
Lotte
Esperhain
jpg
jpg
Lotte
Espenhain
Møller
Academic
Research
Officer
Nielsen
Mads
jpg
jpg
42
Mads
Nielsen
Associate
Professor
Research
Interests
Computer
vision
image
analysis
and
especially
medical
image
analysis
Nielsen
Michael
Florentin
jpg
jpg
Michael
Florentin
Nielsen
PhD
Student
Research
Interests
Semantics
functional
programming
type
theory
staged
computation
and
run
time
code
generation
Olsen
Niels
Martin
Holm
jpg
jpg
43
Niels
Martin
Holm
Olsen
PhD
Student
Research
Interests
Statistical
pattern
recognition
image
and
shape
manifolds
models
of
light
propagation
through
phase
objects
and
reconstructions
of
phase
objects
from
light
microscopy
Olsen
Ole
Fogh
jpg
jpg
44
Ole
Fogh
Olsen
Assistant
Research
Professor
Research
Interests
Image
analysis
especially
diffusion
differential
geometry
and
singularity
theory
Sestoft
Peter
jpg
jpg
45
Peter
Sestoft
Associate
Professor
Research
Interests
Functional
programming
languages
their
implementation
program
analysis
transformation
and
partial
evaluation
Soerensen
John
Aasted
jpg
jpg
John
Aasted
Sørensen
Associate
Professor
Research
Interests
Signal
processing
in
multimedia
systems
speech
analysis
coding
recognition
animation
noise
reduction
of
speech
signals
architectures
for
signal
processing
systems
general
methods
for
signal
analysis
filtering
detection
and
classification
46
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
47
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
People
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Visitors
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Autumn
2000
11
Spring
2001
12
Home
inter
menu
bund
gif
Visitors
Please
follow
the
links
to
your
left
to
get
a
list
of
the
researchers
who
visits
have
visited
the
Department
of
Innovation
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
Autumn
2000
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Visitors
inter
menu
bund
gif
Visitors
autumn
2000
21
25
August
Antoine
Rauzy
12
LaBRI
Laboratory
for
Research
in
Computer
Science
Universit
de
Bordeaux
2
6
October
Martin
Frenzle
Universit
t
Oldenburg
5
6
October
13
John
Hatcliff
14
Department
of
Computing
and
Information
Sciences
Kansas
State
University
16
November
15
Bjarne
Stroustrup
16
Large
Scale
Programming
Research
Department
17
AT
T
Labs
Research
17
November
Thomas
Jensen
IRISA
23
24
November
18
John
Hughes
19
Computing
Science
Department
Chalmers
University
of
Technology
7
December
Lars
Bak
Sun
Microsystems
20
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
21
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
5
Autumn
2000
Visitors
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
Spring
2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Visitors
inter
menu
bund
gif
Visitors
spring
2001
4
7
January
12
Gabor
Szekely
13
Computer
Vision
Group
14
Swiss
Federal
Institute
of
Technology
Zurich
11
January
15
Anindya
Banerjee
16
Department
of
Computer
Science
17
Stevens
Institute
of
Technology
25
26
January
18
Jakob
Rehof
19
Software
Productivity
Tools
Group
20
Microsoft
Research
Redmond
8
February
Michael
Tyrsted
21
Ideogramic
ApS
Aarhus
22
23
February
22
Erik
Ernst
23
Department
of
Computer
Science
Aalborg
University
23
February
Anders
Sandholm
Synergis
GmbH
28
February
2
March
24
Peter
O
Hearn
25
Department
of
Computer
Science
Queen
Mary
and
Westfield
College
London
8
March
26
Lars
Bendix
27
Department
of
Computer
Science
Aalborg
University
29
30
March
28
Anders
Møller
29
Basic
Research
in
Computer
Science
BRICS
Aarhus
30
March
30
Michael
Schwartzbach
31
Basic
Research
in
Computer
Science
BRICS
32
Department
of
Computer
Science
University
of
Aarhus
20
April
Erik
Meijer
Microsoft
Redmond
3
May
Karsten
Schulz
Terp
Nielsen
Oracle
Ballerup
Denmark
10
May
33
Aino
Cornils
34
Department
of
Computer
Science
University
of
Aarhus
25
May
35
John
Hannan
36
Department
of
Computer
Science
Engineering
Pennsylvania
State
University
37
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
38
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
5
Spring
2001
Visitors
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Seminars
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
SPACE
2001
11
Home
inter
menu
bund
gif
Seminars
The
Department
of
Innovation
is
hosting
the
12
FunTech
and
FooTech
seminars
The
13
weekly
talks
cover
both
functional
and
object
oriented
topics
They
normally
take
place
on
Thursdays
starting
at
3
15
pm
at
the
IT
University
of
Copenhagen
The
invited
speakers
are
from
both
regional
and
international
universities
and
businesses
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Seminars
SPACE
2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Seminars
inter
menu
bund
gif
SPACE
2001
First
workshop
on
SEMANTICS
PROGRAM
ANALYSIS
AND
COMPUTING
ENVIRONMENTS
FOR
MEMORY
MANAGEMENT
SPACE
2001
held
in
London
UK
January
15
16
2001
This
workshop
is
sponsored
by
The
Danish
Natural
Science
Research
Council
and
The
IT
University
of
Copenhagen
In
cooperation
with
ACM
SIGPLAN
and
EAPLS
subject
to
final
approval
12
Fritz
Henglein
IT
University
of
Copenhagen
is
the
workshop
chair
About
SPACE
2001
Since
the
inception
of
programming
languages
increasingly
powerful
run
time
support
has
been
devised
for
memory
management
starting
with
static
memory
management
via
run
time
stacks
with
explicitly
managed
heaps
and
more
recently
garbage
collection
Correspondingly
static
reasoning
about
and
harnessing
dynamic
memory
management
for
predictability
performance
real
time
applications
security
mobility
and
distribution
has
become
increasingly
more
challenging
Highlighted
by
the
advent
of
region
inference
in
the
early
90s
compile
time
techniques
have
been
proposed
for
reasoning
about
and
improving
dynamic
memory
management
Such
techniques
bear
the
promise
of
reducing
memory
footprints
guaranteeing
real
time
constraints
meeting
resource
constraints
for
embedded
devices
etc
and
may
in
the
end
provide
a
foundation
for
the
next
generation
of
memory
management
Click
here
for
more
information
on
the
13
SPACE
2001
workshop
14
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
15
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Seminars
5
SPACE
2001
Seminars
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Seminars
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Projects
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Home
inter
menu
bund
gif
Projects
Functional
Software
Technologies
11
Funtechs
Fritz
Henglein
Standard
ML
12
Moscow
ML
13
The
ML
Kit
14
Peter
Sestoft
Martin
Elsman
Embedded
Software
15
RCES
16
Peter
Sestoft
17
Henrik
Reif
Andersen
18
Henrik
Hulgaard
19
Ken
Friis
Larsen
20
Jakob
Lichtenberg
Verification
of
embedded
systems
21
VERIS
22
Henrik
Reif
Andersen
23
Henrik
Hulgaard
24
Jesper
Møller
25
Jakob
Lichtenberg
26
Computation
of
Natural
Shapes
Martin
Lilholm
27
Mads
Nielsen
28
Ole
Fogh
Olsen
29
Erik
Dam
30
Eye
Based
IT
31
Mads
Nielsen
John
Paulin
Hansen
32
Boolean
Expression
Diagrams
33
Henrik
Reif
Andersen
34
Henrik
Hulgaard
35
BuDDy
36
Henrik
Reif
Andersen
37
MuDDy
38
Ken
Friis
Larsen
39
Jakob
Lichtenberg
40
Difference
Decision
Diagrams
41
Henrik
Reif
Andersen
42
Henrik
Hulgaard
43
Jesper
Møller
44
Jakob
Lichtenberg
3D
image
Analysis
45
3D
lab
46
Niels
Martin
Holm
Olsen
47
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
48
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Projects
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Publications
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Home
inter
menu
bund
gif
Publications
11
A
fast
method
for
transforming
continued
fractions
into
ordinary
fractions
journal
paper
by
E
Matchikina
12
B
Ryabko
1999
13
A
simply
realizable
ideal
cryptographic
system
journal
paper
by
14
B
Ryabko
2000
15
An
efficient
method
for
adaptive
arithmetic
coding
of
sources
with
large
alphabets
journal
paper
by
16
B
Ryabko
A
Fionov
1999
17
Binocular
stereo
from
grey
scale
images
journal
paper
by
18
M
Nielsen
R
Maas
W
Niessen
L
Florack
B
t
H
Romeny
1999
19
Boolean
Expression
Diagrams
journal
paper
accepted
by
20
H
R
Andersen
21
H
Hulgaard
1999
22
Branch
points
in
one
dimensional
scale
space
journal
paper
by
P
Johansen
23
M
Nielsen
24
O
F
Olsen
2000
25
Computing
optic
flow
by
scale
space
integration
of
normal
flow
conference
paper
submitted
by
K
S
Pedersen
26
M
Nielsen
2001
27
Deep
Structure
book
draft
by
28
E
Dam
2000
29
Difference
Decision
Diagrams
conference
paper
by
30
J
Møller
31
J
Lichtenberg
32
H
R
Andersen
33
H
Hulgaard
1999
34
Difference
Decision
Diagrams
technical
report
by
35
J
Møller
36
J
Lichtenberg
37
H
R
Andersen
38
H
Hulgaard
1999
39
Efficient
Homophonic
Coding
journal
paper
by
40
B
Ryabko
A
Fionov
1999
41
Efficient
transformation
of
random
sequences
into
equiprobable
and
independent
sequences
journal
paper
by
42
B
Ryabko
E
Matchikina
1999
43
Equivalence
Checking
of
Combinational
Circuits
using
Boolean
Expression
Diagrams
journal
paper
by
44
H
Hulgaard
45
P
F
Williams
46
H
R
Andersen
1999
47
Equivalence
Checking
of
Hierarchical
Combinational
Circuits
conference
paper
by
48
P
F
Williams
49
H
Hulgaard
50
H
R
Andersen
1999
51
Evaluation
of
Diffusion
Schemes
for
Watershed
Segmentation
thesis
by
52
E
Dam
2000
53
Exploring
Non
Linear
Diffusion
The
Diffusion
Trace
conference
paper
submitted
by
54
E
Dam
55
M
Nielsen
2001
56
Fast
and
Efficient
Construction
of
an
Unbiased
Random
Sequence
journal
paper
by
57
B
Ryabko
E
Matchikina
2000
58
Fast
and
Space
Efficient
Adaptive
Arithmetic
Coding
conference
paper
by
59
B
Ryabko
A
Fionov
1999
60
Fast
Coding
of
Low
Entropy
Sources
journal
paper
by
61
B
Ryabko
M
P
Sharova
1999
62
Fast
encoding
of
low
entropy
sources
journal
paper
by
63
B
Ryabko
M
P
Sharova
1999
64
Fully
Symbolic
Model
Checking
of
Timed
Systems
using
Difference
Decision
Diagrams
workshop
paper
by
65
J
Møller
66
J
Lichtenberg
67
H
R
Andersen
68
H
Hulgaard
1999
69
Generic
Image
Structure
thesis
by
70
O
F
Olsen
2000
71
Greedy
Model
Checking
technical
report
by
72
P
F
Williams
A
Rauzy
2000
73
Hausdorff
Dimension
as
a
New
Dimension
in
Source
Coding
and
Prediction
workshop
paper
by
74
B
Ryabko
J
Suzuki
F
Topsøe
1999
75
Koenderink
Corner
Points
conference
paper
accepted
by
76
M
Nielsen
77
O
F
Olsen
M
Sig
M
Sigurd
2001
78
Lie
Group
Modelling
of
Nonlinear
Point
Set
Variability
conference
paper
by
N
H
Olsen
79
M
Nielsen
2000
80
Non
Linear
Diffusion
for
Interactive
Multi
scale
Watershed
Segmentation
conference
paper
by
81
E
Dam
82
M
Nielsen
2000
83
Non
rigid
registration
by
geometry
constrained
diffusion
journal
paper
accepted
by
P
R
Andresen
84
M
Nielsen
2000
85
Non
rigid
registration
by
geometry
constrained
diffusion
conference
paper
by
P
R
Andresen
86
M
Nielsen
1999
87
On
Asymptotically
Optimal
Methods
of
Prediction
and
Adaptive
Coding
for
Markov
Sources
with
Unknown
Memory
conference
paper
by
88
B
Ryabko
F
Topsøe
2000
89
On
the
Symbolic
Verification
of
Timed
Systems
technical
report
by
90
J
Møller
91
J
Lichtenberg
92
H
R
Andersen
93
H
Hulgaard
1999
94
Partial
Model
Checking
of
Modal
Equations
A
Survey
journal
paper
by
95
H
R
Andersen
96
J
Lind
Nielsen
1999
97
Practical
Verification
of
Embedded
Software
journal
paper
by
98
J
Staunstrup
99
H
R
Andersen
100
H
Hulgaard
101
J
Lind
Nielsen
K
G
Larsen
G
Behrmann
K
Kristoffersen
A
Skou
H
Leerberg
N
B
Theilgaard
1999
102
Proceedings
of
second
international
conference
on
scale
space
theories
in
computer
vision
book
by
103
M
Nielsen
P
Johansen
104
O
F
Olsen
J
Weickert
1999
105
Satisfiability
Checking
Using
Boolean
Expression
Diagrams
conference
paper
accepted
by
106
P
F
Williams
107
H
R
Andersen
108
H
Hulgaard
2000
109
Scale
time
kernels
and
models
conference
paper
submitted
by
B
t
H
Romeny
L
Florack
110
M
Nielsen
2001
111
Segmentation
by
compression
using
Linear
scale
space
and
watersheds
conference
paper
by
J
Sporring
112
O
F
Olsen
1999
113
Smoothing
Images
Creates
Corners
journal
paper
by
J
Sporring
114
O
F
Olsen
115
M
Nielsen
J
Weickert
2000
116
Stepwise
CTL
Model
Checking
of
State
Event
Systems
conference
paper
by
117
J
Lind
Nielsen
118
H
R
Andersen
1999
119
Symbolic
Time
Separation
of
Events
conference
paper
by
120
T
Amon
121
H
Hulgaard
1999
122
Symbolic
Timing
Analysis
of
Asynchronous
Systems
journal
paper
by
123
H
Hulgaard
124
T
Amon
2000
125
The
Estimate
for
the
Cost
of
a
Search
Tree
Constructed
on
an
Arbitrary
Set
of
Binary
Words
conference
paper
by
A
Fedotov
126
B
Ryabko
2000
127
The
Hausdorf
dimension
and
scale
space
normalisation
conference
paper
by
K
S
Pedersen
128
M
Nielsen
1999
129
The
Haussdorf
dimension
and
scale
space
normalisation
journal
paper
by
K
S
Pedersen
130
M
Nielsen
2000
131
The
Simple
Ideal
Cipher
System
conference
paper
by
132
B
Ryabko
2000
133
Tube
snake
models
for
reconstruction
of
elongated
structures
from
their
contour
projections
conference
paper
by
I
Mogensen
134
M
Nielsen
1999
135
Using
Information
Theory
Approach
to
study
the
Communication
System
and
Numerical
Competence
in
Ants
conference
paper
by
136
B
Ryabko
2000
137
Verification
of
Hierarchical
State
Event
Systems
using
Reusability
and
Compositionality
journal
paper
accepted
by
G
Behrmann
K
G
Larsen
138
H
R
Andersen
139
H
Hulgaard
140
J
Lind
Nielsen
2000
141
Verification
of
Hierarchical
State
Event
Systems
using
Reusability
and
Compositionality
conference
paper
by
G
Behrmann
K
G
Larsen
142
H
R
Andersen
143
H
Hulgaard
144
J
Lind
Nielsen
1999
145
Verification
of
Large
State
Event
Systems
using
Compositionality
and
Dependency
Analysis
journal
paper
by
146
J
Lind
Nielsen
147
H
R
Andersen
148
H
Hulgaard
G
Behrmann
K
Kristoffersen
K
G
Larsen
1999
149
What
do
Features
Tell
about
Images
conference
paper
submitted
by
150
M
Nielsen
M
Lillholm
2001
151
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
152
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Publications
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Teaching
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Autumn
2000
11
Spring
2001
12
Home
inter
menu
bund
gif
Teaching
Please
follow
the
links
to
your
left
to
get
a
list
of
the
courses
given
by
the
people
at
the
Department
of
Innovation
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Autumn
2000
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Teaching
inter
menu
bund
gif
Courses
autumn
2000
12
Efficient
Algorithms
and
Programs
given
by
13
Henrik
Reif
Andersen
and
14
Henrik
Hulgaard
15
Image
Analysis
given
by
16
Ole
Fogh
Olsen
and
17
Erik
Dam
18
Database
based
Web
publishing
given
by
Martin
Elsman
19
Universal
Access
to
Information
Technology
given
by
John
Paulin
Hansen
20
Computer
Security
given
by
21
Henrik
Hulgaard
22
Computer
Graphics
given
by
23
Theo
Engell
Nielsen
24
Introduction
to
Multimedia
Systems
given
by
25
Mads
Nielsen
and
26
Dan
Witzner
Hansen
27
Signal
Processing
given
by
John
Aasted
Sørensen
28
Speech
and
IT
Systems
given
by
John
Aasted
Sørensen
29
Functional
Design
and
Programming
given
by
30
Peter
Sestoft
31
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
32
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Autumn
2000
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Spring
2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Teaching
inter
menu
bund
gif
Courses
spring
2001
12
Computer
Security
given
by
13
Henrik
Hulgaard
14
Operating
Systems
and
Machine
level
Programming
given
by
15
Henrik
Hulgaard
16
Introduction
to
Multimedia
Systems
given
by
17
Mads
Nielsen
and
18
Dan
Witzner
Hansen
19
Signal
Processing
given
by
John
Aasted
Sørensen
20
Introductory
Programming
given
by
21
Peter
Sestoft
22
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
23
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Spring
2001
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
9
Visions
and
Goals
10
Members
11
Visitors
12
Research
Projects
13
Selected
Publications
14
Seminars
15
Activities
16
Teaching
inter
menu
bund
gif
Theory
Department
Gruppe2
jpg
The
Theory
Department
focuses
on
the
following
research
topics
algorithms
and
complexity
theory
semantics
of
logics
and
programming
languages
categorical
logic
and
type
theory
models
of
concurrency
verification
automatic
test
generation
mobile
computation
For
a
description
of
our
visions
and
goals
please
click
either
17
pdf
version
or
18
postscript
version
Contact
Head
of
Department
19
Lars
Birkedal
20
birkedal
it
c
dk
Administrative
Officer
21
Annette
Hjort
Christensen
22
ahc
it
c
dk
Theory
Department
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
Denmark
Phone
45
3816
8840
Fax
45
3816
8899
URL
www
it
c
dk
23
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
24
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Visions
and
Goals
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Visions
and
Goals
The
visions
and
goals
of
the
Theory
Department
are
described
in
a
document
available
in
11
pdf
and
in
12
postscript
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visions
and
Goals
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Members
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Members
of
the
Theory
Department
Faculty
11
Stephen
Alstrup
12
Lars
Birkedal
13
Jens
Chr
Godskesen
14
Thomas
Hildebrandt
15
Theis
Rauhe
16
Inge
Li
Gørtz
17
Annette
Hjort
Christensen
Alstrup
Stephen
jpg
jpg
18
Stephen
Alstrup
Research
Assistant
Professor
Research
interests
Algorithms
data
structures
lower
bounds
computational
complexity
theory
Birkedal
Lars
jpg
jpg
19
Lars
Birkedal
Research
Assistant
Professor
Head
of
Department
Research
interests
Semantics
of
logics
and
programming
languages
categorical
logic
and
type
theory
realizability
toposes
domain
theory
design
and
implementation
of
advanced
programming
languages
Godskesen
Jens
Christian
jpg
jpg
20
Jens
Chr
Godskesen
Associate
Professor
Research
interests
Automatic
test
generation
fault
models
embedded
systems
caculi
for
mobility
and
concurrency
verification
and
model
checking
Hildebrandt
Thomas
jpg
jpg
21
Thomas
Hildebrandt
Research
Assistant
Professor
Research
interests
Semantics
and
programming
languages
category
theory
and
logic
in
computer
science
concurrency
theory
verification
and
model
checking
mobility
resource
constrained
embedded
systems
Rauhe
Theis
jpg
jpg
22
Theis
Rauhe
Research
Assistant
Professor
Research
interests
Algorithms
data
structures
lower
bounds
computational
complexity
theory
PhD
students
Inge
jpg
23
Inge
Li
Gørtz
Research
interests
Algorithms
data
structures
lower
bounds
computational
compexity
theory
Administration
Annette2
jpg
24
Annette
Hjort
Christensen
Administrative
Officer
25
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
26
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Members
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Visitors
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
11
Past
Visitors
inter
menu
bund
gif
Visitors
at
the
Theory
Department
Current
and
future
visitors
12
Christian
Nørgaard
Storm
Pedersen
Research
Assistant
Professor
at
13
BRICS
Center
for
Basic
Research
in
Computer
Science
located
at
the
14
Department
of
Computer
Science
15
University
of
Aarhus
Århus
Denmark
Visiting
on
April
17th
and
April
24th
2001
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
Past
Visitors
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
inter
menu
bund
gif
Past
Visitors
at
the
Theory
Department
Past
visitors
12
Andrej
Bauer
Ph
D
working
at
the
13
Mittag
Leffler
Institut
Sweden
Visiting
from
March
21st
2001
until
March
23rd
2001
Seminar
14
Realizability
Who
Needs
It
15
Gerth
Stølting
Brodal
PhD
student
of
computer
science
at
the
16
BRICS
PhD
school
at
17
the
Department
of
Computer
Science
18
Aarhus
University
Visiting
on
March
20th
March
27th
and
April
3rd
2001
19
Phil
Janson
Ph
D
VP
IBM
Academy
of
Technology
Program
Manager
20
University
Relations
Visiting
on
March
16th
2001
Buzztalk
21
IBM
Research
Global
Technology
Outlook
22
Rasmus
Pagh
PhD
student
of
computer
science
at
the
23
BRICS
PhD
school
at
24
the
Department
of
Computer
Science
25
Aarhus
University
Visiting
on
March
12th
and
13th
2001
Christian
N
S
Pedersen
BRICS
Århus
Visiting
on
February
23rd
2001
26
Vladimiro
Sassone
associate
professor
at
Universita
de
Catania
Italy
Visiting
from
November
1st
2000
until
January
31st
2001
Research
interests
Calculi
and
models
for
concurrent
and
mobile
processes
and
objects
including
their
typing
coordination
safety
and
security
web
and
global
computing
functional
and
object
oriented
programming
and
software
technologies
Seminar
27
High
Level
nets
as
type
theories
in
the
join
calculus
28
Christian
S
Jensen
Nykredit
professor
at
the
29
Department
of
Computer
Science
at
Ålborg
University
Visiting
on
January
31st
2001
30
Dana
S
Scott
professor
at
Carnegie
Mellon
University
Pittsburgh
USA
Visiting
from
January
14th
2001
until
January
16th
2001
31
Hanne
Gottliebsen
School
of
Computer
Science
University
of
St
Andrews
Scotland
Visiting
on
December
18th
2000
Seminar
32
Transcendental
Functions
and
Continuity
Checking
in
PVS
33
Jan
Arne
Telle
associate
professor
at
34
University
of
Bergen
Visiting
on
December
8th
2000
35
Madhavan
Mukund
associate
professor
at
the
36
Chennai
Mathematical
Institute
Chennai
Madras
India
Visiting
on
December
7th
2000
Seminar
37
Synthesizing
distributed
finite
state
systems
from
MSCs
Giuseppe
Milicia
38
BRICS
Århus
Visiting
on
December
6th
2000
Seminar
39
JavaSpaces
programming
distributed
systems
40
Hans
H
ttel
BRICS
Ålborg
University
Visiting
on
November
22nd
2000
Seminar
41
Bisimilarity
in
the
spi
calculus
results
and
directions
42
Dana
S
Scott
professor
at
Carnegie
Mellon
University
Pittsburgh
USA
Visiting
from
Ocotober
1st
2000
until
October
4th
2000
Seminar
Teaching
mathematics
via
the
computer
is
this
a
good
idea
43
Thore
Husfeld
associate
professor
at
Lund
University
Sweden
Visiting
August
9th
2000
Mikkel
Thorup
at
44
AT
T
Visiting
July
2000
45
Gerth
Brodal
research
associate
professor
at
46
BRICS
Århus
Visiting
April
2000
47
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
48
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
5
Past
Visitors
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Visitors
5
Past
Visitors
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Seminars
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Seminars
Future
seminars
Date
Title
Speaker
March
23rd
2001
11
Realizability
Who
Needs
It
12
Andrej
Bauer
Ph
D
working
at
the
13
Mittag
Leffler
Institut
Sweden
Past
seminars
Date
Title
Speaker
February
27th
2001
14
Plan10
Thoughts
on
a
programming
platform
for
distributivity
and
mobility
Fritz
Henglein
IT
C
February
23rd
2001
15
Bioinformatics
elements
of
an
emerging
discipline
Christian
Nørgaard
Storm
Pedersen
16
BRICS
Århus
December
18th
2000
17
Transcendental
Functions
and
Continuity
Checking
in
PVS
18
Hanne
Gottliebsen
School
of
Computer
Science
University
of
St
Andrews
Scotland
December
7th
2000
19
Synthesizing
distributed
finite
state
systems
from
MSCs
20
Madhavan
Mukund
21
Chennai
Mathemathical
Institute
Chennai
Madras
India
December
6th
2000
22
JavaSpaces
programming
distributed
systems
Giuseppe
Milicia
23
BRICS
Århus
November
24th
2000
24
High
Level
nets
as
type
theories
in
the
join
calculus
25
Vladimiro
Sassone
associate
professor
at
Universita
de
Catania
Italy
November
22nd
2000
26
Bisimilarity
in
the
spi
calculus
results
and
directions
27
Hans
H
ttel
BRICS
Ålborg
November
14th
2000
28
Smart
Cards
what
why
and
how
Peter
Aage
29
Gemplus
October
3rd
2000
Teaching
mathematics
via
the
computer
is
this
a
good
idea
30
Dana
S
Scott
31
Carnegie
Mellon
University
Pittsburgh
USA
32
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
33
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Seminars
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Research
Projects
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Research
Projects
Ongoing
projects
Efficient
algorithms
11
Stephen
Alstrup
12
Theis
Rauhe
13
Inge
Li
Gørtz
Efficient
database
systems
14
Stephen
Alstrup
15
Theis
Rauhe
16
Inge
Li
Gørtz
17
RCES
18
Jens
Chr
Godskesen
19
Thomas
Hildebrandt
Reasoning
about
Resources
20
Lars
Birkedal
21
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Research
Projects
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Selected
Publications
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
inter
menu
bund
gif
Selected
Publications
from
the
Theory
Department
Below
you
will
find
a
few
selected
publications
for
each
member
of
the
Theory
Department
More
complete
publication
lists
can
be
found
on
each
members
personal
homepage
11
Stephen
Alstrup
S
Alstrup
G
S
Brodal
and
T
Rauhe
New
Data
Structures
for
Orthogonal
Range
Searching
Proceedings
of
the
41th
Annual
Symposium
on
Foundations
of
Computer
Science
FOCS
pp
198
207
2000
S
Alstrup
A
Ben
Amram
and
T
Rauhe
Worst
case
and
Amortised
Optimality
in
Union
Find
Proceedings
of
the
thirty
first
annual
ACM
Symposium
on
Theory
of
Computing
STOC
pp
499
506
1999
S
Alstrup
and
D
Harel
and
P
W
Lauridsen
and
M
Thorup
Dominators
in
Linear
Time
SIAM
Journal
on
Computing
SICOMP
pp
2117
2132
December
1999
12
Lars
Birkedal
L
Birkedal
Developing
theories
of
types
and
computability
via
realizability
Electronic
Notes
in
Theoretical
Computer
Science
34
2000
Available
13
online
S
Awodey
L
Birkedal
and
D
S
Scott
Local
realizability
toposes
and
a
modal
logic
for
computability
Mathematical
Structures
in
Computer
Science
May
2000
Accepted
for
publication
L
Birkedal
and
R
W
Harper
Constructing
interpretations
of
recursives
types
in
an
operational
setting
Information
and
Computation
155
pp
3
63
1999
14
Jens
Chr
Godskesen
Jens
Chr
Godskesen
Developing
theories
of
types
and
computability
via
realizability
Proceedings
of
CHARME
99
LNCS
1703
September
1999
Springer
Verlag
Jens
Chr
Godskesen
Two
Algorithms
for
Generating
Tests
for
Embedded
Systems
Proceedings
of
ISCIS
99
October
1999
Jens
Chr
Godskesen
Test
Generation
from
Fault
Models
for
Redirected
Outputs
Proceedings
of
HLDVT
99
November
1999
15
Thomas
Hildebrandt
T
T
Hildebrandt
Categorical
Models
for
Fairness
and
a
Fully
Abstract
Presheaf
Semantics
of
SCCS
with
Finite
Delay
A
Revised
version
will
appear
in
CTCS
special
issue
of
TCS
34
2000
Available
in
16
postscript
17
pdf
and
18
dvi
format
S
Fr
schle
and
T
T
Hildebrandt
On
Plain
and
Hereditary
History
Preserving
Bisimulation
Proceedings
of
the
24th
International
Symposium
on
Mathematical
Foundations
of
Computer
Science
MFCS
99
19
LNCS
1672
pp
354
365
1999
Full
version
available
as
20
BRICS
Report
21
RS
99
4
T
T
Hildebrandt
P
Panangaden
and
G
Winskel
A
Relational
Model
of
Non
deterministic
Dataflow
Proceedings
of
the
9th
International
Conference
on
Concurrency
Theory
22
CONCUR
98
23
LNCS
1466
pp
613
628
1998
24
Theis
Rauhe
Stephen
Alstrup
Thore
Husfeldt
and
Theis
Rauhe
Marked
Ancestor
Problems
39th
Annual
Symposium
on
Foundations
of
Computer
Science
FOCS
98
Available
as
25
ps
and
26
pdf
Stephen
Alstrup
Gerth
Stølting
Brodal
and
Theis
Rauhe
Optimal
Static
Range
Reporting
in
One
Dimension
33rd
Annual
ACM
Symposium
on
the
Theory
of
Computing
STOC
01
Available
as
27
ITU
Technical
Report
Jakob
Pagter
and
Theis
Rauhe
Optimal
Time
Space
Trade
Offs
for
Sorting
39th
Annual
Symposium
on
Foundations
of
Computer
Science
FOCS
98
Available
as
28
dvi
29
ps
and
30
pdf
31
Inge
Li
Gørtz
32
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
33
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Selected
Publications
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Activities
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
11
Conference
Organization
12
Conferences
and
Workshops
13
Invited
Talks
14
Editorials
15
Ph
D
activities
16
Summer
School
inter
menu
bund
gif
Activities
Left
you
find
a
list
of
activities
involving
members
of
the
Theory
Department
17
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
18
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
Conference
Organization
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Activities
inter
menu
bund
gif
Conference
Organization
Below
you
find
a
list
of
future
and
past
conferences
partly
organized
by
members
of
the
Theory
Department
Current
engagements
13
The
2002
Federated
Logic
Conference
Copenhagen
Denmark
14
Lars
Birkedal
Organizing
Committee
for
FLoC
15
Jens
Chr
Godskesen
Organizing
Committee
for
CAV
16
Mathematical
Foundations
of
Programming
Semantics
2001
Aarhus
Denmark
17
Lars
Birkedal
Program
Committee
Past
18
Workshop
on
Realizability
Semantics
and
Applications
1999
Trento
Italy
19
Lars
Birkedal
Organizing
Committee
and
Program
Committee
20
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
21
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Conference
Organization
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Conference
Organization
Activities
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
Conferences
and
Workshops
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Activities
inter
menu
bund
gif
Conferences
and
Workshops
Located
at
IT
C
Below
you
find
a
list
of
future
and
past
conferences
and
workshops
organized
and
held
at
the
Theory
Department
Future
Date
Title
Organized
by
March
30th
2001
13
DAIMI
IT
C
Meeting
on
programming
language
Organized
by
14
Thomas
Hildebrandt
Past
Date
Title
Organized
by
November
6th
2000
15
6th
ARCO
Organized
by
16
Stephen
Alstrup
and
17
Theis
Rauhe
18
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Conferences
and
Workshops
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Conferences
and
Workshops
Activities
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
Invited
Talks
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Department
Activities
inter
menu
bund
gif
Invited
Talks
13
Stephen
Alstrup
Date
Title
Place
June
5
9
2000
Tutorial
Trees
14
Workshop
on
Dynamic
Graph
Problems
at
the
15
Pacifc
Institute
for
the
Mathemathical
Sciences
Vancouver
Canada
June
5
9
2000
Improved
Algorithms
for
Finding
Level
Ancestors
in
Dynamic
Trees
16
Workshop
on
Dynamic
Graph
Problems
at
the
17
Pacifc
Institute
for
the
Mathemathical
Sciences
Vancouver
Canada
18
Lars
Birkedal
Date
Title
Place
September
22
24
2000
Relative
and
Modified
Realizability
AMS
regional
meeting
no
957
Toronto
Canada
Sepember
4
2000
Local
Realizability
Toposes
and
a
Modal
Logic
for
Computability
19
Department
of
Mathematical
Sciences
at
the
University
of
Aarhus
February
17
2000
An
Introduction
to
Developing
Theories
of
Types
and
Computability
via
Realizability
Logic
Colloquium
20
Carnegie
Mellon
University
21
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
22
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Invited
Talks
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Invited
Talks
Department
Activities
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
Editorials
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Activities
inter
menu
bund
gif
Editorials
Below
you
find
a
list
of
future
and
past
publications
edited
or
partly
edited
by
members
of
the
Theory
Department
Current
engagements
Special
Issue
of
Mathematical
Strucuteres
in
Computer
Science
MSCS
on
Realizability
Semantics
and
Applications
Submissions
due
January
20
2000
13
Lars
Birkedal
Co
editor
Past
14
A
Tutorial
Workshop
on
Realizability
Semantics
and
Applications
Electronic
Notes
in
Theoretical
Computer
Science
Volume
23
Issue
1
15
Lars
Birkedal
Co
editor
16
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
17
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Editorials
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Editorials
Activities
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
Ph
D
activities
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Department
Activities
13
Joint
Ph
D
activities
14
Ph
D
Courses
inter
menu
bund
gif
Ph
D
activities
Left
you
find
a
list
of
Ph
D
courses
and
activities
organized
by
members
of
the
Theory
Department
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
Department
Activities
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
Joint
Ph
D
activities
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
12
Department
Home
13
Department
Activities
14
Ph
D
Activities
inter
menu
bund
gif
Joint
Ph
D
activities
Below
you
find
a
list
of
Ph
D
activities
organized
by
members
of
the
Theory
Department
together
with
researchers
from
other
institutions
15
DAIMI
IT
C
Meetings
The
DAIMI
IT
C
series
of
one
day
meetings
is
a
forum
for
collaboration
between
Ph
D
students
at
the
16
IT
University
of
Copenhagen
and
the
17
Department
of
Computer
Science
at
the
University
of
Aarhus
DAIMI
including
the
18
BRICS
research
center
and
PhD
school
19
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
20
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
6
Joint
Ph
D
activities
Department
Home
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
6
Joint
Ph
D
activities
Department
Activities
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
6
Joint
Ph
D
activities
Ph
D
Activities
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
Ph
D
Courses
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
12
Department
Home
13
Department
Activities
14
Ph
D
Activities
inter
menu
bund
gif
Ph
D
Courses
Below
you
find
a
list
of
Ph
D
courses
given
by
members
of
the
Theory
Department
15
Avanceret
Algoritmik
given
by
16
Stephen
Alstrup
17
Theis
Rauhe
18
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
19
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
6
Ph
D
Courses
Department
Home
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
6
Ph
D
Courses
Department
Activities
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Ph
D
activities
6
Ph
D
Courses
Ph
D
Activities
7
Vacancies
8
Home
9
Find
Persons
10
SiteMap
11
Intranet
12
Danish
inter
menu
bund
gif
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
Summer
School
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Activities
inter
menu
bund
gif
Summer
School
Future
Past
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Summer
School
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Activities
5
Summer
School
Activities
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Teaching
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
10
Department
Home
11
Current
courses
12
Spring
2001
13
Previous
Courses
14
Master
of
Science
Theses
inter
menu
bund
gif
Teaching
Left
you
find
a
list
of
courses
and
M
SC
theses
given
and
advised
by
members
of
the
Theory
Department
15
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
16
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Department
Home
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
inter
menu
bund
gif
11
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
12
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Current
courses
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Teaching
inter
menu
bund
gif
Courses
fall
2000
mainly
in
Danish
13
Apparatsoftware
Embedded
Software
given
by
14
Thomas
Hildebrandt
15
Avancerede
Datastrukturer
given
by
16
Stephen
Alstrup
17
Theis
Rauhe
18
Category
Theory
given
by
19
Lars
Birkedal
20
Thomas
Hildebrandt
21
Internetprogrammering
INP
given
by
22
Jens
Chr
Godskesen
23
Introduktion
til
algoritmik
og
datastrukturer
given
by
24
Stephen
Alstrup
25
Theis
Rauhe
26
Parallelle
Systemer
Concurrency
given
by
27
Thomas
Hildebrandt
28
Søgemaskineprojekt
given
by
29
Stephen
Alstrup
30
Theis
Rauhe
31
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
32
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Current
courses
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Current
courses
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Spring
2001
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Teaching
inter
menu
bund
gif
Courses
Spring
2001
13
Avanceret
Algoritmik
given
by
14
Stephen
Alstrup
15
Theis
Rauhe
16
Grundlæggende
programmering
given
by
17
Lars
Birkedal
18
Internetprogrammering
given
by
19
Jens
Chr
Godskesen
20
Introduktion
til
algoritmik
og
datastrukturer
given
by
21
Stephen
Alstrup
22
Theis
Rauhe
Mobility
given
by
23
Thomas
Hildebrandt
Operating
Systems
and
Machine
level
Programming
given
by
24
Thomas
Hildebrandt
25
Parallelle
Systemer
Concurrency
given
by
26
Thomas
Hildebrandt
27
Søgemaskineprojekt
given
by
28
Stephen
Alstrup
29
Theis
Rauhe
30
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
31
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Spring
2001
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Spring
2001
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Previous
Courses
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Teaching
inter
menu
bund
gif
Previous
Courses
Spring
2000
13
Internetprogrammering
given
by
14
Jens
Chr
Godskesen
15
Introduktion
til
algoritmik
og
datastrukturer
given
by
16
Stephen
Alstrup
17
Theis
Rauhe
18
Søgemaskineprojekt
given
by
19
Stephen
Alstrup
20
Theis
Rauhe
Fall
1999
Effektive
algoritmer
og
programmer
given
by
21
Stephen
Alstrup
Research
Assistant
Professor
Grafalgoritmeprojekt
given
by
22
Stephen
Alstrup
23
Theis
Rauhe
24
Introduktion
til
algoritmik
og
datastrukturer
given
by
25
Stephen
Alstrup
26
Theis
Rauhe
27
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
28
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Previous
Courses
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Previous
Courses
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
Master
of
Science
Theses
5
Vacancies
6
Home
7
Find
Persons
8
SiteMap
9
Intranet
10
Danish
11
Department
Home
12
Teaching
inter
menu
bund
gif
Master
of
Science
Theses
Date
Title
Author
Advisor
13
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
14
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Master
of
Science
Theses
Department
Home
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
4
Teaching
5
Master
of
Science
Theses
Teaching
6
Vacancies
7
Home
8
Find
Persons
9
SiteMap
10
Intranet
11
Danish
inter
menu
bund
gif
12
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
13
wwwadm
it
c
dk
1
IT
højskolen
2
Research
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
Research
Profile
of
researcher
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
Lars
Birkedal
Researcher
in
Theoretical
Computer
Science
Lars
Birkedal
teaches
courses
in
Semantics
for
Programming
Languages
and
Category
Theory
He
started
as
an
Associate
Research
Professor
at
the
IT
C
on
15
March
2000
after
returning
from
the
USA
where
he
completed
his
Ph
D
at
the
Carnegie
Mellon
University
in
Pittsburgh
I
carry
out
research
in
Mathematical
Logic
Theoretical
Computer
Science
Type
Theory
and
Computability
Lars
Birkedal
explains
In
other
words
I
investigate
which
operations
can
be
computed
and
how
you
describe
this
in
computer
programs
At
the
same
time
he
is
preparing
a
large
international
conference
in
Computer
Science
and
Logic
together
with
professors
at
the
Department
of
Computer
Science
at
the
University
of
Copenhagen
and
the
Technical
University
of
Denmark
This
conference
titled
FLoC
02
for
Federated
Logic
Conferences
2002
will
take
place
in
Copenhagen
in
July
2002
It
is
expected
that
around
800
researchers
will
attend
I
applied
for
the
position
at
the
IT
C
because
the
environment
is
very
ambitious
also
when
compared
to
international
standards
and
because
I
like
to
work
in
a
place
which
has
a
short
route
from
theoretical
research
to
practical
implementation
The
IT
C
is
also
very
internationally
focused
Lars
Birkedal
says
A
short
biography
of
Lars
Birkedal
30
years
of
age
M
Sc
in
Computer
Science
1994
from
the
University
of
Copenhagen
HD
BA
in
Business
Administration
and
Organizational
Theory
in
1994
from
the
Copenhagen
Business
School
Ph
D
in
Computer
Science
from
Carnegie
Mellon
University
Pittsburgh
U
S
A
1999
As
of
March
2000
Assistant
Research
Professor
at
the
IT
C
As
of
July
2000
Head
of
the
Theory
Research
Department
at
the
IT
University
9
USEMAP
inter
icon2top
gif
opdateret
03
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
International
students
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
inter
menu
bund
gif
International
students
8
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
9
wwwadm
it
c
dk
1
IT
højskolen
News
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
8
News
Service
in
Danish
inter
menu
bund
gif
The
IT
University
s
News
Service
You
can
receive
regular
news
updates
about
available
courses
vacant
staff
positions
and
general
news
events
at
the
IT
University
of
Copenhagen
as
part
of
our
News
Service
Currently
this
service
is
only
available
in
Danish
To
subscribe
to
the
free
News
Service
in
Danish
click
9
here
and
fill
out
the
subscription
form
10
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
11
wwwadm
it
c
dk
1
IT
højskolen
2
News
News
Service
in
Danish
3
Vacancies
4
Home
5
Find
Persons
6
SiteMap
7
Intranet
8
Danish
inter
menu
bund
gif
9
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
Personer
2
Vacancies
3
Home
4
Find
Persons
5
SiteMap
6
Intranet
7
Danish
inter
menu
bund
gif
Find
medarbejder
e
Fornavn
efternavn
eller
dele
heraf
Stilling
Alle
Ansættelsessted
Alle
Afdeling
Alle
afdelinger
Søg
Find
studerende
Fornavn
efternavn
eller
dele
heraf
Immatrikuleret
Alle
Linie
Alle
Søg
Søgning
i
indhold
Brug
enten
SiteMap
eller
lav
fritekstsøgning
i
dokumentet
med
8
det
samlede
site
indhold
9
USEMAP
inter
icon2top
gif
opdateret
04
05
2001
10
wwwadm
it
c
dk
1
IT
højskolen
2
Research
Projects
3
Courses
4
Vacancies
5
Home
6
Find
Persons
7
SiteMap
8
Intranet
9
Danish
inter
menu
bund
gif
Research
Projects
and
Research
Software
10
Algorithm
Group
3D
image
Analysis
11
3D
lab
Functional
Software
Technologies
12
Funtechs
Standard
ML
13
Moscow
ML
14
The
ML
Kit
Embedded
Software
15
RCES
Verification
of
embedded
systems
16
VERIS
Design
and
Use
of
Interactive
Web
Applications
17
DIWA
18
Computation
of
Natural
Shapes
19
Eye
Based
IT
20
Boolean
Expression
Diagrams
21
BuDDy
22
MuDDy
23
Difference
Decision
Diagrams
24
STTools
25
USEMAP
inter
icon2top
gif
opdateret
04
12
2000
26
wwwadm
it
c
dk
1
logo3
gif
photo
of
Mads
Nielsen
Mads
Nielsen
Associate
Professor
Ph
D
Phone
45
38
16
88
88
Phone
direct
45
38
16
88
23
Phone
home
45
32
94
32
30
Fax
ITU
45
38
16
88
99
E
mail
2
malte
itu
dk
Address
3
IT
University
of
Copenhagen
Glentevej
67
69
DK
2400
4
Copenhagen
NV
5
Denmark
Office
2
27
Mads
Nielsen
received
a
MSc
in
1992
and
a
PhD
in
1995
both
in
computer
science
from
6
DIKU
Department
of
Computer
Science
University
of
Copenhagen
Denmark
During
his
PhD
studies
he
spent
one
year
93
94
at
the
7
Robotvis
lab
at
INRIA
Sophia
Antipolis
France
In
the
second
half
of
1995
he
was
post
doc
at
the
8
Image
Sciences
Institute
of
Utrecht
University
The
Netherlands
In
1996
he
was
joint
post
doc
at
DIKU
and
9
3D
Lab
School
of
Dentistry
University
of
Copenhagen
where
he
served
as
assistant
professor
1997
99
In
1998
99
he
served
as
external
associate
professor
at
10
Institute
of
Mathematical
Modelling
Technical
University
of
Denmark
April
1999
he
became
the
first
associate
professor
at
the
new
11
IT
University
of
Copenhagen
Some
relevant
links
Project
12
Eye
based
Information
Technology
13
Danish
version
Book
14
Gaussian
Scale
Space
Theory
Project
15
Computation
of
Natural
Shape
Conference
16
Scale
Space
99
Corfu
Greece
17
Proceedings
LNCS
1682
online
Ph
D
students
18
Martin
Lillholm
ITU
Multiscale
analysis
of
multichannel
images
19
Theo
Engell
Nielsen
ITU
Visualisation
of
fire
and
explosions
20
Niels
Holm
Olsen
ITU
3D
Lab
Analysis
of
3D
microscope
images
21
Kim
Stenstrup
Pedersen
DIKU
Multiscale
image
analysis
and
least
committed
statistics
22
Dan
Witzner
Hansen
ITU
Eye
tracking
23
Erik
B
Dam
ITU
Deep
structure
of
images
24
Nanna
Glerup
ITU
3D
Lab
Quantization
of
assymetry
25
Peter
Berg
Larsen
ITU
DIKU
Computations
in
the
human
visual
system
26
Alex
Krivoulets
ITU
Compression
of
medical
images
Former
Ph
D
students
27
Ole
Fogh
Olsen
DIKU
Multiscale
image
analysis
and
singularity
theory
13
June
2000
28
Peter
Riber
DIKU
Analysis
of
image
sequences
17
April
2000
29
Home
30
Research
31
Teaching
32
CV
33
Publications
34
3D
Lab
35
Image
Group
Mads
Nielsen
36
malte
diku
dk
updated
January
27
2000
This
layout
was
stolen
from
37
Joachim
Weickert
1
logo3
gif
Eye
Based
IT
Background
Recently
the
ALS
patient
Birger
Jeppesen
wrote
the
book
Is
heaven
a
better
place
to
be
Danish
title
Er
der
mon
bedre
i
himlen
This
book
was
written
using
an
2
eye
controlled
computer
user
interface
The
cost
price
of
this
equipment
is
approximately
US
3000
in
addition
to
the
price
of
the
PC
Furthermore
this
system
requires
a
substantial
training
periode
and
some
human
assistance
It
is
the
aim
of
the
project
Eye
Based
IT
to
make
eye
controlled
computer
equipment
accessible
to
a
broader
audience
of
disabled
people
at
a
lower
cost
price
and
in
a
more
user
friendly
form
Traditional
communication
equipment
like
pointers
mounted
in
the
forehead
have
a
number
of
obvious
drawbacks
they
are
slow
tedious
and
fatiguing
to
use
for
longer
periods
and
they
do
often
require
assistance
for
mounting
the
equipment
However
they
are
cheap
and
work
in
conjunction
with
standard
interfaces
such
as
keyboards
Speech
recognition
systems
are
currently
not
available
in
Danish
and
they
cannot
be
used
unless
the
patient
has
a
clear
pronunciation
It
is
the
aim
of
the
project
Eye
Based
IT
to
develop
cheap
fast
and
flexible
tools
that
can
be
used
by
disabled
people
of
minimum
mobility
and
with
a
minimum
of
assistance
Furthermore
eye
based
user
interfaces
may
also
show
useful
in
professional
settings
and
it
may
be
an
alternative
interaction
device
for
people
with
arm
or
shoulder
strain
problems
Technology
A
system
that
measures
the
users
eye
movements
when
he
or
she
observes
a
computer
screen
or
a
blackboard
may
be
used
for
eye
gaze
typing
Existing
gaze
typing
systems
are
relatively
expensive
US
3000
to
25000
plus
the
cost
of
a
PC
and
some
of
them
does
not
include
the
special
Danish
characters
æ
ø
and
å
See
3
list
of
products
and
4
Eye
Controlled
Media
by
Theo
Engell
Nielsen
Arne
John
Glenstrup
for
a
general
description
of
the
potential
of
this
technology
It
is
the
aim
of
the
project
Eye
Based
IT
to
develop
systems
based
on
ordinary
video
cameras
or
web
cams
and
to
develop
eye
tracking
software
that
will
run
on
a
state
of
the
art
PC
The
price
of
the
total
system
will
be
low
and
the
software
can
be
distributed
via
the
Internet
The
drawbacks
are
that
the
system
cannot
track
the
eye
movement
very
precisely
In
general
it
will
not
be
possible
to
use
standard
mouse
operated
software
Only
the
more
expensive
systems
can
obtain
such
a
precision
They
have
not
become
cheaper
during
the
last
5
years
as
they
are
based
on
specialized
hardware
components
The
system
developed
in
the
project
Eye
Based
IT
will
take
use
of
a
second
computer
monitor
placed
on
top
of
the
ordinary
monitor
Next
to
this
a
plate
with
characters
may
be
placed
The
user
selects
a
character
on
the
plate
by
looking
at
it
It
now
appears
on
the
extra
computer
monitor
The
user
acknowlegde
it
by
fixating
the
monitor
This
systems
is
very
flexible
and
new
symbols
and
characters
can
easily
be
included
It
is
design
goal
that
well
trained
users
may
reach
a
typing
speed
of
one
character
a
second
under
optimal
circumstances
The
final
system
can
be
downloaded
from
a
website
It
is
the
plan
to
develop
the
tracking
system
so
it
can
be
used
with
standard
word
processors
email
systems
and
Internet
browsers
Should
this
not
be
feasible
a
specialized
integrated
word
processor
email
system
and
Internet
browser
will
be
developed
under
the
project
Furthermore
it
will
be
investigated
how
the
technology
may
be
incorporated
in
interactive
television
systems
PhD
project
visual
tracking
of
gaze
direction
By
use
of
a
camera
mounted
on
top
of
a
standard
PC
the
eye
and
iris
must
be
tracked
It
shall
be
investigated
if
these
informations
can
be
used
for
determining
the
gaze
direction
Eventually
other
facial
features
can
be
taken
into
account
The
basic
techniques
in
this
PhD
project
are
real
time
tracking
snakes
and
condensation
techniques
and
computer
vision
self
calibration
and
tensor
techniques
Collaborating
partners
The
system
will
be
developed
in
collaboration
with
5
Professor
Kenji
Itoh
Tokyo
Institute
of
Technology
Professor
Itoh
will
be
responsible
for
the
implementation
of
the
Japanese
character
set
approximately
400
units
During
the
development
representatives
from
user
organizations
will
take
part
in
the
project
Their
advise
will
be
dictating
the
evolution
of
the
project
Time
schedule
February
March
2000
Appointment
of
PhD
student
in
computer
vision
March
April
2000
Analysis
of
demands
in
collaboration
with
user
organizations
and
establishment
of
experimental
lab
April
2000
December
2000
Development
of
tracking
algorithms
January
2001
User
test
of
tracking
system
February
2001
July
2001
Design
of
user
interface
for
plate
monitor
system
Patents
August
2001
Presentation
of
prototype
system
September
2001
Project
meeting
in
Tokyo
with
Japanese
partner
September
2001
December
2001
Optimization
of
tracking
system
Programming
of
drivers
for
tracking
system
January
2002
June
2002
End
user
tests
April
2002
Project
meeting
in
Copenhagen
with
Japanese
partners
August
2002
December
2002
Programming
of
web
site
Eventually
programming
of
email
browser
system
User
test
of
web
site
January
2003
Upload
of
web
site
Ph
d
thesis
ready
February
April
2003
Lectures
and
courses
for
organizations
of
disabled
Staff
and
partners
Associate
professor
6
Mads
Nielsen
main
Ph
D
supervisor
Associate
professor
7
John
Paulin
Hansen
co
supervisor
project
responsible
design
of
user
interfaces
Ph
d
student
in
computer
vision
systems
Programmer
of
drivers
and
user
interfaces
Professor
8
Kenji
Itoh
Tokyo
Institute
of
Technology
Research
Associate
Hirotaka
Aoki
Tokyo
Institute
of
Technology
1
logo3
gif
Øjenstyret
IT
2
English
Version
Baggrund
For
nylig
udgav
Birger
Jeppesen
der
lider
af
ALS
bogen
Er
der
mon
bedre
i
himlen
Denne
bog
er
skrevet
med
et
3
øjeudpegningssystem
Det
pågældene
udstyr
koster
ca
20
000
kr
i
tillæg
til
en
PC
og
kræver
en
længerevarende
tilvænning
samt
assistance
fra
en
teknisk
kyndig
hjælper
Projekt
Øjestyret
IT
ønsker
at
gøre
øjeudpegning
tilgængelig
for
andre
handicappede
til
en
mere
overkommelig
pris
og
i
en
mere
brugervenlig
form
En
række
af
de
redskaber
som
traditionelt
har
været
brugt
af
handicappede
til
alternative
system
inputs
fx
pande
pinde
har
en
række
åbenbare
ulemper
De
er
langsomme
de
kan
anstrengende
at
bruge
over
længere
tid
og
de
forudsætter
ofte
en
medhjælper
til
at
montere
udstyret
Fordelen
er
at
de
er
billige
og
virker
sammen
med
gængse
tastaturer
Selvom
talegenkendelsessystemer
sandsynligvis
snart
vil
være
tilgængelige
for
danske
brugere
kræver
de
en
velartikuleret
udtale
og
de
vil
derfor
ikke
kunne
anvendes
ved
fx
hæshedsproblemer
Projekt
Øjenstyret
IT
sigter
mod
at
udvikle
et
input
redskab
der
er
hurtigt
billigt
fleksiblet
og
kan
anvendes
af
handicappede
med
et
minimum
af
førlighed
Øjenstyrede
systemer
kan
muligvis
også
vise
sig
interessante
for
personer
med
midlertidige
eller
længerevarende
museskader
Teknologi
Systemer
som
kan
registrere
øjets
bevægelser
når
brugeren
kigger
på
en
skærm
eller
en
tavle
kan
bruges
til
at
identificeres
hvilket
bogstav
der
kigges
på
De
eksisterende
systemer
er
desværre
relativt
dyre
fra
ca
20
000
kr
op
til
150
000
kr
i
tillæg
til
en
PC
s
pris
og
mange
har
ikke
danske
bogstaver
Se
4
produktoversigt
og
5
Eye
Controlled
Media
af
Theo
Engell
Nielsen
Arne
John
Glenstrup
for
en
generel
beskrivelse
af
teknologiens
potentialer
Projekt
Øjenstyret
IT
ønsker
istedet
at
anvende
et
almindeligt
videokamera
eller
et
web
cam
til
at
optage
brugerenes
øjnbevægleser
og
vil
analysere
disse
ved
hjælp
af
specielt
udviklet
software
som
kan
fungere
på
en
almindelig
nyere
PC
400
Mhz
eller
mere
Fordelen
er
at
prisen
på
udstyret
holdes
på
et
minimum
og
at
systemet
kan
distribueres
over
nettet
Ulempen
er
at
systemet
ikke
vil
muliggøre
den
præcise
styring
af
en
curser
som
kendes
fra
den
traditionelle
mus
Det
er
i
dag
kun
tilnærmelsesvis
opnåeligt
med
systemer
som
koster
over
100
000
kr
Prisen
på
disse
meget
præcise
systemer
er
ikke
faldet
nævneværdigt
de
sidste
5
år
og
vil
næppe
gøre
det
fremover
da
de
anvender
en
række
specielle
hardware
komponenter
Det
system
som
vil
blive
udviklet
under
projekt
i
Øjenstyret
IT
består
foruden
vieokameraet
af
en
ekstra
monitor
placeret
over
den
skræm
hvorpå
programmerne
bliver
vist
Omkring
denne
skærm
monteres
en
enkel
tavle
med
de
skrifttegn
som
skal
anvendes
under
udpegningen
Tavlen
kan
laves
efter
et
forlæg
på
almindeligt
karton
Systemet
bliver
fleksibelt
så
brugeren
og
medhjælperen
nemt
selv
kan
lave
nye
tavler
med
individuelle
tekster
og
symboler
Systemet
vil
fungere
ved
at
brugeren
kigger
på
det
bogstav
på
tavlen
han
eller
hun
ønsker
at
indtaste
Det
fremkommer
så
på
monitoren
over
den
almindelige
skærm
og
man
bekræfter
ved
blot
at
kigge
på
det
Herved
undgås
det
at
man
ved
et
uheld
kommer
til
at
vælge
det
forkerte
bogstav
Der
er
ambitionen
at
kunne
opnå
en
skrivehastighed
på
et
tegn
i
sekundet
for
trænede
brugere
under
optimale
omstændigheder
I
tillæg
til
det
grundlæggende
system
vil
der
blive
udviklet
en
hjemmeside
hvorfra
man
kan
downloade
den
nødvendige
software
og
få
vejledning
i
anvendelsen
af
systemet
Der
vil
også
blive
etableret
en
nyhedsgruppe
for
systemet
hvorfra
der
kan
kommunikeres
med
andre
brugere
Systemet
vil
blive
søgt
anvendt
sammen
med
gængse
tekstbehandlingsprogrammer
e
mail
systemer
og
internet
browsere
Såfremt
disse
ikke
findes
egnet
til
målgruppen
eller
teknologien
vil
der
blive
udviklet
et
brugervenligt
tekstsystem
hvorfra
der
kan
sendes
e
mails
og
en
browser
som
har
de
nødvendige
funktioner
til
at
surfe
på
internettet
Det
vil
endvidre
blive
undersøgt
om
systemet
eventuelt
kan
integreres
med
set
top
box
til
kabel
tv
baserede
browsere
og
e
mailsystemer
PhD
projekt
visuel
tracking
af
synsretning
Ved
hjælp
af
et
kamera
monteret
på
en
standard
PC
skal
øje
og
iris
følges
Det
skal
undersøges
om
disse
informationer
er
tilstrækkelige
til
kvalitativt
at
fastlægge
synsretning
med
respekt
til
et
fast
verdenskoordinatsystem
Er
dette
ikke
tilfældet
må
andre
ansigts
features
indvolveres
Projektet
vil
inkludere
teknikker
fra
sandtids
tracking
snakes
og
condensation
og
fra
datamatsyn
selvkalibrering
og
tensorteknikker
Samarbejdspartnere
Systemet
vil
blive
udviklet
i
samarbejde
med
6
Professor
Kenji
Itoh
Tokyo
Institute
of
Technology
som
vil
stå
for
implementereingen
af
det
japanske
tegnsæt
med
ca
400
enheder
Derved
sikres
en
international
projektorientering
og
muligheden
for
at
markere
dansk
tilgængelighedsforskning
på
et
stort
marked
Under
hele
udviklingsforløbet
vil
brugerrepræsentanter
fra
de
organisationer
som
ønsker
at
medvirke
blive
inddraget
Deres
råd
og
kommentarer
vil
være
retningsgivende
for
projektets
konkrete
design
Tidsplan
Februar
marts
2000
Ansættelse
af
Ph
d
studerende
til
udvikling
af
algoritmer
Marts
april
2000
Behovsanalyse
i
samarbejde
med
brugerorganisationer
Indkøb
af
udstyr
og
opbygning
af
laboratorium
April
2000
december
2000
Udvikling
af
tracking
algoritmer
Januar
2001
Test
af
tracking
system
på
brugere
Februar
2001
juli
2001
Design
af
grænseflade
for
tavle
monitor
system
Patentudredninger
August
2001
Præsentation
af
prototype
system
September
2001
Projektmøde
i
Tokyo
med
japansk
partner
September
2001
december
2001
Optimering
af
trackingsystem
Programmering
af
drivere
til
trackingsystem
Januar
2002
juni
2002
Afprøvning
af
system
på
slutbrugere
April
2002
Projektmøde
i
København
med
japansk
partner
August
2002
december
2002
Programmering
af
website
og
eventuelt
tekst
email
samt
browser
Brugertest
af
web
site
Januar
2003
Upload
af
øjenstyrings
site
og
aflevering
af
Ph
d
afhandling
Færdigredigering
af
videnskabelige
artikler
og
proceedings
om
projektet
Februar
april
2003
Foredrag
og
kurser
for
handicapforeninger
og
hjælpemiddelcentraler
Medvirkende
forskere
og
samarbejdsparnere
Lektor
7
Mads
Nielsen
hovedvejleder
for
Ph
d
studerende
Lektor
8
John
Paulin
Hansen
sidevejleder
for
Ph
d
studerende
projektstyring
og
design
Ph
d
studerende
i
computer
vision
systemer
Programmør
af
drivere
og
brugergrænseflader
Professor
9
Kenji
Itoh
Tokyo
Institute
of
Technology
Research
Associate
Hirotaka
Aoki
Tokyo
Institute
of
Technology
1
logo3
gif
photo
of
Mads
Nielsen
Research
My
research
interest
are
in
computer
vision
image
analysis
and
especially
medical
image
analysis
My
basic
point
of
view
is
that
least
committed
inference
and
models
unconfounded
from
their
digital
representation
must
be
used
This
has
led
to
research
in
least
committed
models
for
projected
surface
orientation
and
natural
images
and
the
intrinsic
structure
of
scale
space
representations
of
images
Techniques
developed
on
basis
of
these
tools
falls
into
stereo
vision
optic
flow
computation
registration
segmentation
all
of
these
with
a
natural
multi
scale
in
front
Techniques
have
been
applied
registration
and
segmentation
of
medical
images
modelling
of
biological
objects
tracking
of
pigs
counting
of
cells
etc
2
Home
3
Research
4
Teaching
5
CV
6
Publications
7
3D
Lab
8
Image
Group
Mads
Nielsen
9
malte
diku
dk
updated
August
20
1999
1
logo3
gif
photo
of
Mads
Nielsen
Teaching
Currently
I
m
working
on
the
curriculum
of
the
studies
at
the
IT
University
in
Copenhagen
for
Master
of
Science
of
Information
Technology
and
Master
of
Information
Technology
both
with
specialization
in
multi
media
technology
This
is
done
in
collaboration
with
DTU
and
DIKU
I
have
been
teaching
several
couses
in
image
analysis
and
medical
image
analysis
at
DIKU
and
at
IMM
DTU
I
participate
in
the
effort
beeing
made
to
coordinate
the
teaching
in
image
analysis
in
the
Copenhagen
area
including
southern
sweeden
2
Oresyn
I
have
been
supervising
a
number
of
student
projects
at
DIKU
and
IMM
Titles
are
among
Koenderink
Corner
points
Generic
structure
of
isophote
curvature
extrema
Multi
scale
watershed
segmentation
Tube
snake
reconstruction
of
tubular
structures
from
their
contour
projections
Starfish
junction
snakes
for
tracking
The
huasdorf
dimension
and
multi
scale
normalisation
I
am
PhD
cosupervisor
of
Ole
F
Olsen
and
Peter
Riber
Along
with
the
image
group
at
DIKU
we
have
been
arranging
a
number
of
PhD
summerschools
I
have
been
especially
involved
in
Classical
scale
space
theory
and
Shape
Variation
Courses
Period
Institution
Title
Spring
99
IMM
DTU
3
Advanced
Image
Analysis
9
98
6
99
IMM
DTU
Medical
Image
Analysis
Spring
98
DIKU
Medical
Image
Analysis
Spring
98
IMM
DTU
4
Statistical
Image
Analysis
Spring
97
DIKU
5
Catastrophe
Theory
in
Image
Analysis
Autumn
96
DIKU
6
Medical
Image
Analysis
Spring
93
DIKU
Regularisation
in
Computer
Vision
7
Home
8
Research
9
Teaching
10
CV
11
Publications
12
3D
Lab
13
Image
Group
Mads
Nielsen
14
malte
diku
dk
updated
November
25
1998
1
logo3
gif
photo
of
Mads
Nielsen
Mads
Nielsen
Born
October
24
1965
Danish
citizen
Married
to
Mai
Britt
Children
Katinka
Feb
1st
1996
and
Maria
June
20
1998
Studies
PhD
from
Department
of
Computer
Science
University
of
Copenhagen
DIKU
April
1995
International
studies
at
INRIA
Sophia
Antipolis
one
year
93
94
Master
Cand
Scient
of
computer
science
University
of
Copenhagen
KU
August
1992
Bachelor
of
physics
and
computer
science
June
1989
Professional
life
Associate
Professor
at
IT
University
in
Copenhagen
since
April
1999
External
Associate
Professor
at
IMM
DTU
January
1998
July
1999
Asst
Research
Professor
at
3D
Lab
School
of
Dentistry
KU
February
1997
March
1999
Post
Doc
at
3D
Lab
School
of
Dentistry
KU
April
1996
February
1997
Post
Doc
at
DIKU
December
95
to
March
96
Post
Doc
at
Utrecht
University
July
December
1995
Research
Assistant
at
DIKU
February
1995
to
July
1995
February
1997
PhD
Student
at
DIKU
from
August
1992
to
February
1995
Funded
by
STVF
Research
programmer
under
Professor
Peter
Johansen
at
DIKU
from
April
1990
to
June
1992
Funded
by
SNF
20
h
week
Programmer
in
the
company
Interbase
from
February
1986
to
April
1990
20
h
week
Instructor
of
Computer
Science
Copenhagen
Business
University
April
1985
to
November
1986
15
h
week
Honorary
Office
Chair
of
2nd
International
Conference
Scale
Space
Conference
Corfu
Greece
September
18
19
1999
Co
chair
of
7th
ECCV
Copenhagen
Denmark
May
2002
Program
committee
member
1st
International
Scale
Space
Conference
Utrecht
July
2
4
1997
SCIA99
Soendre
Stroemfjord
Greenland
June
1999
ICCV
01
Vancouver
Canada
July
9
12
2001
Secretary
of
IEEE
Computer
Society
Denmark
Member
of
the
editorial
board
of
Journal
of
Mathematical
Imaging
and
Vision
Reviewer
at
several
international
conferences
and
journals
among
which
are
IEEE
PAMI
Medical
Image
Analysis
IEEE
Trans
on
Medical
Image
Analysis
co
Organiser
of
international
workshops
in
computer
vision
and
image
analysis
in
Copenhagen
Linear
scale
space
theory
1997
Shape
Variation
1999
Statistics
of
textures
and
shapes
2000
External
funding
Eye
based
Information
Technology
collaboration
with
John
Paulin
Hansen
ITU
2
Mkr
Natural
Shape
collaboration
with
Peter
Johansen
DIKU
3D
Lab
Psycology
Mathematics
7
Mkr
Fertimorph
collaboration
with
University
Hospital
of
Copenhagen
3D
Lab
and
Image
House
A
S
8
Mkr
CIT
project
101
Project
in
collaboration
with
Image
House
A
S
funded
by
CIT
1
5
Mkr
Shape
Variation
PhD
summerschool
funded
by
the
Danish
Research
Academy
70
kkr
and
by
CIT
30
kkr
Utrecht
Extra
expenses
during
stay
at
Utrecht
University
Hospital
SNF
28
kkr
Sophia
Antipolis
Extra
expenses
during
stay
at
INRIA
Sophia
Antipolis
Research
Academy
58
kkr
Teaching
Courses
at
ITU
Multimedia
systems
Courses
at
DIKU
Regularisation
in
image
analysis
Catastrophe
Theory
in
Image
Analysis
Medical
Image
Analysis
Courses
at
IMM
DTU
Statistical
Image
Analysis
Medical
Image
Analysis
Undergraduate
supervision
at
DIKU
app
10
projects
and
theses
PhD
supervision
Supervisor
of
Martin
Lillholm
Theo
Engell
Nielsen
Niels
Holm
Olsen
Co
supervisor
of
Kim
Steenstrup
Pedersen
Ole
Fogh
Olsen
Peter
Riber
Member
of
Jon
Sporring
s
supervision
group
2
Home
3
Research
4
Teaching
5
CV
6
Publications
7
3D
Lab
8
Image
Group
Mads
Nielsen
9
malte
diku
dk
updated
November
25
1998
1
logo3
gif
photo
of
Mads
Nielsen
Publications
Books
Book
chapters
Theses
Mads
Nielsen
From
Paradigm
to
Algorithms
in
Computer
Vision
PhD
thesis
2
DIKU
University
of
Copenhagen
Denmark
April
1995
DIKU
95
8
3
thesis
ps
gz
4
7Mb
Mads
Nielsen
Scale
space
generators
and
functionals
In
Gaussian
Scale
Space
Theory
pages
99
114
Kluwer
Academic
press
1996
4
ssBookCh7
ps
gz
423Kb
Mads
Nielsen
and
Rachid
Deriche
Binocular
dense
depth
reconstruction
using
isotropy
constraint
In
Gunilla
Borgefors
editor
Theory
and
Applications
of
Image
Processing
II
Selected
articles
from
the
9th
Scandinavian
Conference
on
Image
Analysis
pages
127
140
World
Scientific
Publishing
1995
5
bookScia95
ps
gz
963Kb
Mads
Nielsen
Peter
Johansen
Ole
F
Olsen
Joachim
Weickert
editors
Proceedings
of
second
international
conference
on
scale
space
theories
in
computer
vision
Springer
Verlag
Lecture
Notes
in
Computer
Science
vol
1682
6
Proceedings
LNCS
1682
online
Jon
Sporring
and
Mads
Nielsen
Direct
estimation
of
first
order
optic
flow
In
Gunilla
Borgefors
editor
7
Theory
And
Applications
of
Image
Analysis
II
Selected
Papers
from
the
9th
Scandinavian
Conference
on
Image
Analysis
pp
225
238
World
Scientific
Jon
Sporring
Mads
Nielsen
Luc
Florack
and
Peter
Johansen
editors
Gaussian
Scale
Space
Theory
Kluwer
Academic
press
1997
8
Book
at
Kluwer
Journal
papers
Mads
Nielsen
Graduated
non
convexity
by
functional
focusing
IEEE
PAMI
19
5
521
525
1997
9
PAMI19
5
ps
gz
3
2Mb
Mads
Nielsen
Luc
Florack
and
Rachid
Deriche
Regularization
scale
space
and
edge
detection
filters
Journal
on
Mathematical
Imaging
and
Vision
7
4
291
307
1997
10
JMIV7
4
ps
gz
475Kb
Mads
Nielsen
Robert
Maas
Wiro
Niessen
Luc
Florack
and
Bart
ter
Haar
Romeny
Binocular
stereo
from
grey
scale
images
Journal
of
Mathematical
Imaging
and
Vision
10
2
pp
103
122
1999
11
JMIV10
2
ps
gz
1
6Mb
Luc
Florack
Wiro
Niessen
and
Mads
Nielsen
The
intrinsic
structure
of
optic
flow
incorporating
measurement
duality
International
Journal
on
Computer
Vision
27
3
263
286
1998
Peter
Johansen
Mads
Nielsen
and
Ole
F
Olsen
Branch
Points
in
One
Dimensional
gaussian
Scale
Space
Accepted
for
JMIV
2000
Per
R
Andresen
and
Mads
Nielsen
Non
rigid
registration
by
geometry
constrained
diffusion
Accepted
for
Medical
Image
Analysis
2000
Jon
Sporring
Ole
F
Olsen
Mads
Nielsen
Joachim
Weickert
12
Smoothing
Images
Creates
Corners
13
Image
and
Vision
Computing
Vol
18
No
3
February
2000
pp
261
266
Kim
S
Pedersen
Mads
Nielsen
The
Haussdorf
dimension
and
scale
space
normalisation
Journal
of
Visual
Communication
and
Image
Representation
11
2
266
277
2000
Special
Issue
on
the
Scale
Space
99
Conference
14
JVCIR10
2
pdf
zip
128Kb
Wiro
Niessen
Jim
Duncan
Mads
Nielsen
Luc
Florack
Bart
ter
Haar
Romeny
and
Max
Viergever
A
multi
scale
approach
to
image
sequence
analysis
Computer
Vision
Image
Understanding
Feb
1997
Conference
papers
Mads
Nielsen
Surface
reconstruction
GNCs
and
MFA
In
Proceedings
of
International
Conference
on
Computer
Vision
pages
344
349
Cambridge
Massachusetts
USA
June
20
23
1995
15
iccv95
ps
gz
320Kb
Mads
Nielsen
and
Per
R
Andresen
Feature
displacement
interpolation
In
proc
of
ICIP
Chicago
5
pages
IEEE
Computer
Society
Press
October
1998
16
icip98
ps
gz
250Kb
Mads
Nielsen
Luc
Florack
and
Rachid
Deriche
Regularization
scale
space
and
edge
detection
filters
In
Proc
of
4th
ECCV
Cambridge
UK
volume
1065
of
Lecture
Notes
on
Computer
Science
pages
70
81
Springer
Verlag
April
1996
17
eccv96
ps
gz
46Kb
Mads
Nielsen
Wiro
Niessen
Robert
Maas
Luc
Florack
and
Bart
ter
Haar
Romeny
On
the
duality
of
scalar
and
density
flows
In
Proc
1st
Scale
Space
conference
Lecture
Notes
in
Computer
Science
pages
65
76
Springer
Verlag
July
1997
18
ss97
ps
gz
562Kb
Mads
Nielsen
and
Ole
F
Olsen
The
structure
of
the
optic
flow
field
In
proc
of
5th
ECCV
Freiburg
Germany
Lecture
Notes
in
Computer
Science
pages
271
287
Springer
Verlag
June
1998
19
eccv98
ps
gz
1
0Mb
Mads
Nielsen
Graduated
non
convexity
by
smoothness
focusing
In
proc
of
4th
BMVC
pages
599
608
Guildford
England
September
21
23
1993
20
bmvc93
ps
gz
81Kb
Mads
Nielsen
Isotropic
regularization
In
proc
of
4th
BMVC
pages
135
144
Guildford
England
September
21
23
1993
Mads
Nielsen
Scale
space
extensions
of
the
weak
string
In
proc
of
the
8th
Scandinavian
Conference
on
Image
Analysis
pages
867
874
Tromso
Norway
May
25
28
1993
Mads
Nielsen
Bayesian
inference
in
computer
vision
Binocular
stereo
from
axioms
to
algorithm
In
proc
of
International
Conference
on
Current
Issues
of
Statistical
Shape
Analysis
pages
128
135
Leeds
England
June
5
7
1995
21
cissa95
ps
gz
922Kb
Mads
Nielsen
and
Rachid
Deriche
Binocular
dense
depth
reconstruction
using
isotropy
constraint
In
proc
of
the
9th
Scandinavian
Conference
on
Image
Analysis
pages
49
56
Uppsala
Sweden
June
6
9
1995
22
scia95
ps
gz
920Kb
Mads
Nielsen
Stereo
vision
A
least
committed
bayesian
approach
In
proc
of
Interdisciplinary
Inversion
Workshop
DTU
September
1996
Niels
H
Olsen
Mads
Nielsen
Lie
Group
Modelling
of
Nonlinear
Point
Set
Shape
Variability
In
proc
of
the
2nd
AFPAC
Kiel
Germany
September
2000
LNCS
1888
Erik
B
Dam
Mads
Nielsen
Nonlinear
diffusion
schemes
for
interactive
watershed
segmentation
accepted
for
3rd
MICCAI
Pittsburg
USA
October
2000
Wiro
Niessen
Mads
Nielsen
Luc
Florack
Robert
Maas
Bart
ter
Haar
Romeny
and
Max
Viergever
Multiscale
optic
flow
using
physical
constraints
In
proc
DIKU
PhD
Summerschool
on
Classical
Scale
Space
Theory
Copenhagen
Denmark
1996
Ole
Fogh
Olsen
and
Mads
Nielsen
Generic
events
for
the
gradient
squared
In
proc
of
the
1st
Scale
Space
Conference
Lecture
Notes
in
Computer
Science
pages
101
112
Springer
Verlag
July
1997
23
ss97b
ps
gz
562Kb
Ole
Fogh
Olsen
and
Mads
Nielsen
Gradient
magnitude
based
watershed
segmentation
In
proc
of
ICIAP
97
Florence
Italy
Lecture
Notes
in
Computer
Science
pages
6
13
Springer
Verlag
September
1997
24
iciap97
ps
gz
81Kb
Per
R
Andresen
and
Mads
Nielsen
4d
shape
preserving
modelling
of
bone
growth
In
proc
of
MICCAI
Cambridge
Ma
Lecture
Notes
in
Computer
Science
10
pages
Springer
Verlag
October
1998
25
miccai98
ps
gz
1
3Mb
Per
R
Andresen
Mads
Nielsen
Non
rigid
registration
by
geometry
constrained
diffusion
Proc
of
MICCAI99
LNCS
Springer
Verlag
1999
26
miccai99
ps
gz
1
9Mb
Kim
S
Pedersen
Mads
Nielsen
The
Hausdorf
dimension
and
scale
space
normalisation
Proc
of
ScaleSpace99
LNCS
1682
pp
271
282
Corfu
1999
27
ss99
ps
gz
1
2Mb
Ionana
D
O
Mogensen
Mads
Nielsen
Tube
snake
models
for
reconstruction
of
elongated
structures
from
their
contour
projections
SCIA
99
June
7
11
Kangerlussuaq
Greenland
1999
John
Bach
Jensen
and
Mads
Nielsen
A
simple
genetic
algorithm
applied
to
discontinous
regularization
In
proc
of
1992
IEEE
Workshop
on
Neural
Networks
for
Signal
Processing
pages
69
78
August
1992
Jon
Sporring
Mads
Nielsen
Joachim
Weickert
and
Ole
Fogh
Olsen
A
note
on
differential
corner
detectors
In
proc
of
ICPR
Brisbane
Australia
4
pages
August
1998
Jon
Sporring
and
Mads
Nielsen
Direct
estimation
of
time
to
contact
In
proc
of
the
9th
Scandinavian
Conference
on
Image
Analysis
pages
941
948
Uppsala
Sweden
June
6
9
1995
Robert
Maas
Mads
Nielsen
Wiro
Niessen
Bart
ter
Haar
Romeny
Luc
Florack
and
Max
Viergever
Local
disparity
measurements
using
scalable
operators
In
proc
of
DIKU
PhD
Summerschool
on
Classical
Scale
Space
Theory
Copenhagen
Denmark
10
13
May
1996
28
Home
29
Research
30
Teaching
31
CV
32
Publications
33
3D
Lab
34
Image
Group
Mads
Nielsen
35
malte
diku
dk
updated
November
25
1998
1
The
IT
University
of
Copenhagen
pengis2
gif
Henrik
Hulgaard
Welcome
to
my
home
page
I
m
an
associate
professor
at
the
2
IT
University
of
Copenhagen
Teaching
Fall
2000
3
Efficient
Algorithms
and
Programs
Fall
2000
4
Computer
security
Fall
2000
5
Internet
programming
Spring
2001
6
Computer
security
7
LinuxSecurity
tgz
Spring
2001
8
Operating
Systems
Spring
2001
9
Internet
Programming
Research
10
Overview
of
my
research
11
CTSE
12
Resource
Constrained
Embedded
Systems
RCES
13
Difference
Decision
Diagrams
14
Boolean
Expression
Diagrams
BEDs
15
Verification
of
Interacting
Systems
VERIS
16
Publication
list
17
My
dissertation
abstract
PostScript
file
Personal
Information
18
ConfigIt
Software
19
About
me
20
Contact
Information
21
My
public
PGP
key
Comments
to
22
henrik
itu
dk
Version
June
30
1999
BED
page
has
moved
Please
go
to
1
www
it
c
dk
research
bed
1
hoved
logo4
gif
Timing
Analysis
A
concurrent
system
is
modeled
using
a
safe
Petri
net
Timing
information
is
introduced
by
annotating
the
places
of
the
net
with
delay
ranges
This
model
is
2
further
explained
below
Given
a
model
of
the
system
the
temporal
properties
of
the
system
is
analyzed
by
determing
the
extreme
case
separation
in
time
between
two
system
events
i
e
between
two
transition
firings
This
information
is
useful
for
optimization
verification
and
performance
evaluation
of
concurrent
systems
The
problem
of
determing
the
extreme
case
separation
in
time
between
two
system
events
is
called
the
3
TSE
problem
also
further
explaing
below
Two
algorithms
have
been
developed
called
TSE
and
CTSE
for
determining
the
extreme
case
separation
in
time
between
two
system
events
The
4
TSE
algorithm
analyzes
a
Petri
net
without
conditional
behavior
also
called
a
marked
graph
or
a
decision
free
Petri
net
The
5
CTSE
algorithm
is
an
extension
of
the
TSE
algorithm
capable
of
analyzing
safe
Petri
nets
i
e
nets
that
include
conditional
behavior
Formal
Model
of
a
Concurrent
System
Petri
Nets
The
Timed
Separation
of
Events
Problem
The
TSE
problem
The
TSE
Algorithm
Determining
the
time
separation
of
events
TSE
is
a
fundamental
problem
in
the
analysis
synthesis
and
optimization
of
concurrent
systems
Applications
range
from
logic
optimization
of
asynchronous
digital
circuits
to
the
evaluation
of
execution
times
of
real
time
systems
We
have
developed
an
efficient
algorithm
to
find
exact
tight
bounds
on
the
time
separation
of
events
in
an
arbitrary
concurrent
process
specification
without
conditional
behavior
This
technique
has
been
extended
to
consider
specifications
with
conditional
behaviors
that
are
common
in
asynchronous
circuit
design
especially
through
circuits
derived
from
high
level
descriptions
in
terms
of
concurrent
programs
for
example
6
CSP
The
TSE
problem
occurs
in
two
forms
Firstly
given
a
description
of
a
concurrent
system
as
a
set
of
events
and
rules
with
time
intervals
constraining
the
firing
of
these
events
determine
the
largest
possible
separation
in
time
between
the
firing
of
two
particular
event
occurrences
Secondly
determine
the
maximum
separation
over
all
occurrences
of
two
events
with
the
same
difference
in
occurrence
numbering
Solutions
to
the
second
problem
can
be
used
to
determine
the
minimum
and
maximum
time
separations
between
consecutive
transitions
on
a
wire
information
that
can
then
be
used
to
analyze
best
and
worst
case
performance
of
the
system
Such
information
can
also
be
used
to
determine
whether
hazard
prevention
circuitry
can
be
safely
removed
from
the
circuit
yielding
a
smaller
and
faster
implementation
In
the
process
of
developing
the
TSE
algorithm
we
have
invented
several
useful
new
algebras
in
the
spirit
of
the
max
algebra
Efficient
algorithms
to
manipulate
the
elements
in
these
algebras
have
been
incorporated
into
our
implementation
of
the
TSE
algorithm
The
CTSE
Algorithm
In
adapting
of
our
algorithm
to
include
conditional
behavior
we
have
concentrated
on
modeling
a
restricted
class
of
Petri
nets
those
nets
with
places
that
are
either
free
choice
or
unique
choice
This
model
corresponds
to
asynchronous
circuit
implementations
that
can
be
derived
from
7
CSP
program
without
the
need
to
introduce
arbitration
devices
at
the
circuit
level
This
represents
a
large
class
of
circuits
including
the
entire
control
portion
of
the
Caltech
Asynchronous
Microprocessor
Continuing
work
will
show
how
these
results
can
be
used
to
efficiently
synthesis
asynchronous
circuits
that
are
optimized
based
on
timing
information
Tools
gif
There
is
a
publicly
available
implementation
of
the
CTSE
algorithm
in
C
8
here
Some
Related
Publications
1
Henrik
Hulgaard
Steven
M
Burns
Tod
Amon
and
Gaetano
Borriello
An
algorithm
for
exact
bounds
on
the
time
separation
of
events
in
concurrent
systems
IEEE
Transactions
on
Computers
44
11
1306
1317
November
1995
2
Tod
Amon
and
Henrik
Hulgaard
9
Temporal
Analysis
of
Manufacturing
Systems
Using
Non
Stochastic
Methods
Journal
of
Manufacturing
Systems
15
3
1996
3
Henrik
Hulgaard
and
Steven
M
Burns
10
Efficient
Timing
Analysis
of
a
Class
of
Petri
Nets
In
Computer
Aided
Verification
1995
4
Henrik
Hulgaard
and
Steven
M
Burns
11
Bounded
Delay
Timing
Analysis
of
a
Class
of
CSP
Programs
with
Choice
International
Symposium
on
Advanced
Research
in
Asynchronous
Circuits
and
Systems
1994
5
Henrik
Hulgaard
and
Steven
M
Burns
12
Bounded
Delay
Timing
Analysis
of
a
Class
of
CSP
Programs
to
appear
in
Formal
Methods
in
System
Design
Comments
to
13
henrik
itu
dk
Version
Mar
7
1997
1
hoved
logo4
gif
CTSE
Source
Code
Please
check
the
CTSE
2
licensing
and
copyright
terms
3
CTSE
documentation
4
ANSI
C
source
code
gzip
ed
tar
file
5
Dissertation
describing
the
algorithms
Comments
to
6
henrik
itu
dk
Version
Mar
7
1997
1
hoved
logo4
gif
CTSE
Licencing
Terms
The
CTSE
program
is
licensed
free
of
charge
and
thus
there
is
no
warranty
for
the
program
The
copyright
holder
provides
the
CTSE
program
as
is
without
warranty
of
any
kind
either
expressed
or
implied
including
but
not
limited
to
the
implied
warranties
of
merchantability
and
fitness
for
a
particular
purpose
The
entire
risk
as
to
the
quality
and
performance
of
the
CTSE
program
is
with
the
user
Should
the
program
prove
defective
the
user
assumes
the
cost
of
all
necessary
servicing
repair
or
correction
In
no
event
will
the
copyright
holder
be
liable
to
the
user
for
damages
including
any
general
special
incidental
or
consequential
damages
arising
out
of
the
use
or
inability
to
use
the
CTSE
program
Comments
to
2
henrik
itu
dk
Version
Mar
7
1997
1
hoved
logo4
gif
Dissertation
by
Henrik
Hulgaard
Timing
Analysis
and
Verification
of
Timed
Asynchronous
Circuits
Abstract
This
dissertation
develops
a
formal
framework
for
the
analysis
of
temporal
properties
of
concurrent
systems
A
concurrent
system
is
modeled
as
a
set
of
independent
concurrent
components
that
occasionally
synchronize
Formally
such
a
model
is
represented
by
a
safe
Petri
net
where
the
timing
information
is
specified
using
delay
ranges
annotated
on
the
places
of
the
net
Petri
nets
have
a
simple
representation
of
concurrency
synchronization
and
state
and
have
proven
adequate
for
modeling
many
types
of
control
dominated
concurrent
systems
The
analysis
we
perform
is
to
determine
the
extreme
case
separation
in
time
between
two
system
events
transitions
in
the
Petri
net
This
analysis
is
useful
both
for
performance
evaluation
and
for
timing
verification
We
apply
the
techniques
developed
in
this
dissertation
to
a
particular
domain
namely
the
analysis
and
verification
of
timed
asynchronous
circuits
This
will
allow
designers
to
reason
about
and
thus
synthesize
non
speed
independent
or
timed
asynchronous
circuits
Our
hope
is
that
these
techniques
can
be
used
in
a
complete
synthesis
methodology
for
developing
robust
and
high
performance
timed
designs
The
timing
analysis
problem
is
approached
in
a
bottom
up
manner
We
identify
two
subclasses
of
safe
Petri
nets
for
which
we
develop
efficient
and
exact
solutions
For
a
choice
free
Petri
net
we
develop
an
exact
and
efficient
algorithm
called
the
TSE
algorithm
This
algorithm
is
extended
to
an
iterative
algorithm
called
the
CTSE
algorithm
for
analyzing
Petri
net
specification
with
choice
If
the
choice
is
limited
to
extended
free
choice
and
unique
choice
the
CTSE
algorithm
is
exact
If
the
choice
is
more
general
the
CTSE
algorithm
provides
conservative
bounds
on
the
extreme
case
separation
in
times
The
algorithms
developed
in
this
dissertation
have
been
implemented
in
C
and
the
practicality
of
the
timing
analysis
is
demonstrated
by
benchmarking
the
algorithms
on
a
number
of
realistically
sized
applications
The
CTSE
algorithm
is
able
to
analyze
Petri
net
specifications
with
more
than
3000
nodes
and
10
16
reachable
states
in
less
than
two
hours
on
a
modern
workstation
The
dissertation
is
approx
300
pages
formatted
for
doublesided
printing
The
PostScript
file
is
764k
after
gzip
compression
o
2
Download
from
itu
dk
o
3
Download
from
ftp
cs
washington
edu
o
4
Version
without
ZapfDingbats
font
from
itu
dk
Comments
to
5
henrik
itu
dk
Version
Mar
7
1997
1
hoved
logo4
gif
Research
of
Henrik
Hulgaard
My
research
interests
include
areas
such
as
timing
analysis
asynchronous
circuits
VLSI
CAD
tools
and
formal
verification
In
my
Ph
D
dissertation
I
developed
techniques
based
on
abstract
algebra
to
prove
timing
properties
of
timed
Petri
net
These
techniques
are
used
to
analyze
and
verify
timed
asynchronous
systems
Other
applications
include
analysis
of
combined
hardware
software
systems
and
non
stochastic
analysis
of
manufacturing
systems
More
recently
my
research
interests
relate
to
the
theory
and
application
of
formal
verification
techniques
to
embedded
systems
I
work
on
model
checking
of
embedded
systems
modeled
using
a
large
number
of
concurrent
state
machines
Recent
work
also
includes
techniques
for
fast
tautology
checking
using
extensions
of
Binary
Decision
Diagrams
Currently
I
look
at
model
checking
of
real
time
systems
modeled
e
g
using
timed
automata
I
also
work
on
performing
symbolic
timing
analysis
based
on
Presburger
arithmetic
Finally
I
consider
using
BDD
techniques
for
efficient
code
generation
for
embedded
systems
and
for
combining
model
checking
with
generation
of
test
vectors
to
validate
safety
critical
software
Further
information
about
my
research
in
these
areas
can
be
found
below
2
Timing
Analysis
Determining
the
timing
behavior
of
concurrent
systems
like
communication
protocols
manufacturing
systems
and
asynchronous
circuits
3
Formal
Verification
New
data
structures
allowing
efficient
representation
and
manipulation
of
circuits
4
Embedded
Systems
In
the
RCES
Resource
Constrained
Embedded
Systems
project
we
investigate
design
methods
and
prototype
tools
for
developing
high
quality
efficient
correct
and
reliable
resource
constrained
embedded
software
5
Publications
A
full
list
of
my
publications
6
Dissertation
The
abstract
and
full
text
of
my
dissertation
titled
Timing
Analysis
and
Verification
of
Timed
Asynchronous
Circuits
is
available
on
line
Projects
7
Boolean
Expression
Diagrams
8
Difference
Decision
Diagrams
9
The
timing
analysis
tool
CTSE
10
Verification
of
Interacting
Systems
VERIS
11
Resource
Constrained
Embedded
Systems
RCES
Comments
to
12
henrik
itu
dk
Version
Mar
7
1997
Publications
by
Henrik
Hulgaard
Journal
Papers
G
Behrmann
K
G
Larsen
H
R
Andersen
H
Hulgaard
J
Lind
Nielsen
Verification
of
Hierarchical
State
Event
Systems
using
Reusability
and
Compositionality
Accepted
for
publication
in
Formal
Methods
in
System
Design
H
Hulgaard
and
T
Amon
Symbolic
Timing
Analysis
of
Asynchronous
Systems
IEEE
Transactions
on
CAD
vol
19
no
10
pp
1093
1104
oct
2000
J
Lind
Nielsen
H
R
Andersen
H
Hulgaard
G
Behrmann
K
Kristoffersen
and
K
G
Larsen
1
Verification
of
Large
State
Event
Systems
using
Compositionality
and
Dependency
Analysis
Submitted
to
Formal
Methods
in
System
Design
NOTE
The
technique
described
in
this
paper
is
being
patented
by
2
Baan
Visualstate
which
has
all
commercial
rights
J
Staunstrup
K
G
Larsen
H
R
Andersen
H
Hulgaard
G
Behrmann
K
Kristoffersen
J
Lind
Nielsen
H
Leerberg
A
Skou
and
N
B
Theilgaard
Practical
Verification
of
Embedded
Software
In
IEEE
Computer
Vol
33
No
5
May
2000
Henrik
Reif
Andersen
and
Henrik
Hulgaard
3
Boolean
Expression
Diagrams
To
appear
in
4
Information
and
Computation
Henrik
Hulgaard
Poul
F
Williams
and
Henrik
Reif
Andersen
5
Equivalence
Checking
of
Combinational
Circuits
using
Boolean
Expression
Diagrams
In
6
IEEE
Transactions
on
CAD
18
7
July
1999
Henrik
Hulgaard
and
Steven
M
Burns
7
Bounded
Delay
Timing
Analysis
of
a
Class
of
CSP
Programs
Formal
Methods
in
System
Design
vol
11
no
3
October
1997
8
BibTeX
entry
Henrik
Hulgaard
Steven
M
Burns
Tod
Amon
and
Gaetano
Borriello
An
algorithm
for
exact
bounds
on
the
time
separation
of
events
in
concurrent
systems
IEEE
Transactions
on
Computers
44
11
1306
1317
November
1995
9
BibTeX
entry
Henrik
Hulgaard
Steven
M
Burns
and
Gaetano
Borriello
Testing
Asynchronous
Circuits
A
Survey
Integration
the
VLSI
Journal
19
3
111
132
1995
10
BibTeX
entry
Tod
Amon
and
Henrik
Hulgaard
11
Nonstochastic
Analysis
of
Manufacturing
Systems
Using
Timed
Event
Graphs
Journal
of
Manufacturing
Systems
15
3
1996
12
BibTeX
entry
Conference
Workshop
Papers
P
F
Williams
H
R
Andersen
H
Hulgaard
Satisfiability
Checking
Using
Boolean
Expression
Diagrams
Accepted
for
publication
at
TACAS
2001
J
Møller
J
Lichtenberg
H
R
Andersen
and
H
Hulgaard
Difference
Decision
Diagrams
Computer
Science
Logic
CSL
99
J
Møller
J
Lichtenberg
H
R
Andersen
and
H
Hulgaard
Fully
Symbolic
Model
Checking
of
Timed
Systems
using
Difference
Decision
Diagrams
SMC
99
13
Electronic
Notes
in
Theoretical
Computer
Science
23
no
2
1999
P
Williams
H
R
Andersen
and
H
Hulgaard
Equivalence
Checking
of
Hierarchical
Combinational
Circuits
In
IEEE
International
Conference
on
Electronics
Circuits
and
Systems
ICSCE
99
T
Amon
and
H
Hulgaard
14
Symbolic
Time
Separation
of
Events
In
Proceedings
of
Advanced
Research
in
Asynchronous
Circuits
and
Systems
pp
83
93
April
1999
G
Behrmann
K
G
Larsen
H
R
Andersen
H
Hulgaard
J
Lind
Nielsen
15
Verification
of
Hierarchical
State
Event
Systems
using
Reusability
and
Compositionality
In
Proceedings
of
TACAS
99
Springer
Verlag
NOTE
The
technique
described
in
this
paper
is
being
patented
by
16
Baan
Visualstate
which
has
all
commercial
rights
F
Jin
H
Hulgaard
and
E
Cerny
17
Maximum
Time
Separation
of
Events
in
Cyclic
Systems
with
Linear
and
Latest
Timing
Constraints
Formal
Methods
in
CAD
FMCAD
98
J
Lind
Nielsen
H
R
Andersen
G
Behrmann
H
Hulgaard
K
Kristoffersen
and
K
G
Larsen
18
Verification
of
Large
State
Event
Systems
using
Compositionality
and
Dependency
Analysis
Proceedings
of
TACAS
98
Bernhard
Steffen
ed
LNCS
1384
April
1998
Springer
Verlag
NOTE
The
technique
described
in
this
paper
is
being
patented
by
19
Baan
Visualstate
which
has
all
commercial
rights
Henrik
Hulgaard
Poul
F
Williams
and
Henrik
R
Andersen
20
Combinational
Logic
Level
Verification
using
Boolean
Expression
Diagrams
21
3rd
International
Workshop
on
Applications
of
the
Reed
Muller
Expansion
in
Circuit
Design
1997
Henrik
Reif
Andersen
and
Henrik
Hulgaard
22
Boolean
Expression
Diagrams
LICS
97
Henrik
Hulgaard
and
Steven
M
Burns
23
Efficient
Timing
Analysis
of
a
Class
of
Petri
Nets
In
Computer
Aided
Verification
1995
24
BibTeX
entry
Henrik
Hulgaard
and
Steven
M
Burns
25
Bounded
Delay
Timing
Analysis
of
a
Class
of
CSP
Programs
with
Choice
International
Symposium
on
Advanced
Research
in
Asynchronous
Circuits
and
Systems
1994
26
BibTeX
entry
Henrik
Hulgaard
Tod
Amon
Steven
M
Burns
and
Gaetano
Borriello
27
Timing
Analysis
of
Timed
Event
Graphs
with
Bounded
Delays
Using
Algebraic
Techniques
IEEE
Conference
on
Decision
and
Control
1994
28
BibTeX
entry
Henrik
Hulgaard
Steven
M
Burns
Tod
Amon
and
Gaetano
Borriello
Practical
Applications
of
an
Efficient
Time
Separations
of
Events
Algorithm
Third
International
Workshop
on
Timing
Issues
in
the
Specification
and
Synthesis
of
Digital
Systems
Tau
93
1993
Henrik
Hulgaard
Steven
M
Burns
Tod
Amon
and
Gaetano
Borriello
29
Practical
Applications
of
an
Efficient
Time
Separation
of
Events
Algorithm
IEEE
International
Conference
on
Computer
Aided
Design
ICCAD
pages
146
151
1993
30
BibTeX
entry
Tod
Amon
Henrik
Hulgaard
Steven
M
Burns
and
Gaetano
Borriello
31
Algorithm
for
Exact
Bounds
on
the
Time
Separation
of
Events
in
Concurrent
Systems
In
IEEE
International
Conference
on
Computer
Design
ICCD
pages
166
173
1993
32
BibTeX
entry
Henrik
Hulgaard
Per
H
Christensen
and
Jorgen
Staunstrup
Synthesis
of
Delay
Insensitive
Circuits
from
Verified
Programs
in
Research
directions
in
high
level
parallel
programming
languages
editors
J
P
Banatre
and
D
Le
Metayer
Springer
Lecture
Notes
in
Computer
Science
574
pages
326
337
1992
33
BibTeX
entry
Papers
in
Progress
none
submitted
at
the
moment
Comments
to
34
henrik
itu
dk
Version
April
12
1999
1
hoved
logo4
gif
Personal
information
about
Henrik
Hulgaard
2
My
CV
in
pictures
My
hobbies
include
badminton
3
skiing
4
workout
and
5
dancing
6
here
Anne
Mette
and
I
are
dancing
salsa
the
picture
is
from
7
Berlingske
Tidende
Here
is
a
picture
of
8
Steve
Burns
to
the
left
Ken
Stevens
to
the
right
and
myself
The
picture
is
taken
on
a
boat
on
Columbia
River
between
Washington
and
Oregon
in
August
1996
At
this
time
all
three
of
us
were
working
at
The
Strategic
CAD
Group
at
Intel
Here
is
picture
of
9
my
wife
Anne
Mette
to
the
right
and
My
to
the
left
Here
is
a
picture
of
my
10
sister
Karin
the
picture
is
from
11
Alt
for
Damerne
Katja
was
born
June
17th
2000
Below
are
links
to
pictures
of
my
fantastic
daughter
Here
she
is
12
at
age
20
weeks
13
Here
she
is
only
three
days
ond
14
Here
she
is
approx
3
1
2
month
old
15
Here
she
is
learning
to
eat
for
the
very
first
time
she
is
4
months
16
More
pictures
of
Katja
here
at
age
approx
8
months
Comments
to
17
henrik
itu
dk
Version
19
Mar
2001
1
hoved
logo4
gif
Henrik
s
CV
in
pictures
I
lived
my
first
24
years
in
2
Denmark
a
little
north
of
Copenhagen
Koebenhavn
jpg
Then
I
moved
to
beautiful
3
Seattle
to
be
a
graduate
student
at
the
4
Department
of
Computer
Science
Engineering
Turing
steam
gif
5
University
of
Washington
UW
gif
I
highly
recommend
that
you
check
out
the
6
beutiful
pictures
from
the
North
West
by
graduate
student
William
Chan
At
the
University
of
Washingtoned
I
was
part
of
the
7
Laboratory
of
Integrated
System
LIS
A
picture
with
many
of
the
LIS
people
are
8
here
I
was
fortunate
to
get
Steve
Burns
as
my
advisor
Steve
is
now
at
the
Strategic
CAD
Lab
at
Intel
After
about
five
years
I
had
completed
my
Ph
D
thesis
titled
9
Timing
Analysis
and
Verification
of
Timed
Asynchronous
Circuits
and
in
fall
95
I
moved
back
to
Denmark
From
January
1st
96
to
June
99
I
was
an
assistant
professor
at
the
Department
of
Information
Technology
now
called
10
Informatics
and
Mathematical
Modelling
11
Technical
University
of
Denmark
working
on
timing
verification
problems
Since
July
1st
99
I
m
an
associate
professor
at
12
The
IT
University
of
Copenhagen
dk
flag
gif
A
13
Piet
Hein
gruk
in
Danish
that
is
very
appropriate
after
returning
from
Seattle
Comments
to
14
henrik
itu
dk
Version
Mar
19
2001
At
bryde
af
og
rejse
bort
kan
være
svært
og
falde
hårdt
men
det
er
livets
krav
til
dem
som
holder
af
at
komme
hjem
Piet
Hein
1
hoved
logo4
gif
Contact
info
for
Henrik
Hulgaard
E
mail
2
henrik
itu
dk
Postal
address
Henrik
Hulgaard
3
The
IT
University
of
Copenhagen
Glentevej
67
DK
2400
Copenhagen
NV
Denmark
Phone
45
3816
8808
Fax
45
3816
8899
You
will
find
me
in
room
2
37
Version
June
30
1999
MySQL
Reference
Manual
for
version
3
22
25
1
1
General
Information
about
MySQL
2
1
1
What
is
MySQL
3
1
2
About
this
manual
o
4
1
2
1
Conventions
used
in
this
manual
5
1
3
History
of
MySQL
6
1
4
The
main
features
of
MySQL
7
1
5
How
stable
is
MySQL
8
1
6
Year
2000
compliance
9
1
7
General
SQL
information
and
tutorials
10
1
8
Useful
MySQL
related
links
11
2
MySQL
mailing
lists
and
how
to
ask
questions
or
report
errors
bugs
12
2
1
The
MySQL
mailing
lists
13
2
2
Asking
questions
or
reporting
bugs
14
2
3
How
to
report
bugs
or
problems
15
2
4
Guidelines
for
answering
questions
on
the
mailing
list
16
3
MySQL
licensing
and
support
17
3
1
MySQL
licensing
policy
18
3
2
Copyrights
used
by
MySQL
o
19
3
2
1
Possible
future
copyright
changes
20
3
3
Distributing
MySQL
commercially
21
3
4
Example
licensing
situations
o
22
3
4
1
Selling
products
that
use
MySQL
o
23
3
4
2
Selling
MySQL
related
services
o
24
3
4
3
ISP
MySQL
services
o
25
3
4
4
Running
a
web
server
using
MySQL
26
3
5
MySQL
licensing
and
support
costs
o
27
3
5
1
Payment
information
o
28
3
5
2
Contact
information
29
3
6
Types
of
commercial
support
o
30
3
6
1
Basic
email
support
o
31
3
6
2
Extended
email
support
o
32
3
6
3
Login
support
o
33
3
6
4
Extended
login
support
34
4
Installing
MySQL
35
4
1
How
to
get
MySQL
36
4
2
Operating
systems
supported
by
MySQL
37
4
3
Which
MySQL
version
to
use
38
4
4
How
and
when
updates
are
released
39
4
5
Installation
layouts
40
4
6
Installing
a
MySQL
binary
distribution
o
41
4
6
1
Linux
RPM
notes
o
42
4
6
2
Building
client
programs
o
43
4
6
3
System
specific
issues
44
4
6
3
1
Linux
notes
45
4
6
3
2
HP
UX
notes
46
4
7
Installing
a
MySQL
source
distribution
o
47
4
7
1
Quick
installation
overview
o
48
4
7
2
Applying
patches
o
49
4
7
3
Typical
configure
options
50
4
8
Problems
compiling
51
4
9
MIT
pthreads
notes
52
4
10
Perl
installation
comments
o
53
4
10
1
Installing
Perl
on
Unix
o
54
4
10
2
Installing
ActiveState
Perl
on
Win32
o
55
4
10
3
Installing
the
MySQL
Perl
distribution
on
Win32
o
56
4
10
4
Problems
using
the
Perl
DBI
DBD
interface
57
4
11
System
specific
issues
o
58
4
11
1
Solaris
notes
o
59
4
11
2
Solaris
2
7
notes
o
60
4
11
3
Solaris
x86
notes
o
61
4
11
4
SunOS
4
notes
o
62
4
11
5
Linux
notes
all
Linux
versions
63
4
11
5
1
Linux
x86
notes
64
4
11
5
2
RedHat
5
0
notes
65
4
11
5
3
RedHat
5
1
notes
66
4
11
5
4
Linux
SPARC
notes
67
4
11
5
5
Linux
Alpha
notes
68
4
11
5
6
MkLinux
notes
o
69
4
11
6
Alpha
DEC
Unix
notes
o
70
4
11
7
Alpha
DEC
OSF1
notes
o
71
4
11
8
SGI
Irix
notes
o
72
4
11
9
FreeBSD
notes
73
4
11
9
1
FreeBSD
3
0
notes
o
74
4
11
10
BSD
OS
notes
75
4
11
10
1
BSD
OS
2
x
notes
76
4
11
10
2
BSD
OS
3
x
notes
77
4
11
10
3
BSD
OS
4
x
notes
o
78
4
11
11
SCO
notes
o
79
4
11
12
SCO
Unixware
7
0
notes
o
80
4
11
13
IBM
AIX
notes
o
81
4
11
14
HP
UX
notes
82
4
12
Win32
notes
o
83
4
12
1
Installing
MySQL
on
Win32
o
84
4
12
2
Starting
MySQL
on
Win95
Win98
o
85
4
12
3
Starting
MySQL
on
NT
o
86
4
12
4
Running
MySQL
on
Win32
o
87
4
12
5
Connecting
to
a
remote
MySQL
from
Win32
with
SSH
o
88
4
12
6
MySQL
Win32
compared
to
Unix
MySQL
89
4
13
OS
2
notes
90
4
14
TcX
binaries
91
4
15
Post
installation
setup
and
testing
o
92
4
15
1
Problems
running
mysql
install
db
o
93
4
15
2
Problems
starting
the
MySQL
server
o
94
4
15
3
Starting
and
stopping
MySQL
automatically
o
95
4
15
4
Option
files
96
4
16
Is
there
anything
special
to
do
when
upgrading
downgrading
MySQL
o
97
4
16
1
Upgrading
from
a
3
22
version
to
3
23
o
98
4
16
2
Upgrading
from
a
3
21
version
to
3
22
o
99
4
16
3
Upgrading
from
a
3
20
version
to
3
21
o
100
4
16
4
Upgrading
to
another
architecture
101
5
How
standards
compatible
is
MySQL
102
5
1
MySQL
extensions
to
ANSI
SQL92
103
5
2
MySQL
differences
compared
to
ANSI
SQL92
104
5
3
Functionality
missing
from
MySQL
o
105
5
3
1
Sub
selects
o
106
5
3
2
SELECT
INTO
TABLE
o
107
5
3
3
Transactions
o
108
5
3
4
Stored
procedures
and
triggers
o
109
5
3
5
Foreign
Keys
110
5
3
5
1
Reasons
NOT
to
use
foreign
keys
o
111
5
3
6
Views
o
112
5
3
7
as
the
start
of
a
comment
113
5
4
What
standards
does
MySQL
follow
114
5
5
How
to
cope
without
COMMIT
ROLLBACK
115
6
The
MySQL
access
privilege
system
116
6
1
What
the
privilege
system
does
117
6
2
MySQL
user
names
and
passwords
118
6
3
Connecting
to
the
MySQL
server
119
6
4
Keeping
your
password
secure
120
6
5
Privileges
provided
by
MySQL
121
6
6
How
the
privilege
system
works
122
6
7
Access
control
stage
1
Connection
verification
123
6
8
Access
control
stage
2
Request
verification
124
6
9
When
privilege
changes
take
effect
125
6
10
Setting
up
the
initial
MySQL
privileges
126
6
11
Adding
new
user
privileges
to
MySQL
127
6
12
How
to
set
up
passwords
128
6
13
Causes
of
Access
denied
errors
129
6
14
How
to
make
MySQL
secure
against
crackers
130
7
MySQL
language
reference
131
7
1
Literals
how
to
write
strings
and
numbers
o
132
7
1
1
Strings
o
133
7
1
2
Numbers
o
134
7
1
3
NULL
values
o
135
7
1
4
Database
table
index
column
and
alias
names
136
7
1
4
1
Case
sensitivity
in
names
137
7
2
Column
types
o
138
7
2
1
Column
type
storage
requirements
o
139
7
2
5
Numeric
types
o
140
7
2
6
Date
and
time
types
141
7
2
6
1
Y2K
issues
and
date
types
142
7
2
6
2
The
DATETIME
DATE
and
TIMESTAMP
types
143
7
2
6
3
The
TIME
type
144
7
2
6
4
The
YEAR
type
o
145
7
2
7
String
types
146
7
2
7
1
The
CHAR
and
VARCHAR
types
147
7
2
7
2
The
BLOB
and
TEXT
types
148
7
2
7
3
The
ENUM
type
149
7
2
7
4
The
SET
type
o
150
7
2
8
Choosing
the
right
type
for
a
column
o
151
7
2
9
Column
indexes
o
152
7
2
10
Multiple
column
indexes
o
153
7
2
11
Using
column
types
from
other
database
engines
154
7
3
Functions
for
use
in
SELECT
and
WHERE
clauses
o
155
7
3
1
Grouping
functions
o
156
7
3
2
Normal
arithmetic
operations
o
157
7
3
3
Bit
functions
o
158
7
3
4
Logical
operations
o
159
7
3
5
Comparison
operators
o
160
7
3
6
String
comparison
functions
o
161
7
3
7
Cast
operators
o
162
7
3
8
Control
flow
functions
o
163
7
3
9
Mathematical
functions
o
164
7
3
10
String
functions
o
165
7
3
11
Date
and
time
functions
o
166
7
3
12
Miscellaneous
functions
o
167
7
3
13
Functions
for
use
with
GROUP
BY
clauses
168
7
4
CREATE
DATABASE
syntax
169
7
5
DROP
DATABASE
syntax
170
7
6
CREATE
TABLE
syntax
o
171
7
6
1
Silent
column
specification
changes
172
7
7
ALTER
TABLE
syntax
173
7
8
OPTIMIZE
TABLE
syntax
174
7
9
DROP
TABLE
syntax
175
7
10
DELETE
syntax
176
7
11
SELECT
syntax
177
7
12
JOIN
syntax
178
7
13
INSERT
syntax
179
7
14
REPLACE
syntax
180
7
15
LOAD
DATA
INFILE
syntax
181
7
16
UPDATE
syntax
182
7
17
USE
syntax
183
7
18
FLUSH
syntax
clearing
caches
184
7
19
KILL
syntax
185
7
20
SHOW
syntax
Get
information
about
tables
columns
186
7
21
EXPLAIN
syntax
Get
information
about
a
SELECT
187
7
22
DESCRIBE
syntax
Get
information
about
columns
188
7
23
LOCK
TABLES
UNLOCK
TABLES
syntax
189
7
24
SET
OPTION
syntax
190
7
25
GRANT
and
REVOKE
syntax
191
7
26
CREATE
INDEX
syntax
192
7
27
DROP
INDEX
syntax
193
7
28
Comment
syntax
194
7
29
CREATE
FUNCTION
DROP
FUNCTION
syntax
195
7
30
Is
MySQL
picky
about
reserved
words
196
8
MySQL
Tutorial
197
8
1
Connecting
to
and
disconnecting
from
the
server
198
8
2
Entering
queries
199
8
3
Creating
and
using
a
database
o
200
8
3
1
Creating
and
selecting
a
database
o
201
8
3
2
Creating
a
table
o
202
8
3
3
Loading
data
into
a
table
o
203
8
3
4
Retrieving
information
from
a
table
204
8
3
4
1
Selecting
all
data
205
8
3
4
2
Selecting
particular
rows
206
8
3
4
3
Selecting
particular
columns
207
8
3
4
4
Sorting
rows
208
8
3
4
5
Date
calculations
209
8
3
4
6
Working
with
NULL
values
210
8
3
4
7
Pattern
matching
211
8
3
4
8
Counting
rows
o
212
8
3
5
Using
more
than
one
table
213
8
4
Getting
information
about
databases
and
tables
214
8
5
Using
mysql
in
batch
mode
215
8
6
Queries
from
twin
project
o
216
8
6
1
Find
all
non
distributed
twins
o
217
8
6
2
Show
a
table
on
twin
pair
status
218
9
MySQL
Server
functions
219
9
1
What
languages
are
supported
by
MySQL
o
220
9
1
1
The
character
set
used
for
data
and
sorting
o
221
9
1
2
Adding
a
new
character
set
o
222
9
1
3
Multi
byte
character
support
223
9
2
The
update
log
224
9
3
How
big
MySQL
tables
can
be
225
10
Getting
maximum
performance
from
MySQL
226
10
1
Tuning
server
parameters
227
10
2
How
MySQL
uses
memory
228
10
3
How
compiling
and
linking
affects
the
speed
of
MySQL
229
10
4
How
MySQL
uses
indexes
230
10
5
How
MySQL
optimizes
WHERE
clauses
231
10
6
How
MySQL
optimizes
LEFT
JOIN
232
10
7
How
MySQL
opens
and
closes
tables
o
233
10
7
1
Drawbacks
of
creating
large
numbers
of
tables
in
a
database
234
10
8
Why
so
many
open
tables
235
10
9
Using
symbolic
links
for
databases
and
tables
236
10
10
How
MySQL
locks
tables
237
10
11
How
to
arrange
a
table
to
be
as
fast
small
as
possible
238
10
12
Table
locking
issues
239
10
13
Factors
affecting
the
speed
of
INSERT
statements
240
10
14
Factors
affecting
the
speed
of
DELETE
statements
241
10
15
How
do
I
get
MySQL
to
run
at
full
speed
242
10
16
What
are
the
different
row
formats
Or
when
should
VARCHAR
CHAR
be
used
243
10
17
MySQL
table
types
244
11
The
MySQL
benchmark
suite
245
12
MySQL
Utilites
246
12
1
Overview
of
the
different
MySQL
programs
247
12
2
Administering
a
MySQL
server
248
12
3
Dumping
the
structure
and
data
from
MySQL
databases
and
tables
249
12
4
Importing
data
from
text
files
250
12
5
The
MySQL
compressed
read
only
table
generator
251
13
Maintaining
a
MySQL
installation
252
13
1
Using
isamchk
for
table
maintenance
and
crash
recovery
o
253
13
1
1
isamchk
invocation
syntax
o
254
13
1
2
isamchk
memory
usage
255
13
2
Setting
up
a
table
maintenance
regime
256
13
3
Getting
information
about
a
table
257
13
4
Using
isamchk
for
crash
recovery
o
258
13
4
1
How
to
check
tables
for
errors
o
259
13
4
2
How
to
repair
tables
o
260
13
4
3
Table
optimization
261
13
5
Log
file
maintenance
262
14
Adding
new
functions
to
MySQL
263
14
1
Adding
a
new
user
definable
function
o
264
14
1
1
UDF
calling
sequences
o
265
14
1
2
Argument
processing
o
266
14
1
3
Return
values
and
error
handling
o
267
14
1
4
Compiling
and
installing
user
definable
functions
268
14
2
Adding
a
new
native
function
269
15
Adding
new
procedures
to
MySQL
270
15
1
Procedure
analyse
271
15
2
Writing
a
procedure
272
16
MySQL
ODBC
Support
273
16
1
Operating
systems
supported
by
MyODBC
274
16
2
How
to
report
problems
with
MyODBC
275
16
3
Programs
known
to
work
with
MyODBC
276
16
4
How
to
fill
in
the
various
fields
in
the
ODBC
administrator
program
277
16
5
How
to
get
the
value
of
an
AUTO
INCREMENT
column
in
ODBC
278
17
Problems
and
common
errors
279
17
1
What
to
do
if
MySQL
keeps
crashing
280
17
2
Some
common
errors
when
using
MySQL
o
281
17
2
1
MySQL
server
has
gone
away
error
o
282
17
2
2
Can
t
connect
to
local
MySQL
server
error
o
283
17
2
3
Host
is
blocked
error
o
284
17
2
4
Out
of
memory
error
o
285
17
2
5
Packet
too
large
error
o
286
17
2
6
The
table
is
full
error
o
287
17
2
7
Commands
out
of
sync
error
in
client
o
288
17
2
8
Ignoring
user
error
o
289
17
2
9
Table
xxx
doesn
t
exist
error
290
17
3
How
MySQL
handles
a
full
disk
291
17
4
How
to
run
SQL
commands
from
a
text
file
292
17
5
Where
MySQL
stores
temporary
files
293
17
6
How
to
protect
tmp
mysql
sock
from
being
deleted
294
17
7
Access
denied
error
295
17
8
How
to
run
MySQL
as
a
normal
user
296
17
9
Problems
with
file
permissions
297
17
10
File
not
found
298
17
11
Problems
using
DATE
columns
299
17
12
Timezone
problems
300
17
13
Case
sensitivity
in
searches
301
17
14
Problems
with
NULL
values
302
17
15
Problems
with
alias
303
17
16
Deleting
rows
from
related
tables
304
17
17
Solving
problems
with
no
matching
rows
305
17
18
Problems
with
ALTER
TABLE
306
17
19
How
to
change
the
order
of
columns
in
a
table
307
18
Solving
some
common
problems
with
MySQL
308
18
1
Database
replication
309
18
2
Database
backups
310
18
3
Running
multiple
MySQL
servers
on
the
same
machine
311
19
MySQL
client
tools
and
APIs
312
19
1
MySQL
C
API
313
19
2
C
API
datatypes
314
19
3
C
API
function
overview
315
19
4
C
API
function
descriptions
o
316
19
4
1
mysql
affected
rows
o
317
19
4
2
mysql
close
o
318
19
4
3
mysql
connect
o
319
19
4
4
mysql
create
db
o
320
19
4
5
mysql
data
seek
o
321
19
4
6
mysql
debug
o
322
19
4
7
mysql
drop
db
o
323
19
4
8
mysql
dump
debug
info
o
324
19
4
9
mysql
eof
o
325
19
4
10
mysql
errno
o
326
19
4
11
mysql
error
o
327
19
4
12
mysql
escape
string
o
328
19
4
13
mysql
fetch
field
o
329
19
4
14
mysql
fetch
fields
o
330
19
4
15
mysql
fetch
field
direct
o
331
19
4
16
mysql
fetch
lengths
o
332
19
4
17
mysql
fetch
row
o
333
19
4
18
mysql
field
count
o
334
19
4
19
mysql
field
seek
o
335
19
4
20
mysql
field
tell
o
336
19
4
21
mysql
free
result
o
337
19
4
22
mysql
get
client
info
o
338
19
4
23
mysql
get
host
info
o
339
19
4
24
mysql
get
proto
info
o
340
19
4
25
mysql
get
server
info
o
341
19
4
26
mysql
info
o
342
19
4
27
mysql
init
o
343
19
4
28
mysql
insert
id
o
344
19
4
29
mysql
kill
o
345
19
4
30
mysql
list
dbs
o
346
19
4
31
mysql
list
fields
o
347
19
4
32
mysql
list
processes
o
348
19
4
33
mysql
list
tables
o
349
19
4
34
mysql
num
fields
o
350
19
4
35
mysql
num
rows
o
351
19
4
36
mysql
options
o
352
19
4
37
mysql
ping
o
353
19
4
38
mysql
query
o
354
19
4
39
mysql
real
connect
o
355
19
4
40
mysql
real
query
o
356
19
4
41
mysql
reload
o
357
19
4
42
mysql
row
seek
o
358
19
4
43
mysql
row
tell
o
359
19
4
44
mysql
select
db
o
360
19
4
45
mysql
shutdown
o
361
19
4
46
mysql
stat
o
362
19
4
47
mysql
store
result
o
363
19
4
48
mysql
thread
id
o
364
19
4
49
mysql
use
result
o
365
19
4
50
Why
is
it
that
after
mysql
query
returns
success
mysql
store
result
sometimes
returns
NULL
o
366
19
4
51
What
results
can
I
get
from
a
query
o
367
19
4
52
How
can
I
get
the
unique
ID
for
the
last
inserted
row
o
368
19
4
53
Problems
linking
with
the
C
API
o
369
19
4
54
How
to
make
a
thread
safe
client
370
19
5
MySQL
Perl
API
o
371
19
5
1
DBI
with
DBD
mysql
o
372
19
5
2
The
DBI
interface
o
373
19
5
3
More
DBI
DBD
information
374
19
6
MySQL
Eiffel
wrapper
375
19
7
MySQL
Java
connectivity
JDBC
376
19
8
MySQL
PHP
API
377
19
9
MySQL
C
APIs
378
19
10
MySQL
Python
APIs
379
19
11
MySQL
TCL
APIs
380
20
How
MySQL
compares
to
other
databases
381
20
1
How
MySQL
compares
to
mSQL
o
382
20
1
1
How
to
convert
mSQL
tools
for
MySQL
o
383
20
1
2
How
mSQL
and
MySQL
client
server
communications
protocols
differ
o
384
20
1
3
How
mSQL
2
0
SQL
syntax
differs
from
MySQL
385
20
2
How
MySQL
compares
to
PostgreSQL
386
A
Some
MySQL
users
387
A
1
Some
Web
search
engines
388
A
2
Some
Information
search
engines
concentrated
on
some
area
389
A
3
Some
Domain
Internet
Web
and
related
services
390
A
4
Web
sites
that
use
PHP
and
MySQL
391
A
5
Uncategorized
pages
392
A
6
Some
MySQL
consultants
393
A
7
Programming
394
B
Contributed
programs
395
B
1
API
s
396
B
2
Clients
397
B
3
Web
tools
398
B
4
Authentication
tools
399
B
5
Converters
400
B
6
Using
MySQL
with
other
products
401
B
7
Useful
tools
402
B
8
Uncategorized
403
C
Contributors
to
MySQL
404
D
MySQL
change
history
405
D
1
Changes
in
release
3
23
x
Not
released
yet
o
406
D
1
1
Changes
in
release
3
23
0
407
D
2
Changes
in
release
3
22
x
o
408
D
2
1
Changes
in
release
3
22
25
o
409
D
2
2
Changes
in
release
3
22
24
o
410
D
2
3
Changes
in
release
3
22
23
o
411
D
2
4
Changes
in
release
3
22
22
o
412
D
2
5
Changes
in
release
3
22
21
o
413
D
2
6
Changes
in
release
3
22
20
o
414
D
2
7
Changes
in
release
3
22
19
o
415
D
2
8
Changes
in
release
3
22
18
o
416
D
2
9
Changes
in
release
3
22
17
o
417
D
2
10
Changes
in
release
3
22
16
o
418
D
2
11
Changes
in
release
3
22
15
o
419
D
2
12
Changes
in
release
3
22
14
o
420
D
2
13
Changes
in
release
3
22
13
o
421
D
2
14
Changes
in
release
3
22
12
o
422
D
2
15
Changes
in
release
3
22
11
o
423
D
2
16
Changes
in
release
3
22
10
o
424
D
2
17
Changes
in
release
3
22
9
o
425
D
2
18
Changes
in
release
3
22
8
o
426
D
2
19
Changes
in
release
3
22
7
o
427
D
2
20
Changes
in
release
3
22
6
o
428
D
2
21
Changes
in
release
3
22
5
o
429
D
2
22
Changes
in
release
3
22
4
o
430
D
2
23
Changes
in
release
3
22
3
o
431
D
2
24
Changes
in
release
3
22
2
o
432
D
2
25
Changes
in
release
3
22
1
o
433
D
2
26
Changes
in
release
3
22
0
434
D
3
Changes
in
release
3
21
x
o
435
D
3
1
Changes
in
release
3
21
33
o
436
D
3
2
Changes
in
release
3
21
32
o
437
D
3
3
Changes
in
release
3
21
31
o
438
D
3
4
Changes
in
release
3
21
30
o
439
D
3
5
Changes
in
release
3
21
29
o
440
D
3
6
Changes
in
release
3
21
28
o
441
D
3
7
Changes
in
release
3
21
27
o
442
D
3
8
Changes
in
release
3
21
26
o
443
D
3
9
Changes
in
release
3
21
25
o
444
D
3
10
Changes
in
release
3
21
24
o
445
D
3
11
Changes
in
release
3
21
23
o
446
D
3
12
Changes
in
release
3
21
22
o
447
D
3
13
Changes
in
release
3
21
21a
o
448
D
3
14
Changes
in
release
3
21
21
o
449
D
3
15
Changes
in
release
3
21
20
o
450
D
3
16
Changes
in
release
3
21
19
o
451
D
3
17
Changes
in
release
3
21
18
o
452
D
3
18
Changes
in
release
3
21
17
o
453
D
3
19
Changes
in
release
3
21
16
o
454
D
3
20
Changes
in
release
3
21
15
o
455
D
3
21
Changes
in
release
3
21
14b
o
456
D
3
22
Changes
in
release
3
21
14a
o
457
D
3
23
Changes
in
release
3
21
13
o
458
D
3
24
Changes
in
release
3
21
12
o
459
D
3
25
Changes
in
release
3
21
11
o
460
D
3
26
Changes
in
release
3
21
10
o
461
D
3
27
Changes
in
release
3
21
9
o
462
D
3
28
Changes
in
release
3
21
8
o
463
D
3
29
Changes
in
release
3
21
7
o
464
D
3
30
Changes
in
release
3
21
6
o
465
D
3
31
Changes
in
release
3
21
5
o
466
D
3
32
Changes
in
release
3
21
4
o
467
D
3
33
Changes
in
release
3
21
3
o
468
D
3
34
Changes
in
release
3
21
2
o
469
D
3
35
Changes
in
release
3
21
0
470
20
3
Changes
in
release
3
20
x
o
471
D
3
36
Changes
in
release
3
20
18
o
472
D
3
37
Changes
in
release
3
20
17
o
473
D
3
38
Changes
in
release
3
20
16
o
474
D
3
39
Changes
in
release
3
20
15
o
475
D
3
40
Changes
in
release
3
20
14
o
476
D
3
41
Changes
in
release
3
20
13
o
477
D
3
42
Changes
in
release
3
20
11
o
478
D
3
43
Changes
in
release
3
20
10
o
479
D
3
44
Changes
in
release
3
20
9
o
480
D
3
45
Changes
in
release
3
20
8
o
481
D
3
46
Changes
in
release
3
20
7
o
482
D
3
47
Changes
in
release
3
20
6
o
483
D
3
48
Changes
in
release
3
20
3
o
484
D
3
49
Changes
in
release
3
20
0
485
D
4
Changes
in
release
3
19
x
o
486
D
4
1
Changes
in
release
3
19
5
o
487
D
4
2
Changes
in
release
3
19
4
o
488
D
4
3
Changes
in
release
3
19
3
489
E
Known
errors
and
design
deficiencies
in
MySQL
490
F
List
of
things
we
want
to
add
to
MySQL
in
the
future
The
TODO
491
F
1
Things
that
must
done
in
the
real
near
future
492
F
2
Things
that
have
to
be
done
sometime
493
F
3
Some
things
we
don
t
have
any
plans
to
do
494
G
Comments
on
porting
to
other
systems
495
G
1
Debugging
a
MySQL
server
496
G
2
Debugging
a
MySQL
client
497
G
3
Comments
about
RTS
threads
498
G
4
Differences
between
different
thread
packages
499
H
Description
of
MySQL
regular
expression
syntax
500
I
What
is
Unireg
501
J
The
MySQL
server
license
for
non
Microsoft
operating
systems
502
K
The
MySQL
license
for
Microsoft
operating
systems
503
SQL
command
type
and
function
index
504
Concept
Index
This
document
was
generated
on
8
July
1999
using
the
505
texi2html
translator
version
1
52
extended
by
davida
detron
se
MySQL
Reference
Manual
for
version
3
22
25
mysql5
gif
1
1
General
Information
about
MySQL
This
is
the
MySQL
reference
manual
it
documents
MySQL
version
3
22
25
MySQL
is
a
very
fast
multi
threaded
multi
user
and
robust
SQL
Structured
Query
Language
database
server
For
Unix
and
OS
2
platforms
MySQL
is
basically
free
for
Microsoft
platforms
you
must
get
a
MySQL
license
after
a
trial
time
of
30
days
See
section
2
3
MySQL
licensing
and
support
3
The
MySQL
home
page
provides
the
latest
information
about
MySQL
For
a
discussion
of
MySQL
s
capabilities
see
section
4
1
4
The
main
features
of
MySQL
For
installation
instructions
see
section
5
4
Installing
MySQL
For
tips
on
porting
MySQL
to
new
machines
or
operating
systems
see
section
6
G
Comments
on
porting
to
other
systems
For
information
about
upgrading
from
a
3
21
release
see
section
7
4
16
2
Upgrading
from
a
3
21
version
to
3
22
For
a
tutorial
introduction
to
MySQL
see
section
8
8
MySQL
Tutorial
For
examples
of
SQL
and
benchmarking
information
see
the
benchmarking
directory
For
source
distributions
this
is
the
bench
directory
For
binary
distributions
this
is
the
sql
bench
directory
For
a
history
of
new
features
and
bug
fixes
see
section
9
D
MySQL
change
history
For
a
list
of
currently
known
bugs
and
misfeatures
see
section
10
E
Known
errors
and
design
deficiencies
in
MySQL
For
future
plans
see
section
11
F
List
of
things
we
want
to
add
to
MySQL
in
the
future
The
TODO
For
a
list
of
all
the
contributors
to
this
product
see
section
12
C
Contributors
to
MySQL
IMPORTANT
Send
bug
error
reports
questions
and
comments
to
the
mailing
list
at
For
source
distributions
the
mysqlbug
script
can
be
found
in
the
scripts
directory
For
binary
distributions
mysqlbug
can
be
found
in
the
bin
directory
If
you
have
any
suggestions
concerning
additions
or
corrections
to
this
manual
please
send
them
to
the
MySQL
mailing
list
13
mysql
lists
mysql
com
with
the
following
subject
line
documentation
suggestion
Insert
Topic
Here
See
section
14
2
1
The
MySQL
mailing
lists
15
1
1
What
is
MySQL
MySQL
is
a
true
multi
user
multi
threaded
SQL
database
server
SQL
is
the
most
popular
database
language
in
the
world
MySQL
is
a
client
server
implementation
that
consists
of
a
server
daemon
mysqld
and
many
different
client
programs
and
libraries
SQL
is
a
standardized
language
that
makes
it
easy
to
store
update
and
access
information
For
example
you
can
use
SQL
to
retrieve
product
information
and
store
customer
information
for
a
web
site
MySQL
is
also
fast
and
flexible
enough
to
allow
you
to
store
logs
and
pictures
in
it
The
main
goals
of
MySQL
are
speed
robustness
and
ease
of
use
MySQL
was
originally
developed
because
we
at
TcX
needed
a
SQL
server
that
could
handle
very
large
databases
an
order
of
magnitude
faster
than
what
any
database
vendor
could
offer
to
us
We
have
now
been
using
MySQL
since
1996
in
an
environment
with
more
than
40
databases
containing
10
000
tables
of
which
more
than
500
have
more
than
7
million
rows
This
is
about
100
gigabytes
of
mission
critical
data
The
base
upon
which
MySQL
is
built
is
a
set
of
routines
that
have
been
used
in
a
highly
demanding
production
environment
for
many
years
Although
MySQL
is
still
under
development
it
already
offers
a
rich
and
highly
useful
function
set
The
official
way
to
pronounce
MySQL
is
My
Ess
Que
Ell
Not
MY
SEQUEL
16
1
2
About
this
manual
This
manual
is
currently
available
in
Texinfo
plain
text
Info
HTML
PostScript
and
PDF
versions
Because
of
their
size
PostScript
and
PDF
versions
are
not
included
with
the
main
MySQL
distribution
but
are
available
for
separate
download
at
17
http
www
mysql
com
The
primary
document
is
the
Texinfo
file
The
HTML
version
is
produced
automatically
with
a
modified
version
of
texi2html
The
plain
text
and
Info
versions
are
produced
with
makeinfo
The
Postscript
version
is
produced
using
texi2dvi
and
dvips
The
PDF
version
is
produced
with
the
Ghostscript
utility
ps2pdf
This
manual
is
written
and
maintained
by
David
Axmark
Michael
Monty
Widenius
Paul
DuBois
and
Kim
Aldale
For
other
contributors
see
section
18
C
Contributors
to
MySQL
19
1
2
1
Conventions
used
in
this
manual
This
manual
uses
certain
typographical
conventions
constant
Constant
width
font
is
used
for
command
names
and
options
SQL
statements
database
table
and
column
names
C
and
Perl
code
and
environment
variables
Example
To
see
how
mysqladmin
works
invoke
it
with
the
help
option
filename
Constant
width
font
with
surrounding
quotes
is
used
for
filenames
and
pathnames
Example
The
distribution
is
installed
under
the
usr
local
directory
c
Constant
width
font
with
surrounding
quotes
is
also
used
to
indicate
character
sequences
Example
To
specify
a
wildcard
use
the
character
italic
Italic
font
is
used
for
emphasis
like
this
boldface
Boldface
font
is
used
for
access
privilege
names
e
g
do
not
grant
the
process
privilege
lightly
and
to
convey
especially
strong
emphasis
When
commands
are
shown
that
are
meant
to
be
executed
by
a
particular
program
the
program
is
indicated
by
the
prompt
shown
with
the
command
For
example
shell
indicates
a
command
that
you
execute
from
your
login
shell
and
mysql
indicates
a
command
that
you
execute
from
the
mysql
client
shell
type
a
shell
command
here
mysql
type
a
mysql
command
here
Shell
commands
are
shown
using
Bourne
shell
syntax
If
you
are
using
a
csh
style
shell
you
may
need
to
issue
commands
slightly
differently
For
example
the
sequence
to
set
an
environment
variable
and
run
a
command
looks
like
this
in
Bourne
shell
syntax
shell
VARNAME
value
some
command
For
csh
you
would
execute
the
sequence
like
this
shell
setenv
VARNAME
value
shell
some
command
Database
table
and
column
names
often
must
be
substituted
into
commands
To
indicate
that
such
substitution
is
necessary
this
manual
uses
db
name
tbl
name
and
col
name
For
example
you
might
see
a
statement
like
this
mysql
SELECT
col
name
FROM
db
name
tbl
name
This
means
that
if
you
were
to
enter
a
similar
statement
you
would
supply
your
own
database
table
and
column
names
perhaps
like
this
mysql
SELECT
author
name
FROM
biblio
db
author
list
SQL
statements
may
be
written
in
uppercase
or
lowercase
When
this
manual
shows
a
SQL
statement
uppercase
is
used
for
particular
keywords
if
those
keywords
are
under
discussion
to
emphasize
them
and
lowercase
is
used
for
the
rest
of
the
statement
So
you
might
see
the
following
in
a
discussion
of
the
SELECT
statement
mysql
SELECT
count
FROM
tbl
name
On
the
other
hand
in
a
discussion
of
the
COUNT
function
the
statement
would
be
written
like
this
mysql
select
COUNT
from
tbl
name
If
no
particular
emphasis
is
intended
all
keywords
are
written
uniformly
in
uppercase
In
syntax
descriptions
square
brackets
and
are
used
to
indicate
optional
words
or
clauses
DROP
TABLE
IF
EXISTS
tbl
name
When
a
syntax
element
consists
of
a
number
of
alternatives
the
alternatives
are
separated
by
vertical
bars
When
one
member
from
a
set
of
choices
may
be
chosen
the
alternatives
are
listed
within
square
brackets
When
one
member
from
a
set
of
choices
must
be
chosen
the
alternatives
are
listed
within
braces
and
TRIM
BOTH
LEADING
TRAILING
remstr
FROM
str
DESCRIBE
DESC
tbl
name
col
name
wild
20
1
3
History
of
MySQL
We
once
started
off
with
the
intention
of
using
mSQL
to
connect
to
our
tables
using
our
own
fast
low
level
ISAM
routines
However
after
some
testing
we
came
to
the
conclusion
that
mSQL
was
not
fast
enough
or
flexible
enough
for
our
needs
This
resulted
in
a
new
SQL
interface
to
our
database
but
with
almost
the
same
API
interface
as
mSQL
This
API
was
chosen
to
ease
porting
of
third
party
code
The
derivation
of
the
name
MySQL
is
not
perfectly
clear
Our
base
directory
and
a
large
number
of
our
libraries
and
tools
have
had
the
prefix
my
for
well
over
10
years
However
Monty
s
daughter
some
years
younger
is
also
named
My
So
which
of
the
two
gave
its
name
to
MySQL
is
still
a
mystery
even
for
us
21
1
4
The
main
features
of
MySQL
The
following
list
describes
some
of
the
important
characteristics
of
MySQL
Fully
multi
threaded
using
kernel
threads
That
means
it
easily
can
use
multiple
CPUs
if
available
C
C
Eiffel
Java
Perl
PHP
Python
and
TCL
APIs
See
section
22
19
MySQL
client
tools
and
APIs
Works
on
many
different
platforms
See
section
23
4
2
Operating
systems
supported
by
MySQL
Many
column
types
signed
unsigned
integers
1
2
3
4
and
8
bytes
long
FLOAT
DOUBLE
CHAR
VARCHAR
TEXT
BLOB
DATE
TIME
DATETIME
TIMESTAMP
YEAR
SET
and
ENUM
types
See
section
24
7
2
Column
types
Very
fast
joins
using
an
optimized
one
sweep
multi
join
Full
operator
and
function
support
in
the
SELECT
and
WHERE
parts
of
queries
Example
mysql
SELECT
CONCAT
first
name
last
name
FROM
tbl
name
WHERE
income
dependents
10000
AND
age
30
SQL
functions
are
implemented
through
a
highly
optimized
class
library
and
should
be
as
fast
as
they
can
get
Usually
there
shouldn
t
be
any
memory
allocation
at
all
after
query
initialization
Full
support
for
SQL
GROUP
BY
and
ORDER
BY
clauses
Support
for
group
functions
COUNT
AVG
STD
SUM
MAX
and
MIN
Support
for
LEFT
OUTER
JOIN
with
ANSI
SQL
and
ODBC
syntax
You
can
mix
tables
from
different
databases
in
the
same
query
as
of
version
3
22
A
privilege
and
password
system
which
is
very
flexible
and
secure
and
which
allows
host
based
verification
Passwords
are
secure
since
all
password
traffic
when
connecting
to
a
server
is
encrypted
ODBC
Open
DataBase
Connectivity
for
Windows95
with
source
All
ODBC
2
5
functions
and
many
others
You
can
for
example
use
Access
to
connect
to
your
MySQL
server
See
section
25
16
MySQL
ODBC
Support
Very
fast
B
tree
disk
tables
with
index
compression
16
indexes
per
table
are
allowed
Each
index
may
consist
of
1
to
15
columns
or
parts
of
columns
The
maximum
index
length
is
256
bytes
this
may
be
changed
when
compiling
MySQL
An
index
may
use
a
prefix
of
a
CHAR
or
VARCHAR
field
Fixed
length
and
variable
length
records
In
memory
hash
tables
which
are
used
as
temporary
tables
Handles
large
databases
We
are
using
MySQL
with
some
databases
that
contain
50
000
000
records
All
columns
have
default
values
You
can
use
INSERT
to
insert
a
subset
of
a
table
s
columns
those
columns
that
are
not
explicitly
given
values
are
set
to
their
default
values
Uses
GNU
Automake
Autoconf
and
libtool
for
portability
Written
in
C
and
C
Tested
with
a
broad
range
of
different
compilers
A
very
fast
thread
based
memory
allocation
system
No
memory
leaks
Tested
with
a
commercial
memory
leakage
detector
purify
Includes
isamchk
a
very
fast
utility
for
table
checking
optimization
and
repair
See
section
26
13
Maintaining
a
MySQL
installation
Full
support
for
the
ISO
8859
1
Latin1
character
set
For
example
the
Scandinavian
characters
ringaccent
a
a
and
o
are
allowed
in
table
and
column
names
All
data
are
saved
in
ISO
8859
1
Latin1
format
All
comparisons
for
normal
string
columns
are
case
insensitive
Sorting
is
done
according
to
the
ISO
8859
1
Latin1
character
set
the
Swedish
way
at
the
moment
It
is
possible
to
change
this
in
the
source
by
adding
new
sort
order
arrays
To
see
an
example
of
very
advanced
sorting
look
at
the
Czech
sorting
code
MySQL
supports
many
different
character
sets
that
can
be
specified
at
compile
time
Aliases
on
tables
and
columns
as
in
the
SQL92
standard
DELETE
INSERT
REPLACE
and
UPDATE
return
how
many
rows
were
changed
affected
Function
names
do
not
clash
with
table
or
column
names
For
example
ABS
is
a
valid
column
name
The
only
restriction
is
that
for
a
function
call
no
spaces
are
allowed
between
the
function
name
and
the
that
follows
it
See
section
27
7
30
Is
MySQL
picky
about
reserved
words
All
MySQL
programs
can
be
invoked
with
the
help
or
options
to
obtain
online
assistance
The
server
can
provide
error
messages
to
clients
in
many
languages
See
section
28
9
1
What
languages
are
supported
by
MySQL
Clients
connect
to
the
MySQL
server
using
TCP
IP
connections
or
Unix
sockets
or
named
pipes
under
NT
The
MySQL
specific
SHOW
command
can
be
used
to
retrieve
information
about
databases
tables
and
indexes
The
EXPLAIN
command
can
be
used
to
determine
how
the
optimizer
resolves
a
query
29
1
5
How
stable
is
MySQL
This
section
addresses
the
questions
how
stable
is
MySQL
and
can
I
depend
on
MySQL
in
this
project
Here
we
will
try
to
clarify
some
issues
and
to
answer
some
of
the
more
important
questions
that
seem
to
concern
many
people
This
section
has
been
put
together
from
information
gathered
from
the
mailing
list
which
is
very
active
in
reporting
bugs
At
TcX
MySQL
has
worked
without
any
problems
in
our
projects
since
mid
1996
When
MySQL
was
released
to
a
wider
public
we
noticed
that
there
were
some
pieces
of
untested
code
that
were
quickly
found
by
the
new
users
who
made
queries
in
a
manner
different
than
our
own
Each
new
release
has
had
fewer
portability
problems
than
the
previous
one
even
though
each
has
had
many
new
features
and
we
hope
that
it
will
be
possible
to
label
one
of
the
next
releases
stable
Each
release
of
MySQL
has
been
usable
and
there
have
been
problems
only
when
users
start
to
use
code
from
the
gray
zones
Naturally
outside
users
can
t
know
what
the
gray
zones
are
this
section
attempts
to
indicate
those
that
are
currently
known
The
descriptions
deal
with
the
3
22
x
version
of
MySQL
All
known
and
reported
bugs
are
fixed
in
the
latest
version
with
the
exception
of
the
bugs
listed
in
the
bugs
section
which
are
things
that
are
design
related
See
section
30
E
Known
errors
and
design
deficiencies
in
MySQL
MySQL
is
written
in
multiple
layers
and
different
independent
modules
These
modules
are
listed
below
with
an
indication
of
how
well
tested
each
of
them
is
The
ISAM
table
handler
Stable
This
manages
storage
and
retrieval
of
all
data
In
all
MySQL
releases
there
hasn
t
been
a
single
reported
bug
in
this
code
The
only
known
way
to
get
a
corrupted
table
is
to
kill
the
server
in
the
middle
of
an
update
Even
that
is
unlikely
to
destroy
any
data
beyond
rescue
because
all
data
are
flushed
to
disk
between
each
query
There
hasn
t
been
a
single
bug
report
about
lost
data
because
of
bugs
in
MySQL
either
The
parser
and
lexical
analyser
Stable
There
hasn
t
been
a
single
reported
bug
in
this
system
for
a
long
time
The
C
client
code
Stable
No
known
problems
In
early
3
20
releases
there
were
some
limitations
in
the
send
receive
buffer
size
As
of
3
21
x
the
buffer
size
is
now
dynamic
up
to
a
default
of
24M
Standard
client
programs
Stable
These
include
mysql
mysqladmin
and
mysqlshow
mysqldump
and
mysqlimport
Basic
SQL
Stable
The
basic
SQL
function
system
and
string
classes
and
dynamic
memory
handling
Not
a
single
reported
bug
in
this
system
Query
optimizer
Gamma
Range
optimizer
Stable
Join
optimizer
Stable
Locking
Gamma
This
is
very
system
dependent
On
some
systems
there
are
big
problems
using
standard
OS
locking
fcntl
In
these
cases
you
should
run
the
MySQL
daemon
with
the
skip
locking
flag
Problems
are
known
to
occur
on
some
Linux
systems
and
on
SunOS
when
using
NFS
mounted
file
systems
Linux
threads
Gamma
The
only
problem
found
has
been
with
the
fcntl
call
which
is
fixed
by
using
the
skip
locking
option
to
mysqld
Some
people
have
reported
lockup
problems
with
the
0
5
release
Solaris
2
5
pthreads
Stable
We
use
this
for
all
our
production
work
MIT
pthreads
Other
systems
Gamma
There
have
been
no
reported
bugs
since
3
20
15
and
no
known
bugs
since
3
20
16
On
some
systems
there
is
a
misfeature
where
some
operations
are
quite
slow
a
1
20
second
sleep
is
done
between
each
query
Of
course
MIT
pthreads
may
slow
down
everything
a
bit
but
index
based
SELECT
statements
are
usually
done
in
one
time
frame
so
there
shouldn
t
be
a
mutex
locking
thread
juggling
Other
thread
implementions
Alpha
Beta
The
ports
to
other
systems
are
still
very
new
and
may
have
bugs
possibly
in
MySQL
but
most
often
in
the
thread
implementation
itself
LOAD
DATA
INSERT
SELECT
Stable
Some
people
have
thought
they
have
found
bugs
here
but
these
usually
have
turned
out
to
be
misunderstandings
Please
check
the
manual
before
reporting
problems
ALTER
TABLE
Gamma
Small
changes
in
3
22
12
DBD
Gamma
Now
maintained
by
Jochen
Wiedmann
mysqlaccess
Gamma
Written
and
maintained
by
Yves
Carlier
GRANT
Beta
Big
changes
made
in
MySQL
3
22
12
MyODBC
uses
ODBC
SDK
2
5
Beta
It
seems
to
work
well
with
some
programs
TcX
provides
email
support
for
paying
customers
but
the
MySQL
mailing
list
usually
provides
answers
to
common
questions
Bugs
are
usually
fixed
right
away
with
a
patch
for
serious
bugs
there
is
almost
always
a
new
release
31
1
6
Year
2000
compliance
MySQL
itself
has
no
problems
with
Year
2000
Y2K
compliance
MySQL
uses
Unix
time
functions
and
has
no
problems
with
dates
until
2069
all
2
digit
years
are
regarded
to
be
in
the
range
1970
to
2069
which
means
that
if
you
store
01
in
a
year
column
MySQL
treats
it
as
2001
All
MySQL
date
functions
are
stored
in
one
file
sql
time
cc
and
coded
very
carefully
to
be
year
2000
safe
In
MySQL
3
22
and
later
versions
the
new
YEAR
column
type
can
store
years
0
and
1901
to
2155
in
1
byte
and
display
them
using
2
or
4
digits
You
may
run
into
problems
with
applications
that
use
MySQL
in
a
way
that
is
not
Y2K
safe
For
example
many
old
applications
store
or
manipulate
years
using
2
digit
values
which
are
ambiguous
rather
than
4
digit
values
This
problem
may
be
compounded
by
applications
that
use
values
such
as
00
or
99
as
missing
value
indicators
Unfortunately
these
problems
may
be
difficult
to
fix
since
different
applications
may
be
written
by
different
programmers
each
of
whom
may
use
a
different
set
of
conventions
and
date
handling
functions
Here
is
a
simple
demonstration
illustrating
that
MySQL
doesn
t
have
any
problems
with
dates
until
the
year
2030
mysql
DROP
TABLE
IF
EXISTS
y2k
mysql
CREATE
TABLE
y2k
date
date
date
time
datetime
time
stamp
timestamp
mysql
INSERT
INTO
y2k
VALUES
1998
12
31
1998
12
31
23
59
59
1998123123595
9
mysql
INSERT
INTO
y2k
VALUES
1999
01
01
1999
01
01
00
00
00
1999010100000
0
mysql
INSERT
INTO
y2k
VALUES
1999
09
09
1999
09
09
23
59
59
1999090923595
9
mysql
INSERT
INTO
y2k
VALUES
2000
01
01
2000
01
01
00
00
00
2000010100000
0
mysql
INSERT
INTO
y2k
VALUES
2000
02
28
2000
02
28
00
00
00
2000022800000
0
mysql
INSERT
INTO
y2k
VALUES
2000
02
29
2000
02
29
00
00
00
2000022900000
0
mysql
INSERT
INTO
y2k
VALUES
2000
03
01
2000
03
01
00
00
00
2000030100000
0
mysql
INSERT
INTO
y2k
VALUES
2000
12
31
2000
12
31
23
59
59
2000123123595
9
mysql
INSERT
INTO
y2k
VALUES
2001
01
01
2001
01
01
00
00
00
2001010100000
0
mysql
INSERT
INTO
y2k
VALUES
2004
12
31
2004
12
31
23
59
59
2004123123595
9
mysql
INSERT
INTO
y2k
VALUES
2005
01
01
2005
01
01
00
00
00
2005010100000
0
mysql
INSERT
INTO
y2k
VALUES
2030
01
01
2030
01
01
00
00
00
2030010100000
0
mysql
INSERT
INTO
y2k
VALUES
2050
01
01
2050
01
01
00
00
00
2050010100000
0
mysql
SELECT
FROM
y2k
date
date
time
time
stamp
1998
12
31
1998
12
31
23
59
59
19981231235959
1999
01
01
1999
01
01
00
00
00
19990101000000
1999
09
09
1999
09
09
23
59
59
19990909235959
2000
01
01
2000
01
01
00
00
00
20000101000000
2000
02
28
2000
02
28
00
00
00
20000228000000
2000
02
29
2000
02
29
00
00
00
20000229000000
2000
03
01
2000
03
01
00
00
00
20000301000000
2000
12
31
2000
12
31
23
59
59
20001231235959
2001
01
01
2001
01
01
00
00
00
20010101000000
2004
12
31
2004
12
31
23
59
59
20041231235959
2005
01
01
2005
01
01
00
00
00
20050101000000
2030
01
01
2030
01
01
00
00
00
20300101000000
2050
01
01
2050
01
01
00
00
00
00000000000000
13
rows
in
set
0
00
sec
mysql
DROP
TABLE
y2k
This
shows
that
the
DATE
and
DATETIME
types
are
Date
Data
compliant
while
the
TIMESTAMP
type
that
is
used
to
store
the
current
time
has
a
range
up
to
only
2030
01
01
TIMESTAMP
has
a
range
of
1970
to
2030
on
32
bit
machines
Even
though
MySQL
is
Y2K
compliant
it
is
your
responsibility
to
provide
unambiguous
input
See
section
32
7
2
6
1
Y2K
issues
and
date
types
for
MySQL
s
rules
for
dealing
with
ambiguous
date
input
data
data
containing
2
digit
year
values
33
1
7
General
SQL
information
and
tutorials
This
book
has
been
recommended
by
a
several
people
on
the
MySQL
mailing
list
Judith
S
Bowman
Sandra
L
Emerson
and
Marcy
Darnovsky
The
Practical
SQL
Handbook
Using
Structured
Query
Language
Second
Edition
Addison
Wesley
ISBN
0
201
62623
3
http
www
awl
com
This
book
has
also
received
some
recommendations
on
the
mailing
list
Martin
Gruber
Understanding
SQL
ISBN
0
89588
644
8
Publisher
Sybex
510
523
8233
Alameda
CA
USA
A
SQL
tutorial
is
available
on
the
net
at
http
www
geocities
com
ResearchTriangle
Node
9672
sqltut
html
SQL
in
21
Tagen
online
book
in
German
language
http
www
mut
de
leseecke
buecher
sql
inhalt
htm
34
1
8
Useful
MySQL
related
links
1
8
1
Web
development
tools
that
support
MySQL
35
PHP
A
server
side
HTML
embedded
scripting
language
36
A
JDBC
driver
for
MySQL
37
MySQL
PHP
demos
38
ForwardSQL
HTML
interface
to
manipulate
MySQL
databases
39
WWW
SQL
Display
database
information
40
Minivend
A
Web
shopping
cart
41
HeiTML
A
server
side
extension
of
HTML
and
a
4GL
language
at
the
same
time
42
Metahtml
A
Dynamic
Programming
Language
for
WWW
Applications
43
VelocityGen
for
Perl
and
TCL
44
Hawkeye
Internet
Server
Suite
45
Network
Database
Connection
For
Linux
46
WDBI
Web
browser
as
a
universal
front
end
to
databases
which
supports
MySQL
well
47
WebGroove
Script
HTML
compiler
and
server
side
scripting
language
48
A
server
side
web
site
scripting
language
49
Visual
Basic
class
generator
for
Active
X
50
How
to
use
MySQL
with
Coldfusion
on
Solaris
51
Calistra
s
ODBC
MySQL
Administrator
52
Webmerger
This
CGI
tool
interprets
files
and
generates
dynamic
output
based
on
a
set
of
simple
tags
Ready
to
run
drivers
for
MySQL
and
PostgreSQL
through
ODBC
1
8
2
Web
servers
with
MySQL
tools
53
An
Apache
authentication
module
54
The
Roxen
Challenger
Web
server
1
8
3
Examples
and
source
55
Little6
Inc
An
online
contract
and
job
finding
site
that
is
powered
by
MySQL
PHP3
and
Linux
56
DELECis
A
tool
which
makes
it
very
easy
to
create
an
automatically
generated
table
documentation
They
have
used
MySQL
as
an
example
57
Steve
Fambro
Uses
MySQL
and
webmerger
There
is
an
employee
database
and
a
license
plate
database
with
all
of
the
registered
Utah
vehicles
over
1
2
million
The
License
plate
field
is
indexed
so
the
searches
are
instantaneous
58
World
Records
A
search
engine
for
information
about
music
that
uses
MySQL
and
PHP
59
Examples
using
MySQL
check
Top
10
60
A
Contact
Database
using
MySQL
and
PHP
61
Web
based
interface
and
Community
Calender
with
PHP
62
Perl
package
to
generate
html
from
a
SQL
table
structure
and
for
generating
SQL
statements
from
an
html
form
63
Basic
telephone
database
using
DBI
DBD
64
TmySQL
A
library
to
use
MySQL
with
Delphi
65
Installing
new
Perl
modules
that
require
locally
installed
modules
66
JDBC
examples
by
Daniel
K
Schneider
67
SQL
BNF
68
Object
Oriented
Concepts
Inc
CORBA
applications
with
examples
in
source
69
DBWiz
Includes
an
example
of
how
to
manage
own
cursors
in
VB
70
Pluribus
Pluribus
is
a
free
search
engine
that
learns
to
improve
the
quality
of
its
results
over
time
Pluribus
works
by
recording
which
pages
a
user
prefers
among
those
returned
for
a
query
A
user
votes
for
a
page
by
selecting
it
Pluribus
then
uses
that
knowledge
to
improve
the
quality
of
the
results
when
someone
else
submits
the
same
or
similar
query
Uses
PHP
and
MySQL
71
Stopbit
A
technology
news
site
using
MySQL
and
PHP
72
Example
scripts
at
Jokes2000
1
8
4
ODBC
related
links
73
Popular
iODBC
Driver
Manager
now
available
in
Open
Source
format
74
The
FreeODBC
Pages
1
8
5
API
related
links
75
www
jppp
com
Partially
implemented
TDataset
compatible
components
for
MySQL
1
8
6
Other
MySQL
related
links
76
Registry
of
Web
providers
who
support
MySQL
77
Links
about
using
MySQL
in
Japan
Asia
78
Commercial
Web
defect
tracking
system
79
PTS
Project
Tracking
System
80
Job
and
software
tracking
system
81
Support
for
BIND
The
Internet
Domain
Name
Server
82
Full
text
search
engine
using
MySQL
83
ExportSQL
A
script
to
export
data
from
Access95
84
SAL
Scientific
Applications
on
Linux
MySQL
entry
85
A
consulting
company
which
mentions
MySQL
in
the
right
company
86
PMP
Computer
Solutions
Database
developers
using
MySQL
and
mSQL
87
Airborne
Early
Warning
Association
88
MySQL
UDF
Registry
1
8
7
SQL
and
database
interfaces
89
KMySQL
KMySQL
is
a
database
client
for
KDE
that
primarily
supports
MySQL
90
The
JDBC
database
access
API
91
MySQL
binding
to
Free
Pascal
92
Patch
for
mSQL
TCL
93
EasySQL
An
ODBC
like
driver
manager
94
A
REXX
interface
to
SQL
databases
95
TCL
interface
96
Example
of
storing
retrieving
images
with
MySQL
and
CGI
1
8
8
General
database
links
97
Database
Jump
Site
98
Homepage
of
the
webdb
l
Web
Databases
mailing
list
99
Perl
DBI
DBD
modules
homepage
100
Cygwin
tools
MySQL
Apache
PHP
under
Win32
101
dbasecentral
com
Development
and
distribution
of
powerful
and
easy
to
use
database
applications
and
systems
102
Tek
Tips
Forums
Tek
Tips
Forums
are
800
independent
peer
to
peer
non
commercial
support
forums
for
Computer
Professionals
Features
include
automatic
e
mail
notification
of
responses
a
links
library
and
member
confidentiality
guaranteed
There
are
also
many
web
pages
that
use
MySQL
See
section
103
A
Some
MySQL
users
Send
any
additions
to
this
list
to
MySQL
logo
somewhere
It
is
okay
to
have
it
on
a
used
tools
page
or
something
similar
to
be
added
104
2
MySQL
mailing
lists
and
how
to
ask
questions
or
report
errors
bugs
105
2
1
The
MySQL
mailing
lists
To
subscribe
to
the
main
MySQL
mailing
list
send
a
message
to
the
electronic
mail
address
106
mysql
subscribe
lists
mysql
com
To
unsubscribe
from
the
main
MySQL
mailing
list
send
a
message
to
the
electronic
mail
address
107
mysql
unsubscribe
lists
mysql
com
Only
the
address
to
which
you
send
your
messages
is
significant
The
subject
line
and
the
body
of
the
message
are
ignored
If
your
reply
address
is
not
valid
you
can
specify
your
address
explicitly
Adding
a
hyphen
to
the
subscribe
or
unsubscribe
command
word
followed
by
your
address
with
the
character
in
your
address
replaced
by
a
For
example
to
subscribe
john
host
domain
send
a
message
to
mysql
subscribe
john
host
domain
lists
mysql
com
Mail
to
108
mysql
subscribe
lists
mysql
com
or
ezmlm
mailing
list
processor
Information
about
ezmlm
is
available
at
109
the
ezmlm
Website
To
post
a
message
to
the
list
itself
send
your
message
to
mysql
lists
mysql
com
However
please
do
not
send
mail
about
subscribing
or
unsubscribing
to
110
mysql
lists
mysql
com
since
any
mail
sent
to
that
address
is
distributed
automatically
to
thousands
of
other
users
Your
local
site
may
have
many
subscribers
to
111
mysql
lists
mysql
com
If
so
it
may
have
a
local
mailing
list
so
that
messages
sent
from
lists
mysql
com
to
your
site
are
propagated
to
the
local
list
In
such
cases
please
contact
your
system
administrator
to
be
added
to
or
dropped
from
the
local
MySQL
list
The
following
MySQL
mailing
lists
exist
announce
This
is
for
announcement
of
new
versions
of
MySQL
and
related
programs
This
is
a
low
volume
list
that
we
think
all
MySQL
users
should
be
on
mysql
The
main
list
for
general
MySQL
discussion
Please
note
that
some
topics
are
better
discussed
on
the
more
specialized
lists
If
you
post
to
the
wrong
list
you
may
not
get
an
answer
mysql
digest
The
mysql
list
in
digest
form
That
means
you
get
all
individual
messages
sent
as
one
large
mail
message
once
a
day
java
Discussion
about
MySQL
and
Java
Mostly
about
the
JDBC
drivers
java
digest
A
digest
version
of
the
java
list
win32
All
things
concerning
MySQL
on
Microsoft
operating
systems
such
as
Windows
NT
win32
digest
A
digest
version
of
the
win32
list
myodbc
All
things
concerning
connecting
to
MySQL
with
ODBC
myodbc
digest
A
digest
version
of
the
myodbc
list
msql
mysql
modules
A
list
about
the
Perl
support
in
MySQL
msql
mysql
modules
digest
A
digest
version
of
the
msql
mysql
modules
list
developer
A
list
for
people
who
work
on
the
MySQL
code
developer
digest
A
digest
version
of
the
developer
list
You
subscribe
or
unsubscribe
to
all
lists
in
the
same
way
as
described
above
In
your
subscribe
or
unsubscribe
message
just
put
the
appropriate
mailing
list
name
rather
than
mysql
For
example
to
subscribe
to
or
unsubscribe
from
the
myodbc
list
send
a
message
to
112
2
2
Asking
questions
or
reporting
bugs
Before
posting
a
bug
report
or
question
please
do
the
following
Start
by
searching
the
MySQL
online
manual
at
113
http
www
mysql
com
Manual
chapter
manual
toc
html
We
try
to
keep
the
manual
up
to
date
by
updating
it
frequently
with
solutions
to
newly
found
problems
Search
the
MySQL
mailing
list
archives
114
http
www
mysql
com
doc
html
You
can
also
use
115
http
www
mysql
com
search
html
to
search
all
the
web
pages
including
the
manual
that
are
located
at
116
http
www
mysql
com
If
you
can
t
find
an
answer
in
the
manual
or
the
archives
check
with
your
local
MySQL
expert
If
you
still
can
t
find
an
answer
to
your
question
go
ahead
and
read
the
next
section
about
how
to
send
mail
to
117
2
3
How
to
report
bugs
or
problems
Writing
a
good
bug
report
takes
patience
but
doing
it
right
the
first
time
saves
time
for
us
and
for
you
This
section
will
help
you
write
your
report
correctly
so
that
you
don
t
waste
your
time
doing
things
that
may
not
help
us
much
or
at
all
We
encourage
everyone
to
use
the
mysqlbug
script
to
generate
a
bug
report
or
a
report
about
any
problem
if
possible
mysqlbug
can
be
found
in
the
scripts
directory
in
the
source
distribution
or
for
a
binary
distribution
in
the
bin
directory
under
your
MySQL
installation
directory
If
you
are
unable
to
use
mysqlbug
you
should
still
include
all
the
necessary
information
listed
in
this
section
The
mysqlbug
script
helps
you
generate
a
report
by
determining
much
of
the
following
information
automatically
but
if
something
important
is
missing
please
include
it
with
your
message
Please
read
this
section
carefully
and
make
sure
that
all
the
information
described
here
is
included
in
your
report
Remember
that
it
is
possible
to
respond
to
a
message
containing
too
much
information
but
not
to
one
containing
too
little
Often
people
omit
facts
because
they
think
they
know
the
cause
of
a
problem
and
assume
that
some
details
don
t
matter
A
good
principle
is
if
you
are
in
doubt
about
stating
something
state
it
It
is
a
thousand
times
faster
and
less
troublesome
to
write
a
couple
of
lines
more
in
your
report
than
to
be
forced
to
ask
again
and
wait
for
the
answer
because
you
didn
t
include
enough
information
the
first
time
The
most
common
errors
are
that
people
don
t
indicate
the
version
number
of
the
MySQL
distribution
they
are
using
or
don
t
indicate
what
platform
they
have
MySQL
installed
on
including
the
platform
version
number
This
is
highly
relevant
information
and
in
99
cases
out
of
100
the
bug
report
is
useless
without
it
Very
often
we
get
questions
like
Why
doesn
t
this
work
for
me
and
then
we
find
that
the
feature
requested
wasn
t
implemented
in
that
MySQL
version
or
that
a
bug
described
in
a
report
has
been
fixed
already
in
newer
MySQL
versions
Sometimes
the
error
is
platform
dependent
in
such
cases
it
is
next
to
impossible
to
fix
anything
without
knowing
the
operating
system
and
the
version
number
of
the
platform
Remember
also
to
provide
information
about
your
compiler
if
it
is
related
to
the
problem
Often
people
find
bugs
in
compilers
and
think
the
problem
is
MySQL
related
Most
compilers
are
under
development
all
the
time
and
become
better
version
by
version
too
To
determine
whether
or
not
your
problem
depends
on
your
compiler
we
need
to
know
what
compiler
is
used
Note
that
every
compiling
problem
should
be
regarded
as
a
bug
report
and
reported
accordingly
It
is
most
helpful
when
a
good
description
of
the
problem
is
included
in
the
bug
report
That
is
a
good
example
of
all
the
things
you
did
that
led
to
the
problem
and
the
problem
itself
exactly
described
The
best
reports
are
those
that
include
a
full
example
showing
how
to
reproduce
the
bug
or
problem
If
a
program
produces
an
error
message
it
is
very
important
to
include
the
message
in
your
report
If
we
try
to
search
for
something
from
the
archives
using
programs
it
is
better
that
the
error
message
reported
exactly
matches
the
one
that
the
program
produces
Even
the
case
sensitivity
should
be
observed
You
should
never
try
to
remember
what
the
error
message
was
instead
copy
and
paste
the
entire
message
into
your
report
Please
include
the
following
information
in
your
report
The
version
number
of
the
MySQL
distribution
you
are
using
for
example
MySQL
3
22
22
You
can
find
out
which
version
you
are
running
by
executing
mysqladmin
version
mysqladmin
can
be
found
in
the
bin
directory
under
your
MySQL
installation
directory
The
manufacturer
and
model
of
the
machine
you
are
working
on
The
operating
system
name
and
version
For
most
operating
systems
you
can
get
this
information
by
executing
the
Unix
command
uname
a
Sometimes
the
amount
of
memory
real
and
virtual
is
relevant
If
in
doubt
include
these
values
If
you
are
using
a
source
distribution
of
MySQL
the
name
and
version
number
of
the
compiler
used
is
needed
If
you
have
a
binary
distribution
the
distribution
name
is
needed
If
the
problem
occurs
during
compilation
include
the
exact
error
message
s
and
also
a
few
lines
of
context
around
the
offending
code
in
the
file
where
the
error
occurred
If
any
database
table
is
related
to
the
problem
include
the
output
from
mysqldump
no
data
db
name
tbl
name1
tbl
name2
This
is
very
easy
to
do
and
is
a
powerful
way
to
get
information
about
any
table
in
a
database
that
will
help
us
create
a
situation
matching
the
one
you
have
For
speed
related
bugs
or
problems
with
SELECT
statements
you
should
always
include
the
output
of
EXPLAIN
SELECT
and
at
least
the
number
of
rows
that
the
SELECT
statement
produces
The
more
information
you
give
about
your
situation
the
more
likely
it
is
that
someone
can
help
you
For
example
the
following
is
an
example
of
a
very
good
bug
report
it
should
of
course
be
posted
with
the
mysqlbug
script
Example
run
under
the
mysql
command
line
tool
mysql
SHOW
VARIABLES
mysql
EXPLAIN
SELECT
output
from
EXPLAIN
mysql
FLUSH
STATUS
mysql
SELECT
A
short
version
of
the
output
from
SELECT
including
the
time
taken
to
run
the
query
mysql
SHOW
STATUS
output
from
SHOW
STATUS
If
a
bug
or
problem
occurs
while
running
MySQL
try
to
provide
an
input
script
that
will
reproduce
the
anomaly
This
script
should
include
any
necessary
source
files
The
more
closely
the
script
can
reproduce
your
situation
the
better
If
you
can
t
provide
a
script
you
should
at
least
include
the
output
from
mysqladmin
variables
extended
status
processlist
in
your
mail
to
provide
some
information
of
how
your
system
is
performing
If
you
think
that
MySQL
produces
a
strange
result
from
a
query
include
not
only
the
result
but
also
your
opinion
of
what
the
result
should
be
and
an
account
describing
the
basis
for
your
opinion
When
giving
an
example
of
the
problem
it
s
better
to
use
the
variable
names
table
names
etc
that
exist
in
your
actual
situation
than
to
come
up
with
new
names
The
problem
could
be
related
to
the
name
of
a
variable
table
etc
These
cases
are
rare
perhaps
but
it
is
better
to
be
safe
than
sorry
After
all
it
should
be
easier
for
you
to
provide
an
example
that
uses
your
actual
situation
and
it
is
by
all
means
better
for
us
In
case
you
have
data
you
don
t
want
to
show
to
others
you
can
use
ftp
to
transfer
it
to
118
ftp
www
mysql
com
pub
mysql
secret
If
the
data
are
really
top
secret
and
you
don
t
want
to
show
them
even
to
us
then
go
ahead
and
provide
an
example
using
other
names
but
please
regard
this
as
the
last
choice
Include
all
the
options
given
to
the
relevant
programs
if
possible
For
example
indicate
the
options
that
you
use
when
you
start
the
mysqld
daemon
and
that
you
use
to
run
any
MySQL
client
programs
The
options
to
programs
like
mysqld
and
mysql
and
to
the
configure
script
are
often
keys
to
answers
and
very
relevant
It
is
never
a
bad
idea
to
include
them
anyway
If
you
use
any
modules
such
as
Perl
or
PHP
please
include
the
version
number
s
of
those
as
well
If
you
can
t
produce
a
test
case
in
a
few
rows
or
if
the
test
table
is
too
big
to
be
mailed
to
the
mailing
list
more
than
10
rows
you
should
dump
your
tables
using
mysqldump
and
create
a
README
file
that
describes
your
problem
Create
a
compressed
archive
of
your
files
using
tar
and
gzip
or
zip
and
use
ftp
to
transfer
the
archive
to
119
ftp
www
mysql
com
pub
mysql
secret
Then
send
a
short
description
of
the
problem
to
If
your
question
is
related
to
the
privilege
system
please
include
the
output
of
mysqlaccess
the
output
of
mysqladmin
reload
and
all
the
error
messages
you
get
when
trying
to
connect
When
you
test
your
privileges
you
should
first
run
mysqlaccess
After
this
execute
mysqladmin
reload
version
and
last
you
should
try
to
connect
with
the
program
that
gives
you
trouble
mysqlaccess
can
be
found
in
the
bin
directory
under
your
MySQL
installation
directory
If
you
have
a
patch
for
a
bug
that
is
good
But
don
t
assume
the
patch
is
all
we
need
or
that
we
will
use
it
even
if
you
don
t
provide
some
necessary
information
such
as
test
cases
showing
the
bug
that
your
patch
fixes
We
might
find
problems
with
your
patch
or
we
might
not
understand
it
at
all
if
so
we
can
t
use
it
If
we
can
t
verify
exactly
what
the
patch
is
meant
for
we
won
t
use
it
Test
cases
will
help
us
here
Show
that
the
patch
will
handle
all
the
situations
that
may
occur
If
we
find
a
borderline
case
even
a
rare
one
where
the
patch
won
t
work
the
patch
may
be
useless
Guesses
about
what
the
bug
is
why
it
occurs
or
what
it
depends
on
are
usually
wrong
Even
we
can
t
guess
such
things
without
first
using
a
debugger
to
determine
the
real
cause
of
a
bug
Indicate
in
your
mail
message
that
you
have
checked
the
reference
manual
and
mail
archive
so
others
know
that
you
have
tried
to
solve
your
problem
yourself
If
you
get
a
parse
error
please
check
your
syntax
closely
If
you
can
t
find
something
wrong
with
it
it
s
extremely
likely
that
your
current
version
of
MySQL
doesn
t
support
the
query
you
are
using
If
you
are
using
the
current
version
and
the
manual
at
120
http
www
mysql
com
doc
html
doesn
t
cover
the
syntax
you
are
using
MySQL
doesn
t
support
your
query
In
this
case
your
only
options
are
to
implement
the
syntax
yourself
or
email
121
mysql
support
mysql
com
and
ask
for
an
offer
to
implement
it
If
the
manual
covers
the
syntax
you
are
using
but
you
have
an
older
version
of
MySQL
you
should
check
the
MySQL
change
history
to
see
when
the
syntax
was
implemented
See
section
122
D
MySQL
change
history
In
this
case
you
have
the
option
of
upgrading
to
a
newer
version
of
MySQL
If
you
have
a
problem
such
that
your
data
appears
corrupt
or
you
get
errors
when
you
access
some
particular
table
you
should
first
check
and
then
try
repairing
your
tables
with
isamchk
See
section
123
13
Maintaining
a
MySQL
installation
If
you
often
get
corrupted
tables
you
should
try
to
find
out
when
and
why
this
happens
In
this
case
the
mysql
data
directory
hostname
err
file
may
contain
some
information
about
what
happened
Please
include
any
relevant
information
from
this
file
in
your
bug
report
Normally
mysqld
should
NEVER
crash
a
table
if
nothing
killed
it
in
the
middle
of
an
update
If
you
can
find
the
source
of
why
mysqld
dies
it
s
much
easier
for
us
to
provide
you
with
a
fix
for
the
problem
If
possible
download
the
most
recent
version
of
MySQL
and
check
whether
or
not
it
solves
your
problem
All
versions
of
MySQL
are
thoroughly
tested
and
should
work
without
problems
We
believe
in
making
everything
as
backward
compatible
as
possible
and
you
should
be
able
to
switch
MySQL
versions
in
minutes
See
section
124
4
3
Which
MySQL
version
to
use
If
you
are
a
support
customer
please
cross
post
the
bug
report
to
the
appropriate
mailing
list
to
see
if
someone
else
has
experienced
and
perhaps
solved
the
problem
For
information
on
reporting
bugs
in
MyODBC
see
section
125
16
2
How
to
report
problems
with
MyODBC
For
solutions
to
some
common
problems
see
See
section
126
17
Problems
and
common
errors
When
answers
are
sent
to
you
individually
and
not
to
the
mailing
list
it
is
considered
good
etiquette
to
summarize
the
answers
and
send
the
summary
to
the
mailing
list
so
that
others
may
have
the
benefit
of
responses
you
received
that
helped
you
solve
your
problem
127
2
4
Guidelines
for
answering
questions
on
the
mailing
list
If
you
consider
your
answer
to
have
broad
interest
you
may
want
to
post
it
to
the
mailing
list
instead
of
replying
directly
to
the
individual
who
asked
Try
to
make
your
answer
general
enough
that
people
other
than
the
original
poster
may
benefit
from
it
When
you
post
to
the
list
please
make
sure
that
your
answer
is
not
a
duplication
of
a
previous
answer
Try
to
summarize
the
essential
part
of
the
question
in
your
reply
don
t
feel
obliged
to
quote
the
entire
original
message
Please
don
t
post
mail
messages
from
your
browser
with
HTML
mode
turned
on
Many
users
doesn
t
read
mail
with
a
browser
128
3
MySQL
licensing
and
support
This
chapter
describes
MySQL
licensing
and
support
arrangements
including
Our
licensing
policies
for
non
Microsoft
and
Microsoft
operating
systems
The
copyrights
under
which
MySQL
is
distributed
see
section
129
3
2
Copyrights
used
by
MySQL
Sample
situations
illustrating
when
a
license
is
required
see
section
130
3
4
Example
licensing
situations
Licensing
and
support
costs
see
section
131
3
5
MySQL
licensing
and
support
costs
and
support
benefits
see
section
132
3
6
Types
of
commercial
support
133
3
1
MySQL
licensing
policy
The
formal
terms
of
the
license
for
non
Microsoft
operating
systems
such
as
Unix
or
OS
2
are
specified
in
section
134
J
The
MySQL
server
license
for
non
Microsoft
operating
systems
Basically
our
licensing
policy
is
as
follows
For
normal
internal
use
MySQL
generally
costs
nothing
You
do
not
have
to
pay
us
if
you
do
not
want
to
A
license
is
required
if
You
sell
the
MySQL
server
directly
or
as
a
part
of
another
product
or
service
You
charge
for
installing
and
maintaining
a
MySQL
server
at
some
client
site
You
include
MySQL
in
a
distribution
that
is
non
redistributable
and
you
charge
for
some
part
of
that
distribution
For
circumstances
under
which
a
MySQL
license
is
required
you
need
a
license
per
machine
that
runs
the
mysqld
server
However
a
multiple
CPU
machine
counts
as
a
single
machine
and
there
is
no
restriction
on
the
number
of
MySQL
servers
that
run
on
one
machine
or
on
the
number
of
clients
concurrently
connected
to
a
server
running
on
that
machine
You
do
not
need
a
license
to
include
client
code
in
commercial
programs
The
client
access
part
of
MySQL
is
in
the
public
domain
The
mysql
command
line
client
includes
code
from
the
readline
library
that
is
under
the
GNU
Public
License
For
customers
who
have
purchased
10
licenses
or
a
high
enough
level
of
support
we
provide
additional
functionality
Currently
this
means
we
provide
the
pack
isam
utility
for
creating
fast
compressed
read
only
databases
The
server
includes
support
for
reading
such
databases
but
not
the
packing
tool
used
to
create
them
If
support
agreements
generate
sufficient
revenue
we
will
probably
release
this
tool
under
the
same
license
as
the
MySQL
server
If
your
use
of
MySQL
does
not
require
a
license
but
you
like
MySQL
and
want
to
encourage
further
development
you
are
certainly
welcome
to
purchase
a
license
anyway
If
you
use
MySQL
in
a
commercial
context
such
that
you
profit
by
its
use
we
ask
that
you
further
the
development
of
MySQL
by
purchasing
some
level
of
support
We
feel
that
if
MySQL
helps
your
business
it
is
reasonable
to
ask
that
you
help
MySQL
Otherwise
if
you
ask
us
support
questions
you
are
not
only
using
for
free
something
into
which
we
ve
put
a
lot
a
work
you
re
asking
us
to
provide
free
support
too
For
use
under
Microsoft
operating
systems
Win95
Win98
WinNT
you
need
a
MySQL
license
after
a
trial
period
of
30
days
with
the
exception
that
licenses
may
be
obtained
upon
request
at
no
cost
for
educational
use
or
for
university
or
government
sponsored
research
settings
See
section
135
K
The
MySQL
license
for
Microsoft
operating
systems
A
shareware
version
of
MySQL
Win32
that
you
can
try
before
buying
is
available
at
136
http
www
mysql
com
mysql
w32
htmy
After
you
have
paid
you
will
get
a
password
that
will
enable
you
to
access
the
newest
MySQL
Win32
version
If
you
have
any
questions
as
to
whether
or
not
a
license
is
required
for
your
particular
use
of
MySQL
please
contact
us
See
section
137
3
5
2
Contact
information
If
you
require
a
MySQL
license
the
easiest
way
to
pay
for
it
is
to
use
the
license
form
at
TcX
s
secure
server
at
https
www
tcx
se
license
htmy
Other
forms
of
payment
are
discussed
in
section
138
3
5
1
Payment
information
139
3
2
Copyrights
used
by
MySQL
There
are
several
different
copyrights
on
the
MySQL
distribution
1
The
MySQL
specific
source
needed
to
build
the
mysqlclient
library
and
programs
in
the
client
directory
is
in
the
public
domain
Each
file
that
is
in
the
public
domain
has
a
header
which
clearly
states
so
This
includes
everything
in
the
client
directory
and
some
parts
of
the
mysys
mystring
and
dbug
libraries
2
Some
small
parts
of
the
source
GNU
getopt
are
covered
by
the
GNU
LIBRARY
LIBRARY
GENERAL
PUBLIC
LICENSE
See
the
mysys
COPYING
LIB
file
3
Some
small
parts
of
the
source
GNU
readline
are
covered
by
the
GNU
GENERAL
PUBLIC
LICENSE
See
the
readline
COPYING
file
4
Some
parts
of
the
source
the
regexp
library
are
covered
by
a
Berkeley
style
copyright
5
The
other
source
needed
for
the
MySQL
server
on
non
Microsoft
platforms
is
covered
by
the
MySQL
FREE
PUBLIC
LICENSE
which
is
based
on
the
Aladdin
FREE
PUBLIC
LICENSE
See
section
140
J
The
MySQL
server
license
for
non
Microsoft
operating
systems
When
running
MySQL
on
any
Microsoft
operating
system
other
licensing
applies
The
following
points
set
forth
the
philosophy
behind
our
copyright
policy
The
SQL
client
library
should
be
totally
free
so
that
it
can
be
included
in
commercial
products
without
limitations
People
who
want
free
access
to
the
software
into
which
we
have
put
a
lot
of
work
can
have
it
so
long
as
they
do
not
try
to
make
money
directly
by
distributing
it
for
profit
People
who
want
the
right
to
keep
their
own
software
proprietary
but
also
want
the
value
from
our
work
can
pay
for
the
privilege
That
means
normal
in
house
use
is
FREE
But
if
you
use
MySQL
for
something
important
to
you
you
may
want
to
help
further
its
development
by
purchasing
a
license
or
a
support
contract
See
section
141
3
6
Types
of
commercial
support
142
3
2
1
Possible
future
copyright
changes
We
may
choose
to
distribute
older
versions
of
MySQL
with
the
GPL
in
the
future
However
these
versions
will
be
identified
as
GNU
MySQL
Also
all
copyright
notices
in
the
relevant
files
will
be
changed
to
the
GPL
143
3
3
Distributing
MySQL
commercially
This
section
is
a
clarification
of
the
license
terms
that
are
set
forth
in
the
MySQL
FREE
PUBLIC
LICENSE
FPL
See
section
144
J
The
MySQL
server
license
for
non
Microsoft
operating
systems
MySQL
may
be
used
freely
including
by
commercial
entities
for
evaluation
or
unsupported
internal
use
However
distribution
for
commercial
purposes
of
MySQL
or
anything
containing
or
derived
from
MySQL
in
whole
or
in
part
requires
a
written
commercial
license
from
TcX
AB
the
sole
entity
authorized
to
grant
such
licenses
You
may
not
include
MySQL
free
in
a
package
containing
anything
for
which
a
charge
is
being
made
except
as
noted
below
The
intent
of
the
exception
provided
in
the
second
clause
of
the
license
is
to
allow
commercial
organizations
operating
an
FTP
server
or
a
bulletin
board
to
distribute
MySQL
freely
from
it
provided
that
1
The
organization
complies
with
the
other
provisions
of
the
FPL
which
include
among
other
things
a
requirement
to
distribute
the
full
source
code
of
MySQL
and
of
any
derived
work
and
to
distribute
the
FPL
itself
along
with
MySQL
2
The
only
charge
for
downloading
MySQL
is
a
charge
based
on
the
distribution
service
and
not
one
based
on
the
content
of
the
information
being
retrieved
i
e
the
charge
would
be
the
same
for
retrieving
a
random
collection
of
bits
of
the
same
size
3
The
server
or
BBS
is
accessible
to
the
general
public
i
e
the
phone
number
or
IP
address
is
not
kept
secret
and
anyone
may
obtain
access
to
the
information
possibly
by
paying
a
subscription
or
access
fee
that
is
not
dependent
on
or
related
to
purchasing
anything
else
If
you
want
to
distribute
software
in
a
commercial
context
that
incorporates
MySQL
and
you
do
not
want
to
meet
these
conditions
you
should
contact
TcX
AB
to
find
out
about
commercial
licensing
which
involves
a
payment
The
only
ways
you
legally
can
distribute
MySQL
or
anything
containing
MySQL
are
by
distributing
MySQL
under
the
requirements
of
the
FPL
or
by
getting
a
commercial
license
from
TcX
AB
145
3
4
Example
licensing
situations
This
section
describes
some
situations
illustrating
whether
or
not
you
must
license
the
MySQL
server
Generally
these
examples
involve
providing
MySQL
as
part
of
a
product
or
service
that
you
are
selling
to
a
customer
or
requiring
that
MySQL
be
used
in
conjunction
with
your
product
In
such
cases
it
is
your
responsibility
to
obtain
a
license
for
the
customer
if
one
is
necessary
This
requirement
is
waived
if
your
customer
already
has
a
MySQL
license
But
the
seller
must
send
customer
information
and
the
license
number
to
TcX
and
the
license
must
be
a
full
license
not
an
OEM
license
Note
that
a
single
MySQL
license
covers
any
number
of
CPUs
users
customers
mysqld
servers
on
a
machine
146
3
4
1
Selling
products
that
use
MySQL
To
determine
whether
or
not
you
need
a
MySQL
license
when
selling
your
application
you
should
ask
whether
the
proper
functioning
of
your
application
is
contingent
on
the
use
of
MySQL
and
whether
you
include
MySQL
with
your
product
There
are
several
cases
to
consider
Does
your
application
require
MySQL
to
function
properly
If
your
product
requires
MySQL
you
need
a
license
for
any
machine
that
runs
the
mysqld
server
For
example
if
you
ve
designed
your
application
around
MySQL
then
you
ve
really
made
a
commercial
product
that
requires
the
engine
so
you
need
a
license
If
your
application
does
not
require
MySQL
you
need
not
obtain
a
license
For
example
if
MySQL
just
added
some
new
optional
features
to
your
product
such
as
adding
logging
to
a
database
if
MySQL
is
used
rather
than
logging
to
a
text
file
it
should
fall
within
normal
use
and
a
license
would
not
be
required
In
other
words
you
need
a
license
if
you
sell
a
product
designed
specifically
for
use
with
MySQL
or
that
requires
the
MySQL
server
to
function
at
all
This
is
true
whether
or
not
you
provide
MySQL
for
your
client
as
part
of
your
product
distribution
It
also
depends
on
what
you
re
doing
for
the
client
Do
you
plan
to
provide
your
client
with
detailed
instructions
on
installing
MySQL
with
your
software
Then
your
product
may
be
contingent
on
the
use
of
MySQL
if
so
you
need
to
buy
a
license
If
you
are
simply
tying
into
a
database
that
you
expect
already
to
have
been
installed
by
the
time
your
software
is
purchased
then
you
probably
don
t
need
a
license
Do
you
include
MySQL
in
a
distribution
and
charge
for
that
distribution
If
you
include
MySQL
with
a
distribution
that
you
sell
to
customers
you
will
need
a
license
for
any
machine
that
runs
the
mysqld
server
because
in
this
case
you
are
selling
a
system
that
includes
MySQL
This
is
true
whether
the
use
of
MySQL
with
your
product
is
required
or
optional
Do
you
neither
require
for
your
product
nor
include
MySQL
with
it
Suppose
you
want
to
sell
a
product
that
is
designed
generally
to
use
some
database
and
that
can
be
configured
to
use
any
of
several
supported
alternative
database
systems
MySQL
PostgreSQL
or
something
else
That
is
your
product
does
not
not
require
MySQL
but
can
support
any
database
with
a
base
level
of
functionality
and
you
don
t
rely
on
anything
that
only
MySQL
supports
Does
one
of
you
owe
us
money
if
your
customer
actually
does
choose
to
use
MySQL
In
this
case
if
you
don
t
provide
obtain
or
set
up
MySQL
for
the
customer
should
the
customer
decide
to
use
it
neither
of
you
need
a
license
If
you
do
perform
that
service
see
section
147
3
4
2
Selling
MySQL
related
services
148
3
4
2
Selling
MySQL
related
services
If
you
perform
MySQL
installation
on
a
client
s
machine
and
any
money
changes
hands
for
the
service
directly
or
indirectly
then
you
must
buy
a
MySQL
license
If
you
sell
an
application
for
which
MySQL
is
not
strictly
required
but
can
be
used
a
license
may
be
indicated
depending
on
how
MySQL
is
set
up
Suppose
your
product
neither
requires
MySQL
nor
includes
it
in
your
product
distribution
but
can
be
configured
to
use
MySQL
for
those
customers
who
so
desire
This
would
be
the
case
for
example
if
your
product
can
use
any
of
a
number
of
database
engines
If
the
customer
obtains
and
installs
MySQL
no
license
is
needed
If
you
perform
that
service
for
your
customer
then
a
license
is
needed
because
then
you
are
selling
a
service
that
includes
MySQL
149
3
4
3
ISP
MySQL
services
Internet
Service
Providers
ISPs
often
host
MySQL
servers
for
their
customers
If
you
are
an
ISP
that
allows
customers
to
install
and
administer
MySQL
for
themselves
on
your
machine
with
no
assistance
from
you
neither
you
nor
your
customer
need
a
MySQL
license
If
you
charge
for
MySQL
installation
and
administrative
support
as
part
of
your
customer
service
then
you
need
a
license
because
you
are
selling
a
service
that
includes
MySQL
150
3
4
4
Running
a
web
server
using
MySQL
If
you
use
MySQL
in
conjunction
with
a
web
server
you
don
t
have
to
pay
for
a
license
This
is
true
even
if
you
run
a
commercial
web
server
that
uses
MySQL
since
you
are
not
selling
MySQL
itself
However
in
this
case
we
would
like
you
to
purchase
MySQL
support
because
MySQL
is
helping
your
enterprise
151
3
5
MySQL
licensing
and
support
costs
Our
current
license
prices
are
shown
below
All
prices
are
in
US
Dollars
If
you
pay
by
credit
card
the
currency
is
EURO
European
Union
Euro
so
the
prices
will
differ
slightly
Number
of
licenses
Price
per
copy
Total
1
US
200
US
200
10
pack
US
150
US
1500
50
pack
US
120
US
6000
For
high
volume
OEM
purchases
the
following
prices
apply
Number
of
licenses
Price
per
copy
Minimum
at
one
time
Minimum
payment
100
999
US
40
100
US
4000
1000
2499
US
25
200
US
5000
2500
4999
US
20
400
US
8000
For
OEM
purchases
you
must
act
as
the
middle
man
for
eventual
problems
or
extension
requests
from
your
users
We
also
require
that
OEM
customers
have
at
least
an
extended
email
support
contract
If
you
have
a
low
margin
high
volume
product
you
can
always
talk
to
us
about
other
terms
for
example
a
percent
of
the
sale
price
If
you
do
please
be
informative
about
your
product
pricing
market
and
any
other
information
that
may
be
relevant
After
buying
10
MySQL
licenses
you
will
get
a
personal
copy
of
the
pack
isam
utility
You
are
not
allowed
to
redistribute
this
utility
but
you
can
distribute
tables
packed
with
it
A
full
price
license
is
not
a
support
agreement
and
includes
very
minimal
support
This
means
that
we
try
to
answer
any
relevant
question
If
the
answer
is
in
the
documentation
we
will
direct
you
to
the
appropriate
section
If
you
have
not
purchased
a
license
or
support
we
probably
will
not
answer
at
all
If
you
discover
what
we
consider
a
real
bug
we
are
likely
to
fix
it
in
any
case
But
if
you
pay
for
support
we
will
notify
you
about
the
fix
status
instead
of
just
fixing
it
in
a
later
release
More
comprehensive
support
is
sold
separately
Descriptions
of
what
each
level
of
support
includes
are
given
in
section
152
3
6
Types
of
commercial
support
Costs
for
the
various
types
of
commercial
support
are
shown
below
Support
level
prices
are
in
EURO
European
Union
Euro
One
EURO
is
about
1
17
USD
Type
of
support
Cost
per
year
Basic
email
support
EURO
170
Extended
email
support
EURO
1000
Login
support
EURO
2000
Extended
login
support
EURO
5000
You
may
upgrade
from
any
lower
level
of
support
to
a
higher
level
of
support
for
the
difference
between
the
prices
of
the
two
support
levels
153
3
5
1
Payment
information
Currently
we
can
take
SWIFT
payments
cheques
or
credit
cards
Payment
should
be
made
to
Postgirot
Bank
AB
105
06
STOCKHOLM
SWEDEN
TCX
DataKonsult
AB
BOX
6434
11382
STOCKHOLM
SWEDEN
SWIFT
address
PGSI
SESS
Account
number
96
77
06
3
Specify
license
and
or
support
and
your
name
and
email
address
In
Europe
and
Japan
you
can
use
EuroGiro
that
should
be
less
expensive
to
the
same
account
If
you
want
to
pay
by
cheque
make
it
payable
to
Monty
Program
KB
and
mail
it
to
the
address
below
TCX
DataKonsult
AB
BOX
6434
11382
STOCKHOLM
SWEDEN
If
you
want
to
pay
by
credit
card
over
the
Internet
you
can
use
154
TcX
s
secure
license
form
You
can
also
print
a
copy
of
the
license
form
fill
it
in
and
send
it
by
fax
to
46
8
729
69
05
If
you
want
us
to
bill
you
you
can
use
the
license
form
and
write
bill
us
in
the
comment
field
You
can
also
mail
a
message
to
with
your
company
information
and
ask
us
to
bill
you
155
3
5
2
Contact
information
For
commercial
licensing
or
if
you
have
any
questions
about
any
of
the
information
in
this
section
please
contact
the
MySQL
licensing
team
The
much
preferred
method
is
by
E
Mail
to
these
may
take
much
longer
Fax
46
8
729
69
05
If
you
need
to
speak
to
us
on
the
telephone
David
Axmark
Detron
HB
Kungsgatan
65
B
753
21
UPPSALA
SWEDEN
Voice
Phone
46
18
10
22
80
Timezone
GMT
1
Swedish
and
English
spoken
156
3
6
Types
of
commercial
support
157
3
6
1
Basic
email
support
Basic
email
support
is
a
very
inexpensive
support
option
and
should
be
thought
of
more
as
a
way
to
support
our
development
of
MySQL
than
as
a
real
support
option
At
this
support
level
the
MySQL
mailing
lists
are
the
preferred
means
of
communication
Questions
normally
should
be
mailed
to
the
primary
mailing
list
158
mysql
lists
mysql
com
or
one
of
the
other
regular
lists
for
example
159
mysql
win32
lists
mysql
com
for
Windows
related
MySQL
questions
as
someone
else
already
may
have
experienced
and
solved
the
problem
you
have
See
section
160
2
2
Asking
questions
or
reporting
bugs
However
by
purchasing
basic
email
support
you
also
have
access
to
the
support
address
161
mysql
support
mysql
com
which
is
not
available
as
part
of
the
minimal
support
that
you
get
by
purchasing
a
MySQL
license
This
means
that
for
especially
critical
questions
you
can
cross
post
your
message
to
162
mysql
support
mysql
com
If
the
message
contains
sensitive
data
you
should
post
only
to
163
mysql
support
mysql
com
Whenever
you
send
a
message
to
164
mysql
support
mysql
com
always
remember
to
include
your
registration
number
and
expiration
date
to
ensure
a
quick
response
Basic
email
support
includes
the
following
types
of
service
If
your
question
is
already
answered
in
the
manual
we
will
inform
you
of
the
correct
section
in
which
you
can
find
the
answer
If
the
answer
is
not
in
the
manual
we
will
point
you
in
the
right
direction
to
solve
your
problem
We
guarantee
a
timely
answer
for
your
email
messages
We
can
t
guarantee
that
we
can
solve
any
problem
but
at
least
you
will
receive
an
answer
if
we
can
contact
you
by
email
We
will
help
with
unexpected
problems
when
you
install
MySQL
from
a
binary
distribution
on
supported
platforms
This
level
of
support
does
not
cover
installing
MySQL
from
a
source
distribution
Supported
platforms
are
those
for
which
MySQL
is
known
to
work
See
section
165
4
2
Operating
systems
supported
by
MySQL
We
will
help
you
with
bugs
and
missing
features
Any
bugs
that
are
found
are
fixed
for
the
next
MySQL
release
If
the
bug
is
critical
for
you
we
will
mail
you
a
patch
for
it
as
soon
the
bug
is
fixed
Critical
bugs
always
have
the
highest
priority
for
us
to
ensure
that
they
are
fixed
as
soon
as
possible
Your
suggestions
for
the
further
development
of
MySQL
will
be
taken
into
consideration
By
taking
email
support
you
have
already
helped
the
further
development
of
MySQL
If
you
want
to
have
more
input
upgrade
to
a
higher
level
of
support
If
you
want
us
to
help
optimize
your
system
you
must
upgrade
to
a
higher
level
of
support
166
3
6
2
Extended
email
support
Extended
email
support
includes
everything
in
basic
email
support
with
these
additions
Your
email
will
be
dealt
with
before
mail
from
basic
email
support
users
and
non
registered
users
Your
suggestions
for
the
further
development
of
MySQL
will
receive
strong
consideration
Simple
extensions
that
suit
the
basic
goals
of
MySQL
are
implemented
in
a
matter
of
days
By
taking
extended
email
support
you
have
already
helped
the
further
development
of
MySQL
We
include
a
binary
version
of
the
pack
isam
packing
tool
for
creating
fast
compressed
read
only
databases
it
does
not
support
BLOB
or
TEXT
types
yet
The
current
server
includes
support
for
reading
such
databases
but
not
the
packing
tool
used
to
create
them
Typical
questions
that
are
covered
by
extended
email
support
are
We
will
answer
and
within
reason
solve
questions
that
relate
to
possible
bugs
in
MySQL
As
soon
as
the
bug
is
found
and
corrected
we
will
mail
a
patch
for
it
We
will
help
with
unexpected
problems
when
you
install
MySQL
from
a
source
or
binary
distribution
on
supported
platforms
We
will
answer
questions
about
missing
features
and
offer
hints
how
to
work
around
them
We
will
provide
hints
on
optimizing
mysqld
for
your
situation
You
are
allowed
to
influence
the
priority
of
items
on
the
MySQL
TODO
This
will
ensure
that
the
features
you
really
need
will
be
implemented
sooner
than
they
might
be
otherwise
167
3
6
3
Login
support
Login
support
includes
everything
in
extended
email
support
with
these
additions
Your
email
will
be
dealt
with
even
before
mail
from
extended
email
support
users
Your
suggestions
for
the
further
development
of
MySQL
will
be
taken
into
very
high
consideration
Realistic
extensions
that
can
be
implemented
in
a
couple
of
hours
and
that
suit
the
basic
goals
of
MySQL
will
be
implemented
as
soon
as
possible
If
you
have
a
very
specific
problem
we
can
try
to
log
in
on
your
system
to
solve
the
problem
in
place
Like
any
database
vendor
we
can
t
guarantee
that
we
can
rescue
any
data
from
crashed
tables
but
if
the
worst
happens
we
will
help
you
rescue
as
much
as
possible
MySQL
has
proven
itself
very
reliable
but
anything
is
possible
due
to
circumstances
beyond
our
control
for
example
if
your
system
crashes
or
someone
kills
the
server
by
executing
a
kill
9
command
We
will
provide
hints
on
optimizing
your
system
and
your
queries
You
are
allowed
to
call
a
MySQL
developer
in
moderation
and
discuss
your
MySQL
related
problems
168
3
6
4
Extended
login
support
Extended
login
support
includes
everything
in
login
support
with
these
additions
Your
email
has
the
highest
possible
priority
We
will
actively
examine
your
system
and
help
you
optimize
it
and
your
queries
We
may
also
optimize
and
or
extend
MySQL
to
better
suit
your
needs
You
may
also
request
special
extensions
just
for
you
For
example
mysql
select
MY
CALCULATION
col
name1
col
name2
from
tbl
name
We
will
provide
a
binary
distribution
of
all
important
MySQL
releases
for
your
system
as
long
as
we
can
get
an
account
on
a
similar
system
In
the
worst
case
we
may
require
access
to
your
system
to
be
able
to
create
a
binary
distribution
If
you
can
provide
accommodations
and
pay
for
traveler
fares
you
can
even
get
a
MySQL
developer
to
visit
you
and
offer
you
help
with
your
troubles
Extended
login
support
entitles
you
to
one
personal
encounter
per
year
but
we
are
as
always
very
flexible
towards
our
customers
169
4
Installing
MySQL
This
chapter
describes
how
to
obtain
and
install
MySQL
For
a
list
of
sites
from
which
you
can
obtain
MySQL
see
section
170
4
1
How
to
get
MySQL
To
see
which
platforms
are
supported
see
section
171
4
2
Operating
systems
supported
by
MySQL
Several
versions
of
MySQL
are
available
in
both
binary
and
source
distributions
To
determine
which
version
and
type
of
distribution
you
should
use
see
section
172
4
4
How
and
when
updates
are
released
Installation
instructions
for
binary
and
source
distributions
are
described
in
section
173
4
6
Installing
a
MySQL
binary
distribution
and
section
174
4
7
Installing
a
MySQL
source
distribution
Each
set
of
instructions
includes
a
section
on
system
specific
problems
you
may
run
into
For
post
installation
procedures
see
section
175
4
15
Post
installation
setup
and
testing
These
procedures
apply
whether
you
install
MySQL
using
a
binary
or
source
distribution
176
4
1
How
to
get
MySQL
Check
the
177
MySQL
home
page
for
information
about
the
current
version
and
for
downloading
instructions
However
the
Internet
connection
at
TcX
is
not
so
fast
we
would
prefer
that
you
do
the
actual
downloading
from
one
of
the
mirror
sites
listed
below
Please
report
bad
or
out
of
date
mirrors
to
178
webmaster
mysql
com
Europe
austria
gif
Austria
Univ
of
Technology
Vienna
179
WWW
180
FTP
bulgaria
gif
Bulgaria
Naturella
181
FTP
croatia
gif
Croatia
HULK
182
WWW
183
FTP
czech
republic
gif
Czech
Republic
Masaryk
University
in
Brno
184
WWW
185
FTP
denmark
gif
Denmark
Ake
186
WWW
denmark
gif
Denmark
SunSITE
187
WWW
188
FTP
estonia
gif
Estonia
Tradenet
189
WWW
estonia
gif
Estonia
OKinteractive
190
WWW
france
gif
France
minet
191
WWW
finland
gif
Finland
EUnet
192
WWW
germany
gif
Germany
Bonn
University
Bonn
193
WWW
194
FTP
germany
gif
Germany
Wolfenbuettel
195
WWW
196
FTP
germany
gif
Germany
Staufen
197
WWW
germany
gif
Germany
Cable
Wireless
198
FTP
greece
gif
Greece
NTUA
Athens
199
WWW
200
FTP
hungary
gif
Hungary
Xenia
201
WWW
202
FTP
israel
gif
Israel
Netvision
203
WWW
italy
gif
Italy
Teta
Srl
204
WWW
poland
gif
Poland
Sunsite
205
WWW
206
FTP
portugal
gif
Portugal
lerianet
207
WWW
208
FTP
russia
gif
Russia
DirectNet
209
WWW
russia
gif
Russia
IZHCOM
210
WWW
211
FTP
russia
gif
Russia
Scientific
Center
Chernogolovka
212
FTP
romania
gif
Romania
Timisoara
213
WWW
214
FTP
romania
gif
Romania
Bucharest
215
WWW
216
FTP
sweden
gif
Sweden
Sunet
217
WWW
218
FTP
switzerland
gif
Switzerland
Sunsite
219
WWW
220
FTP
great
britain
gif
UK
Omnipotent
UK
221
WWW
222
FTP
great
britain
gif
UK
PLiG
UK
223
WWW
224
FTP
great
britain
gif
UK
SunSITE
225
WWW
226
FTP
ukraine
gif
Ukraine
PACO
227
WWW
228
FTP
North
America
canada
gif
Canada
Tryc
229
WWW
usa
gif
USA
Hurricane
Electric
San
Jose
230
WWW
usa
gif
USA
Buoy
New
York
231
WWW
usa
gif
USA
Netcasting
West
Coast
232
FTP
usa
gif
USA
Circle
Net
North
Carolina
233
WWW
usa
gif
USA
Gina
net
Florida
234
WWW
usa
gif
USA
pingzero
Los
Angeles
235
WWW
usa
gif
USA
DIGEX
236
FTP
South
America
chile
gif
Chile
vision
237
http
mysql
vision
cl
chile
gif
Chile
Amerikanclaris
238
WWW
239
FTP
Asia
south
korea
gif
Korea
KREONet
240
WWW
japan
gif
Japan
Soft
Agency
241
WWW
japan
gif
Japan
Nagoya
Syouka
University
242
WWW
243
FTP
japan
gif
Japan
HappySize
244
WWW
245
FTP
singapore
gif
Singapore
HJC
246
WWW
247
FTP
taiwan
gif
Taiwan
NCTU
248
WWW
taiwan
gif
Taiwan
TTN
249
WWW
Australia
australia
gif
Australia
AARNet
Queensland
250
WWW
251
FTP
australia
gif
Australia
Tas
252
WWW
253
FTP
australia
gif
Australia
Blue
Planet
Melbourne
254
WWW
255
FTP
australia
gif
Australia
ITworks
Consulting
Victoria
256
WWW
Africa
south
africa1
gif
South
Africa
The
Internet
Solution
Johannesburg
257
FTP
south
africa1
gif
South
Africa
Mweb
258
WWW
259
4
2
Operating
systems
supported
by
MySQL
We
use
GNU
Autoconf
so
it
is
possible
to
port
MySQL
to
all
modern
systems
with
working
Posix
threads
and
a
C
compiler
To
compile
only
the
client
code
a
C
compiler
is
required
but
not
threads
We
use
and
develop
the
software
ourselves
primarily
on
Sun
Solaris
versions
2
5
2
6
and
to
a
lesser
extent
on
RedHat
Linux
5
0
MySQL
has
been
reported
to
compile
sucessfully
on
the
following
operating
system
thread
package
combinations
Note
that
for
many
operating
systems
the
native
thread
support
works
only
in
the
latest
versions
AIX
4
x
with
native
threads
BSDI
2
x
with
the
included
MIT
pthreads
package
BSDI
3
0
3
1
and
4
x
with
native
threads
DEC
UNIX
4
x
with
native
threads
FreeBSD
2
x
with
the
included
MIT
pthreads
package
FreeBSD
3
x
with
native
threads
HP
UX
10
20
with
the
included
MIT
pthreads
package
HP
UX
11
x
with
the
native
threads
Linux
2
0
with
LinuxThreads
0
7
1
or
glibc
2
0
7
NetBSD
1
3
Intel
and
NetBSD
1
3
Alpha
OpenBSD
2
x
with
the
included
MIT
pthreads
package
OS
2
Warp
3
FixPack
29
and
OS
2
Warp
4
FixPack
4
SGI
Irix
6
x
with
native
threads
Solaris
2
5
2
6
and
2
7
with
native
threads
on
SPARC
and
x86
SunOS
4
x
with
the
included
MIT
pthreads
package
SCO
OpenServer
with
a
recent
port
of
the
FSU
Pthreads
package
SCO
UnixWare
7
0
1
Tru64
Unix
Win95
Win98
and
NT
the
newest
version
is
currently
available
only
for
users
with
a
MySQL
license
or
MySQL
email
support
For
those
who
wish
to
test
before
they
buy
we
have
released
260
MySQL
3
21
29
an
older
version
as
shareware
261
4
3
Which
MySQL
version
to
use
The
first
decision
to
make
is
whether
you
want
to
use
the
latest
development
release
or
the
last
stable
release
Normally
if
you
are
beginning
to
use
MySQL
for
the
first
time
or
trying
to
port
it
to
some
system
for
which
there
is
no
binary
distribution
we
recommend
going
with
the
development
release
currently
3
22
x
This
is
because
there
are
usually
no
really
serious
bugs
in
the
development
release
and
you
can
easily
test
it
on
your
machine
with
the
crash
me
and
benchmark
tests
See
section
262
11
The
MySQL
benchmark
suite
Otherwise
if
you
are
running
an
old
system
and
want
to
upgrade
but
don
t
want
to
take
chances
with
3
22
you
should
upgrade
to
3
21
33
We
have
tried
to
fix
only
fatal
bugs
and
make
small
relatively
safe
changes
to
that
version
The
second
decision
to
make
is
whether
you
want
to
use
a
source
distribution
or
a
binary
distribution
If
you
want
to
run
MySQL
on
a
platform
for
which
a
current
binary
distribution
exists
use
that
Generally
it
will
be
easier
to
install
than
a
source
distribution
If
you
want
to
read
and
or
modify
the
C
and
C
code
that
makes
up
MySQL
you
should
get
a
source
distribution
The
source
code
is
always
the
ultimate
manual
Source
distributions
also
contain
more
tests
and
examples
than
binary
distributions
The
MySQL
naming
scheme
uses
release
numbers
that
consist
of
three
numbers
and
a
suffix
For
example
a
release
name
like
mysql
3
21
17
beta
is
interpreted
like
this
The
first
number
3
describes
the
file
format
All
version
3
releases
have
the
same
file
format
When
a
version
4
appears
every
table
will
have
to
be
converted
to
the
new
format
nice
tools
for
this
will
be
included
of
course
The
second
number
21
is
the
release
level
Normally
there
are
two
to
choose
from
One
is
the
release
stable
branch
currently
21
and
the
other
is
the
development
branch
currently
22
Normally
both
are
stable
but
the
development
version
may
have
quirks
missing
documentation
on
new
features
or
may
fail
to
compile
on
some
systems
The
third
number
17
is
the
version
number
within
the
release
level
This
is
incremented
for
each
new
distribution
Usually
you
want
the
latest
version
for
the
release
level
you
have
choosen
The
suffix
beta
indicates
the
stability
level
of
the
release
The
possible
suffixes
are
alpha
indicates
that
the
release
contains
some
large
section
of
new
code
that
hasn
t
been
100
tested
Known
bugs
usually
there
are
none
should
be
documented
in
the
News
section
See
section
263
D
MySQL
change
history
There
are
also
new
commands
and
extensions
in
most
alpha
releases
beta
means
that
all
new
code
has
been
tested
No
major
new
features
were
added
There
should
be
no
known
bugs
gamma
is
a
beta
that
has
been
around
a
while
and
seems
to
work
fine
This
is
what
many
other
companies
call
a
release
If
there
is
no
suffix
it
means
that
the
version
has
been
run
for
a
while
at
many
different
sites
with
no
reports
of
bugs
other
than
platform
specific
bugs
This
is
what
we
call
a
stable
release
All
versions
of
MySQL
are
run
through
our
standard
tests
and
benchmarks
to
ensure
that
they
are
relatively
safe
to
use
Since
the
standard
tests
are
extended
over
time
to
check
for
all
previously
found
bugs
the
test
suite
keeps
getting
better
Note
that
all
releases
have
been
tested
at
least
with
An
internal
test
suite
This
is
part
of
a
production
system
for
a
customer
It
has
many
tables
with
hundreds
of
megabytes
of
data
The
MySQL
benchmark
suite
This
runs
a
range
of
common
queries
It
is
also
a
test
to
see
whether
the
latest
batch
of
optimizations
actually
made
the
code
faster
See
section
264
11
The
MySQL
benchmark
suite
The
crash
me
test
This
tries
to
determine
what
features
the
database
supports
and
what
its
capabilities
and
limitations
are
See
section
265
11
The
MySQL
benchmark
suite
Another
test
is
that
we
use
the
newest
MySQL
version
in
our
internal
production
environment
on
at
least
one
machine
We
have
more
than
100
gigabytes
of
data
to
work
with
266
4
4
How
and
when
updates
are
released
MySQL
is
evolving
quite
rapidly
here
at
TcX
and
we
want
to
share
this
with
other
MySQL
users
We
try
to
make
a
release
when
we
have
very
useful
features
that
others
seem
to
have
a
need
for
We
also
try
to
help
out
users
who
request
features
that
are
easy
to
implement
We
also
take
note
of
what
our
licensed
users
want
to
have
and
we
especially
take
note
of
what
our
extended
email
supported
customers
want
and
try
to
help
them
out
No
one
has
to
download
a
new
release
The
News
section
will
tell
you
if
the
new
release
has
something
you
really
want
See
section
267
D
MySQL
change
history
We
use
the
following
policy
when
updating
MySQL
For
each
minor
update
the
last
number
in
the
version
string
is
incremented
When
there
are
major
new
features
or
minor
incompatibilities
with
previous
versions
the
second
number
in
the
version
string
is
incremented
When
the
file
format
changes
the
first
number
is
increased
Stable
tested
releases
are
meant
to
appear
about
1
2
times
a
year
but
if
small
bugs
are
found
a
release
with
only
bug
fixes
will
be
released
Working
releases
are
meant
to
appear
about
every
1
8
weeks
Binary
distributions
for
some
platforms
will
be
made
by
us
for
major
releases
Other
people
may
make
binary
distributions
for
other
systems
but
probably
less
frequently
We
usually
make
patches
available
as
soon
as
we
have
located
and
fixed
small
bugs
For
non
critical
but
annoying
bugs
we
will
make
patches
available
if
they
are
sent
to
us
Otherwise
we
will
combine
many
of
them
into
a
larger
patch
If
there
is
by
any
chance
a
fatal
bug
in
a
release
we
will
make
a
new
release
as
soon
as
possible
We
would
like
other
companies
to
do
this
too
The
current
stable
release
is
3
22
We
have
already
moved
active
development
to
3
23
Bugs
will
still
be
fixed
in
the
stable
version
We
don
t
believe
in
a
complete
freeze
as
this
also
leaves
out
bug
fixes
and
things
that
must
be
done
Somewhat
frozen
means
that
we
may
add
small
things
that
almost
surely
will
not
affect
anything
that
s
already
working
268
4
5
Installation
layouts
This
section
describes
the
default
layout
of
the
directories
created
by
installing
binary
and
source
distributions
A
binary
distribution
is
installed
by
unpacking
it
at
the
installation
location
you
choose
typically
usr
local
mysql
and
creates
the
following
directories
in
that
location
Directory
Contents
of
directory
bin
Client
programs
and
the
mysqld
server
data
Log
files
databases
include
Include
header
files
lib
Libraries
scripts
mysql
install
db
share
mysql
Error
message
files
sql
bench
Benchmarks
A
source
distribution
is
installed
after
you
configure
and
compile
it
By
default
the
installation
step
installs
files
under
usr
local
in
the
following
subdirectories
Directory
Contents
of
directory
bin
Client
programs
and
scripts
include
mysql
Include
header
files
info
Documentation
in
Info
format
lib
mysql
Libraries
libexec
The
mysqld
server
share
mysql
Error
message
files
sql
bench
Benchmarks
and
crash
me
test
var
Databases
and
log
files
Within
an
installation
directory
the
layout
of
a
source
installation
differs
from
that
of
a
binary
installation
in
the
following
ways
The
mysqld
server
is
installed
in
the
libexec
directory
rather
than
in
the
bin
directory
The
data
directory
is
var
rather
than
data
mysql
install
db
is
installed
in
the
usr
local
bin
directory
rather
than
in
usr
local
mysql
scripts
The
header
file
and
library
directories
are
include
mysql
and
lib
mysql
rather
than
include
and
lib
269
4
6
Installing
a
MySQL
binary
distribution
You
need
the
following
tools
to
install
a
MySQL
binary
distribution
GNU
gunzip
to
uncompress
the
distribution
A
reasonable
tar
to
unpack
the
distribution
GNU
tar
is
known
to
work
An
alternative
installation
method
under
Linux
is
to
use
RPM
RedHat
Package
Manager
distributions
See
section
270
4
6
1
Linux
RPM
notes
If
you
run
into
problems
PLEASE
ALWAYS
USE
mysqlbug
when
posting
questions
to
271
mysql
lists
mysql
com
Even
if
the
problem
isn
t
a
bug
mysqlbug
gathers
system
information
that
will
help
others
solve
your
problem
By
not
using
mysqlbug
you
lessen
the
likelihood
of
getting
a
solution
to
your
problem
You
will
find
mysqlbug
in
the
bin
directory
after
you
unpack
the
distribution
See
section
272
2
3
How
to
report
bugs
or
problems
The
basic
commands
you
must
execute
to
install
and
use
a
MySQL
binary
distribution
are
shell
gunzip
mysql
VERSION
OS
tar
gz
tar
xvf
shell
ln
s
mysql
VERSION
OS
mysql
shell
cd
mysql
shell
scripts
mysql
install
db
shell
bin
safe
mysqld
You
can
add
new
users
using
the
bin
mysql
setpermission
script
if
you
install
the
DBI
and
Msql
Mysql
modules
Perl
modules
Here
follows
a
more
detailed
description
To
install
a
binary
distribution
follow
the
steps
below
then
proceed
to
section
273
4
15
Post
installation
setup
and
testing
for
post
installation
setup
and
testing
1
Pick
the
directory
under
which
you
want
to
unpack
the
distribution
and
move
into
it
In
the
example
below
we
unpack
the
distribution
under
usr
local
and
create
a
directory
usr
local
mysql
into
which
MySQL
is
installed
The
following
instructions
therefore
assume
you
have
permission
to
create
files
in
usr
local
If
that
directory
is
protected
you
will
need
to
perform
the
installation
as
root
2
Obtain
a
distribution
file
from
one
of
the
sites
listed
in
section
274
4
1
How
to
get
MySQL
MySQL
binary
distributions
are
provided
as
compressed
tar
archives
and
have
names
like
mysql
VERSION
OS
tar
gz
where
VERSION
is
a
number
e
g
3
21
15
and
OS
indicates
the
type
of
operating
system
for
which
the
distribution
is
intended
e
g
pc
linux
gnu
i586
3
Unpack
the
distribution
and
create
the
installation
directory
shell
gunzip
mysql
VERSION
OS
tar
gz
tar
xvf
shell
ln
s
mysql
VERSION
OS
mysql
The
first
command
creates
a
directory
named
mysql
VERSION
OS
The
second
command
makes
a
symbolic
link
to
that
directory
This
lets
you
refer
more
easily
to
the
installation
directory
as
usr
local
mysql
4
Change
into
the
installation
directory
shell
cd
mysql
You
will
find
several
files
and
subdirectories
in
the
mysql
directory
The
most
important
for
installation
purposes
are
the
bin
and
scripts
subdirectories
bin
This
directory
contains
client
programs
and
the
server
You
should
add
the
full
pathname
of
this
directory
to
your
PATH
environment
variable
so
that
your
shell
finds
the
MySQL
programs
properly
scripts
This
directory
contains
the
mysql
install
db
script
used
to
initialize
the
server
access
permissions
5
If
you
would
like
to
use
mysqlaccess
and
have
the
MySQL
distribution
in
some
nonstandard
place
you
must
change
the
location
where
mysqlaccess
expects
to
find
the
mysql
client
Edit
the
bin
mysqlaccess
script
at
approximately
line
18
Search
for
a
line
that
looks
like
this
MYSQL
usr
local
bin
mysql
path
to
mysql
executable
Change
the
path
to
reflect
the
location
where
mysql
actually
is
stored
on
your
system
If
you
do
not
do
this
you
will
get
a
broken
pipe
error
when
you
run
mysqlaccess
6
Create
the
MySQL
grant
tables
necessary
only
if
you
haven
t
installed
MySQL
before
shell
scripts
mysql
install
db
7
If
you
want
to
install
support
for
the
Perl
DBI
DBD
interface
see
section
275
4
10
Perl
installation
comments
8
If
you
would
like
MySQL
to
start
automatically
when
you
boot
your
machine
you
can
copy
support
files
mysql
server
to
the
location
where
your
system
has
its
startup
files
More
information
can
be
found
in
the
support
files
mysql
server
script
itself
and
in
section
276
4
15
3
Starting
and
stopping
MySQL
automatically
After
everything
has
been
unpacked
and
installed
you
should
initialize
and
test
your
distribution
You
can
start
the
MySQL
server
with
the
following
command
shell
bin
safe
mysqld
Note
that
MySQL
versions
before
3
22
10
started
the
MySQL
server
when
you
run
mysql
install
db
This
is
no
longer
true
See
section
277
4
15
Post
installation
setup
and
testing
278
4
6
1
Linux
RPM
notes
The
recommended
way
to
install
MySQL
on
Linux
is
by
using
an
RPM
file
The
MySQL
RPMs
are
currently
being
built
on
a
RedHat
5
2
system
but
should
work
on
other
versions
of
Linux
that
support
rpm
and
use
glibc
If
you
have
problems
with
an
RPM
file
for
example
Sorry
the
host
xxxx
could
not
be
looked
up
see
section
279
4
6
3
1
Linux
notes
The
RPM
files
you
may
want
to
use
are
MySQL
VERSION
i386
rpm
The
MySQL
server
You
will
need
this
unless
you
only
want
to
connect
to
another
MySQL
server
running
on
another
machine
MySQL
client
VERSION
i386
rpm
The
standard
MySQL
client
programs
You
probably
always
want
to
install
this
package
MySQL
bench
VERSION
i386
rpm
Tests
and
benchmarks
Requires
Perl
and
msql
mysql
modules
RPMs
MySQL
devel
VERSION
i386
rpm
Libraries
and
include
files
needed
if
you
want
to
compile
other
MySQL
clients
such
as
the
Perl
modules
MySQL
VERSION
src
rpm
This
contains
the
source
code
for
all
of
the
above
packages
It
can
also
be
used
to
try
to
build
RPMs
for
other
architectures
for
example
Alpha
or
SPARC
To
see
all
files
in
an
RPM
package
shell
rpm
qpl
MySQL
VERSION
i386
rpm
To
perform
a
standard
minimal
installation
run
this
command
shell
rpm
i
MySQL
VERSION
i386
rpm
MySQL
client
VERSION
i386
rpm
To
install
just
the
client
package
shell
rpm
i
MySQL
client
VERSION
i386
rpm
The
RPM
places
data
in
var
lib
mysql
The
RPM
also
creates
the
appropriate
entries
in
sbin
rc
d
to
start
the
server
automatically
at
boot
time
This
means
that
if
you
have
performed
a
previous
installation
you
may
want
to
make
a
copy
of
your
previously
installed
MySQL
startup
file
if
you
made
any
changes
to
it
so
you
don
t
lose
your
changes
After
installing
the
RPM
file
s
go
to
the
binary
install
section
and
use
the
instructions
there
starting
from
the
step
that
creates
the
MySQL
grant
tables
See
section
280
4
6
Installing
a
MySQL
binary
distribution
281
4
6
2
Building
client
programs
If
you
compile
MySQL
clients
that
you
ve
written
yourself
or
that
you
obtain
from
a
third
party
they
must
be
linked
using
the
lmysqlclient
option
on
the
link
command
You
may
also
need
to
specify
a
L
option
to
tell
the
linker
where
to
find
the
library
For
example
if
the
library
is
installed
in
usr
local
mysql
lib
use
L
usr
local
mysql
lib
lmysqlclient
on
the
link
command
For
clients
that
use
MySQL
header
files
you
may
need
to
specify
a
I
option
when
you
compile
them
for
example
I
usr
local
mysql
include
so
the
compiler
can
find
the
header
files
282
4
6
3
System
specific
issues
The
following
sections
indicate
some
of
the
issues
that
have
been
observed
to
occur
on
particular
systems
when
installing
MySQL
from
a
binary
distribution
283
4
6
3
1
Linux
notes
MySQL
needs
at
least
Linux
2
0
The
binary
release
is
linked
with
static
which
means
you
not
normally
need
not
worry
about
which
version
of
the
system
libraries
you
have
You
need
not
install
LinuxThreads
either
A
program
linked
with
static
is
slightly
bigger
than
a
dynamically
linked
program
but
also
slightly
faster
3
5
The
only
problem
is
that
you
can
t
use
user
definable
functions
UDFs
with
a
statically
linked
program
If
you
are
going
to
write
or
use
UDF
functions
this
is
something
only
for
C
or
C
programmers
you
must
compile
MySQL
yourself
using
dynamic
linking
If
you
are
using
a
libc
based
system
instead
of
a
glibc2
system
you
will
probably
get
some
problems
with
hostname
resolving
with
the
binary
release
This
is
because
glibc
unfortunately
depends
on
some
external
libraries
to
resolve
hostnames
even
when
compiled
with
static
In
this
case
you
probably
get
the
following
error
message
when
you
run
mysql
install
db
Sorry
the
host
xxxx
could
not
be
looked
up
You
can
solve
this
problem
one
of
the
following
ways
Get
a
MySQL
source
distribution
an
RPM
or
the
tar
distribution
and
install
this
instead
Execute
mysql
install
db
force
This
will
not
execute
the
resolveip
test
in
mysql
install
db
The
downside
is
that
you
can
t
use
host
names
in
the
grant
tables
you
must
use
IP
numbers
instead
except
for
localhost
If
you
are
using
an
old
MySQL
release
that
doesn
t
support
force
you
have
to
remove
the
resolveip
test
in
mysql
install
with
an
editor
The
Linux
Intel
binary
and
RPM
releases
of
MySQL
are
configured
for
the
highest
possible
speed
We
are
always
trying
to
use
the
fastest
stable
compiler
available
MySQL
Perl
support
requires
Perl
5
004
03
or
newer
284
4
6
3
2
HP
UX
notes
The
binary
distribution
of
MySQL
for
HP
UX
is
distributed
as
an
HP
depot
file
This
means
that
you
must
be
running
at
least
HP
UX
10
x
to
have
access
to
HP
s
software
depot
tools
The
HP
version
of
MySQL
was
compiled
on
an
HP
9000
8xx
server
under
HP
UX
10
20
and
uses
MIT
pthreads
It
is
known
to
work
well
under
this
configuration
This
version
does
not
use
HP
s
native
thread
package
It
is
highly
unlikely
that
MySQL
will
use
HP
native
threads
on
anything
but
HP
UX
10
30
or
later
Other
configurations
that
may
work
HP
9000
7xx
running
HP
UX
10
20
HP
9000
8xx
running
HP
UX
10
30
does
not
use
HP
native
threads
The
following
configurations
almost
definitely
won
t
work
HP
9000
7xx
or
8xx
running
HP
UX
10
x
where
x
2
HP
9000
7xx
or
8xx
running
HP
UX
9
x
To
install
the
distribution
use
one
of
the
commands
below
where
path
to
depot
is
the
full
pathname
of
the
depot
file
To
install
everything
including
the
server
client
and
development
tools
shell
usr
sbin
swinstall
s
path
to
depot
mysql
full
To
install
only
the
server
shell
usr
sbin
swinstall
s
path
to
depot
mysql
server
To
install
only
the
client
package
shell
usr
sbin
swinstall
s
path
to
depot
mysql
client
To
install
only
the
development
tools
shell
usr
sbin
swinstall
s
path
to
depot
mysql
developer
The
depot
places
binaries
and
libraries
in
opt
mysql
and
data
in
var
opt
mysql
The
depot
also
creates
the
appropriate
entries
in
sbin
init
d
and
sbin
rc2
d
to
start
the
server
automatically
at
boot
time
Obviously
this
entails
being
root
to
install
285
4
7
Installing
a
MySQL
source
distribution
You
need
the
following
tools
to
build
and
install
MySQL
from
source
GNU
gunzip
to
uncompress
the
distribution
A
reasonable
tar
to
unpack
the
distribution
GNU
tar
is
known
to
work
A
working
ANSI
C
compiler
gcc
2
8
1
egcs
1
0
2
SGI
C
and
SunPro
C
are
some
of
the
compilers
that
are
known
to
work
libg
is
not
needed
when
using
gcc
gcc
2
7
x
has
a
bug
that
makes
it
impossible
to
compile
some
perfectly
legal
C
files
such
as
sql
sql
base
cc
If
you
only
have
gcc
2
7
x
you
must
upgrade
your
gcc
to
be
able
to
compile
MySQL
A
good
make
program
GNU
make
is
always
recommended
and
is
sometimes
required
If
you
have
problems
we
recommend
trying
GNU
make
3
75
or
newer
If
you
run
into
problems
PLEASE
ALWAYS
USE
mysqlbug
when
posting
questions
to
286
mysql
lists
mysql
com
Even
if
the
problem
isn
t
a
bug
mysqlbug
gathers
system
information
that
will
help
others
solve
your
problem
By
not
using
mysqlbug
you
lessen
the
likelihood
of
getting
a
solution
to
your
problem
You
will
find
mysqlbug
in
the
scripts
directory
after
you
unpack
the
distribution
See
section
287
2
3
How
to
report
bugs
or
problems
288
4
7
1
Quick
installation
overview
The
basic
commands
you
must
execute
to
install
a
MySQL
source
distribution
are
from
an
unpacked
tar
file
shell
configure
shell
make
shell
make
install
shell
scripts
mysql
install
db
shell
usr
local
mysql
bin
safe
mysqld
If
you
start
from
a
source
RPM
then
do
the
following
shell
rpm
rebuild
MySQL
VERSION
src
rpm
This
will
make
a
binary
RPM
that
you
can
install
You
can
add
new
users
using
the
bin
mysql
setpermission
script
if
you
install
the
DBI
and
Msql
Mysql
modules
Perl
modules
Here
follows
a
more
detailed
description
To
install
a
source
distribution
follow
the
steps
below
then
proceed
to
section
289
4
15
Post
installation
setup
and
testing
for
post
installation
initialization
and
testing
1
Pick
the
directory
under
which
you
want
to
unpack
the
distribution
and
move
into
it
2
Obtain
a
distribution
file
from
one
of
the
sites
listed
in
section
290
4
1
How
to
get
MySQL
MySQL
source
distributions
are
provided
as
compressed
tar
archives
and
have
names
like
mysql
VERSION
tar
gz
where
VERSION
is
a
number
like
3
22
25
3
Unpack
the
distribution
into
the
current
directory
shell
gunzip
mysql
VERSION
tar
gz
tar
xvf
This
command
creates
a
directory
named
mysql
VERSION
4
Change
into
the
top
level
directory
of
the
unpacked
distribution
shell
cd
mysql
VERSION
5
Configure
the
release
and
compile
everything
shell
configure
prefix
usr
local
mysql
shell
make
When
you
run
configure
you
might
want
to
specify
some
options
Run
configure
help
for
a
list
of
options
section
291
4
7
3
Typical
configure
options
discusses
some
of
the
more
useful
options
If
configure
fails
and
you
are
going
to
send
mail
to
lines
from
config
log
that
you
think
can
help
solve
the
problem
Also
include
the
last
couple
of
lines
of
output
from
configure
if
configure
aborts
Post
the
bug
report
using
the
mysqlbug
script
See
section
292
2
3
How
to
report
bugs
or
problems
If
the
compile
fails
see
section
293
4
8
Problems
compiling
for
help
with
a
number
of
common
problems
6
Install
everything
shell
make
install
You
might
need
to
run
this
command
as
root
7
Create
the
MySQL
grant
tables
necessary
only
if
you
haven
t
installed
MySQL
before
shell
scripts
mysql
install
db
8
If
you
want
to
install
support
for
the
Perl
DBI
DBD
interface
see
section
294
4
10
Perl
installation
comments
9
If
you
would
like
MySQL
to
start
automatically
when
you
boot
your
machine
you
can
copy
support
files
mysql
server
to
the
location
where
your
system
has
its
startup
files
More
information
can
be
found
in
the
support
files
mysql
server
script
itself
and
in
section
295
4
15
3
Starting
and
stopping
MySQL
automatically
After
everything
has
been
installed
you
should
initialize
and
test
your
distribution
You
can
start
the
MySQL
server
with
the
following
command
where
BINDIR
is
the
directory
in
which
safe
mysqld
is
installed
usr
local
bin
by
default
shell
BINDIR
safe
mysqld
If
that
command
fails
immediately
with
mysqld
daemon
ended
then
you
can
find
some
information
in
the
file
mysql
data
directory
hostname
err
The
likely
reason
is
that
you
already
have
another
mysqld
server
running
See
section
296
18
3
Running
multiple
MySQL
servers
on
the
same
machine
Note
that
MySQL
versions
before
3
22
10
started
the
MySQL
server
when
you
run
mysql
install
db
This
is
no
longer
true
See
section
297
4
15
Post
installation
setup
and
testing
298
4
7
2
Applying
patches
Sometimes
patches
appear
on
the
mailing
list
or
are
placed
in
the
299
patches
area
of
the
MySQL
FTP
site
To
apply
a
patch
from
the
mailing
list
save
the
message
in
which
the
patch
appears
in
a
file
change
into
the
top
level
directory
of
your
MySQL
source
tree
and
run
these
commands
shell
patch
p1
patch
file
name
shell
rm
config
cache
shell
make
clean
Patches
from
the
FTP
site
are
distributed
as
plain
text
files
or
as
files
compressed
with
gzip
files
Apply
a
plain
patch
as
shown
above
for
mailing
list
patches
To
apply
a
compressed
patch
change
into
the
top
level
directory
of
your
MySQL
source
tree
and
run
these
commands
shell
gunzip
patch
file
name
gz
patch
p1
shell
rm
config
cache
shell
make
clean
After
applying
a
patch
follow
the
instructions
for
a
normal
source
install
beginning
with
the
configure
step
After
running
the
make
install
step
restart
your
MySQL
server
You
may
need
to
bring
down
any
currently
running
server
before
you
run
make
install
Use
mysqladmin
shutdown
to
do
this
Some
systems
do
not
allow
you
to
install
a
new
version
of
a
program
if
it
replaces
the
version
that
is
currently
executing
300
4
7
3
Typical
configure
options
The
configure
script
gives
you
a
great
deal
of
control
over
how
you
configure
your
MySQL
distribution
Typically
you
do
this
using
options
on
the
configure
command
line
You
can
also
affect
configure
using
certain
environment
variables
For
a
list
of
options
supported
by
configure
run
this
command
shell
configure
help
Some
of
the
more
commonly
used
configure
options
are
described
below
To
compile
just
the
MySQL
client
libraries
and
client
programs
and
not
the
server
use
the
without
server
option
shell
configure
without
server
If
you
don
t
have
a
C
compiler
mysql
will
not
compile
it
is
the
one
client
program
that
requires
C
In
this
case
you
can
remove
the
code
in
configure
that
tests
for
the
C
compiler
and
then
run
configure
with
the
without
server
option
The
compile
step
will
still
try
to
build
mysql
but
you
can
ignore
any
warnings
about
mysql
cc
If
make
stops
try
make
k
to
tell
it
to
continue
with
the
rest
of
the
build
even
if
errors
occur
If
you
don
t
want
your
log
files
and
database
directories
located
under
usr
local
var
use
a
configure
command
something
like
one
of
these
shell
configure
prefix
usr
local
mysql
shell
configure
prefix
usr
local
localstatedir
usr
local
mysql
data
The
first
command
changes
the
installation
prefix
so
that
everything
is
installed
under
usr
local
mysql
rather
than
the
default
of
usr
local
The
second
command
preserves
the
default
installation
prefix
but
overrides
the
default
location
for
database
directories
normally
usr
local
var
and
changes
it
to
usr
local
mysql
data
If
you
are
using
Unix
and
you
want
the
MySQL
socket
located
somewhere
other
than
the
default
location
normally
in
the
directory
tmp
or
var
run
use
a
configure
command
like
this
shell
configure
with
unix
socket
path
usr
local
mysql
tmp
mysql
sock
Note
that
the
given
file
must
be
an
absolute
pathname
If
you
want
to
compile
statically
linked
programs
e
g
to
make
a
binary
distribution
to
get
more
speed
or
to
work
around
problems
with
some
RedHat
distributions
run
configure
like
this
shell
configure
with
client
ldflags
all
static
with
mysqld
ldflags
all
static
If
you
are
using
gcc
and
don
t
have
libg
or
libstdc
installed
you
can
tell
configure
to
use
gcc
as
your
C
compiler
shell
CC
gcc
CXX
gcc
configure
When
you
use
gcc
as
your
C
compiler
it
will
not
attempt
to
link
in
libg
or
libstdc
If
the
build
fails
and
produces
errors
about
your
compiler
or
linker
not
being
able
to
create
the
shared
library
libmysqlclient
so
is
a
version
number
you
can
work
around
this
problem
by
giving
the
disable
shared
option
to
configure
In
this
case
configure
will
not
build
a
shared
libmysqlclient
so
library
You
can
configure
MySQL
not
to
use
DEFAULT
column
values
for
non
NULL
columns
i
e
columns
that
are
not
allowed
to
be
NULL
This
causes
INSERT
statements
to
generate
an
error
unless
you
explicitly
specify
values
for
all
columns
that
require
a
non
NULL
value
To
suppress
use
of
default
values
run
configure
like
this
shell
CXXFLAGS
DDONT
USE
DEFAULT
FIELDS
configure
By
default
MySQL
uses
the
ISO
8859
1
Latin1
character
set
To
change
the
default
set
use
the
with
charset
option
shell
configure
with
charset
CHARSET
CHARSET
may
be
one
of
big5
cp1251
cp1257
czech
danish
dec8
dos
euc
kr
german1
hebrew
hp8
hungarian
koi8
ru
koi8
ukr
latin1
latin2
sjis
swe7
tis620
ujis
usa7
win1251
or
win1251ukr
See
section
301
9
1
1
The
character
set
used
for
data
and
sorting
Note
that
if
you
want
to
change
the
character
set
you
must
do
a
make
distclean
between
configurations
If
you
want
to
convert
characters
between
the
server
and
the
client
you
should
take
a
look
at
the
SET
OPTION
CHARACTER
SET
command
See
section
302
7
24
SET
OPTION
syntax
Warning
If
you
change
character
sets
after
having
created
any
tables
you
will
have
to
run
isamchk
r
q
on
every
table
Your
indexes
may
be
sorted
incorrectly
otherwise
This
can
happen
if
you
install
MySQL
create
some
tables
then
reconfigure
MySQL
to
use
a
different
character
set
and
reinstall
it
To
configure
MySQL
with
debugging
code
use
the
with
debug
option
shell
configure
with
debug
This
causes
a
safe
memory
allocator
to
be
included
that
can
find
some
errors
and
that
provides
output
about
what
is
happening
See
section
303
G
1
Debugging
a
MySQL
server
Options
that
pertain
to
particular
systems
can
be
found
in
the
system
specific
sections
later
in
this
chapter
See
section
304
4
11
System
specific
issues
305
4
8
Problems
compiling
All
MySQL
programs
compile
cleanly
for
us
with
no
warnings
on
Solaris
using
gcc
On
other
systems
warnings
may
occur
due
to
differences
in
system
include
files
See
section
306
4
9
MIT
pthreads
notes
for
warnings
that
may
occur
when
using
MIT
pthreads
For
other
problems
check
the
list
below
The
solution
to
many
problems
involves
reconfiguring
If
you
do
need
to
reconfigure
take
note
of
the
following
If
configure
is
run
after
it
already
has
been
run
it
may
use
information
that
was
gathered
during
its
previous
invocation
This
information
is
stored
in
config
cache
When
configure
starts
up
it
looks
for
that
file
and
reads
its
contents
if
it
exists
on
the
assumption
that
the
information
is
still
correct
That
assumption
is
invalid
when
you
reconfigure
Each
time
you
run
configure
you
must
run
make
again
to
recompile
However
you
may
want
to
remove
old
object
files
from
previous
builds
first
since
they
were
compiled
using
different
configuration
options
To
prevent
old
configuration
information
or
object
files
from
being
used
run
these
commands
before
rerunning
configure
shell
rm
config
cache
shell
make
clean
Alternatively
you
can
run
make
distclean
The
list
below
describes
some
of
the
problems
compiling
MySQL
that
have
been
found
to
occur
most
often
If
you
get
errors
when
compiling
sql
yacc
cc
such
as
the
ones
shown
below
you
have
probably
run
out
of
memory
or
swap
space
Internal
compiler
error
program
cc1plus
got
fatal
signal
11
or
Out
of
virtual
memory
or
Virtual
memory
exhausted
The
problem
is
that
gcc
requires
huge
amounts
of
memory
to
compile
sql
yacc
cc
with
inline
functions
Try
running
configure
with
the
with
low
memory
option
shell
configure
with
low
memory
This
option
causes
fno
inline
to
be
added
to
the
compile
line
if
you
are
using
gcc
and
O0
if
you
are
using
something
else
You
should
try
the
with
low
memory
option
even
if
you
have
so
much
memory
and
swap
space
that
you
think
you
can
t
possibly
have
run
out
This
problem
has
been
observed
to
occur
even
on
systems
with
generous
hardware
configurations
and
the
with
low
memory
option
usually
fixes
it
By
default
configure
picks
c
as
the
compiler
name
and
GNU
c
links
with
lg
If
you
are
using
gcc
that
behavior
can
cause
problems
during
configuration
such
as
this
configure
error
installation
or
configuration
problem
C
compiler
cannot
create
executables
You
might
also
observe
problems
during
compilation
related
to
g
libg
or
libstdc
One
cause
of
these
problems
is
that
you
may
not
have
g
or
you
may
have
g
but
not
libg
or
libstdc
Take
a
look
at
the
config
log
file
It
should
contain
the
exact
reason
why
your
c
compiler
didn
t
work
To
work
around
these
problems
you
can
use
gcc
as
your
C
compiler
Try
setting
the
environment
variable
CXX
to
gcc
O3
For
example
shell
CXX
gcc
O3
configure
This
works
because
gcc
compiles
C
sources
as
well
as
g
does
but
does
not
link
in
libg
or
libstdc
by
default
Another
way
to
fix
these
problems
of
course
is
to
install
g
libg
and
libstdc
If
your
compile
fails
with
errors
such
as
any
of
the
following
you
must
upgrade
your
version
of
make
to
GNU
make
making
all
in
mit
pthreads
make
Fatal
error
in
reader
Makefile
line
18
Badly
formed
macro
assignment
or
make
file
Makefile
line
18
Must
be
a
separator
or
pthread
h
No
such
file
or
directory
Solaris
and
FreeBSD
are
known
to
have
troublesome
make
programs
GNU
make
version
3
75
is
known
to
work
If
you
want
to
define
flags
to
be
used
by
your
C
or
C
compilers
do
so
by
adding
the
flags
to
the
CFLAGS
and
CXXFLAGS
environment
variables
You
can
also
specify
the
compiler
names
this
way
using
CC
and
CXX
For
example
shell
CC
gcc
shell
CFLAGS
O6
shell
CXX
gcc
shell
CXXFLAGS
O6
shell
export
CC
CFLAGS
CXX
CXXFLAGS
See
section
307
4
14
TcX
binaries
for
a
list
of
flag
definitions
that
have
been
found
to
be
useful
on
various
systems
If
you
get
an
error
message
like
this
you
need
to
upgrade
your
gcc
compiler
client
libmysql
c
273
parse
error
before
attribute
gcc
2
8
1
is
known
to
work
but
we
recommend
using
egcs
1
0
3a
or
newer
instead
If
you
get
errors
such
as
those
shown
below
when
compiling
mysqld
configure
didn
t
correctly
detect
the
type
of
the
last
argument
to
accept
getsockname
or
getpeername
cxx
Error
mysqld
cc
line
645
In
this
statement
the
referenced
type
of
the
pointer
value
length
is
unsigned
long
which
is
not
compatible
with
int
new
sock
accept
sock
struct
sockaddr
cAddr
length
To
fix
this
edit
the
config
h
file
which
is
generated
by
configure
Look
for
these
lines
Define
as
the
base
type
of
the
last
arg
to
accept
define
SOCKET
SIZE
TYPE
XXX
Change
XXX
to
size
t
or
int
depending
on
your
operating
system
Note
that
you
will
have
to
do
this
each
time
you
run
configure
since
configure
regenerates
config
h
The
sql
yacc
cc
file
is
generated
from
sql
yacc
yy
Normally
the
build
process
doesn
t
need
to
create
sql
yacc
cc
because
MySQL
comes
with
an
already
generated
copy
However
if
you
do
need
to
recreate
it
you
might
encounter
this
error
sql
yacc
yy
line
xxx
fatal
default
action
causes
potential
This
is
a
sign
that
your
version
of
yacc
is
deficient
You
probably
need
to
install
bison
the
GNU
version
of
yacc
and
use
that
instead
If
you
need
to
debug
mysqld
or
a
MySQL
client
run
configure
with
the
with
debug
option
then
recompile
and
link
your
clients
with
the
new
client
library
See
section
308
G
2
Debugging
a
MySQL
client
309
4
9
MIT
pthreads
notes
This
section
describes
some
of
the
issues
involved
in
using
MIT
pthreads
Note
that
on
Linux
you
should
NOT
use
MIT
pthreads
but
install
LinuxThreads
See
section
310
4
11
5
Linux
notes
all
Linux
versions
If
your
system
does
not
provide
native
thread
support
you
will
need
to
build
MySQL
using
the
MIT
pthreads
package
This
includes
most
FreeBSD
systems
SunOS
4
x
Solaris
2
4
and
earlier
and
some
others
See
section
311
4
2
Operating
systems
supported
by
MySQL
On
most
systems
you
can
force
MIT
pthreads
to
be
used
by
running
configure
with
the
with
mit
threads
option
shell
configure
with
mit
threads
Building
in
a
non
source
directory
is
not
supported
when
using
MIT
pthreads
because
we
want
to
minimize
our
changes
to
this
code
MIT
pthreads
doesn
t
support
the
AF
UNIX
protocol
used
to
implement
Unix
sockets
This
means
that
if
you
compile
using
MIT
pthreads
all
connections
must
be
made
using
TCP
IP
which
is
a
little
slower
If
you
find
after
building
MySQL
that
you
cannot
connect
to
the
local
server
it
may
be
that
your
client
is
attempting
to
connect
to
localhost
using
a
Unix
socket
as
the
default
Try
making
a
TCP
IP
connection
with
mysql
by
using
a
host
option
h
or
host
to
specify
the
local
host
name
explicitly
The
checks
that
determine
whether
or
not
to
use
MIT
pthreads
occur
only
during
the
part
of
the
configuration
process
that
deals
with
the
server
code
If
you
have
configured
the
distribution
using
without
server
to
build
only
the
client
code
clients
will
not
know
whether
or
not
MIT
pthreads
is
being
used
and
will
use
Unix
socket
connections
by
default
Since
Unix
sockets
do
not
work
under
MIT
pthreads
this
means
you
will
need
to
use
h
or
host
when
you
run
client
programs
When
MySQL
is
compiled
using
MIT
pthreads
system
locking
is
disabled
by
default
for
performance
reasons
You
can
tell
the
server
to
use
system
locking
with
the
use
locking
option
Sometimes
the
pthread
bind
command
fails
to
bind
to
a
socket
without
any
error
message
at
least
on
Solaris
The
result
is
that
all
connections
to
the
server
fail
For
example
shell
mysqladmin
version
mysqladmin
connect
to
server
at
failed
error
Can
t
connect
to
mysql
server
on
localhost
146
The
solution
to
this
is
to
kill
the
mysqld
server
and
restart
it
This
has
only
happened
to
us
when
we
have
forced
the
server
down
and
done
a
restart
immediately
With
MIT
pthreads
the
sleep
system
call
isn
t
interruptible
with
SIGINT
break
This
is
only
noticeable
when
you
run
mysqladmin
sleep
You
must
wait
for
the
sleep
call
to
terminate
before
the
interrupt
is
served
and
the
process
stops
When
linking
you
may
receive
warning
messages
like
these
at
least
on
Solaris
they
can
be
ignored
ld
warning
symbol
iob
has
differing
sizes
file
my
local
pthreads
lib
libpthread
a
findfp
o
value
0x4
file
usr
lib
libc
so
value
0x140
my
local
pthreads
lib
libpthread
a
findfp
o
definition
taken
ld
warning
symbol
iob
has
differing
sizes
file
my
local
pthreads
lib
libpthread
a
findfp
o
value
0x4
file
usr
lib
libc
so
value
0x140
my
local
pthreads
lib
libpthread
a
findfp
o
definition
taken
Some
other
warnings
also
can
be
ignored
implicit
declaration
of
function
int
strtoll
implicit
declaration
of
function
int
strtoul
We
haven
t
gotten
readline
to
work
with
MIT
pthreads
This
isn
t
needed
but
may
be
interesting
for
someone
312
4
10
Perl
installation
comments
313
4
10
1
Installing
Perl
on
Unix
Perl
support
for
MySQL
is
provided
by
means
of
the
DBI
DBD
client
interface
See
section
314
19
5
MySQL
Perl
API
The
Perl
DBD
DBI
client
code
requires
Perl
5
004
or
later
The
interface
will
not
work
if
you
have
an
older
version
of
Perl
MySQL
Perl
support
also
requires
that
you
ve
installed
MySQL
client
programming
support
If
you
installed
MySQL
from
RPM
files
client
programs
are
in
the
client
RPM
but
client
programming
support
is
in
the
developer
RPM
Make
sure
you
ve
installed
the
latter
RPM
As
of
release
3
22
8
Perl
support
is
distributed
separately
from
the
main
MySQL
distribution
If
you
want
to
install
Perl
support
the
files
you
will
need
can
be
obtained
from
315
http
www
mysql
com
Contrib
The
Perl
distributions
are
provided
as
compressed
tar
archives
and
have
names
like
MODULE
VERSION
tar
gz
where
MODULE
is
the
module
name
and
VERSION
is
the
version
number
You
should
get
the
Data
Dumper
DBI
and
Msql
Mysql
modules
distributions
and
install
them
in
that
order
The
installation
procedure
is
shown
below
The
example
shown
is
for
the
Data
Dumper
module
but
the
procedure
is
the
same
for
all
three
distributions
1
Unpack
the
distribution
into
the
current
directory
shell
gunzip
Data
Dumper
VERSION
tar
gz
tar
xvf
This
command
creates
a
directory
named
Data
Dumper
VERSION
2
Change
into
the
top
level
directory
of
the
unpacked
distribution
shell
cd
Data
Dumper
VERSION
3
Build
the
distribution
and
compile
everything
shell
perl
Makefile
PL
shell
make
shell
make
test
shell
make
install
The
make
test
command
is
important
because
it
verifies
that
the
module
is
working
Note
that
when
you
run
that
command
during
the
Msql
Mysql
modules
installation
to
exercise
the
interface
code
the
MySQL
server
must
be
running
or
the
test
will
fail
It
is
a
good
idea
to
rebuild
and
reinstall
the
Msql
Mysql
modules
distribution
whenever
you
install
a
new
release
of
MySQL
particularly
if
you
notice
symptoms
such
as
all
your
DBI
scripts
dumping
core
after
you
upgrade
MySQL
If
you
don
t
have
the
right
to
install
Perl
modules
in
the
system
directory
or
if
you
to
install
local
Perl
modules
the
following
reference
may
help
you
316
http
www
iserver
com
support
contrib
perl5
modules
html
Look
under
the
heading
Installing
New
Modules
that
Require
Locally
Installed
Modules
317
4
10
2
Installing
ActiveState
Perl
on
Win32
To
install
the
MySQL
DBD
module
with
ActiveState
Perl
on
Win32
you
should
do
the
following
Open
a
DOS
shell
If
required
set
the
HTTP
proxy
variable
For
example
you
might
try
set
HTTP
proxy
my
proxy
com
3128
Start
the
PPM
program
C
perl
bin
ppm
pl
If
you
have
not
already
done
so
install
DBI
install
DBI
If
this
succeeds
install
DBD
mysql
http
www
mysql
com
Contrib
ppd
DBD
mysql
ppd
If
you
can
t
get
the
above
to
work
you
should
instead
install
the
MyODBC
driver
and
connect
to
MySQL
server
through
ODBC
use
DBI
dbh
DBI
connect
DBI
ODBC
dsn
user
password
die
Got
error
DBI
errstr
when
connecting
to
dsn
n
318
4
10
3
Installing
the
MySQL
Perl
distribution
on
Win32
The
MySQL
Perl
distribution
contains
DBI
DBD
MySQL
and
DBD
ODBC
Get
the
Perl
distribution
for
Win32
from
319
http
www
mysql
com
download
html
Unzip
the
distribution
in
C
so
that
you
get
a
C
PERL
directory
Add
the
directory
C
PERL
BIN
to
your
path
Add
the
directory
C
PERL
BIN
MSWin32
x86
thread
or
C
PERL
BIN
MSWin32
x86
to
your
path
Test
that
perl
works
by
executing
perl
v
in
a
DOS
shell
320
4
10
4
Problems
using
the
Perl
DBI
DBD
interface
If
Perl
reports
that
it
can
t
find
the
mysql
mysql
so
module
then
the
problem
is
probably
that
Perl
can
t
locate
the
shared
library
libmysqlclient
so
You
can
fix
this
by
any
of
the
following
methods
Compile
the
Msql
Mysql
modules
distribution
with
perl
Makefile
PL
static
rather
than
perl
Makefile
PL
Copy
libmysqlclient
so
to
the
directory
where
your
other
shared
libraries
are
located
probably
usr
lib
or
lib
On
Linux
you
can
add
the
pathname
of
the
directory
where
libmysqlclient
so
is
located
to
the
etc
ld
so
conf
file
Add
the
pathname
of
the
directory
where
libmysqlclient
so
is
located
to
the
LD
RUN
PATH
environment
variable
If
you
get
the
following
errors
from
DBD
mysql
you
are
probably
using
gcc
or
using
an
old
binary
compiled
with
gcc
usr
bin
perl
can
t
resolve
symbol
moddi3
usr
bin
perl
can
t
resolve
symbol
divdi3
Add
L
usr
lib
gcc
lib
lgcc
to
the
link
command
when
the
mysql
so
library
gets
built
check
the
output
from
make
for
mysql
so
when
you
compile
the
Perl
client
The
L
option
should
specify
the
pathname
of
the
directory
where
libgcc
a
is
located
on
your
system
Another
cause
of
this
problem
may
be
that
Perl
and
MySQL
aren
t
both
compiled
with
gcc
In
this
case
you
can
solve
the
mismatch
by
compiling
both
with
gcc
If
you
want
to
use
the
Perl
module
on
a
system
that
doesn
t
support
dynamic
linking
like
SCO
you
can
generate
a
static
version
of
Perl
that
includes
DBI
and
DBD
mysql
The
way
this
works
is
that
you
generate
a
version
of
Perl
with
the
DBI
code
linked
in
and
install
it
on
top
of
your
current
Perl
Then
you
use
that
to
build
a
version
of
Perl
that
additionally
has
the
DBD
code
linked
in
and
install
that
On
SCO
you
must
have
the
following
environment
variables
set
shell
LD
LIBRARY
PATH
lib
usr
lib
usr
local
lib
usr
progressive
lib
or
shell
LD
LIBRARY
PATH
usr
lib
lib
usr
local
lib
usr
ccs
lib
usr
progressi
ve
lib
usr
skunk
lib
shell
LIBPATH
usr
lib
lib
usr
local
lib
usr
ccs
lib
usr
progressive
lib
usr
skunk
lib
shell
MANPATH
scohelp
usr
man
usr
local1
man
usr
local
man
usr
skunk
man
First
create
a
Perl
that
includes
a
statically
linked
DBI
by
running
these
commands
in
the
directory
where
your
DBI
distribution
is
located
shell
perl
Makefile
PL
LINKTYPE
static
shell
make
shell
make
install
shell
make
perl
Then
you
must
install
the
new
Perl
The
output
of
make
perl
will
indicate
the
exact
make
command
you
will
need
to
execute
to
perform
the
installation
On
SCO
this
is
make
f
Makefile
aperl
inst
perl
MAP
TARGET
perl
Next
use
the
just
created
Perl
to
create
another
Perl
that
also
includes
a
statically
linked
DBD
mysql
by
running
these
commands
in
the
directory
where
your
Msql
Mysql
modules
distribution
is
located
shell
perl
Makefile
PL
LINKTYPE
static
shell
make
shell
make
install
shell
make
perl
Finally
you
should
install
this
new
Perl
Again
the
output
of
make
perl
indicates
the
command
to
use
321
4
11
System
specific
issues
The
following
sections
indicate
some
of
the
issues
that
have
been
observed
to
occur
on
particular
systems
when
installing
MySQL
from
a
source
distribution
322
4
11
1
Solaris
notes
On
Solaris
you
may
run
into
trouble
even
before
you
get
the
MySQL
distribution
unpacked
Solaris
tar
can
t
handle
long
file
names
so
you
may
see
an
error
like
this
when
you
unpack
MySQL
x
mysql
3
22
12
beta
bench
Results
ATIS
mysql
odbc
NT
4
0
cmp
db2
informix
ms
s
ql
mysql
oracle
solid
sybase
0
bytes
0
tape
blocks
tar
directory
checksum
error
In
this
case
you
must
use
GNU
tar
gtar
to
unpack
the
distribution
You
can
find
a
precompiled
copy
for
Solaris
at
323
http
www
mysql
com
Downloads
Sun
native
threads
work
only
on
Solaris
2
5
and
higher
For
2
4
and
earlier
versions
MySQL
will
automatically
use
MIT
pthreads
See
section
324
4
9
MIT
pthreads
notes
If
you
are
using
Solaris
on
a
SPARC
the
recommended
compiler
is
egcs
1
1
2
or
newer
You
can
find
this
at
325
http
egcs
cygnus
com
Note
that
egs
1
1
1
and
gcc
2
8
1
don
t
work
reliably
on
SPARC
The
recommended
configure
line
when
using
egcs
1
1
2
is
shell
CC
gcc
CFLAGS
O6
CXX
gcc
CXXFLAGS
O6
felide
constructors
fno
exceptions
fno
rtti
configure
prefix
usr
local
mysql
with
low
memory
If
you
have
the
Sun
Workshop
4
2
compiler
you
can
run
configure
like
this
CC
cc
CFLAGS
xstrconst
Xa
xO4
native
mt
CXX
CC
CXXFLAGS
xO4
native
noex
mt
configure
prefix
usr
local
mysql
shell
CC
cc
CFLAGS
Xa
fast
xO4
native
xstrconst
mt
CXX
CC
CXXFLAGS
noex
XO4
mt
configure
You
may
also
have
to
edit
the
configure
script
to
change
this
line
if
defined
STDC
STDC
1
to
this
if
defined
STDC
If
you
turn
on
STDC
with
the
Xc
option
the
Sun
compiler
can
t
compile
with
the
Solaris
pthread
h
header
file
This
is
a
Sun
bug
broken
compiler
or
broken
include
file
If
mysqld
issues
the
error
message
shown
below
when
you
run
it
you
have
tried
to
compile
MySQL
with
the
Sun
compiler
without
enabling
the
multi
thread
option
mt
libc
internal
error
rmutex
unlock
rmutex
not
held
Add
mt
to
CFLAGS
and
CXXFLAGS
and
try
again
If
you
get
the
following
error
when
compiling
MySQL
with
gcc
it
means
that
your
gcc
is
not
configured
for
your
version
of
Solaris
shell
gcc
O3
g
O2
DDBUG
OFF
o
thr
alarm
thr
alarm
c
In
function
signal
hand
thr
alarm
c
556
too
many
arguments
to
function
sigwait
The
proper
thing
to
do
in
this
case
is
to
get
the
newest
version
of
egcs
and
compile
it
with
your
current
gcc
compiler
At
least
for
Solaris
2
5
almost
all
binary
versions
of
gcc
have
old
unusable
include
files
that
will
break
all
programs
that
use
threads
and
possibly
other
programs
Solaris
doesn
t
provide
static
versions
of
all
system
libraries
libpthreads
and
libdl
so
you
can
t
compile
MySQL
with
static
If
you
try
to
do
so
you
will
get
the
error
ld
fatal
library
ldl
not
found
If
too
many
processes
try
to
connect
very
rapidly
to
mysqld
you
will
see
this
error
in
the
MySQL
log
Error
in
accept
Protocol
error
You
might
try
starting
the
server
with
the
set
variable
back
log
50
option
as
a
workaround
for
this
If
you
are
linking
your
own
MySQL
client
you
might
get
the
following
error
when
you
try
to
execute
it
ld
so
1
my
fatal
libmysqlclient
so
open
failed
No
such
file
or
directo
ry
The
problem
can
be
avoided
by
one
of
the
following
methods
Link
the
client
with
the
following
flag
instead
of
Lpath
Wl
r
full
path
to
libmysqlclient
so
Copy
libmysqclient
so
to
usr
lib
Add
the
pathname
of
the
directory
where
libmysqlclient
so
is
located
to
the
LD
RUN
PATH
environment
variable
before
running
your
client
326
4
11
2
Solaris
2
7
notes
You
can
normally
use
a
Solaris
2
6
binary
on
Solaris
2
7
Most
of
the
Solaris
2
6
issues
also
apply
for
Solaris
2
7
Solaris
2
7
has
some
bugs
in
the
include
files
You
may
see
the
following
error
when
you
use
gcc
usr
include
widec
h
42
warning
getwc
redefined
usr
include
wchar
h
326
warning
this
is
the
location
of
the
previous
definition
If
this
occurs
you
can
do
the
following
to
fix
the
problem
Copy
usr
include
widec
h
to
lib
gcc
lib
os
gcc
version
include
and
change
line
41
from
if
defined
lint
defined
lint
to
if
defined
lint
defined
lint
defined
getwc
Alternatively
you
can
edit
usr
include
widec
h
directly
Either
way
after
you
make
the
fix
you
should
remove
config
cache
and
run
configure
again
If
you
get
errors
like
this
when
you
run
make
it
s
because
configure
didn
t
detect
the
curses
h
file
probably
because
of
the
error
in
usr
include
widec
h
In
file
included
from
mysql
cc
50
usr
include
term
h
1060
syntax
error
before
usr
include
term
h
1081
syntax
error
before
The
solution
to
this
is
to
do
one
of
the
following
steps
Edit
usr
include
widec
h
as
indicted
above
and
rerun
configure
Remove
the
define
HAVE
TERM
line
from
config
h
file
and
run
make
again
Configure
with
CFLAGS
DHAVE
CURSES
CXXFLAGS
DCURSES
configure
327
4
11
3
Solaris
x86
notes
If
you
are
using
gcc
or
egcs
on
Solaris
x86
and
you
experience
problems
with
core
dumps
under
load
you
should
use
the
following
configure
command
shell
CC
gcc
CFLAGS
O6
fomit
frame
pointer
CXX
gcc
CXXFLAGS
O6
fomit
frame
pointer
felide
constructors
fno
exceptions
fno
rtti
configure
prefix
usr
local
mysql
This
will
avoid
problems
with
the
libstdc
library
and
with
C
exceptions
If
this
doesn
t
help
you
should
compile
a
debug
version
and
run
it
with
a
trace
file
or
under
gdb
See
section
328
G
1
Debugging
a
MySQL
server
329
4
11
4
SunOS
4
notes
On
SunOS
4
MIT
pthreads
is
needed
to
compile
MySQL
which
in
turn
means
you
will
need
GNU
make
Some
SunOS
4
systems
have
problems
with
dynamic
libraries
and
libtool
You
can
use
the
following
configure
line
to
avoid
this
problem
shell
configure
disable
shared
with
mysqld
ldflags
all
static
When
compiling
readline
you
may
get
warnings
about
duplicate
defines
These
may
be
ignored
When
compiling
mysqld
there
will
be
some
implicit
declaration
of
function
warnings
These
may
be
ignored
330
4
11
5
Linux
notes
all
Linux
versions
MySQL
uses
LinuxThreads
on
Linux
If
you
are
using
an
old
Linux
version
that
doesn
t
have
glibc2
you
must
install
LinuxThreads
before
trying
to
compile
MySQL
331
http
www
mysql
com
Downloads
Linux
If
you
can
t
start
mysqld
or
if
mysql
install
db
doesn
t
work
please
continue
reading
This
only
happens
on
Linux
system
with
problems
in
the
LinuxThreads
or
libc
glibc
libraries
There
are
a
lot
of
simple
workarounds
to
get
MySQL
to
work
The
simplest
is
to
use
the
binary
version
of
MySQL
not
the
RPM
for
Linux
x86
One
nice
aspect
of
this
version
is
that
it
s
probably
10
faster
than
any
version
you
would
compile
yourself
See
section
332
10
3
How
compiling
and
linking
affects
the
speed
of
MySQL
One
known
problem
with
the
binary
distribution
is
that
with
older
Linux
systems
that
use
libc
like
RedHat
4
x
or
Slackware
you
will
get
some
non
fatal
problems
with
hostname
resolution
See
section
333
4
6
3
1
Linux
notes
isamchk
hangs
with
libc
so
5
3
12
Upgrading
to
the
newest
libc
fixes
this
problem
When
using
LinuxThreads
you
will
see
a
minimum
of
three
processes
running
These
are
in
fact
threads
There
will
be
one
thread
for
the
LinuxThreads
manager
one
thread
to
handle
connections
and
one
thread
to
handle
alarms
and
signals
If
you
see
a
dead
mysqld
daemon
process
with
ps
this
usually
means
that
you
have
found
a
bug
in
MySQL
or
you
have
got
a
corrupted
table
See
section
334
17
1
What
to
do
if
MySQL
keeps
crashing
If
you
are
using
LinuxThreads
and
mysqladmin
shutdown
doesn
t
work
you
must
upgrade
to
LinuxThreads
0
7
1
or
newer
If
you
are
using
RedHat
you
might
get
errors
like
this
usr
bin
perl
is
needed
usr
sh
is
needed
usr
sh
is
needed
If
so
you
should
upgrade
your
version
of
rpm
to
rpm
2
4
11
1
i386
rpm
and
rpm
devel
2
4
11
1
i386
rpm
or
later
You
can
get
the
upgrades
of
libraries
to
RedHat
4
2
from
335
ftp
ftp
redhat
com
updates
4
2
i386
Or
336
http
www
sunsite
unc
edu
pub
Linux
distributions
redhat
code
rp
m
for
other
distributions
If
you
are
linking
your
own
MySQL
client
and
get
the
error
ld
so
1
my
fatal
libmysqlclient
so
4
open
failed
No
such
file
or
directo
ry
when
executing
them
the
problem
can
be
avoided
by
one
of
the
following
methods
Link
the
client
with
the
following
flag
instead
of
Lpath
Wl
r
path
libmysqlclient
so
Copy
libmysqclient
so
to
usr
lib
Add
the
pathname
of
the
directory
where
libmysqlclient
so
is
located
to
the
LD
RUN
PATH
environment
variable
before
running
your
client
If
you
are
using
the
Fujitsu
compiler
fcc
FCC
you
will
have
some
problems
compiling
MySQL
because
the
Linux
header
files
are
very
gcc
oriented
The
following
configure
line
should
work
with
fcc
FCC
CC
fcc
CFLAGS
O
K
fast
K
lib
K
omitfp
Kpreex
D
GNU
SOURCE
DCONST
const
DNO
STRTOLL
PROTO
CXX
FCC
CXXFLAGS
O
K
fast
K
lib
K
omitfp
K
preex
n
o
exceptions
no
rtti
D
GNU
SOURCE
DCONST
const
Dalloca
builtin
alloca
D
NO
STRTOLL
PROTO
D
EXTERN
INLINE
static
inline
configure
prefix
usr
local
mysql
enable
assembler
with
mysqld
ldflags
all
static
disable
shar
ed
with
low
memory
337
4
11
5
1
Linux
x86
notes
MySQL
requires
libc
version
5
4
12
or
newer
It
s
known
to
work
with
libc
5
4
46
glibc
version
2
0
6
and
later
should
also
work
There
have
been
some
problems
with
the
glibc
RPMs
from
RedHat
so
if
you
have
problems
check
whether
or
not
there
are
any
updates
The
glibc
2
0
7
19
and
2
0
7
29
RPMs
are
known
to
work
On
some
older
Linux
distributions
configure
may
produce
an
error
like
this
Syntax
error
in
sched
h
Change
P
to
P
in
the
usr
include
sched
h
file
See
the
Installation
chapter
in
the
Reference
Manual
Just
do
what
the
error
message
says
and
add
an
extra
underscore
to
the
P
macro
that
has
only
one
underscore
then
try
again
You
may
get
some
warnings
when
compiling
those
shown
below
can
be
ignored
mysqld
cc
o
objs
thread
mysqld
o
mysqld
cc
In
function
void
init
signals
mysqld
cc
315
warning
assignment
of
negative
value
1
to
long
unsigned
int
mysqld
cc
In
function
void
signal
hand
void
mysqld
cc
346
warning
assignment
of
negative
value
1
to
long
unsigned
int
In
Debian
GNU
Linux
if
you
want
MySQL
to
start
automatically
when
the
system
boots
do
the
following
shell
cp
support
files
mysql
server
etc
init
d
mysql
server
shell
usr
sbin
update
rc
d
mysql
server
defaults
99
mysql
server
can
be
found
in
the
share
mysql
directory
under
the
MySQL
installation
directory
or
in
the
support
files
directory
of
the
MySQL
source
tree
If
mysqld
always
core
dumps
when
it
starts
up
the
problem
may
be
that
you
have
an
old
lib
libc
a
Try
renaming
it
then
remove
sql
mysqld
and
do
a
new
make
install
and
try
again
This
problem
has
been
reported
on
some
Slackware
installations
RedHat
5
0
has
also
a
similar
problem
with
some
new
glibc
versions
See
section
338
4
11
5
2
RedHat
5
0
notes
If
you
get
the
following
error
when
linking
mysqld
it
means
that
your
libg
a
is
not
installed
correctly
usr
lib
libc
a
putc
o
In
function
IO
putc
putc
o
text
0x0
multiple
definition
of
IO
putc
You
can
avoid
using
libg
a
by
running
configure
like
this
shell
CXX
gcc
configure
339
4
11
5
2
RedHat
5
0
notes
If
you
have
any
problems
with
MySQL
on
RedHat
you
should
start
by
upgrading
glibc
to
the
newest
possible
version
If
you
install
all
the
official
RedHat
patches
including
glibc
2
0
7
19
and
glibc
devel
2
0
7
19
both
the
binary
and
source
distributions
of
MySQL
should
work
without
any
trouble
The
updates
are
needed
since
there
is
a
bug
in
glibc
2
0
5
in
how
pthread
key
create
variables
are
freed
With
glibc
2
0
5
you
must
use
a
statically
linked
MySQL
binary
distribution
If
you
want
to
compile
from
source
you
must
install
the
corrected
version
of
LinuxThreads
from
340
http
www
mysql
com
Downloads
Linux
or
upgrade
your
glibc
If
you
have
an
incorrect
version
of
glibc
or
LinuxThreads
the
symptom
is
that
mysqld
crashes
after
each
connection
For
example
mysqladmin
version
will
crash
mysqld
when
it
finishes
Another
symptom
of
incorrect
libraries
is
that
mysqld
crashes
at
once
when
it
starts
On
some
Linux
systems
this
can
be
fixed
by
configuring
like
this
shell
configure
with
mysqld
ldflags
all
static
On
Redhat
5
0
the
easy
way
out
is
to
install
the
glibc
2
0
7
19
RPM
and
run
configure
without
the
with
mysqld
ldflags
all
static
option
For
the
source
distribution
of
glibc
2
0
7
a
patch
that
is
easy
to
apply
and
is
tested
with
MySQL
may
be
found
at
341
http
www
mysql
com
Download
Linux
glibc
2
0
7
total
patch
tar
gz
If
you
experience
crashes
like
these
when
you
build
MySQL
you
can
always
download
the
newest
binary
version
of
MySQL
This
is
statically
linked
to
avoid
library
conflicts
and
should
work
on
all
Linux
systems
MySQL
comes
with
an
internal
debugger
that
can
generate
trace
files
with
a
lot
of
information
that
can
be
used
to
find
and
solve
a
wide
range
of
different
problems
See
section
342
G
1
Debugging
a
MySQL
server
343
4
11
5
3
RedHat
5
1
notes
The
glibc
of
RedHat
5
1
glibc
2
0
7
13
has
a
memory
leak
so
to
get
a
stable
MySQL
version
you
must
upgrade
glibc
to
2
0
7
19
downgrade
glibc
or
use
a
binary
version
of
mysqld
If
you
don
t
do
this
you
will
encounter
memory
problems
out
of
memory
etc
etc
The
most
common
error
in
this
case
is
Can
t
create
a
new
thread
errno
11
If
you
are
not
out
of
available
memory
you
can
consult
the
manual
for
any
possible
OS
dependent
bug
After
you
have
upgraded
to
glibc
2
0
7
19
you
can
configure
MySQL
with
dynamic
linking
the
default
but
you
cannot
run
configure
with
the
with
mysqld
ldflags
all
static
option
until
you
have
installed
glibc
2
0
7
19
from
source
You
can
check
which
version
of
glibc
you
have
with
rpm
q
glibc
344
4
11
5
4
Linux
SPARC
notes
In
some
implementations
readdir
r
is
broken
The
symptom
is
that
SHOW
DATABASES
always
returns
an
empty
set
This
can
be
fixed
by
removing
HAVE
READDIR
R
from
config
h
after
configuring
and
before
compiling
Some
problems
will
require
patching
your
Linux
installation
The
patch
can
be
found
at
345
http
www
mysql
com
patches
Linux
sparc
2
0
30
diff
This
patch
is
against
the
Linux
distribution
sparclinux
2
0
30
tar
gz
that
is
available
at
vger
rutgers
edu
a
version
of
Linux
that
was
never
merged
with
the
official
2
0
30
You
must
also
install
LinuxThreads
0
6
or
newer
Thanks
to
346
jacques
solucorp
qc
ca
for
this
information
347
4
11
5
5
Linux
Alpha
notes
The
big
problem
on
Linux
Alpha
is
that
there
are
still
some
problems
with
threads
in
glibc
on
this
platform
You
should
start
by
getting
the
newest
glibc
version
you
can
find
Note
that
before
you
run
any
programs
that
use
threads
like
mysqld
thr
alarm
or
thr
lock
you
should
raise
the
shared
memory
limit
with
ulimit
The
MySQL
benchmarks
are
known
to
fail
if
you
forget
to
do
this
Configure
MySQL
with
the
following
command
shell
CC
gcc
CCFLAGS
Dalpha
linux
port
CXX
gcc
CXXFLAGS
O3
Dalpha
linux
port
felide
constructors
fno
excep
tions
fno
rtti
configure
prefix
usr
local
mysql
Try
to
compile
mysys
thr
lock
and
mysys
thr
alarm
Test
that
these
programs
work
Invoke
each
one
with
no
arguments
Each
should
end
with
test
succeeded
if
everything
was
okay
After
installing
MySQL
uncomment
the
ulimit
command
in
safe
mysqld
and
add
options
to
increase
shared
memory
Note
that
Linux
Alpha
is
still
an
alpha
quality
platform
for
MySQL
With
the
newest
glibc
you
have
a
very
good
chance
of
it
working
If
you
have
problems
with
signals
MySQL
dies
unexpectedly
under
high
load
you
may
have
found
an
OS
bug
with
threads
and
signals
In
this
case
you
can
tell
MySQL
not
to
use
signals
by
configuring
with
shell
CFLAGS
DDONT
USE
THR
ALARM
CXXFLAGS
DDONT
USE
THR
ALARM
configure
This
doesn
t
affect
the
performance
of
MySQL
but
has
the
side
effect
that
you
can
t
kill
clients
that
are
sleeping
on
a
connection
with
mysqladmin
kill
or
mysqladmin
shutdown
Instead
the
client
will
die
when
it
issues
its
next
command
348
4
11
5
6
MkLinux
notes
MySQL
should
work
on
MkLinux
with
the
newest
glibc
package
tested
with
glibc
2
0
7
349
4
11
6
Alpha
DEC
Unix
notes
When
compiling
threaded
programs
under
Digital
UNIX
the
documentation
recommends
using
the
pthread
option
for
cc
and
cxx
and
the
libraries
lmach
lexc
in
addition
to
lpthread
You
should
run
configure
something
like
this
shell
CC
cc
pthread
CXX
cxx
pthread
O
configure
with
named
thread
libs
lpthread
lmach
lexc
lc
When
compiling
mysqld
you
may
see
a
couple
of
warnings
like
this
mysqld
cc
In
function
void
handle
connections
mysqld
cc
626
passing
long
unsigned
int
as
argument
3
of
accept
int
sockadddr
int
You
can
safely
ignore
these
warnings
They
occur
because
configure
can
detect
only
errors
not
warnings
If
you
start
the
server
directly
from
the
command
line
you
may
have
problems
with
it
dying
when
you
log
out
When
you
log
out
your
outstanding
processes
receive
a
SIGHUP
signal
If
so
try
starting
the
server
like
this
shell
nohup
mysqld
options
nohup
causes
the
command
following
it
to
ignore
any
SIGHUP
signal
sent
from
the
terminal
Alternatively
start
the
server
by
running
safe
mysqld
which
invokes
mysqld
using
nohup
for
you
350
4
11
7
Alpha
DEC
OSF1
notes
If
you
have
problems
compiling
and
have
DEC
CC
and
gcc
installed
try
running
configure
like
this
shell
CC
cc
CFLAGS
O
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
If
you
get
problems
with
the
c
asm
h
file
you
can
create
and
use
a
dummy
c
asm
h
file
with
shell
touch
include
c
asm
h
shell
CC
gcc
CFLAGS
I
include
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
On
OSF1
V4
0D
and
compiler
DEC
C
V5
6
071
on
Digital
UNIX
V4
0
Rev
878
the
compiler
had
some
strange
behavior
undefined
asm
symbols
bin
ld
also
appears
to
be
broken
problems
with
exit
undefined
errors
occuring
while
linking
mysqld
On
this
system
we
have
managed
to
compile
MySQL
with
the
following
configure
line
after
replacing
bin
ld
with
the
version
from
OSF
4
0C
shell
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
In
some
versions
of
OSF1
the
alloca
function
is
broken
Fix
this
by
removing
the
line
in
config
h
that
defines
HAVE
ALLOCA
The
alloca
function
also
may
have
an
incorrect
prototype
in
usr
include
alloca
h
This
warning
resulting
from
this
can
be
ignored
configure
will
use
the
following
thread
libraries
automatically
with
named
thread
libs
lpthread
lmach
lexc
lc
When
using
gcc
you
can
also
try
running
configure
like
this
shell
CFLAGS
D
PTHREAD
USE
D4
CXX
gcc
CXXFLAGS
O3
configure
If
you
have
problems
with
signals
MySQL
dies
unexpectedly
under
high
load
you
may
have
found
an
OS
bug
with
threads
and
signals
In
this
case
you
can
tell
MySQL
not
to
use
signals
by
configuring
with
shell
CFLAGS
DDONT
USE
THR
ALARM
CXXFLAGS
DDONT
USE
THR
ALARM
configure
This
doesn
t
affect
the
performance
of
MySQL
but
has
the
side
effect
that
you
can
t
kill
clients
that
are
sleeping
on
a
connection
with
mysqladmin
kill
or
mysqladmin
shutdown
Instead
the
client
will
die
when
it
issues
its
next
command
351
4
11
8
SGI
Irix
notes
You
may
have
to
undefine
some
things
in
config
h
after
running
configure
and
before
compiling
In
some
Irix
implementations
the
alloca
function
is
broken
If
the
mysqld
server
dies
on
some
SELECT
statements
remove
the
lines
from
config
h
that
define
HAVE
ALLOC
and
HAVE
ALLOCA
H
If
mysqladmin
create
doesn
t
work
remove
the
line
from
config
h
that
defines
HAVE
READDIR
R
You
may
have
to
remove
the
HAVE
TERM
H
line
as
well
SGI
recommends
that
you
install
all
of
the
patches
on
this
page
as
a
set
http
support
sgi
com
surfzone
patches
patchset
6
2
indigo
rps
html
At
the
very
minimum
you
should
install
the
latest
kernel
rollup
the
latest
rld
rollup
and
the
latest
libc
rollup
You
definately
need
all
the
POSIX
patches
on
this
page
for
pthreads
support
http
support
sgi
com
surfzone
patches
patchset
6
2
posix
rps
html
If
you
get
the
something
like
the
following
error
when
compiling
mysql
cc
usr
include
curses
h
line
82
error
1084
invalid
combination
of
type
Then
type
the
following
in
the
top
level
directory
of
your
MySQL
source
tree
shell
extra
replace
bool
curses
bool
usr
include
curses
h
include
curses
h
shell
make
There
have
also
been
reports
of
scheduling
problems
If
only
one
thread
is
running
things
go
slow
Avoid
this
by
starting
another
client
This
may
lead
to
a
2
to
10
fold
increase
in
execution
speed
thereafter
for
the
other
thread
This
is
a
poorly
understood
problem
with
Irix
threads
you
may
have
to
improvise
to
find
solutions
until
this
can
be
fixed
If
you
are
compiling
with
gcc
you
can
use
the
following
configure
command
shell
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
with
thread
safe
client
with
n
amed
thread
libs
lpthread
352
4
11
9
FreeBSD
notes
If
you
notice
that
configure
will
use
MIT
pthreads
you
should
read
the
MIT
pthreads
notes
See
section
353
4
9
MIT
pthreads
notes
If
you
get
an
error
from
make
install
that
it
can
t
find
usr
include
pthreads
configure
didn
t
detect
that
you
need
MIT
pthreads
This
is
fixed
by
executing
these
commands
shell
rm
config
cache
shell
configure
with
mit
threads
The
behavior
of
FreeBSD
make
is
slightly
different
from
that
of
GNU
make
If
you
have
make
related
problems
you
should
install
GNU
make
If
mysql
or
mysqladmin
takes
a
long
time
to
respond
a
user
said
the
following
Are
you
running
the
ppp
user
process
On
one
FreeBSD
box
2
2
5
MySQL
clients
takes
a
couple
of
seconds
to
connect
to
mysqld
if
the
ppp
process
is
running
FreeBSD
is
also
known
to
have
a
very
low
default
file
handle
limit
See
section
354
17
10
File
not
found
If
you
have
a
problem
with
SELECT
NOW
returning
values
in
GMT
and
not
your
local
time
you
have
to
set
the
TZ
environment
variable
to
your
current
timezone
This
should
be
done
for
the
environment
in
which
the
server
runs
for
example
in
safe
mysqld
or
mysql
server
Make
sure
that
the
localhost
entry
in
the
etc
hosts
file
is
correct
otherwise
you
will
have
problems
connecting
to
the
database
The
etc
hosts
file
should
start
with
a
line
127
0
0
1
localhost
localhost
your
domain
If
you
are
using
FreeBSD
2
2
6
don
t
forget
to
apply
the
ttcp
and
mmap
22
patches
to
the
OS
for
security
reasons
Please
see
355
http
www
freebsd
org
for
these
CERT
patches
If
you
are
using
FreeBSD
2
2
7
and
you
have
problems
killing
the
mysqld
daemon
you
should
get
new
sources
using
cvsup
and
recompile
libc
r
356
4
11
9
1
FreeBSD
3
0
notes
You
have
to
run
configure
with
the
with
named
thread
libs
lc
r
option
The
pthreads
library
for
FreeBSD
doesn
t
contain
the
sigwait
function
and
there
are
some
bugs
in
it
To
fix
this
get
the
FreeBSD
3
0
libc
r
1
0
diff
file
from
the
357
FreeBSD
area
of
the
MySQL
FTP
site
and
apply
it
in
the
usr
src
lib
libc
r
uthread
directory
Then
follow
the
instructions
that
can
be
found
with
man
pthread
about
how
to
recompile
the
libc
r
library
You
can
test
if
you
have
a
modern
libpthread
a
with
this
command
shell
nm
usr
lib
libc
r
a
grep
sigwait
If
the
above
doesn
t
find
sigwait
you
must
use
the
patch
above
and
recompile
libc
r
358
4
11
10
BSD
OS
notes
359
4
11
10
1
BSD
OS
2
x
notes
If
you
get
the
following
error
when
compiling
MySQL
your
ulimit
value
for
virtual
memory
is
too
low
item
func
h
In
method
Item
func
ge
Item
func
ge
const
Item
func
ge
item
func
h
28
virtual
memory
exhausted
make
2
item
func
o
Error
1
Try
using
ulimit
v
80000
and
run
make
again
If
this
doesn
t
work
and
you
are
using
bash
try
switching
to
csh
or
sh
some
BSDI
users
have
reported
problems
with
bash
and
ulimit
If
you
are
using
gcc
you
may
also
use
have
to
use
the
with
low
memory
flag
for
configure
to
be
able
to
compile
sql
yacc
cc
If
you
have
a
problem
with
SELECT
NOW
returning
values
in
GMT
and
not
your
local
time
you
have
to
set
the
TZ
environment
variable
to
your
current
timezone
This
should
be
done
for
the
environment
in
which
the
server
runs
for
example
in
safe
mysqld
or
mysql
server
360
4
11
10
2
BSD
OS
3
x
notes
Upgrade
to
BSD
OS
3
1
If
that
is
not
possible
install
BSDIpatch
M300
038
Use
the
following
command
when
configuring
MySQL
shell
env
CXX
shlicc
CC
shlicc2
configure
prefix
usr
local
mysql
localstatedir
var
mysql
without
perl
with
unix
socket
path
var
mysql
mysql
sock
The
following
is
also
known
to
work
shell
env
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
with
unix
socket
path
var
mysql
mysql
sock
You
can
change
the
directory
locations
if
you
wish
or
just
use
the
defaults
by
not
specifying
any
locations
If
you
have
problems
with
performance
under
heavy
load
try
using
the
skip
thread
priority
option
to
safe
mysqld
This
will
run
all
threads
with
the
same
priority
on
BSDI
3
1
this
gives
better
performance
at
least
until
BSDI
fixes
their
thread
scheduler
If
you
get
the
error
virtual
memory
exhausted
while
compiling
you
should
try
using
ulimit
v
80000
and
run
make
again
If
this
doesn
t
work
and
you
are
using
bash
try
switching
to
csh
or
sh
some
BSDI
users
have
reported
problems
with
bash
and
ulimit
361
4
11
10
3
BSD
OS
4
x
notes
BSDI
4
x
has
some
thread
related
bugs
If
you
want
to
use
MySQL
on
this
you
should
install
all
thread
related
patches
At
least
M400
023
should
be
installed
362
4
11
11
SCO
notes
The
current
port
is
tested
only
on
a
sco3
2v5
0
4
and
sco3
2v5
0
5
system
There
has
also
been
a
lot
of
progress
on
a
port
to
sco
3
2v4
2
1
For
OpenServer
5
0
X
you
need
to
use
GDS
in
Skunkware
95
95q4c
This
is
necessary
because
GNU
gcc
2
7
2
in
Skunkware
97
does
not
have
GNU
as
You
can
also
use
egcs
1
1
2
or
newer
363
http
www
egcs
com
If
you
are
using
egcs
1
1
2
you
have
to
execute
the
following
command
shell
cp
p
usr
include
pthread
stdtypes
h
usr
local
lib
gcc
lib
i386
pc
sco
3
2v5
0
5
egcs
2
91
66
include
pthread
2
You
need
the
port
of
GCC
2
5
for
this
product
and
the
Development
system
They
are
required
on
this
version
of
SCO
UNIX
You
cannot
just
use
the
GCC
Dev
system
3
You
should
get
the
FSU
Pthreads
package
and
install
it
first
This
can
be
found
at
364
http
www
cs
wustl
edu
schmidt
ACE
wrappers
FSU
threads
tar
gz
You
can
also
get
a
precompiled
package
from
365
ftp
www
mysql
com
pub
mysql
Downloads
SCO
FSU
threads
3
5c
tar
gz
4
FSU
Pthreads
can
be
compiled
with
SCO
UNIX
4
2
with
tcpip
Or
OpenServer
3
0
or
Open
Desktop
3
0
OS
3
0
ODT
3
0
with
the
SCO
Development
System
installed
using
a
good
port
of
GCC
2
5
X
ODT
or
OS
3
0
you
will
need
a
good
port
of
GCC
2
5
There
are
a
lot
of
problems
without
a
good
port
The
port
for
this
product
requires
the
SCO
UNIX
Development
system
Without
it
you
are
missing
the
libraries
and
the
linker
that
is
needed
5
To
build
FSU
Pthreads
on
your
system
do
the
following
1
Run
configure
in
the
threads
src
directory
and
select
the
SCO
OpenServer
option
This
command
copies
Makefile
SCO5
to
Makefile
2
Run
make
3
To
install
in
the
default
usr
include
directory
login
as
root
then
cd
to
the
thread
src
directory
and
run
make
install
6
Remember
to
use
GNU
make
when
making
MySQL
7
On
OSR
5
0
5
you
should
use
the
following
configure
line
shell
CC
gcc
DSCO
CXX
gcc
DSCO
configure
The
DSCO
is
needed
to
help
configure
detect
some
thread
functions
properly
If
you
forget
DSCO
you
will
get
the
following
error
message
while
compiling
my
pthread
c
In
function
my
pthread
mutex
init
my
pthread
c
374
pthread
mutexattr
default
undeclared
first
use
this
functi
on
8
If
you
don
t
start
safe
mysqld
as
root
you
probably
will
get
only
the
default
110
open
files
per
process
mysqld
will
write
a
note
about
this
in
the
log
file
9
With
SCO
3
2V5
0
5
you
should
use
a
FSU
Pthreads
version
3
5c
or
newer
The
following
configure
command
should
work
shell
CC
gcc
belf
configure
prefix
usr
local
mysql
disable
shared
10
With
SCO
3
2V4
2
you
should
use
a
FSU
Pthreads
version
3
5c
or
newer
The
following
configure
command
should
work
shell
CFLAGS
D
XOPEN
XPG4
CXX
gcc
CXXFLAGS
D
XOPEN
XPG4
configure
with
debug
prefix
usr
local
mysql
with
named
thread
libs
lgthreads
lsocket
lgen
lgthreads
with
named
curses
libs
lcurses
You
may
get
some
problems
with
some
include
files
In
this
case
you
can
find
new
SCO
specific
include
files
at
366
ftp
www
mysql
com
pub
mysql
Downloads
SCO
SCO
3
2v4
2
inclu
des
tar
gz
You
should
unpack
this
file
in
the
include
directory
of
your
MySQL
source
tree
SCO
development
notes
MySQL
should
automatically
detect
FSU
Pthreads
and
link
mysqld
with
lgthreads
lsocket
lgthreads
The
SCO
development
libraries
are
reentrant
in
FSU
Pthreads
SCO
claims
that
its
libraries
functions
are
reentrant
so
they
must
be
reentrant
with
FSU
Pthreads
FSU
Pthreads
on
OpenServer
tries
to
use
the
SCO
scheme
to
make
reentrant
library
FSU
Pthreads
at
least
the
version
at
www
mysql
com
comes
linked
with
GNU
malloc
If
you
encounter
problems
with
memory
usage
make
sure
that
gmalloc
o
is
included
in
libgthreads
a
and
libgthreads
so
In
FSU
Pthreads
the
following
system
calls
are
pthreads
aware
read
write
getmsg
connect
accept
select
and
wait
If
you
want
to
install
DBI
on
SCO
you
have
to
edit
the
Makefiles
in
DBI
xxx
and
each
subdirectory
OLD
NEW
CC
cc
CC
gcc
belf
CCCDLFLAGS
KPIC
W1
Bexport
CCCDLFLAGS
fpic
CCDLFLAGS
wl
Bexport
CCDLFLAGS
LD
ld
LD
gcc
belf
G
fpic
LDDLFLAGS
G
L
usr
local
lib
LDDLFLAGS
L
usr
local
lib
LDFLAGS
belf
L
usr
local
lib
LDFLAGS
L
usr
local
lib
LD
ld
LD
gcc
belf
G
fpic
OPTIMISE
Od
OPTIMISE
O1
OLD
CCCFLAGS
belf
dy
w0
U
M
XENIX
DPERL
SCO5
I
usr
local
include
NEW
CCFLAGS
U
M
XENIX
DPERL
SCO5
I
usr
local
include
This
is
because
the
Perl
dynaloader
will
not
load
the
DBI
modules
if
they
were
compiled
with
icc
or
cc
Perl
works
best
when
compiled
with
cc
367
4
11
12
SCO
Unixware
7
0
notes
You
must
use
a
version
of
MySQL
at
least
as
recent
as
3
22
13
since
that
version
fixes
some
portability
problems
under
Unixware
We
have
been
able
to
compile
MySQL
with
the
following
configure
command
on
UnixWare
7
0
1
shell
CC
cc
CXX
CC
configure
prefix
usr
local
mysql
368
4
11
13
IBM
AIX
notes
Automatic
detection
of
xlC
is
missing
from
Autoconf
so
a
configure
command
something
like
this
is
needed
when
using
the
IBM
compiler
shell
CC
xlc
r
ma
O3
qstrict
CXX
xlC
r
ma
O3
qstrict
configure
If
you
are
using
egcs
to
compile
MySQL
you
MUST
use
the
fno
exceptions
flag
as
the
exception
handling
in
egcs
is
not
thread
safe
This
is
tested
with
egcs
1
1
We
recommend
the
following
configure
line
with
egcs
and
gcc
on
AIX
shell
CXX
gcc
CXXFLAGS
felide
constructors
fno
exceptions
fno
rtti
configure
prefix
home
monty
with
debug
with
low
memory
If
you
have
problems
with
signals
MySQL
dies
unexpectedly
under
high
load
you
may
have
found
an
OS
bug
with
threads
and
signals
In
this
case
you
can
tell
MySQL
not
to
use
signals
by
configuring
with
shell
CFLAGS
DDONT
USE
THR
ALARM
CXX
gcc
CXXFLAGS
felide
constructors
fno
exceptions
fno
rtti
DDONT
USE
THR
ALARM
configure
prefix
home
monty
with
debug
with
low
memory
This
doesn
t
affect
the
performance
of
MySQL
but
has
the
side
effect
that
you
can
t
kill
clients
that
are
sleeping
on
a
connection
with
mysqladmin
kill
or
mysqladmin
shutdown
Instead
the
client
will
die
when
it
issues
its
next
command
369
4
11
14
HP
UX
notes
There
are
a
couple
of
small
problems
when
compiling
MySQL
on
HP
UX
We
recommend
that
you
use
gcc
instead
of
the
HP
UX
native
compiler
because
gcc
produces
better
code
gcc
2
8
0
can
t
compile
readline
on
HP
UX
an
internal
compiler
error
occurs
if
you
are
compiling
with
O6
On
the
other
hand
MIT
pthreads
can
t
be
compiled
with
the
HP
UX
compiler
because
it
can
t
compile
S
assembler
files
We
got
MySQL
to
compile
on
HP
UX
10
20
by
doing
the
following
shell
CC
gcc
CXX
gcc
configure
prefix
usr
local
mysql
with
low
memory
shell
cd
readline
shell
edit
Makefile
and
change
O6
to
something
lower
shell
cd
shell
make
shell
make
install
shell
scripts
mysql
install
db
shell
usr
local
mysql
bin
safe
mysqld
370
4
12
Win32
notes
This
section
describes
installation
and
use
of
MySQL
on
Win32
This
is
also
described
in
the
README
file
that
comes
with
the
MySQL
Win32
distribution
371
4
12
1
Installing
MySQL
on
Win32
If
you
don
t
have
a
registered
version
of
MySQL
you
should
first
download
the
shareware
version
from
372
MySQL
3
21
29
If
you
plan
to
connect
to
MySQL
from
some
other
program
you
will
probably
also
need
the
MyODBC
driver
You
can
find
this
at
373
MySQL
download
page
To
install
either
distribution
unzip
it
in
some
empty
directory
and
run
the
Setup
exe
program
Installation
takes
place
in
C
mysql
374
4
12
2
Starting
MySQL
on
Win95
Win98
MySQL
uses
TCP
IP
to
connect
a
client
to
a
server
This
will
allow
any
machine
on
your
network
to
connect
to
your
MySQL
server
Because
of
this
you
must
install
TCP
IP
on
your
machine
before
starting
MySQL
You
can
find
TCP
IP
on
your
Windows
CD
ROM
Note
that
if
you
are
using
an
old
Win95
release
for
example
OSR2
it
s
likely
that
you
have
an
old
Winsock
package
MySQL
requires
Winsock
2
You
can
get
the
newest
Winsock
from
375
Microsoft
Win98
has
as
default
the
new
Winsock
2
library
so
the
above
doesn
t
apply
for
Win98
There
are
2
different
MySQL
servers
you
can
use
mysqld
Compiled
with
full
debugging
and
automatic
memory
allocation
checking
mysqld
opt
Optimized
for
a
Pentium
processor
Both
of
the
above
should
work
on
any
Intel
processor
i386
To
start
the
mysqld
server
you
should
start
a
MS
DOS
window
and
type
C
mysql
bin
mysqld
This
will
start
mysqld
in
the
background
without
a
window
You
can
kill
the
MySQL
server
by
executing
C
mysql
bin
mysqladmin
u
root
shutdown
Note
that
Win95
Win98
don
t
support
creation
of
named
pipes
On
Win95
Win98
you
can
only
use
named
pipes
to
connect
to
a
remote
MySQL
running
on
an
NT
server
376
4
12
3
Starting
MySQL
on
NT
The
Win95
Win98
section
also
applies
to
MySQL
on
NT
with
the
following
differences
To
get
MySQL
to
work
with
TCP
IP
you
must
install
service
pack
3
or
newer
For
NT
the
server
name
is
mysqld
nt
Normally
you
should
install
MySQL
as
a
service
on
NT
C
mysql
bin
mysqld
nt
install
You
could
use
the
mysqld
or
mysqld
opt
servers
on
NT
but
those
cannot
be
started
as
a
service
or
use
named
pipes
You
can
start
and
stop
the
MySQL
service
with
NET
START
mysql
NET
STOP
mysql
Note
that
in
this
case
you
can
t
use
any
other
options
for
mysqld
nt
You
can
also
run
mysqld
nt
as
a
standalone
program
on
NT
if
you
need
to
start
mysqld
nt
with
any
options
If
you
start
mysqld
nt
without
options
on
NT
mysqld
nt
tries
to
starts
itself
as
a
service
with
the
default
service
options
If
you
have
stopped
mysqld
nt
you
have
to
start
it
with
NET
START
mysql
The
service
is
installed
with
the
name
MySql
Once
installed
it
must
be
started
using
Services
Control
Manager
SCM
Utility
found
in
Control
Panel
or
by
using
the
NET
START
MySQL
command
If
any
options
are
desired
they
must
be
specified
as
Startup
parameters
in
the
SCM
utility
before
you
start
the
MySQL
service
Once
running
mysqld
nt
can
be
stopped
using
mysqladmin
or
from
the
SCM
utility
or
by
using
the
command
NET
STOP
MySQL
If
you
use
SCM
to
stop
mysqld
nt
there
is
a
strange
message
from
SCM
about
mysqld
shutdown
normally
When
run
as
a
service
mysqld
nt
has
no
access
to
a
console
and
so
no
messages
can
be
seen
On
NT
you
can
get
the
following
service
error
messages
Permission
Denied
Means
that
it
cannot
find
mysqld
nt
exe
Cannot
Register
Means
that
the
path
is
incorrect
If
you
have
problems
installing
mysqld
nt
as
a
service
try
starting
it
with
the
full
path
C
mysql
bin
mysqld
install
If
this
doesn
t
work
you
can
get
mysqld
nt
to
start
properly
by
fixing
the
path
in
the
registry
If
you
don
t
want
to
start
mysqld
nt
as
a
service
you
can
start
it
as
follows
C
mysql
bin
mysqld
nt
standalone
or
C
mysql
bin
mysqld
nt
standalone
debug
The
last
version
gives
you
a
debug
trace
in
C
mysqld
trace
377
4
12
4
Running
MySQL
on
Win32
MySQL
supports
TCP
IP
on
all
Win32
platforms
and
named
pipes
on
NT
The
default
is
to
use
named
pipes
for
local
connections
on
NT
and
TCP
IP
for
all
other
cases
if
the
client
has
TCP
IP
installed
The
host
name
specifies
which
protocol
is
used
Host
name
protocol
NULL
none
On
NT
try
named
pipes
first
if
that
doesn
t
work
use
TCP
IP
On
Win95
Win98
TCP
IP
is
used
Named
pipes
localhost
TCP
IP
to
current
host
hostname
TCP
IP
You
can
force
a
MySQL
client
to
use
named
pipes
by
specifying
the
pipe
option
Use
the
socket
option
to
specify
the
name
of
the
pipe
You
can
test
whether
or
not
MySQL
is
working
by
executing
the
following
commands
C
mysql
bin
mysqlshow
C
mysql
bin
mysqlshow
u
root
mysql
C
mysql
bin
mysqladmin
version
status
proc
C
mysql
bin
mysql
test
By
default
MySQL
Win32
is
configured
to
be
installed
in
C
mysql
If
you
want
to
install
MySQL
elsewhere
install
it
in
C
mysql
then
move
the
installation
to
where
you
want
it
If
you
do
move
MySQL
you
must
tell
mysqld
where
everything
is
by
supplying
options
to
mysqld
Use
C
mysql
bin
mysqld
help
to
display
all
options
If
for
example
you
have
moved
the
MySQL
distribution
to
D
programs
mysql
you
must
start
mysqld
with
D
programs
mysql
bin
mysqld
basedir
D
programs
mysql
With
the
registered
version
of
MySQL
you
can
also
create
a
C
my
cnf
file
that
holds
any
default
options
for
the
MySQL
server
Copy
the
file
mysql
my
example
cnf
to
C
my
cnf
and
edit
this
to
suit
your
setup
Note
that
you
should
specify
all
paths
with
instead
of
If
you
use
you
need
to
specify
this
twice
as
is
the
escape
character
in
MySQL
See
section
378
4
15
4
Option
files
If
mysqld
is
slow
to
answer
to
connections
on
Win95
Win98
there
is
probably
a
problem
with
your
DNS
In
this
case
start
mysqld
with
skip
name
resolve
and
use
only
localhost
and
IP
numbers
in
the
MySQL
grant
tables
You
can
also
avoid
DNS
when
connecting
to
a
mysqld
nt
MySQL
server
running
on
NT
by
using
the
pipe
argument
to
specify
use
of
named
pipes
This
works
for
most
MySQL
clients
There
are
two
versions
of
the
MySQL
command
line
tool
mysql
Compiled
on
native
Win32
which
offers
very
limited
text
editing
capabilities
mysqlc
Compiled
with
the
Cygnus
GNU
compiler
and
libraries
which
offers
readline
editing
If
you
want
to
use
mysqlc
exe
you
must
copy
C
mysql
lib
cygwinb19
dll
to
windows
system
or
similar
place
The
default
privileges
on
Win32
give
all
local
users
full
privileges
to
all
databases
To
make
MySQL
more
secure
you
should
set
a
password
for
all
users
and
remove
the
row
in
the
mysql
user
table
that
has
Host
localhost
and
User
You
should
also
add
a
password
for
the
root
user
C
mysql
bin
mysql
mysql
mysql
DELETE
FROM
user
WHERE
Host
localhost
AND
User
mysql
QUIT
C
mysql
bin
mysqladmin
reload
C
mysql
bin
mysqladmin
u
root
password
your
password
After
you
ve
set
the
password
if
you
want
to
take
down
the
mysqld
server
you
can
do
so
using
this
command
mysqladmin
user
root
password
your
password
shutdown
379
4
12
5
Connecting
to
a
remote
MySQL
from
Win32
with
SSH
Here
is
a
note
about
how
to
connect
to
get
a
secure
connection
to
remote
MySQL
server
with
SSH
by
David
Carlson
Install
SSH
client
on
your
windows
machine
I
used
a
free
SSH
client
from
380
http
www
doc
ic
ac
uk
ci2
ssh
Other
useful
links
381
http
www
npaci
edu
Security
npaci
security
software
html
and
382
http
www
npaci
edu
Security
samples
ssh32
windows
index
htm
l
Start
SSH
Set
Host
Name
yourmysqlserver
name
or
IP
address
Set
userid
your
userid
to
log
in
to
your
server
Click
on
local
forwards
Set
local
port
3306
host
localhost
remote
port
3306
Save
everything
otherwise
you
ll
have
to
redo
it
the
next
time
Log
in
to
your
server
with
SSH
Start
some
ODBC
application
for
example
Access
Create
a
new
file
and
link
to
mySQL
using
the
ODBC
driver
the
same
way
you
normally
do
except
for
server
user
localhost
That
s
it
It
works
very
well
with
a
direct
Internet
connection
I
m
having
problems
with
SSH
conflicting
with
my
Win95
network
and
Wingate
but
that
ll
be
the
topic
of
a
posting
on
another
software
company
s
usegroup
383
4
12
6
MySQL
Win32
compared
to
Unix
MySQL
MySQL
Win32
has
by
now
proven
itself
to
be
very
stable
This
version
of
MySQL
has
the
same
features
as
the
corresponding
Unix
version
with
the
following
exceptions
Win95
and
threads
Win95
leaks
about
200
bytes
of
main
memory
for
each
thread
creation
Because
of
this
you
shouldn
t
run
mysqld
for
an
extended
time
on
Win95
if
you
do
many
connections
since
each
connection
in
MySQL
creates
a
new
thread
NT
and
Win98
don
t
suffer
from
this
bug
Blocking
read
MySQL
uses
a
blocking
read
for
each
connection
This
means
that
A
connection
will
not
be
disconnected
automatically
after
8
hours
as
happens
with
the
Unix
version
of
MySQL
If
a
connection
hangs
it
s
impossible
to
break
it
without
killing
MySQL
mysqladmin
kill
will
not
work
on
a
sleeping
connection
mysqladmin
shutdown
can
t
abort
as
long
as
there
are
sleeping
connections
We
plan
to
fix
this
in
the
near
future
UDF
functions
For
the
moment
MySQL
Win32
does
not
support
user
definable
functions
DROP
DATABASE
You
can
t
drop
a
database
that
is
in
use
by
some
thread
Killing
MySQL
from
the
task
manager
You
can
t
kill
MySQL
from
the
task
manager
or
with
the
shutdown
utility
in
Windows95
You
must
take
it
down
with
mysqladmin
shutdown
Case
insensitive
names
Filenames
are
case
insensitive
on
Win32
so
database
and
table
names
are
also
case
insensitive
in
MySQL
for
Win32
The
only
restriction
is
that
database
and
table
names
must
be
given
in
the
same
case
throughout
a
given
statement
The
following
query
would
not
work
because
it
refers
to
a
table
both
as
my
table
and
as
MY
TABLE
SELECT
FROM
my
table
WHERE
MY
TABLE
col
1
The
directory
character
Pathname
components
in
Win95
are
separated
by
characters
which
is
also
the
escape
character
in
MySQL
If
you
are
using
LOAD
DATA
INFILE
or
SELECT
INTO
OUTFILE
you
must
double
the
character
or
use
Unix
style
filenames
characters
LOAD
DATA
INFILE
C
tmp
skr
txt
INTO
TABLE
skr
SELECT
FROM
skr
INTO
OUTFILE
C
tmp
skr
txt
Can
t
open
named
pipe
error
If
you
use
the
shareware
version
of
MySQL
Win32
on
NT
with
the
newest
mysql
clients
you
will
get
the
following
error
error
2017
can
t
open
named
pipe
to
host
pipe
This
is
because
the
release
version
of
MySQL
uses
named
pipes
on
NT
by
default
You
can
avoid
this
error
by
using
the
host
localhost
option
to
the
new
MySQL
clients
or
create
a
file
C
my
cnf
that
contains
the
following
information
client
host
localhost
Access
denied
for
user
error
If
you
get
the
error
Access
denied
for
user
some
user
unknown
to
database
mysql
when
accessing
a
MySQL
server
on
the
same
machine
this
means
that
MySQL
can
t
resolve
your
host
name
properly
To
fix
this
you
should
create
a
file
windows
hosts
with
the
following
information
127
0
0
1
localhost
Here
are
some
open
issues
for
anyone
who
might
want
to
help
us
with
the
Win32
release
Make
a
single
user
MYSQL
DLL
server
This
should
include
everything
in
a
standard
MySQL
server
except
thread
creation
This
will
make
MySQL
much
easier
to
use
in
applications
that
don
t
need
a
true
client
server
and
don
t
need
to
access
the
server
from
other
hosts
Add
some
nice
start
and
shutdown
icons
to
the
MySQL
installation
Create
a
tool
to
manage
registry
entries
for
the
MySQL
startup
options
The
registry
entry
reading
is
already
coded
into
mysqld
cc
but
it
should
be
recoded
to
be
more
parameter
oriented
The
tool
should
also
be
able
to
update
the
my
cnf
file
if
the
user
would
prefer
to
use
this
instead
of
the
registry
When
registering
mysqld
as
a
service
with
install
on
NT
it
would
be
nice
if
you
could
also
add
default
options
on
the
command
line
For
the
moment
the
workaround
is
to
update
the
C
my
cnf
file
instead
When
you
suspend
a
laptop
running
Win95
the
mysqld
daemon
doesn
t
accept
new
connections
when
the
laptop
is
resumed
We
don
t
know
if
this
is
a
problem
with
Win95
TCP
IP
or
MySQL
It
would
be
real
nice
to
be
able
to
kill
mysqld
from
the
task
manager
For
the
moment
you
must
use
mysqladmin
shutdown
Port
readline
to
Win32
for
use
in
the
mysql
command
line
tool
GUI
versions
of
the
standard
MySQL
clients
mysql
mysqlshow
mysqladmin
and
mysqldump
would
be
nice
It
would
be
nice
if
the
socket
read
and
write
functions
in
net
c
were
interruptible
This
would
make
it
possible
to
kill
open
threads
with
mysqladmin
kill
on
Win32
Documentation
of
which
Windows
programs
work
with
MySQL
Win32
MyODBC
and
what
must
be
done
to
get
them
working
mysqld
always
starts
in
the
C
locale
and
not
in
the
default
locale
We
would
like
to
have
mysqld
use
the
current
locale
for
the
sort
order
Port
sqlclient
to
Win32
almost
done
and
add
more
features
to
it
Add
more
options
to
MysqlManager
Change
the
communication
protocol
between
the
server
and
client
to
use
Windows
internal
communication
instead
of
sockets
and
TCP
IP
Implement
UDF
functions
with
DLLs
Add
macros
to
use
the
faster
thread
safe
increment
decrement
methods
provided
by
Win32
Other
Win32
specific
issues
are
described
in
the
README
file
that
comes
with
the
MySQL
Win32
distribution
384
4
13
OS
2
notes
MySQL
uses
quite
a
few
open
files
Because
of
this
you
should
add
something
like
the
following
to
your
CONFIG
SYS
file
SET
EMXOPT
c
n
h1024
If
you
don
t
do
this
you
will
probably
run
into
the
following
error
File
xxxx
not
found
Errcode
24
When
using
MySQL
with
OS
2
Warp
3
FixPack
29
or
above
is
required
With
OS
2
Warp
4
FixPack
4
or
above
is
required
This
is
a
requirement
of
the
Pthreads
library
MySQL
must
be
installed
in
a
partition
that
supports
long
file
names
such
as
HPFS
FAT32
etc
The
INSTALL
CMD
script
must
be
run
from
OS
2
s
own
CMD
EXE
and
may
not
work
with
replacement
shells
such
as
4OS2
EXE
The
scripts
mysql
install
db
script
has
been
renamed
it
is
now
called
install
cmd
and
is
a
REXX
script
which
will
set
up
the
default
MySQL
security
settings
and
create
the
WorkPlace
Shell
icons
for
MySQL
Dynamic
module
support
is
compiled
in
but
not
fully
tested
Dynamic
modules
should
be
compiled
using
the
Pthreads
runtime
library
gcc
Zdll
Zmt
Zcrtdll
pthrdrtl
I
include
I
regex
I
o
example
udf
example
cc
L
lib
lmysqlclient
udf
example
def
mv
example
dll
example
udf
Note
Due
to
limitations
in
OS
2
UDF
module
name
stems
must
not
exceed
8
characters
Modules
are
stored
in
the
mysql2
udf
directory
the
safe
mysqld
cmd
script
will
put
this
directory
in
the
BEGINLIBPATH
environment
variable
When
using
UDF
modules
specified
extensions
are
ignored
it
is
assumed
to
be
udf
For
example
in
Unix
the
shared
module
might
be
named
example
so
and
you
would
load
a
function
from
it
like
this
CREATE
FUNCTION
metaphon
RETURNS
STRING
SONAME
example
so
Is
OS
2
the
module
would
be
named
example
udf
but
you
would
not
specify
the
module
extension
CREATE
FUNCTION
metaphon
RETURNS
STRING
SONAME
example
385
4
14
TcX
binaries
As
a
service
TcX
provides
a
set
of
binary
distributions
of
MySQL
that
are
compiled
at
TcX
or
at
sites
where
customers
kindly
have
given
us
access
to
their
machines
These
distributions
are
generated
with
scripts
make
binary
distribution
and
are
configured
with
the
following
compilers
and
options
SunOS
4
1
4
2
sun4c
with
gcc
2
7
2
1
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
disable
shared
SunOS
5
5
1
sun4u
with
egcs
1
0
3a
CC
gcc
CFLAGS
O6
fomit
frame
pointer
CXX
gcc
CXXFLAGS
O6
fomit
frame
pointer
felide
constructors
fno
exceptions
fno
rtti
configure
prefix
usr
local
mysql
with
low
memory
SunOS
5
6
sun4u
with
egcs
2
90
27
CC
gcc
CFLAGS
O6
fomit
frame
pointer
CXX
gcc
CXXFLAGS
O6
fomit
frame
pointer
felide
constructors
fno
exceptions
fno
rtti
configure
prefix
usr
local
mysql
with
low
memory
SunOS
5
6
i86pc
with
gcc
2
8
1
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
with
low
memory
Linux
2
0
33
i386
with
pgcc
2
90
29
egcs
1
0
3a
CFLAGS
O6
mpentium
mstack
align
double
fomit
frame
pointer
CXX
gcc
CXXFLAGS
O6
mpentium
mstack
align
double
fomit
frame
pointer
felide
constructors
fno
exceptions
fno
rtti
configure
prefix
usr
local
mysql
enable
assembler
with
mysqld
ldflags
all
static
SCO
3
2v5
0
4
i386
with
gcc
2
7
95q4
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
AIX
2
4
with
gcc
2
7
2
2
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
OSF1
V4
0
564
alpha
with
gcc
2
8
1
CC
gcc
CFLAGS
O
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
with
low
memory
Irix
6
3
IP32
with
gcc
2
8
0
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
BSDI
BSD
OS
3
1
i386
with
gcc
2
7
2
1
CC
gcc
CXX
gcc
CXXFLAGS
O
configure
prefix
usr
local
mysql
BSDI
BSD
OS
2
1
i386
with
gcc
2
7
2
CC
gcc
CXX
gcc
CXXFLAGS
O3
configure
prefix
usr
local
mysql
Anyone
who
has
more
optimal
options
for
any
of
the
configurations
listed
above
can
always
mail
them
to
the
developer
s
mailing
list
at
RPM
distributions
prior
to
MySQL
3
22
are
user
contributed
Beginning
with
3
22
some
RPMs
are
TcX
generated
386
4
15
Post
installation
setup
and
testing
Once
you
ve
installed
MySQL
from
either
a
binary
or
source
distribution
you
need
to
initialize
the
grant
tables
start
the
server
and
make
sure
that
the
server
works
okay
You
may
also
wish
to
arrange
for
the
server
to
be
started
and
stopped
automatically
when
your
system
starts
up
and
shuts
down
Normally
you
install
the
grant
tables
and
start
the
server
like
this
shell
scripts
mysql
install
db
shell
cd
mysql
installation
directory
shell
bin
safe
mysqld
Testing
is
most
easily
done
from
the
top
level
directory
of
the
MySQL
distribution
For
a
binary
distribution
this
is
your
installation
directory
typically
something
like
usr
local
mysql
For
a
source
distribution
this
is
the
main
directory
of
your
MySQL
source
tree
In
the
commands
shown
below
in
this
section
and
in
the
following
subsections
BINDIR
is
the
path
to
the
location
in
which
programs
like
mysqladmin
and
safe
mysqld
are
installed
For
a
binary
distribution
this
is
the
bin
directory
within
the
distribution
For
a
source
distribution
BINDIR
is
probably
usr
local
bin
unless
you
specified
an
installation
directory
other
than
usr
local
when
you
ran
configure
EXECDIR
is
the
location
in
which
the
mysqld
server
is
installed
For
a
binary
distribution
this
is
the
same
as
BINDIR
For
a
source
distribution
EXECDIR
is
probably
usr
local
libexec
Testing
is
described
in
detail
below
1
If
necessary
start
the
mysqld
server
and
set
up
the
initial
MySQL
grant
tables
containing
the
privileges
that
determine
how
users
are
allowed
to
connect
to
the
server
This
is
normally
done
with
the
mysql
install
db
script
shell
scripts
mysql
install
db
Normally
mysql
install
db
needs
to
be
run
only
the
first
time
you
install
MySQL
Therefore
if
you
are
upgrading
an
existing
installation
you
can
skip
this
step
However
mysql
install
db
is
quite
safe
to
use
and
will
not
update
any
tables
that
already
exist
so
if
you
are
unsure
what
to
do
you
can
always
run
mysql
install
db
mysql
install
db
creates
six
tables
user
db
host
tables
priv
columns
priv
and
func
in
the
mysql
database
A
description
of
the
initial
privileges
is
given
in
section
387
6
10
Setting
up
the
initial
MySQL
privileges
Briefly
these
privileges
allow
the
MySQL
root
user
to
do
anything
and
allow
anybody
to
create
or
use
databases
with
a
name
of
test
or
starting
with
test
If
you
don
t
set
up
the
grant
tables
the
following
error
will
appear
in
the
log
file
when
you
start
the
server
mysqld
Can
t
find
file
host
frm
The
above
may
also
happens
with
a
binary
MySQL
distribution
if
you
don
t
start
MySQL
by
executing
exactly
bin
safe
mysqld
You
might
need
to
run
mysql
install
db
as
root
However
if
you
prefer
you
can
run
the
MySQL
server
as
an
unprivileged
non
root
user
provided
that
user
can
read
and
write
files
in
the
database
directory
Instructions
for
running
MySQL
as
an
unprivileged
user
are
given
in
section
388
17
8
How
to
run
MySQL
as
a
normal
user
If
you
have
problems
with
mysql
install
db
see
section
389
4
15
1
Problems
running
mysql
install
db
There
are
some
alternatives
to
running
the
mysql
install
db
script
as
it
is
provided
in
the
MySQL
distribution
You
may
want
to
edit
mysql
install
db
before
running
it
to
change
the
initial
privileges
that
are
installed
into
the
grant
tables
This
is
useful
if
you
want
to
install
MySQL
on
a
lot
of
machines
with
the
same
privileges
In
this
case
you
probably
should
need
only
to
add
a
few
extra
INSERT
statements
to
the
mysql
user
and
mysql
db
tables
If
you
want
to
change
things
in
the
grant
tables
after
installing
them
you
can
run
mysql
install
db
then
use
mysql
u
root
mysql
to
connect
to
the
grant
tables
as
the
MySQL
root
user
and
issue
SQL
statements
to
modify
the
grant
tables
directly
It
is
possible
to
recreate
the
grant
tables
completely
after
they
have
already
been
created
You
might
want
to
do
this
if
you
ve
already
installed
the
tables
but
then
want
to
recreate
them
after
editing
mysql
install
db
For
more
information
about
these
alternatives
see
section
390
6
10
Setting
up
the
initial
MySQL
privileges
2
Start
the
MySQL
server
like
this
shell
cd
mysql
installation
directory
shell
bin
safe
mysqld
If
you
have
problems
starting
the
server
see
section
391
4
15
2
Problems
starting
the
MySQL
server
3
Use
mysqladmin
to
verify
that
the
server
is
running
The
following
commands
provide
a
simple
test
to
check
that
the
server
is
up
and
responding
to
connections
shell
BINDIR
mysqladmin
version
shell
BINDIR
mysqladmin
variables
The
output
from
mysqladmin
version
varies
slightly
depending
on
your
platform
and
version
of
MySQL
but
should
be
similar
to
that
shown
below
shell
BINDIR
mysqladmin
version
mysqladmin
Ver
6
3
Distrib
3
22
9
beta
for
pc
linux
gnu
on
i686
TCX
Datakonsult
AB
by
Monty
Server
version
3
22
9
beta
Protocol
version
10
Connection
Localhost
via
UNIX
socket
TCP
port
3306
UNIX
socket
tmp
mysql
sock
Uptime
16
sec
Running
threads
1
Questions
20
Reloads
2
Open
tables
3
To
get
a
feeling
for
what
else
you
can
do
with
BINDIR
mysqladmin
invoke
it
with
the
help
option
4
Verify
that
you
can
shut
down
the
server
shell
BINDIR
mysqladmin
u
root
shutdown
5
Verify
that
you
can
restart
the
server
Do
this
using
safe
mysqld
or
by
invoking
mysqld
directly
For
example
shell
BINDIR
safe
mysqld
log
If
safe
mysqld
fails
try
running
it
from
the
MySQL
installation
directory
if
you
are
not
already
there
If
that
doesn
t
work
see
section
392
4
15
2
Problems
starting
the
MySQL
server
6
Run
some
simple
tests
to
verify
that
the
server
is
working
The
output
should
be
similar
to
what
is
shown
below
shell
BINDIR
mysqlshow
Databases
mysql
shell
BINDIR
mysqlshow
mysql
Database
mysql
Tables
columns
priv
db
func
host
tables
priv
user
shell
BINDIR
mysql
e
select
host
db
user
from
db
mysql
host
db
user
test
test
There
is
also
a
benchmark
suite
in
the
sql
bench
directory
under
the
MySQL
installation
directory
that
you
can
use
to
compare
how
MySQL
performs
on
different
platforms
The
sql
bench
Results
directory
contains
the
results
from
many
runs
against
different
databases
and
platforms
To
run
all
tests
execute
these
commands
shell
cd
sql
bench
shell
run
all
tests
If
you
don
t
have
the
sql
bench
directory
you
are
probably
using
an
RPM
for
a
binary
distribution
Source
distribution
RPMs
include
the
benchmark
directory
In
this
case
you
must
first
install
the
benchmark
suite
before
you
can
use
it
Beginning
with
MySQL
3
22
there
are
benchmark
RPM
files
named
mysql
bench
VERSION
i386
rpm
that
contain
benchmark
code
and
data
If
you
have
a
source
distribution
you
can
also
run
the
tests
in
the
tests
subdirectory
For
example
to
run
auto
increment
tst
do
this
shell
BINDIR
mysql
vvf
test
tests
auto
increment
tst
The
expected
results
are
shown
in
the
tests
auto
increment
res
file
393
4
15
1
Problems
running
mysql
install
db
This
section
lists
problems
you
might
encounter
when
you
run
mysql
install
db
mysql
install
db
doesn
t
install
the
grant
tables
You
may
find
that
mysql
install
db
fails
to
install
the
grant
tables
and
terminates
after
displaying
the
following
messages
starting
mysqld
daemon
with
databases
from
XXXXXX
mysql
daemon
ended
In
this
case
you
should
examine
the
log
file
very
carefully
The
log
should
be
located
in
the
directory
XXXXXX
named
by
the
error
message
and
should
indicate
why
mysqld
didn
t
start
If
you
don
t
understand
what
happened
include
the
log
when
you
post
a
bug
report
using
mysqlbug
See
section
394
2
3
How
to
report
bugs
or
problems
There
is
already
a
mysqld
daemon
running
In
this
case
you
have
probably
don
t
have
to
run
mysql
install
db
at
all
You
have
to
run
mysql
install
db
only
once
when
you
install
MySQL
the
first
time
Installing
a
second
mysqld
daemon
doesn
t
work
when
one
daemon
is
running
This
can
happen
when
you
already
have
an
existing
MySQL
installation
but
want
to
put
a
new
installation
in
a
different
place
e
g
for
testing
or
perhaps
you
simply
want
to
run
two
installations
at
the
same
time
Generally
the
problem
that
occurs
when
you
try
to
run
the
second
server
is
that
it
tries
to
use
the
same
socket
and
port
as
the
old
one
In
this
case
you
will
get
the
error
message
Can
t
start
server
Bind
on
TCP
IP
port
Address
already
in
use
or
Can
t
start
server
Bind
on
unix
socket
You
can
start
the
new
server
with
a
different
socket
and
port
as
follows
shell
MYSQL
UNIX
PORT
tmp
mysqld
new
sock
shell
MYSQL
TCP
PORT
3307
shell
export
MYSQL
UNIX
PORT
MYSQL
TCP
PORT
shell
scripts
mysql
install
db
shell
bin
safe
mysqld
After
this
you
should
edit
your
server
boot
script
to
start
both
daemons
with
different
sockets
and
ports
For
example
it
could
invoke
safe
mysqld
twice
but
with
different
socket
port
and
basedir
options
for
each
invocation
You
don
t
have
write
access
to
tmp
If
you
don
t
have
write
access
to
create
a
socket
file
at
the
default
place
in
tmp
or
permission
to
create
temporary
files
in
tmp
you
will
get
an
error
when
running
mysql
install
db
or
when
starting
or
using
mysqld
You
can
specify
a
different
socket
and
temporary
directory
as
follows
shell
TMPDIR
some
tmp
dir
shell
MYSQL
UNIX
PORT
some
tmp
dir
mysqld
sock
shell
export
TMPDIR
MYSQL
UNIX
PORT
some
tmp
dir
should
be
the
path
to
some
directory
for
which
you
have
write
permission
After
this
you
should
be
able
to
run
mysql
install
db
and
start
the
server
with
these
commands
shell
scripts
mysql
install
db
shell
BINDIR
safe
mysqld
mysqld
crashes
immediately
If
you
are
running
RedHat
5
0
with
a
version
of
glibc
older
than
2
0
7
5
you
should
make
sure
you
have
installed
all
glibc
patches
There
is
a
lot
of
information
about
this
in
the
MySQL
mail
archives
Links
to
the
mail
archives
are
available
at
the
online
395
MySQL
documentation
page
Also
see
section
396
4
11
5
Linux
notes
all
Linux
versions
You
can
also
start
mysqld
manually
using
the
skip
grant
option
and
add
the
privilege
information
yourself
using
mysql
shell
BINDIR
safe
mysqld
skip
grant
shell
BINDIR
mysql
u
root
mysql
From
mysql
manually
execute
the
SQL
commands
in
mysql
install
db
Make
sure
you
run
mysqladmin
reload
afterward
to
tell
the
server
to
reload
the
grant
tables
397
4
15
2
Problems
starting
the
MySQL
server
Generally
you
start
the
mysqld
server
in
one
of
three
ways
By
invoking
mysql
server
This
script
is
used
primarily
at
system
startup
and
shutdown
and
is
described
more
fully
in
section
398
4
15
3
Starting
and
stopping
MySQL
automatically
By
invoking
safe
mysqld
which
tries
to
determine
the
proper
options
for
mysqld
and
then
runs
it
with
those
options
By
invoking
mysqld
directly
Whichever
method
you
use
to
start
the
server
if
it
fails
to
start
up
correctly
check
the
log
file
to
see
if
you
can
find
out
why
Log
files
are
located
in
the
data
directory
typically
usr
local
mysql
data
for
a
binary
distribution
usr
local
var
for
a
source
distribution
Look
in
the
data
directory
for
files
with
names
of
the
form
host
name
err
and
host
name
log
where
host
name
is
the
name
of
your
server
host
Then
check
the
last
few
lines
of
these
files
shell
tail
host
name
err
shell
tail
host
name
log
When
the
mysqld
daemon
starts
up
it
changes
directory
to
the
data
directory
This
is
where
it
expects
to
write
log
files
and
the
pid
process
ID
file
and
where
it
expects
to
find
databases
The
data
directory
location
is
hardwired
in
when
the
distribution
is
compiled
However
if
mysqld
expects
to
find
the
data
directory
somewhere
other
than
where
it
really
is
on
your
system
it
will
not
work
properly
If
you
have
problems
with
incorrect
paths
you
can
find
out
what
options
mysqld
allows
and
what
the
default
path
settings
are
by
invoking
mysqld
with
the
help
option
You
can
override
the
defaults
by
specifying
the
correct
pathnames
as
command
line
arguments
to
mysqld
These
options
can
be
used
with
safe
mysqld
as
well
Normally
you
should
need
to
tell
mysqld
only
the
base
directory
under
which
MySQL
is
installed
You
can
do
this
with
the
basedir
option
You
can
also
use
help
to
check
the
effect
of
changing
path
options
note
that
help
must
be
the
final
option
of
the
mysqld
command
For
example
shell
EXECDIR
mysqld
basedir
usr
local
help
Once
you
determine
the
path
settings
you
want
start
the
server
without
the
help
option
If
you
get
the
following
error
it
means
that
some
other
program
or
another
mysqld
server
is
already
using
the
TCP
IP
port
or
socket
mysqld
is
trying
to
use
Can
t
start
server
Bind
on
TCP
IP
port
Address
already
in
use
or
Can
t
start
server
Bind
on
unix
socket
Use
ps
to
make
sure
that
you
don
t
have
another
mysqld
server
running
If
you
can
t
find
another
server
running
you
can
try
to
execute
the
command
telnet
your
host
name
tcp
ip
port
number
and
press
RETURN
a
couple
of
times
If
you
don
t
get
a
error
message
like
telnet
Unable
to
connect
to
remote
host
Connection
refused
something
is
using
the
TCP
IP
port
mysqld
is
trying
to
use
See
section
399
4
15
1
Problems
running
mysql
install
db
and
section
400
18
3
Running
multiple
MySQL
servers
on
the
same
machine
The
safe
mysqld
script
is
written
so
that
it
normally
is
able
to
start
a
server
that
was
installed
from
either
a
source
or
a
binary
version
of
MySQL
even
if
these
install
the
server
in
slightly
different
locations
safe
mysqld
expects
one
of
these
conditions
to
be
true
The
server
and
databases
can
be
found
relative
to
the
directory
from
which
safe
mysqld
is
invoked
safe
mysqld
looks
under
its
working
directory
for
bin
and
data
directories
for
binary
distributions
or
for
libexec
and
var
directories
for
source
distributions
This
condition
should
be
met
if
you
execute
safe
mysqld
from
your
MySQL
installation
directory
for
example
usr
local
mysql
for
a
binary
distribution
If
the
server
and
databases
cannot
be
found
relative
to
its
working
directory
safe
mysqld
attempts
to
locate
them
by
absolute
pathnames
Typical
locations
are
usr
local
libexec
and
usr
local
var
The
actual
locations
are
determined
when
the
distribution
was
built
from
which
safe
mysqld
comes
They
should
be
correct
if
MySQL
was
installed
in
a
standard
location
Since
safe
mysqld
will
try
to
find
the
server
and
databases
relative
to
its
own
working
directory
you
can
install
a
binary
distribution
of
MySQL
anywhere
as
long
as
you
start
safe
mysqld
from
the
MySQL
installation
directory
shell
cd
mysql
installation
directory
shell
bin
safe
mysqld
If
safe
mysqld
fails
even
when
invoked
from
the
MySQL
installation
directory
you
can
modify
it
to
use
the
path
to
mysqld
and
the
pathname
options
that
are
correct
for
your
system
Note
that
if
you
upgrade
MySQL
in
the
future
your
modified
version
of
safe
mysqld
will
be
overwritten
so
you
should
make
a
copy
of
your
edited
version
that
you
can
reinstall
If
mysqld
is
currently
running
you
can
find
out
what
path
settings
it
is
using
by
executing
this
command
shell
mysqladmin
variables
or
shell
mysqladmin
h
your
host
name
variables
If
safe
mysqld
starts
the
server
but
you
can
t
connect
to
it
you
should
make
sure
you
have
an
entry
in
etc
hosts
that
looks
like
this
127
0
0
1
localhost
This
problem
occurs
only
on
systems
that
don
t
have
a
working
thread
library
and
for
which
MySQL
must
be
configured
to
use
MIT
pthreads
401
4
15
3
Starting
and
stopping
MySQL
automatically
The
mysql
server
script
can
be
used
to
start
or
stop
the
server
by
invoking
it
with
start
or
stop
arguments
shell
mysql
server
start
shell
mysql
server
stop
mysql
server
can
be
found
in
the
share
mysql
directory
under
the
MySQL
installation
directory
or
in
the
support
files
directory
of
the
MySQL
source
tree
Before
mysql
server
starts
the
server
it
changes
directory
to
the
MySQL
installation
directory
then
invokes
safe
mysqld
You
might
need
to
edit
mysql
server
if
you
have
a
binary
distribution
that
you
ve
installed
in
a
non
standard
location
Modify
it
to
cd
into
the
proper
directory
before
it
runs
safe
mysqld
If
you
want
the
server
to
run
as
some
specific
user
you
can
change
the
mysql
daemon
user
root
line
to
use
another
user
You
can
also
modify
mysql
server
to
pass
other
options
to
safe
mysqld
mysql
server
stop
brings
down
server
by
sending
a
signal
to
it
You
can
take
down
the
server
manually
by
executing
mysqladmin
shutdown
You
might
want
to
add
these
start
and
stop
commands
to
the
appropriate
places
in
your
etc
rc
files
when
you
start
using
MySQL
for
production
applications
Note
that
if
you
modify
mysql
server
then
if
you
upgrade
MySQL
sometime
your
modified
version
will
be
overwritten
so
you
should
make
a
copy
of
your
edited
version
that
you
can
reinstall
If
your
system
uses
etc
rc
local
to
start
external
scripts
you
should
append
the
following
to
it
bin
sh
c
cd
usr
local
mysql
bin
safe
mysqld
You
can
also
add
options
or
mysql
server
in
a
global
etc
my
cnf
file
A
typical
etc
my
cnf
file
might
look
like
this
mysqld
datadir
usr
local
mysql
var
socket
tmp
mysqld
sock
port
3306
mysql
server
user
mysql
basedir
usr
local
mysql
The
mysql
server
script
uses
the
following
variables
user
datadir
basedir
bindir
and
pid
file
See
section
402
4
15
4
Option
files
403
4
15
4
Option
files
MySQL
3
22
can
read
default
startup
options
for
the
server
and
for
clients
from
option
files
MySQL
reads
default
options
from
the
following
files
on
Unix
Filename
Purpose
etc
my
cnf
Global
options
DATADIR
my
cnf
Server
specific
options
my
cnf
User
specific
options
DATADIR
is
the
MySQL
data
directory
typically
usr
local
mysql
data
for
a
binary
installation
or
usr
local
var
for
a
source
installation
Note
that
this
is
the
directory
that
was
specified
at
configuration
time
not
the
one
specified
with
datadir
when
mysqld
starts
up
datadir
has
no
effect
on
where
the
server
looks
for
option
files
because
it
looks
for
them
before
it
processes
any
command
line
arguments
MySQL
reads
default
options
from
the
following
files
on
Win32
Filename
Purpose
windows
system
directory
my
ini
C
my
cnf
Global
options
C
mysql
data
my
cnf
Server
specific
options
Note
that
you
on
Win32
should
specify
all
paths
with
instead
of
If
you
use
you
need
to
specify
this
twice
as
is
the
escape
character
in
MySQL
MySQL
tries
to
read
option
files
in
the
order
listed
above
If
multiple
option
files
exist
an
option
specified
in
a
file
read
later
takes
precedence
over
the
same
option
specified
in
a
file
read
earlier
Options
specified
on
the
command
line
take
precedence
over
options
specified
in
any
option
file
Some
options
can
be
specified
using
environment
variables
Options
specified
on
the
command
line
or
in
option
files
take
precedence
over
environment
variable
values
The
following
programs
support
option
files
mysql
mysqladmin
mysqld
mysqldump
mysqlimport
mysql
server
isamchk
and
pack
isam
You
can
use
option
files
to
specify
any
long
option
that
a
program
supports
Run
the
program
with
help
to
get
a
list
of
available
options
An
option
file
can
contain
lines
of
the
following
forms
comment
Comment
lines
starts
with
or
Empty
lines
are
ignored
group
group
is
the
name
of
the
program
or
group
for
which
you
want
to
set
options
After
a
group
line
any
option
or
set
variable
lines
apply
to
the
named
group
until
the
end
of
the
option
file
or
another
group
line
is
given
option
This
is
equivalent
to
option
on
the
command
line
option
value
This
is
equivalent
to
option
value
on
the
command
line
set
variable
variable
value
This
is
equivalent
to
set
variable
variable
value
on
the
command
line
This
syntax
must
be
used
to
set
a
mysqld
variable
The
client
group
allows
you
to
specify
options
that
apply
to
all
MySQL
clients
not
mysqld
This
is
the
perfect
group
to
use
to
specify
the
password
you
use
to
connect
to
the
server
But
make
sure
the
option
file
is
readable
and
writable
only
to
yourself
Note
that
for
options
and
values
all
leading
and
trailing
blanks
are
automatically
deleted
You
may
use
the
escape
sequences
b
t
n
r
and
s
in
your
value
string
s
blank
Here
is
a
typical
global
option
file
client
port
3306
socket
tmp
mysql
sock
mysqld
port
3306
socket
tmp
mysql
sock
set
variable
key
buffer
16M
set
variable
max
allowed
packet
1M
mysqldump
quick
Here
is
typical
user
option
file
client
The
following
password
will
be
sent
to
all
standard
MySQL
clients
password
my
password
mysql
no
auto
rehash
If
you
have
a
source
distribution
you
will
find
a
sample
configuration
file
named
my
example
cnf
in
the
support
files
directory
If
you
have
a
binary
distribution
look
in
the
DIR
share
mysql
directory
where
DIR
is
the
pathname
to
the
MySQL
installation
directory
typically
usr
local
mysql
You
can
copy
my
example
cnf
to
your
home
directory
rename
the
copy
to
my
cnf
to
experiment
with
To
tell
a
MySQL
program
not
to
read
any
option
files
specify
no
defaults
as
the
first
option
on
the
command
line
This
MUST
be
the
first
option
or
it
will
have
no
effect
If
you
want
to
check
which
options
are
used
you
can
give
the
option
print
defaults
as
the
first
option
If
you
want
to
force
the
use
of
a
specific
config
file
you
can
use
the
option
defaults
file
full
path
to
default
file
If
you
do
this
only
the
specified
file
will
be
read
Note
for
developers
Option
file
handling
is
implemented
simply
by
processing
all
matching
options
i
e
options
in
the
appropriate
group
before
any
command
line
arguments
This
works
nicely
for
programs
that
use
the
last
instance
of
an
option
that
is
specified
multiple
times
If
you
have
an
old
program
that
handles
multiply
specified
options
this
way
but
doesn
t
read
option
files
you
need
add
only
two
lines
to
give
it
that
capability
Check
the
source
code
of
any
of
the
standard
MySQL
clients
to
see
how
to
do
this
404
4
16
Is
there
anything
special
to
do
when
upgrading
downgrading
MySQL
You
can
always
move
the
MySQL
form
and
data
files
between
different
versions
on
the
same
architecture
as
long
as
you
have
the
same
base
version
of
MySQL
The
current
base
version
is
3
If
you
change
the
character
set
by
recompiling
MySQL
which
may
also
change
the
sort
order
you
must
run
isamchk
r
q
on
all
tables
Otherwise
your
indexes
may
not
be
ordered
correctly
If
you
are
paranoid
and
or
afraid
of
new
versions
you
can
always
rename
your
old
mysqld
to
something
like
mysqld
old
version
number
If
your
new
mysqld
then
does
something
unexpected
you
can
simply
shut
it
down
and
restart
with
your
old
mysqld
When
you
do
an
upgrade
you
should
also
backup
your
old
databases
of
course
Sometimes
it
s
good
to
be
a
little
paranoid
After
an
upgrade
if
you
experience
problems
with
recompiled
client
programs
like
Commands
out
of
sync
or
unexpected
core
dumps
you
probably
have
used
an
old
header
or
library
file
when
compiling
your
programs
In
this
case
you
should
check
the
date
for
your
mysql
h
file
and
libmysqlclient
a
library
to
verify
that
they
are
from
the
new
MySQL
distribution
If
not
please
recompile
your
programs
If
you
get
some
problems
that
the
new
mysqld
server
doesn
t
want
to
start
or
that
you
can
t
connect
without
a
password
check
that
you
don
t
have
some
old
my
cnf
file
from
your
old
installation
You
can
check
this
with
program
name
print
defaults
If
this
outputs
anything
other
than
the
program
name
you
have
a
active
my
cnf
file
that
will
may
affect
things
It
is
a
good
idea
to
rebuild
and
reinstall
the
Msql
Mysql
modules
distribution
whenever
you
install
a
new
release
of
MySQL
particularly
if
you
notice
symptoms
such
as
all
your
DBI
scripts
dumping
core
after
you
upgrade
MySQL
405
4
16
1
Upgrading
from
a
3
22
version
to
3
23
MySQL
3
23
supports
tables
of
the
new
MyISAM
type
and
the
old
NISAM
type
You
don
t
have
to
convert
your
old
tables
to
use
these
with
3
23
By
default
all
new
tables
will
be
created
with
type
MyISAM
unless
you
start
mysqld
with
the
default
table
type
isam
option
You
can
change
an
ISAM
table
to
a
MyISAM
table
with
ALTER
TABLE
or
the
Perl
script
mysql
convert
table
format
3
22
and
3
21
clients
will
work
without
any
problems
with
a
3
23
server
The
following
lists
what
you
have
to
watch
out
for
when
upgrading
to
3
23
INNER
and
DELAYED
are
now
reserved
words
FLOAT
4
and
FLOAT
8
are
now
true
floating
point
types
When
declaring
DECIMAL
length
dec
the
length
argument
no
longer
includes
a
place
for
the
sign
or
the
decimal
point
A
TIME
string
must
now
be
of
one
of
the
following
formats
DAYS
H
H
MM
SS
fraction
or
H
H
H
H
MM
SS
fraction
LIKE
now
compares
strings
using
the
same
character
comparison
rules
as
If
you
require
the
old
behaveour
you
can
compile
MySQL
with
the
CXXFLAGS
DLIKE
CMP
TOUPPER
flag
When
you
check
repair
tables
you
should
use
myisamchk
for
MyISAM
tables
MYI
and
isamchk
for
ISAM
ISM
tables
If
you
want
your
mysqldumps
to
be
compatible
between
MySQL
3
22
and
3
23
you
should
not
use
the
opt
or
full
option
to
mysqldump
Check
all
your
calls
to
DATE
FORMAT
to
make
sure
there
is
a
before
each
format
character
mysql
fetch
fields
direct
is
now
a
function
it
was
a
macro
and
it
returns
a
pointer
to
a
MYSQL
FIELD
instead
of
a
MYSQL
FIELD
mysql
num
fields
can
no
longer
be
used
on
a
MYSQL
object
it
s
now
a
function
that
takes
MYSQL
RES
as
an
argument
You
should
now
use
mysql
field
count
instead
In
MySQL
3
22
the
output
of
SELECT
DISTINCT
was
almost
always
sorted
In
3
23
you
have
to
use
GROUP
BY
or
ORDER
BY
to
get
it
sorted
406
4
16
2
Upgrading
from
a
3
21
version
to
3
22
Nothing
that
affects
compatibility
has
changed
between
3
21
and
3
22
The
only
pitfall
is
that
new
tables
that
are
created
with
DATE
type
columns
will
use
the
new
way
to
store
the
date
You
can
t
access
these
new
fields
from
an
old
version
of
mysqld
After
installing
MySQL
3
22
you
should
start
the
new
server
and
then
run
the
mysql
fix
privilege
tables
script
This
will
add
the
new
privileges
that
you
need
to
use
the
GRANT
command
If
you
forget
this
you
will
get
Access
denied
when
you
try
to
use
ALTER
TABLE
CREATE
INDEX
or
DROP
INDEX
If
your
MySQL
root
user
requires
a
password
you
should
give
this
as
an
argument
to
mysql
fix
privilege
tables
The
C
API
interface
to
mysql
real
connect
has
changed
If
you
have
an
old
client
program
that
calls
this
function
you
must
place
a
0
for
the
new
db
argument
or
recode
the
client
to
send
the
db
element
for
faster
connections
You
must
also
call
mysql
init
before
calling
mysql
real
connect
This
change
was
done
to
allow
the
new
mysql
options
function
to
save
options
in
the
MYSQL
handler
structure
407
4
16
3
Upgrading
from
a
3
20
version
to
3
21
If
you
are
running
a
version
older
than
3
20
28
and
want
to
switch
to
3
21
x
you
need
to
do
the
following
You
can
start
the
mysqld
3
21
server
with
safe
mysqld
old
protocol
to
use
it
with
clients
from
the
3
20
distribution
In
this
case
the
new
client
function
mysql
errno
will
not
return
any
server
error
only
CR
UNKNOWN
ERROR
but
it
works
for
client
errors
and
the
server
uses
the
old
password
checking
rather
than
the
new
one
If
you
are
NOT
using
the
old
protocol
option
to
mysqld
you
will
need
to
make
the
following
changes
All
client
code
must
be
recompiled
If
you
are
using
ODBC
you
must
get
the
new
MyODBC
2
x
driver
The
script
scripts
add
long
password
must
be
run
to
convert
the
Password
field
in
the
mysql
user
table
to
CHAR
16
All
passwords
must
be
reassigned
in
the
mysql
user
table
to
get
62
bit
rather
than
31
bit
passwords
The
table
format
hasn
t
changed
so
you
don
t
have
to
convert
any
tables
MySQL
3
20
28
and
above
can
handle
the
new
user
table
format
without
affecting
clients
If
you
have
a
MySQL
version
earlier
than
3
20
28
passwords
will
no
longer
work
with
it
if
you
convert
the
user
table
So
to
be
safe
you
should
first
upgrade
to
at
least
3
20
28
and
then
upgrade
to
3
21
x
The
new
client
code
works
with
a
3
20
x
mysqld
server
so
if
you
experience
problems
with
3
21
x
you
can
use
the
old
3
20
x
server
without
having
to
recompile
the
clients
again
If
you
are
not
using
the
old
protocol
option
to
mysqld
old
clients
will
issue
the
error
message
ERROR
Protocol
mismatch
Server
Version
10
Client
Version
9
The
new
Perl
DBI
DBD
interface
also
supports
the
old
mysqlperl
interface
The
only
change
you
have
to
make
if
you
use
mysqlperl
is
to
change
the
arguments
to
the
connect
function
The
new
arguments
are
host
database
user
password
the
user
and
password
arguments
have
changed
places
See
section
408
19
5
2
The
DBI
interface
The
following
changes
may
affect
queries
in
old
applications
HAVING
must
now
be
specified
before
any
ORDER
BY
clause
The
parameters
to
LOCATE
have
been
swapped
There
are
some
new
reserved
words
The
most
notable
are
DATE
TIME
and
TIMESTAMP
409
4
16
4
Upgrading
to
another
architecture
If
you
are
using
MySQL
3
23
you
can
copy
the
frm
the
MYI
and
the
MYD
files
between
different
architectures
that
support
the
same
floating
point
format
MySQL
takes
care
of
any
byte
swapping
issues
The
MySQL
data
ISD
and
the
index
files
ISM
files
are
architecture
dependent
and
in
some
case
OS
dependent
If
you
want
to
move
your
applications
to
another
machine
that
has
a
different
architecture
or
OS
than
your
current
machine
you
should
not
try
to
move
a
database
by
simply
copying
the
files
to
the
other
machine
Use
mysqldump
instead
By
default
mysqldump
will
create
a
file
full
of
SQL
statements
You
can
then
transfer
the
file
to
the
other
machine
and
feed
it
as
input
to
the
mysql
client
Try
mysqldump
help
to
see
what
options
are
available
If
you
are
moving
the
data
to
a
newer
version
of
MySQL
you
should
use
mysqldump
opt
with
the
newer
version
to
get
a
fast
compact
dump
The
easiest
although
not
the
fastest
way
to
move
a
database
between
two
machines
is
to
run
the
following
commands
on
the
machine
on
which
the
database
is
located
shell
mysqladmin
h
other
hostname
create
db
name
shell
mysqldump
opt
db
name
mysql
h
other
hostname
db
name
If
you
want
to
copy
a
database
from
a
remote
machine
over
a
slow
network
you
can
use
shell
mysqladmin
create
db
name
shell
mysqldump
h
other
hostname
opt
compress
db
name
mysql
db
name
You
can
also
store
the
result
in
a
file
then
transfer
the
file
to
the
target
machine
and
load
the
file
into
the
database
there
For
example
you
can
dump
a
database
to
a
file
on
the
source
machine
like
this
shell
mysqldump
quick
db
name
gzip
db
name
contents
gz
The
file
created
in
this
example
is
compressed
Transfer
the
file
containing
the
database
contents
to
the
target
machine
and
run
these
commands
there
shell
mysqladmin
create
db
name
shell
gunzip
db
name
contents
gz
mysql
db
name
You
can
also
use
mysqldump
and
mysqlimport
to
accomplish
the
database
transfer
For
big
tables
this
is
much
faster
than
simply
using
mysqldump
In
the
commands
shown
below
DUMPDIR
represents
the
full
pathname
of
the
directory
you
use
to
store
the
output
from
mysqldump
First
create
the
directory
for
the
output
files
and
dump
the
database
shell
mkdir
DUMPDIR
shell
mysqldump
tab
DUMPDIR
db
name
Then
transfer
the
files
in
the
DUMPDIR
directory
to
some
corresponding
directory
on
the
target
machine
and
load
the
files
into
MySQL
there
shell
mysqladmin
create
db
name
create
database
shell
cat
DUMPDIR
sql
mysql
db
name
create
tables
in
database
shell
mysqlimport
db
name
DUMPDIR
txt
load
data
into
tables
Also
don
t
forget
to
copy
the
mysql
database
since
that
s
where
the
grant
tables
user
db
host
are
stored
You
may
have
to
run
commands
as
the
MySQL
root
user
on
the
new
machine
until
you
have
the
mysql
database
in
place
After
you
import
the
mysql
database
on
the
new
machine
execute
mysqladmin
flush
privileges
so
that
the
server
reloads
the
grant
table
information
410
5
How
standards
compatible
is
MySQL
411
5
1
MySQL
extensions
to
ANSI
SQL92
MySQL
includes
some
extensions
that
you
probably
will
not
find
in
other
SQL
databases
Be
warned
that
if
you
use
them
your
code
will
not
be
portable
to
other
SQL
servers
In
some
cases
you
can
write
code
that
includes
MySQL
extensions
but
is
still
portable
by
using
comments
of
the
form
In
this
case
MySQL
will
parse
and
execute
the
code
within
the
comment
as
it
would
any
other
MySQL
statement
but
other
SQL
servers
will
ignore
the
extensions
For
example
SELECT
STRAIGHT
JOIN
col
name
FROM
table1
table2
WHERE
MySQL
extensions
are
listed
below
The
field
types
MEDIUMINT
SET
ENUM
and
the
different
BLOB
and
TEXT
types
The
field
attributes
AUTO
INCREMENT
BINARY
UNSIGNED
and
ZEROFILL
All
string
comparisons
are
case
insensitive
by
default
with
sort
ordering
determined
by
the
current
character
set
ISO
8859
1
Latin1
by
default
If
you
don
t
like
this
you
should
declare
your
columns
with
the
BINARY
attribute
or
use
the
BINARY
cast
which
causes
comparisons
to
be
done
according
to
the
ASCII
order
used
on
the
MySQL
server
host
MySQL
maps
each
database
to
a
directory
under
the
MySQL
data
directory
and
tables
within
a
database
to
filenames
in
the
database
directory
This
has
two
implications
Database
names
and
table
names
are
case
sensitive
in
MySQL
on
operating
systems
that
have
case
sensitive
filenames
like
most
Unix
systems
If
you
have
a
problem
remembering
table
names
adopt
a
consistent
convention
such
as
always
creating
databases
and
tables
using
lowercase
names
Database
table
index
column
or
alias
names
may
begin
with
a
digit
but
may
not
consist
solely
of
digits
You
can
use
standard
system
commands
to
backup
rename
move
delete
and
copy
tables
For
example
to
rename
a
table
rename
the
ISD
ISM
and
frm
files
to
which
the
table
corresponds
In
SQL
statements
you
can
access
tables
from
different
databases
with
the
db
name
tbl
name
syntax
Some
SQL
servers
provide
the
same
functionality
but
call
this
User
space
MySQL
dosen
t
support
tablespaces
like
in
create
table
ralph
my
table
IN
my
tablespace
LIKE
is
allowed
on
numeric
columns
Use
of
INTO
OUTFILE
and
STRAIGHT
JOIN
in
a
SELECT
statement
See
section
412
7
11
SELECT
syntax
The
SQL
SMALL
RESULT
option
in
a
SELECT
statement
EXPLAIN
SELECT
to
get
a
description
on
how
tables
are
joined
Use
of
index
names
indexes
on
a
prefix
of
a
field
and
use
of
INDEX
or
KEY
in
a
CREATE
TABLE
statement
See
section
413
7
6
CREATE
TABLE
syntax
Use
of
CHANGE
col
name
DROP
col
name
or
DROP
INDEX
in
an
ALTER
TABLE
statement
See
section
414
7
7
ALTER
TABLE
syntax
Use
of
IGNORE
in
an
ALTER
TABLE
statement
Use
of
multiple
ADD
ALTER
DROP
or
CHANGE
clauses
in
an
ALTER
TABLE
statement
Use
of
DROP
TABLE
with
the
keywords
IF
EXISTS
You
can
drop
multiple
tables
with
a
single
DROP
TABLE
statement
The
LIMIT
clause
of
the
DELETE
statement
The
DELAYED
clause
of
the
INSERT
and
REPLACE
statements
The
LOW
PRIORITY
clause
of
the
INSERT
REPLACE
DELETE
and
UPDATE
statements
Use
of
LOAD
DATA
INFILE
In
many
cases
this
syntax
is
compatible
with
Oracle
s
LOAD
DATA
INFILE
See
section
415
7
15
LOAD
DATA
INFILE
syntax
The
OPTIMIZE
TABLE
statement
See
section
416
7
8
OPTIMIZE
TABLE
syntax
The
SHOW
statement
See
section
417
7
20
SHOW
syntax
Get
information
about
tables
columns
Strings
may
be
enclosed
by
either
or
not
just
by
Use
of
the
escape
character
The
SET
OPTION
statement
See
section
418
7
24
SET
OPTION
syntax
You
don
t
need
to
name
all
selected
columns
in
the
GROUP
BY
part
This
gives
better
performance
for
some
very
specific
but
quite
normal
queries
See
section
419
7
3
13
Functions
for
use
with
GROUP
BY
clauses
To
make
it
easier
for
users
that
come
from
other
SQL
environments
MySQL
supports
aliases
for
many
functions
For
example
all
string
functions
support
both
ANSI
SQL
syntax
and
ODBC
syntax
MySQL
understands
the
and
operators
to
mean
logical
OR
and
AND
as
in
the
C
programming
language
In
MySQL
and
OR
are
synonyms
as
are
and
AND
Because
of
this
nice
syntax
MySQL
doesn
t
support
the
ANSI
SQL
operator
for
string
concatenation
use
CONCAT
instead
Since
CONCAT
takes
any
number
of
arguments
it
s
easy
to
convert
use
of
the
operator
to
MySQL
CREATE
DATABASE
or
DROP
DATABASE
See
section
420
7
4
CREATE
DATABASE
syntax
The
operator
is
a
synonym
for
MOD
That
is
N
M
is
equivalent
to
MOD
N
M
is
supported
for
C
programmers
and
for
compatibility
with
PostgreSQL
The
AND
OR
or
LIKE
operators
may
be
used
in
column
comparisons
to
the
left
of
the
FROM
in
SELECT
statements
For
example
mysql
SELECT
col1
1
AND
col2
2
FROM
tbl
name
The
LAST
INSERT
ID
function
See
section
421
19
4
28
mysql
insert
id
The
REGEXP
and
NOT
REGEXP
extended
regular
expression
operators
CONCAT
or
CHAR
with
one
argument
or
more
than
two
arguments
In
MySQL
these
functions
can
take
any
number
of
arguments
The
BIT
COUNT
ELT
FROM
DAYS
FORMAT
IF
PASSWORD
ENCRYPT
ENCODE
DECODE
PERIOD
ADD
PERIOD
DIFF
TO
DAYS
or
WEEKDAY
functions
Use
of
TRIM
to
trim
substrings
ANSI
SQL
only
supports
removal
of
single
characters
The
GROUP
BY
functions
STD
BIT
OR
and
BIT
AND
Use
of
REPLACE
instead
of
DELETE
INSERT
See
section
422
7
14
REPLACE
syntax
The
FLUSH
flush
option
statement
423
5
2
MySQL
differences
compared
to
ANSI
SQL92
We
try
to
make
MySQL
follow
the
ANSI
SQL
standard
and
the
ODBC
SQL
standard
but
in
some
cases
MySQL
does
some
things
differently
is
not
a
comment
See
section
424
5
3
7
as
the
start
of
a
comment
For
VARCHAR
columns
trailing
spaces
are
removed
when
the
value
is
stored
See
section
425
E
Known
errors
and
design
deficiencies
in
MySQL
In
some
cases
CHAR
columns
are
silently
changed
to
VARCHAR
columns
See
section
426
7
6
1
Silent
column
specification
changes
Privileges
for
a
table
is
not
automatically
revoked
when
you
delete
a
table
You
must
explicitly
issue
a
REVOKE
to
revoke
privileges
for
a
table
See
section
427
7
25
GRANT
and
REVOKE
syntax
428
5
3
Functionality
missing
from
MySQL
The
following
functionality
is
missing
in
the
current
version
of
MySQL
For
a
prioritized
list
indicating
when
new
extensions
may
be
added
to
MySQL
you
should
consult
429
the
online
MySQL
TODO
list
That
is
the
latest
version
of
the
TODO
list
in
this
manual
See
section
430
F
List
of
things
we
want
to
add
to
MySQL
in
the
future
The
TODO
431
5
3
1
Sub
selects
The
following
will
not
yet
work
in
MySQL
SELECT
FROM
table1
WHERE
id
IN
SELECT
id
FROM
table2
SELECT
FROM
table1
WHERE
id
NOT
IN
SELECT
id
FROM
table2
However
in
many
cases
you
can
rewrite
the
query
without
a
sub
select
SELECT
table1
FROM
table1
table2
WHERE
table1
id
table2
id
SELECT
table1
FROM
table1
LEFT
JOIN
table2
ON
table1
id
table2
id
where
table
2
id
IS
NULL
For
more
complicated
sub
queries
you
can
create
temporary
tables
to
hold
the
sub
query
MySQL
only
supports
INSERT
SELECT
and
REPLACE
SELECT
Independent
sub
selects
will
be
probably
be
available
in
3
23
2
You
can
now
use
the
function
IN
in
other
contexts
however
432
5
3
2
SELECT
INTO
TABLE
MySQL
doesn
t
yet
support
the
Oracle
SQL
extension
SELECT
INTO
TABLE
MySQL
supports
instead
the
ANSI
SQL
syntax
INSERT
INTO
SELECT
which
is
basically
the
same
thing
Alternatively
you
can
use
SELECT
INTO
OUTFILE
or
CREATE
TABLE
SELECT
to
solve
your
problem
433
5
3
3
Transactions
Transactions
are
not
supported
MySQL
shortly
will
support
atomic
operations
which
are
like
transactions
without
rollback
With
atomic
operations
you
can
execute
a
group
of
INSERT
SELECT
whatever
commands
and
be
guaranteed
that
no
other
thread
will
interfere
In
this
context
you
won
t
usually
need
rollback
Currently
you
can
prevent
interference
from
other
threads
by
using
the
LOCK
TABLES
and
UNLOCK
TABLES
commands
See
section
434
7
23
LOCK
TABLES
UNLOCK
TABLES
syntax
435
5
3
4
Stored
procedures
and
triggers
A
stored
procedure
is
a
set
of
SQL
commands
that
can
be
compiled
and
stored
in
the
server
Once
this
has
been
done
clients
don
t
need
to
keep
reissuing
the
entire
query
but
can
refer
to
the
stored
procedure
This
provides
better
performance
because
the
query
has
to
be
parsed
only
once
and
less
information
needs
to
be
sent
between
the
server
and
the
client
You
can
also
raise
the
conceptual
level
by
having
libraries
of
functions
in
the
server
A
trigger
is
a
stored
procedure
that
is
invoked
when
a
particular
event
occurs
For
example
you
can
install
a
stored
procedure
that
is
triggered
each
time
a
record
is
deleted
from
a
transaction
table
and
that
automatically
deletes
the
corresponding
customer
from
a
customer
table
when
all
his
transactions
are
deleted
The
planned
update
language
will
be
able
to
handle
stored
procedures
but
without
triggers
Triggers
usually
slow
down
everything
even
queries
for
which
they
are
not
needed
To
see
when
MySQL
might
get
stored
procedures
see
section
436
F
List
of
things
we
want
to
add
to
MySQL
in
the
future
The
TODO
437
5
3
5
Foreign
Keys
Note
that
foreign
keys
in
SQL
are
not
used
to
join
tables
but
are
used
mostly
for
checking
referential
integrity
If
you
want
to
get
results
from
multiple
tables
from
a
SELECT
statement
you
do
this
by
joining
tables
SELECT
from
table1
table2
where
table1
id
table2
id
See
section
438
7
12
JOIN
syntax
The
FOREIGN
KEY
syntax
in
MySQL
exists
only
for
compatibility
with
other
SQL
vendors
CREATE
TABLE
commands
it
doesn
t
do
anything
The
FOREIGN
KEY
syntax
without
ON
DELETE
is
mostly
used
for
documentation
purposes
Some
ODBC
applications
may
use
this
to
produce
automatic
WHERE
clauses
but
this
is
usually
easy
to
override
FOREIGN
KEY
is
sometimes
used
as
a
constraint
check
but
this
check
is
unnecessary
in
practice
if
rows
are
inserted
into
the
tables
in
the
right
order
MySQL
only
supports
these
clauses
because
some
applications
require
them
to
exist
regardless
of
whether
or
not
they
work
In
MySQL
you
can
work
around
the
problem
of
ON
DELETE
not
being
implemented
by
adding
the
appropriate
DELETE
statement
to
an
application
when
you
delete
records
from
a
table
that
has
a
foreign
key
In
practice
this
is
as
quick
in
some
cases
quicker
and
much
more
portable
than
using
foreign
keys
In
the
near
future
we
will
extend
the
FOREIGN
KEY
implementation
so
that
at
least
the
information
will
be
saved
in
the
table
specification
file
and
may
be
retrieved
by
mysqldump
and
ODBC
439
5
3
5
1
Reasons
NOT
to
use
foreign
keys
There
are
so
many
problems
with
FOREIGN
KEYs
that
we
don
t
know
where
to
start
Foreign
keys
make
life
very
complicated
because
the
foreign
key
definitions
must
be
stored
in
a
database
and
implementing
them
would
destroy
the
whole
nice
approach
of
using
files
that
can
be
moved
copied
and
removed
The
speed
impact
is
terrible
for
INSERT
and
UPDATE
statements
and
in
this
case
almost
all
FOREIGN
KEY
checks
are
useless
because
you
usually
insert
records
in
the
right
tables
in
the
right
order
anyway
There
is
also
a
need
to
hold
locks
on
many
more
tables
when
updating
one
table
because
the
side
effects
can
cascade
through
the
entire
database
It
s
MUCH
faster
to
delete
records
from
one
table
first
and
subsequently
delete
them
from
the
other
tables
You
can
no
longer
restore
a
table
by
doing
a
full
delete
from
the
table
and
then
restoring
all
records
from
a
new
source
or
from
a
backup
If
you
have
foreign
keys
you
can
t
dump
and
restore
tables
unless
you
do
so
in
a
very
specific
order
It
s
very
easy
to
do
allowed
circular
definitions
that
make
the
tables
impossible
to
recreate
each
table
with
a
single
create
statement
even
if
the
definition
works
and
is
usable
The
only
nice
aspect
of
FOREIGN
KEY
is
that
it
gives
ODBC
and
some
other
client
programs
the
ability
to
see
how
a
table
is
connected
and
to
use
this
to
show
connection
diagrams
and
to
help
in
building
applicatons
MySQL
will
soon
store
FOREIGN
KEY
definitions
so
that
a
client
can
ask
for
and
receive
an
answer
how
the
original
connection
was
made
The
current
frm
file
format
does
not
have
any
place
for
it
440
5
3
6
Views
MySQL
doesn
t
support
views
but
this
is
on
the
TODO
441
5
3
7
as
the
start
of
a
comment
Some
other
SQL
databases
use
to
start
comments
MySQL
has
as
the
start
comment
character
even
if
the
mysql
command
line
tool
removes
all
lines
that
start
with
You
can
also
use
the
C
comment
style
this
is
a
comment
with
MySQL
See
section
442
7
28
Comment
syntax
MySQL
will
not
support
this
degenerate
comment
style
has
caused
many
problems
with
automatically
generated
SQL
queries
that
have
used
something
like
the
following
code
where
we
automatically
insert
the
value
of
the
payment
for
payment
UPDATE
tbl
name
SET
credit
credit
payment
What
do
you
think
will
happen
when
the
value
of
payment
is
negative
Because
1
1
is
legal
in
SQL
we
think
it
is
terrible
that
means
start
comment
If
you
have
a
SQL
program
in
a
text
file
that
contains
comments
you
should
use
shell
replace
text
file
with
funny
comments
sql
mysql
database
instead
of
the
usual
shell
mysql
database
text
file
with
funny
comments
sql
You
can
also
edit
the
command
file
in
place
to
change
the
comments
to
comments
shell
replace
text
file
with
funny
comments
sql
Change
them
back
with
this
command
shell
replace
text
file
with
funny
comments
sql
443
5
4
What
standards
does
MySQL
follow
Entry
level
SQL92
ODBC
level
0
2
444
5
5
How
to
cope
without
COMMIT
ROLLBACK
MySQL
doesn
t
support
COMMIT
ROLLBACK
The
problem
is
that
handling
COMMIT
ROLLBACK
efficiently
would
require
a
completely
different
table
layout
than
MySQL
uses
today
MySQL
would
also
need
extra
threads
that
do
automatic
cleanups
on
the
tables
and
the
disk
usage
would
be
much
higher
This
would
make
MySQL
about
2
4
times
slower
than
it
is
today
MySQL
is
much
faster
than
almost
all
other
SQL
databases
typically
at
least
2
3
times
faster
One
of
the
reasons
for
this
is
the
lack
of
COMMIT
ROLLBACK
For
the
moment
we
are
much
more
for
implementing
the
SQL
server
language
something
like
stored
procedures
With
this
you
would
very
seldom
really
need
COMMIT
ROLLBACK
This
would
also
give
much
better
performance
Loops
that
need
transactions
normally
can
be
coded
with
the
help
of
LOCK
TABLES
and
you
don
t
need
cursors
when
you
can
update
records
on
the
fly
We
have
transactions
and
cursors
on
the
TODO
but
not
quite
prioritized
If
we
implement
these
it
will
be
as
an
option
to
CREATE
TABLE
That
means
that
COMMIT
ROLLBACK
will
work
only
on
those
tables
so
that
a
speed
penalty
will
be
imposed
on
those
table
only
We
at
TcX
have
a
greater
need
for
a
real
fast
database
than
a
100
general
database
Whenever
we
find
a
way
to
implement
these
features
without
any
speed
loss
we
will
probably
do
it
For
the
moment
there
are
many
more
important
things
to
do
Check
the
TODO
for
how
we
prioritize
things
at
the
moment
Customers
with
higher
levels
of
support
can
alter
this
so
things
may
be
reprioritized
The
current
problem
is
actually
ROLLBACK
Without
ROLLBACK
you
can
do
any
kind
of
COMMIT
action
with
LOCK
TABLES
To
support
ROLLBACK
MySQL
would
have
to
be
changed
to
store
all
old
records
that
were
updated
and
revert
everything
back
to
the
starting
point
if
ROLLBACK
was
issued
For
simple
cases
this
isn
t
that
hard
to
do
the
current
isamlog
could
be
used
for
this
purpose
but
it
would
be
much
more
difficult
to
implement
ROLLBACK
for
ALTER
DROP
CREATE
TABLE
To
avoid
using
ROLLBACK
you
can
use
the
following
strategy
1
Use
LOCK
TABLES
to
lock
all
the
tables
you
want
to
access
2
Test
conditions
3
Update
if
everything
is
okay
4
Use
UNLOCK
TABLES
to
release
your
locks
This
is
usually
a
much
faster
method
than
using
transactions
with
possible
ROLLBACKs
although
not
always
The
only
situation
this
solution
doesn
t
handle
is
when
someone
kills
the
threads
in
the
middle
of
an
update
In
this
case
all
locks
will
be
released
but
some
of
the
updates
may
not
have
been
executed
You
can
also
use
functions
to
update
records
in
a
single
operation
You
can
get
a
very
efficient
application
by
using
the
following
techniques
Modify
fields
relative
to
their
current
value
Update
only
those
fields
that
actually
have
changed
For
example
when
we
are
doing
updates
to
some
customer
information
we
update
only
the
customer
data
that
have
changed
and
test
only
that
none
of
the
changed
data
or
data
that
depend
on
the
changed
data
have
changed
compared
to
the
original
row
The
test
for
changed
data
is
done
with
the
WHERE
clause
in
the
UPDATE
statement
If
the
record
wasn
t
updated
we
give
the
client
a
message
Some
of
the
data
you
have
changed
have
been
changed
by
another
user
Then
we
show
the
old
row
versus
the
new
row
in
a
window
so
the
user
can
decide
which
version
of
the
customer
record
he
should
use
This
gives
us
something
that
is
similar
to
column
locking
but
is
actually
even
better
because
we
only
update
some
of
the
columns
using
values
that
are
relative
to
their
current
values
This
means
that
typical
UPDATE
statements
look
something
like
these
UPDATE
tablename
SET
pay
back
pay
back
relative
change
UPDATE
customer
SET
customer
date
current
date
address
new
address
phone
new
phone
money
he
owes
us
money
he
owes
us
new
money
WHERE
customer
id
id
AND
address
old
address
AND
phone
old
phone
As
you
can
see
this
is
very
efficient
and
works
even
if
another
client
has
changed
the
values
in
the
pay
back
or
money
he
owes
us
columns
In
many
cases
users
have
wanted
ROLLBACK
and
or
LOCK
TABLES
for
the
purpose
of
managing
unique
identifiers
for
some
tables
This
can
be
handled
much
more
efficiently
by
using
an
AUTO
INCREMENT
column
and
either
the
SQL
function
LAST
INSERT
ID
or
the
C
API
function
mysql
insert
id
See
section
445
19
4
28
mysql
insert
id
At
TcX
we
have
never
had
any
need
for
row
level
locking
because
we
have
always
been
able
to
code
around
it
Some
cases
really
need
row
locking
but
they
are
very
few
If
you
want
row
level
locking
you
can
use
a
flag
column
in
the
table
and
do
something
like
this
UPDATE
tbl
name
SET
row
flag
1
WHERE
id
ID
MySQL
returns
1
for
the
number
of
affected
rows
if
the
row
was
found
and
row
flag
wasn
t
already
1
in
the
original
row
You
can
think
of
it
as
MySQL
changed
the
above
query
to
UPDATE
tbl
name
SET
row
flag
1
WHERE
id
ID
and
row
flag
1
446
6
The
MySQL
access
privilege
system
MySQL
has
an
advanced
but
non
standard
security
privilege
system
This
section
describes
how
it
works
447
6
1
What
the
privilege
system
does
The
primary
function
of
the
MySQL
privilege
system
is
to
authenticate
a
user
connecting
from
a
given
host
and
to
associate
that
user
with
select
insert
update
and
delete
privileges
on
a
database
Additional
functionality
includes
the
ability
to
have
an
anonymous
user
and
to
grant
privileges
for
MySQL
specific
functions
such
as
LOAD
DATA
INFILE
and
administrative
operations
448
6
2
MySQL
user
names
and
passwords
There
are
several
distinctions
between
the
way
user
names
and
passwords
are
used
by
MySQL
and
the
way
they
are
used
by
Unix
or
Windows
User
names
as
used
by
MySQL
for
authentication
purposes
have
nothing
to
do
with
Unix
user
names
login
names
or
Windows
user
names
Most
MySQL
clients
by
default
try
to
log
in
using
the
current
Unix
user
name
as
the
MySQL
user
name
but
that
is
for
convenience
only
Client
programs
allow
a
different
name
to
be
specified
with
the
u
or
user
options
This
means
that
you
can
t
make
a
database
secure
in
any
way
unless
all
MySQL
user
names
have
passwords
Anyone
may
attempt
to
connect
to
the
server
using
any
name
and
they
will
succeed
if
they
specify
any
name
that
doesn
t
have
a
password
MySQL
user
names
can
be
up
to
16
characters
long
Unix
user
names
typically
are
limited
to
8
characters
MySQL
passwords
have
nothing
to
do
with
Unix
passwords
There
is
no
necessary
connection
between
the
password
you
use
to
log
in
to
a
Unix
machine
and
the
password
you
use
to
access
a
database
on
that
machine
MySQL
encrypts
passwords
using
a
different
algorithm
than
the
one
used
during
the
Unix
login
process
See
the
descriptions
of
the
PASSWORD
and
ENCRYPT
functions
in
section
449
7
3
12
Miscellaneous
functions
450
6
3
Connecting
to
the
MySQL
server
MySQL
client
programs
generally
require
that
you
specify
connection
parameters
when
you
want
to
access
a
MySQL
server
the
host
you
want
to
connect
to
your
user
name
and
your
password
For
example
the
mysql
client
can
be
started
like
this
optional
arguments
are
enclosed
between
and
shell
mysql
h
host
name
u
user
name
pyour
pass
Alternate
forms
of
the
h
u
and
p
options
are
host
host
name
user
user
name
and
password
your
pass
Note
that
there
is
no
space
between
p
or
password
and
the
password
following
it
Note
Specifing
a
password
on
the
command
line
is
not
secure
Any
user
on
your
system
may
then
find
out
your
password
by
typing
a
command
like
ps
auxww
See
section
451
4
15
4
Option
files
mysql
uses
default
values
for
connection
parameters
that
are
missing
from
the
command
line
The
default
hostname
is
localhost
The
default
user
name
is
your
Unix
login
name
No
password
is
supplied
if
p
is
missing
Thus
for
a
Unix
user
joe
the
following
commands
are
equivalent
shell
mysql
h
localhost
u
joe
shell
mysql
h
localhost
shell
mysql
u
joe
shell
mysql
Other
MySQL
clients
behave
similarly
On
Unix
systems
you
can
specify
different
default
values
to
be
used
when
you
make
a
connection
so
that
you
need
not
enter
them
on
the
command
line
each
time
you
invoke
a
client
program
This
can
be
done
in
a
couple
of
ways
You
can
specify
connection
parameters
in
the
client
section
of
the
my
cnf
configuration
file
in
your
home
directory
The
relevant
section
of
the
file
might
look
like
this
client
host
host
name
user
user
name
password
your
pass
See
section
452
4
15
4
Option
files
You
can
specify
connection
parameters
using
environment
values
The
host
can
be
specified
using
MYSQL
HOST
The
MySQL
user
name
can
be
specified
using
USER
LOGNAME
or
LOGIN
although
these
variables
might
already
be
set
to
your
Unix
login
name
and
it
may
be
unwise
to
change
them
The
password
can
be
specified
using
MYSQL
PWD
but
this
is
insecure
see
next
section
If
connection
parameters
are
specified
in
multiple
ways
values
specified
on
the
command
line
take
precedence
over
values
specified
in
configuration
files
and
environment
variables
and
values
in
configuration
files
take
precedence
over
values
in
environment
variables
453
6
4
Keeping
your
password
secure
It
is
inadvisable
to
specify
your
password
in
a
way
that
exposes
it
to
discovery
by
other
users
The
methods
you
can
use
to
specify
your
password
when
you
run
client
programs
are
listed
below
along
with
an
assessment
of
the
risks
of
each
method
Use
a
pyour
pass
or
password
your
pass
option
on
the
command
line
This
is
convenient
but
insecure
since
your
password
becomes
visible
to
system
status
programs
such
as
ps
that
may
be
invoked
by
other
users
to
display
command
lines
MySQL
clients
typically
overwrite
the
command
line
argument
with
zeroes
during
their
initialization
sequence
but
there
is
still
a
brief
interval
during
which
the
value
is
visible
Use
a
p
or
password
option
with
no
your
pass
value
specified
In
this
case
the
client
program
solicits
the
password
from
the
terminal
shell
mysql
u
user
name
p
Enter
password
The
client
echoes
characters
to
the
terminal
as
you
enter
your
password
so
that
onlookers
cannot
see
it
It
is
more
secure
to
enter
your
password
this
way
than
to
specify
it
on
the
command
line
because
it
is
not
visible
to
other
users
However
this
method
of
entering
a
password
is
suitable
only
for
programs
that
you
run
interactively
If
you
want
to
invoke
a
client
from
a
script
that
runs
non
interactively
there
is
no
opportunity
to
enter
the
password
from
the
terminal
Store
your
password
in
a
configuration
file
For
example
you
can
list
your
password
in
the
client
section
of
the
my
cnf
file
in
your
home
directory
client
password
your
pass
If
you
store
your
password
in
my
cnf
the
file
should
not
be
group
or
world
readable
or
writable
Make
sure
the
file
s
access
mode
is
400
or
600
See
section
454
4
15
4
Option
files
You
can
store
your
password
in
the
MYSQL
PWD
environment
variable
but
this
method
must
be
considered
extremely
insecure
and
should
not
be
used
Some
versions
of
ps
include
an
option
to
display
the
environment
of
running
processes
your
password
will
be
in
plain
sight
for
all
to
see
if
you
set
MYSQL
PWD
Even
on
systems
without
such
a
version
of
ps
it
is
unwise
to
assume
there
is
no
other
method
to
observe
process
environments
All
in
all
the
safest
methods
are
to
have
the
client
program
prompt
for
the
password
or
to
specify
the
password
in
a
properly
protected
my
cnf
file
455
6
5
Privileges
provided
by
MySQL
Privilege
information
is
stored
in
the
user
db
host
tables
priv
and
columns
priv
tables
in
the
mysql
database
that
is
in
the
database
named
mysql
The
MySQL
server
reads
the
contents
of
these
tables
when
it
starts
up
and
under
the
circumstances
indicated
in
section
456
6
9
When
privilege
changes
take
effect
The
names
used
in
this
manual
to
refer
to
the
privileges
provided
by
MySQL
are
shown
below
along
with
the
table
column
name
associated
with
each
privilege
in
the
grant
tables
and
the
context
in
which
the
privilege
applies
Privilege
Column
Context
select
Select
priv
tables
insert
Insert
priv
tables
update
Update
priv
tables
delete
Delete
priv
tables
index
Index
priv
tables
alter
Alter
priv
tables
create
Create
priv
databases
tables
or
indexes
drop
Drop
priv
databases
or
tables
grant
Grant
priv
databases
or
tables
reload
Reload
priv
server
administration
shutdown
Shutdown
priv
server
administration
process
Process
priv
server
administration
file
File
priv
file
access
on
server
The
select
insert
update
and
delete
privileges
allow
you
to
perform
operations
on
rows
in
existing
tables
in
a
database
SELECT
statements
require
the
select
privilege
only
if
they
actually
retrieve
rows
from
a
table
You
can
execute
certain
SELECT
statements
even
without
permission
to
access
any
of
the
databases
on
the
server
For
example
you
could
use
the
mysql
client
as
a
simple
calculator
mysql
SELECT
1
1
mysql
SELECT
PI
2
The
index
privilege
allows
you
to
create
or
drop
remove
indexes
The
alter
privilege
allows
you
to
use
ALTER
TABLE
The
create
and
drop
privileges
allow
you
to
create
new
databases
and
tables
or
to
drop
remove
existing
databases
and
tables
Note
that
if
you
grant
the
drop
privilege
for
the
mysql
database
to
a
user
that
user
can
drop
the
database
in
which
the
MySQL
access
privileges
are
stored
The
grant
privilege
allows
you
to
give
to
other
users
those
privileges
you
yourself
possess
The
file
privilege
gives
you
permission
to
read
and
write
files
on
the
server
using
the
LOAD
DATA
INFILE
and
SELECT
INTO
OUTFILE
statements
Any
user
to
whom
this
privilege
is
granted
can
read
or
write
any
file
that
the
MySQL
server
can
read
or
write
The
remaining
privileges
are
used
for
administrative
operations
which
are
performed
using
the
mysqladmin
program
The
table
below
shows
which
mysqladmin
commands
each
administrative
privilege
allows
you
to
execute
Privilege
Commands
permitted
to
privilege
holders
reload
reload
refresh
flush
privileges
flush
hosts
flush
logs
flush
tables
shutdown
shutdown
process
processlist
kill
The
reload
command
tells
the
server
to
reread
the
grant
tables
The
refresh
command
flushes
all
tables
and
opens
and
closes
the
log
files
flush
privileges
is
a
synonym
for
reload
The
other
flush
commands
perform
functions
similar
to
refresh
but
are
more
limited
in
scope
and
may
be
preferable
in
some
instances
For
example
if
you
want
to
flush
just
the
log
files
flush
logs
is
a
better
choice
than
refresh
The
shutdown
command
shuts
down
the
server
The
processlist
command
displays
information
about
the
threads
executing
within
the
server
The
kill
command
kills
server
threads
You
can
always
display
or
kill
your
own
threads
but
you
need
the
process
privilege
to
display
or
kill
threads
initiated
by
other
users
It
is
a
good
idea
in
general
to
grant
privileges
only
to
those
users
who
need
them
but
you
should
exercise
particular
caution
in
granting
certain
privileges
The
grant
privilege
allows
users
to
give
away
their
privileges
to
other
users
Two
users
with
different
privileges
and
with
the
grant
privilege
are
able
to
combine
privileges
The
alter
privilege
may
be
used
to
subvert
the
privilege
system
by
renaming
tables
The
file
privilege
can
be
abused
to
read
any
world
readable
file
on
the
server
into
a
database
table
the
contents
of
which
can
then
be
accessed
using
SELECT
The
shutdown
privilege
can
be
abused
to
deny
service
to
other
users
entirely
by
terminating
the
server
The
process
privilege
can
be
used
to
view
the
plain
text
of
currently
executing
queries
including
queries
that
set
or
change
passwords
Privileges
on
the
mysql
database
can
be
used
to
change
passwords
and
other
access
privilege
information
Passwords
are
stored
encrypted
so
a
malicious
user
cannot
simply
read
them
However
with
sufficient
privileges
that
same
user
can
replace
a
password
with
a
different
one
There
are
some
things
that
you
cannot
do
with
the
MySQL
privilege
system
You
cannot
explicitly
specify
that
a
given
user
should
be
denied
access
That
is
you
cannot
explicitly
match
a
user
and
then
refuse
the
connection
You
cannot
specify
that
a
user
has
privileges
to
create
or
drop
tables
in
a
database
but
not
to
create
or
drop
the
database
itself
457
6
6
How
the
privilege
system
works
The
MySQL
privilege
system
ensures
that
all
users
may
do
exactly
the
things
that
they
are
supposed
to
be
allowed
to
do
When
you
connect
to
a
MySQL
server
your
identity
is
determined
by
the
host
from
which
you
connect
and
the
user
name
you
specify
The
system
grants
privileges
according
to
your
identity
and
what
you
want
to
do
MySQL
considers
both
your
hostname
and
user
name
in
identifying
you
because
there
is
little
reason
to
assume
that
a
given
user
name
belongs
to
the
same
person
everywhere
on
the
Internet
For
example
the
user
bill
who
connects
from
whitehouse
gov
need
not
be
the
same
person
as
the
user
bill
who
connects
from
microsoft
com
MySQL
handles
this
by
allowing
you
to
distinguish
users
on
different
hosts
that
happen
to
have
the
same
name
you
can
grant
bill
one
set
of
privileges
for
connections
from
whitehouse
gov
and
a
different
set
of
privileges
for
connections
from
microsoft
com
MySQL
access
control
involves
two
stages
Stage
1
The
server
checks
whether
or
not
you
are
even
allowed
to
connect
Stage
2
Assuming
you
can
connect
the
server
checks
each
request
you
issue
to
see
whether
or
not
you
have
sufficient
privileges
to
perform
it
For
example
if
you
try
to
select
rows
from
a
table
in
a
database
or
drop
a
table
from
the
database
the
server
makes
sure
you
have
the
select
privilege
for
the
table
or
the
drop
privilege
for
the
database
The
server
uses
the
user
db
and
host
tables
in
the
mysql
database
at
both
stages
of
access
control
The
fields
in
these
grant
tables
are
shown
below
Table
name
user
db
host
Scope
fields
Host
Host
Host
User
Db
Db
Password
User
Privilege
fields
Select
priv
Select
priv
Select
priv
Insert
priv
Insert
priv
Insert
priv
Update
priv
Update
priv
Update
priv
Delete
priv
Delete
priv
Delete
priv
Index
priv
Index
priv
Index
priv
Alter
priv
Alter
priv
Alter
priv
Create
priv
Create
priv
Create
priv
Drop
priv
Drop
priv
Drop
priv
Grant
priv
Grant
priv
Grant
priv
Reload
priv
Shutdown
priv
Process
priv
File
priv
For
the
second
stage
of
access
control
request
verification
the
server
may
if
the
request
involves
tables
additionally
consult
the
tables
priv
and
columns
priv
tables
The
fields
in
these
tables
are
shown
below
Table
name
tables
priv
columns
priv
Scope
fields
Host
Host
Db
Db
User
User
Table
name
Table
name
Column
name
Privilege
fields
Table
priv
Column
priv
Column
priv
Other
fields
Timestamp
Timestamp
Grantor
Each
grant
table
contains
scope
fields
and
privilege
fields
Scope
fields
determine
the
scope
of
each
entry
in
the
tables
i
e
the
context
in
which
the
entry
applies
For
example
a
user
table
entry
with
Host
and
User
values
of
thomas
loc
gov
and
bob
would
be
used
for
authenticating
connections
made
to
the
server
by
bob
from
the
host
thomas
loc
gov
Similarly
a
db
table
entry
with
Host
User
and
Db
fields
of
thomas
loc
gov
bob
and
reports
would
be
used
when
bob
connects
from
the
host
thomas
loc
gov
to
access
the
reports
database
The
tables
priv
and
columns
priv
tables
contain
scope
fields
indicating
tables
or
table
column
combinations
to
which
each
entry
applies
For
access
checking
purposes
comparisons
of
Host
values
are
case
insensitive
User
Password
Db
and
Table
name
values
are
case
sensitive
Column
name
values
are
case
insensitive
in
MySQL
3
22
12
or
later
Privilege
fields
indicate
the
privileges
granted
by
a
table
entry
that
is
what
operations
can
be
performed
The
server
combines
the
information
in
the
various
grant
tables
to
form
a
complete
description
of
a
user
s
privileges
The
rules
used
to
do
this
are
described
in
section
458
6
8
Access
control
stage
2
Request
verification
Scope
fields
are
strings
declared
as
shown
below
the
default
value
for
each
is
the
empty
string
Field
name
Type
Host
CHAR
60
User
CHAR
16
Password
CHAR
16
Db
CHAR
64
CHAR
60
for
the
tables
priv
and
columns
priv
tables
In
the
user
db
and
host
tables
all
privilege
fields
are
declared
as
ENUM
N
Y
each
can
have
a
value
of
N
or
Y
and
the
default
value
is
N
In
the
tables
priv
and
columns
priv
tables
the
privilege
fields
are
declared
as
SET
fields
Table
name
Field
name
Possible
set
elements
tables
priv
Table
priv
Select
Insert
Update
Delete
Create
Drop
Grant
References
Index
Alter
tables
priv
Column
priv
Select
Insert
Update
References
columns
priv
Column
priv
Select
Insert
Update
References
Briefly
the
server
uses
the
grant
tables
like
this
The
user
table
scope
fields
determine
whether
to
allow
or
reject
incoming
connections
For
allowed
connections
the
privilege
fields
indicate
the
user
s
global
superuser
privileges
The
db
and
host
tables
are
used
together
The
db
table
scope
fields
determine
which
users
can
access
which
databases
from
which
hosts
The
privilege
fields
determine
which
operations
are
allowed
The
host
table
is
used
as
an
extension
of
the
db
table
when
you
want
a
given
db
table
entry
to
apply
to
several
hosts
For
example
if
you
want
a
user
to
be
able
to
use
a
database
from
several
hosts
in
your
network
leave
the
Host
value
empty
in
the
user
s
db
table
entry
then
populate
the
host
table
with
an
entry
for
each
of
those
hosts
This
mechanism
is
described
more
detail
in
section
459
6
8
Access
control
stage
2
Request
verification
The
tables
priv
and
columns
priv
tables
are
similar
to
the
db
table
but
are
more
fine
grained
they
apply
at
the
table
and
column
level
rather
than
at
the
database
level
Note
that
administrative
privileges
reload
shutdown
etc
are
specified
only
in
the
user
table
This
is
because
administrative
operations
are
operations
on
the
server
itself
and
are
not
database
specific
so
there
is
no
reason
to
list
such
privileges
in
the
other
grant
tables
In
fact
only
the
user
table
need
be
consulted
to
determine
whether
or
not
you
can
perform
an
administrative
operation
The
file
privilege
is
specified
only
in
the
user
table
too
It
is
not
an
administrative
privilege
as
such
but
your
ability
to
read
or
write
files
on
the
server
host
is
independent
of
the
database
you
are
accessing
The
mysqld
server
reads
the
contents
of
the
grant
tables
once
when
it
starts
up
Changes
to
the
grant
tables
take
effect
as
indicated
in
section
460
6
9
When
privilege
changes
take
effect
When
you
modify
the
contents
of
the
grant
tables
it
is
a
good
idea
to
make
sure
that
your
changes
set
up
privileges
the
way
you
want
For
help
in
diagnosing
problems
see
section
461
6
13
Causes
of
Access
denied
errors
For
advice
on
security
issues
section
462
6
14
How
to
make
MySQL
secure
against
crackers
A
useful
diagnostic
tool
is
the
mysqlaccess
script
which
Yves
Carlier
has
provided
for
the
MySQL
distribution
Invoke
mysqlaccess
with
the
help
option
to
find
out
how
it
works
Note
that
mysqlaccess
checks
access
using
only
the
user
db
and
host
tables
It
does
not
check
table
or
column
level
privileges
463
6
7
Access
control
stage
1
Connection
verification
When
you
attempt
to
connect
to
a
MySQL
server
the
server
accepts
or
rejects
the
connection
based
on
your
identity
and
whether
or
not
you
can
verify
your
identity
by
supplying
the
correct
password
If
not
the
server
denies
access
to
you
completely
Otherwise
the
server
accepts
the
connection
then
enters
stage
2
and
waits
for
requests
Your
identity
is
based
on
two
pieces
of
information
The
host
from
which
you
connect
Your
MySQL
user
name
Identity
checking
is
performed
using
the
three
user
table
scope
fields
Host
User
and
Password
The
server
accepts
the
connection
only
if
a
user
table
entry
matches
your
hostname
and
user
name
and
you
supply
the
correct
password
Values
in
the
user
table
scope
fields
may
be
specified
as
follows
A
Host
value
may
be
a
hostname
or
an
IP
number
or
localhost
to
indicate
the
local
host
You
can
use
the
wildcard
characters
and
in
the
Host
field
A
Host
value
of
matches
any
hostname
A
blank
Host
value
is
equivalent
to
Note
that
these
values
match
any
host
that
can
create
a
connection
to
your
server
Wildcard
characters
are
not
allowed
in
the
User
field
but
you
can
specify
a
blank
value
which
matches
any
name
If
the
user
table
entry
that
matches
an
incoming
connection
has
a
blank
user
name
the
user
is
considered
to
be
the
anonymous
user
the
user
with
no
name
rather
than
the
name
that
the
client
actually
specified
This
means
that
a
blank
user
name
is
used
for
all
further
access
checking
for
the
duration
of
the
connection
that
is
during
stage
2
The
Password
field
can
be
blank
This
does
not
mean
that
any
password
matches
it
means
the
user
must
connect
without
specifying
a
password
Non
blank
Password
values
represent
encrypted
passwords
MySQL
does
not
store
passwords
in
plaintext
form
for
anyone
to
see
Rather
the
password
supplied
by
a
user
who
is
attempting
to
connect
is
encrypted
using
the
PASSWORD
function
and
compared
to
the
already
encrypted
version
stored
in
the
user
table
If
they
match
the
password
is
correct
The
examples
below
show
how
various
combinations
of
Host
and
User
values
in
user
table
entries
apply
to
incoming
connections
Host
value
User
value
Connections
matched
by
entry
thomas
loc
gov
fred
fred
connecting
from
thomas
loc
gov
thomas
loc
gov
Any
user
connecting
from
thomas
loc
gov
fred
fred
connecting
from
any
host
Any
user
connecting
from
any
host
loc
gov
fred
fred
connecting
from
any
host
in
the
loc
gov
domain
x
y
fred
fred
connecting
from
x
y
net
x
y
com
x
y
edu
etc
this
is
probably
not
useful
144
155
166
177
fred
fred
connecting
from
the
host
with
IP
address
144
155
166
177
144
155
166
fred
fred
connecting
from
any
host
in
the
144
155
166
class
C
subnet
Since
you
can
use
IP
wildcard
values
in
the
Host
field
e
g
144
155
166
to
match
every
host
on
a
subnet
there
is
the
possibility
that
someone
might
try
to
exploit
this
capability
by
naming
a
host
144
155
166
somewhere
com
To
foil
such
attempts
MySQL
disallows
matching
on
hostnames
that
start
with
digits
and
a
dot
Thus
if
you
have
a
host
named
something
like
1
2
foo
com
its
name
will
never
match
the
Host
column
of
the
grant
tables
Only
an
IP
number
can
match
an
IP
wildcard
value
An
incoming
connection
may
be
matched
by
more
than
one
entry
in
the
user
table
For
example
a
connection
from
thomas
loc
gov
by
fred
would
be
matched
by
several
of
the
entries
just
shown
above
How
does
the
server
choose
which
entry
to
use
if
more
than
one
matches
The
server
resolves
this
question
by
sorting
the
user
table
after
reading
it
at
startup
time
then
looking
through
the
entries
in
sorted
order
when
a
user
attempts
to
connect
The
first
matching
entry
is
the
one
that
is
used
user
table
sorting
works
as
follows
Suppose
the
user
table
looks
like
this
Host
User
root
jeffrey
localhost
root
localhost
When
the
server
reads
in
the
table
it
orders
the
entries
with
the
most
specific
Host
values
first
in
the
Host
column
means
any
host
and
is
least
specific
Entries
with
the
same
Host
value
are
ordered
with
the
most
specific
User
values
first
a
blank
User
value
means
any
user
and
is
least
specific
The
resulting
sorted
user
table
looks
like
this
Host
User
localhost
root
localhost
jeffrey
root
When
a
connection
is
attempted
the
server
looks
through
the
sorted
entries
and
uses
the
first
match
found
For
a
connection
from
localhost
by
jeffrey
the
entries
with
localhost
in
the
Host
column
match
first
Of
those
the
entry
with
the
blank
user
name
matches
both
the
connecting
hostname
and
user
name
The
jeffrey
entry
would
have
matched
too
but
it
is
not
the
first
match
in
the
table
Here
is
another
example
Suppose
the
user
table
looks
like
this
Host
User
jeffrey
thomas
loc
gov
The
sorted
table
looks
like
this
Host
User
thomas
loc
gov
jeffrey
A
connection
from
thomas
loc
gov
by
jeffrey
is
matched
by
the
first
entry
whereas
a
connection
from
whitehouse
gov
by
jeffrey
is
matched
by
the
second
A
common
misconception
is
to
think
that
for
a
given
user
name
all
entries
that
explicitly
name
that
user
will
be
used
first
when
the
server
attempts
to
find
a
match
for
the
connection
This
is
simply
not
true
The
previous
example
illustrates
this
where
a
connection
from
thomas
loc
gov
by
jeffrey
is
first
matched
not
by
the
entry
containing
jeffrey
as
the
User
field
value
but
by
the
entry
with
no
user
name
If
you
have
problems
connecting
to
the
server
print
out
the
user
table
and
sort
it
by
hand
to
see
where
the
first
match
is
being
made
464
6
8
Access
control
stage
2
Request
verification
Once
you
establish
a
connection
the
server
enters
stage
2
For
each
request
that
comes
in
on
the
connection
the
server
checks
whether
you
have
sufficient
privileges
to
perform
it
based
on
the
type
of
operation
you
wish
to
perform
This
is
where
the
privilege
fields
in
the
grant
tables
come
into
play
These
privileges
can
come
from
any
of
the
user
db
host
tables
priv
or
columns
priv
tables
The
grant
tables
are
manipulated
with
GRANT
and
REVOKE
commands
See
section
465
7
25
GRANT
and
REVOKE
syntax
You
may
find
it
helpful
to
refer
to
section
466
6
6
How
the
privilege
system
works
which
lists
the
fields
present
in
each
of
the
grant
tables
The
user
table
grants
privileges
that
are
assigned
to
you
on
a
global
basis
and
that
apply
no
matter
what
the
current
database
is
For
example
if
the
user
table
grants
you
the
delete
privilege
you
can
delete
rows
from
any
database
on
the
server
host
In
other
words
user
table
privileges
are
superuser
privileges
It
is
wise
to
grant
privileges
in
the
user
table
only
to
superusers
such
as
server
or
database
administrators
For
other
users
you
should
leave
the
privileges
in
the
user
table
set
to
N
and
grant
privileges
on
a
database
specific
basis
only
using
the
db
and
host
tables
The
db
and
host
tables
grant
database
specific
privileges
Values
in
the
scope
fields
may
be
specified
as
follows
The
wildcard
characters
and
can
be
used
in
the
Host
and
Db
fields
of
either
table
A
Host
value
in
the
db
table
means
any
host
A
blank
Host
value
in
the
db
table
means
consult
the
host
table
for
further
information
A
or
blank
Host
value
in
the
host
table
means
any
host
A
or
blank
Db
value
in
either
table
means
any
database
A
blank
User
value
in
either
table
matches
the
anonymous
user
The
db
and
host
tables
are
read
in
and
sorted
when
the
server
starts
up
at
the
same
time
that
it
reads
the
user
table
The
db
table
is
sorted
on
the
Host
Db
and
User
scope
fields
and
the
host
table
is
sorted
on
the
Host
and
Db
scope
fields
As
with
the
user
table
sorting
puts
the
most
specific
values
first
and
least
specific
values
last
and
when
the
server
looks
for
matching
entries
it
uses
the
first
match
that
it
finds
The
tables
priv
and
columns
priv
tables
grant
table
and
column
specific
privileges
Values
in
the
scope
fields
may
be
specified
as
follows
The
wildcard
characters
and
can
be
used
in
the
Host
field
of
either
table
A
or
blank
Host
value
in
either
table
means
any
host
The
Db
Table
name
and
Column
name
fields
cannot
contain
wildcards
or
be
blank
in
either
table
The
tables
priv
and
columns
priv
tables
are
sorted
on
the
Host
Db
and
User
fields
This
is
similar
to
db
table
sorting
although
since
only
the
Host
field
may
contain
wildcards
the
sorting
is
simpler
The
request
verification
process
is
described
below
If
you
are
familiar
with
the
access
checking
source
code
you
will
notice
that
the
description
here
differs
slightly
from
the
algorithm
used
in
the
code
The
description
is
equivalent
to
what
the
code
actually
does
it
differs
only
to
make
the
explanation
simpler
For
administrative
requests
shutdown
reload
etc
the
server
checks
only
the
user
table
entry
since
that
is
the
only
table
that
specifies
administrative
privileges
Access
is
granted
if
the
entry
allows
the
requested
operation
and
denied
otherwise
For
example
if
you
want
to
execute
mysqladmin
shutdown
but
your
user
table
entry
doesn
t
grant
the
shutdown
privilege
to
you
access
is
denied
without
even
checking
the
db
or
host
tables
Since
they
contain
no
Shutdown
priv
column
there
is
no
need
to
do
so
For
database
related
requests
insert
update
etc
the
server
first
checks
the
user
s
global
superuser
privileges
by
looking
in
the
user
table
entry
If
the
entry
allows
the
requested
operation
access
is
granted
If
the
global
privileges
in
the
user
table
are
insufficient
the
server
determines
the
user
s
database
specific
privileges
by
checking
the
db
and
host
tables
1
The
server
looks
in
the
db
table
for
a
match
on
the
Host
Db
and
User
fields
Host
and
User
are
matched
to
the
connecting
user
s
hostname
and
MySQL
user
name
The
Db
field
is
matched
to
the
database
the
user
wants
to
access
If
there
is
no
entry
for
the
Host
and
User
access
is
denied
2
If
there
is
a
matching
db
table
entry
and
its
Host
field
is
not
blank
that
entry
defines
the
user
s
database
specific
privileges
3
If
the
matching
db
table
entry
s
Host
field
is
blank
it
signifies
that
the
host
table
enumerates
which
hosts
should
be
allowed
access
to
the
database
In
this
case
a
further
lookup
is
done
in
the
host
table
to
find
a
match
on
the
Host
and
Db
fields
If
no
host
table
entry
matches
access
is
denied
If
there
is
a
match
the
user
s
database
specific
privileges
are
computed
as
the
intersection
not
the
union
of
the
privileges
in
the
db
and
host
table
entries
i
e
the
privileges
that
are
Y
in
both
entries
This
way
you
can
grant
general
privileges
in
the
db
table
entry
and
then
selectively
restrict
them
on
a
host
by
host
basis
using
the
host
table
entries
After
determining
the
database
specific
privileges
granted
by
the
db
and
host
table
entries
the
server
adds
them
to
the
global
privileges
granted
by
the
user
table
If
the
result
allows
the
requested
operation
access
is
granted
Otherwise
the
server
checks
the
user
s
table
and
column
privileges
in
the
tables
priv
and
columns
priv
tables
and
adds
those
to
the
user
s
privileges
Access
is
allowed
or
denied
based
on
the
result
Expressed
in
boolean
terms
the
preceding
description
of
how
a
user
s
privileges
are
calculated
may
be
summarized
like
this
global
privileges
OR
database
privileges
AND
host
privileges
OR
table
privileges
OR
column
privileges
It
may
not
be
apparent
why
if
the
global
user
entry
privileges
are
initially
found
to
be
insufficient
for
the
requested
operation
the
server
adds
those
privileges
to
the
database
table
and
column
specific
privileges
later
The
reason
is
that
a
request
might
require
more
than
one
type
of
privilege
For
example
if
you
execute
an
INSERT
SELECT
statement
you
need
both
insert
and
select
privileges
Your
privileges
might
be
such
that
the
user
table
entry
grants
one
privilege
and
the
db
table
entry
grants
the
other
In
this
case
you
have
the
necessary
privileges
to
perform
the
request
but
the
server
cannot
tell
that
from
either
table
by
itself
the
privileges
granted
by
both
entries
must
be
combined
The
host
table
can
be
used
to
maintain
a
list
of
secure
servers
At
TcX
the
host
table
contains
a
list
of
all
machines
on
the
local
network
These
are
granted
all
privileges
You
can
also
use
the
host
table
to
indicate
hosts
that
are
not
secure
Suppose
you
have
a
machine
public
your
domain
that
is
located
in
a
public
area
that
you
do
not
consider
secure
You
can
allow
access
to
all
hosts
on
your
network
except
that
machine
by
using
host
table
entries
like
this
Host
Db
public
your
domain
all
privileges
set
to
N
your
domain
all
privileges
set
to
Y
Naturally
you
should
always
test
your
entries
in
the
grant
tables
e
g
using
mysqlaccess
to
make
sure
your
access
privileges
are
actually
set
up
the
way
you
think
they
are
467
6
9
When
privilege
changes
take
effect
When
mysqld
starts
all
grant
table
contents
are
read
into
memory
and
become
effective
at
that
point
Modifications
to
the
grant
tables
that
you
perform
using
GRANT
REVOKE
or
SET
PASSWORD
are
noticed
by
the
server
immediately
If
you
modify
the
grant
tables
manually
using
INSERT
UPDATE
etc
you
should
execute
a
FLUSH
PRIVILEGES
statement
or
run
mysqladmin
flush
privileges
to
tell
the
server
to
reload
the
grant
tables
Otherwise
your
changes
will
have
no
effect
until
you
restart
the
server
When
the
server
notices
that
the
grant
tables
have
been
changed
existing
client
connections
are
affected
as
follows
Table
and
column
privilege
changes
take
effect
with
the
client
s
next
request
Database
privilege
changes
take
effect
at
the
next
USE
db
name
command
Global
privilege
changes
and
password
changes
take
effect
the
next
time
the
client
connects
468
6
10
Setting
up
the
initial
MySQL
privileges
After
installing
MySQL
you
set
up
the
initial
access
privileges
by
running
scripts
mysql
install
db
See
section
469
4
7
1
Quick
installation
overview
The
scripts
mysql
install
db
script
starts
up
the
mysqld
server
then
initializes
the
grant
tables
to
contain
the
following
set
of
privileges
The
MySQL
root
user
is
created
as
a
superuser
who
can
do
anything
Connections
must
be
made
from
the
local
host
Note
The
initial
root
password
is
empty
so
anyone
can
connect
as
root
without
a
password
and
be
granted
all
privileges
An
anonymous
user
is
created
that
can
do
anything
with
databases
that
have
a
name
of
test
or
starting
with
test
Connections
must
be
made
from
the
local
host
This
means
any
local
user
can
connect
and
be
treated
as
the
anonymous
user
Other
privileges
are
denied
For
example
normal
users
can
t
use
mysqladmin
shutdown
or
mysqladmin
processlist
Note
The
default
privileges
are
different
for
Win32
See
section
470
4
12
4
Running
MySQL
on
Win32
Since
your
installation
is
initially
wide
open
one
of
the
first
things
you
should
do
is
specify
a
password
for
the
MySQL
root
user
You
can
do
this
as
follows
note
that
you
specify
the
password
using
the
PASSWORD
function
shell
mysql
u
root
mysql
mysql
UPDATE
user
SET
Password
PASSWORD
new
password
WHERE
user
root
mysql
FLUSH
PRIVILEGES
You
can
also
use
the
SET
PASSWORD
statement
shell
mysql
u
root
mysql
mysql
SET
PASSWORD
FOR
root
PASSWORD
new
password
Another
way
to
set
the
password
is
by
using
the
mysqladmin
command
shell
mysqladmin
u
root
password
new
password
Note
that
if
you
update
the
password
in
the
user
table
directly
using
the
first
method
you
must
tell
the
server
to
reread
the
grant
tables
with
FLUSH
PRIVILEGES
since
the
change
will
go
unnoticed
otherwise
Once
the
root
password
has
been
set
thereafter
you
must
supply
that
password
when
you
connect
to
the
server
as
root
You
may
wish
to
leave
the
root
password
blank
so
that
you
don
t
need
to
specify
it
while
you
perform
additional
setup
or
testing
but
be
sure
to
set
it
before
using
your
installation
for
any
real
production
work
See
the
scripts
mysql
install
db
script
to
see
how
it
sets
up
the
default
privileges
You
can
use
this
as
a
basis
to
see
how
to
add
other
users
If
you
want
the
initial
privileges
to
be
different
than
those
just
described
above
you
can
modify
mysql
install
db
before
you
run
it
To
recreate
the
grant
tables
completely
remove
all
the
frm
ISM
and
ISD
files
in
the
directory
containing
the
mysql
database
This
is
the
directory
named
mysql
under
the
database
directory
which
is
listed
when
you
run
mysqld
help
Then
run
the
mysql
install
db
script
possibly
after
editing
it
first
to
have
the
privileges
you
want
NOTE
For
MySQL
versions
before
3
22
10
you
should
NOT
delete
the
frm
files
If
you
accidentally
do
this
you
should
copy
them
back
from
your
MySQL
distribution
before
running
mysql
install
db
471
6
11
Adding
new
user
privileges
to
MySQL
You
can
add
users
two
different
ways
by
using
GRANT
statements
or
by
manipulating
the
MySQL
grant
tables
directly
The
preferred
method
is
to
use
GRANT
statements
because
they
are
more
concise
and
less
error
prone
The
examples
below
show
how
to
use
the
mysql
client
to
set
up
new
users
These
examples
assume
that
privileges
are
set
up
according
to
the
defaults
described
in
the
previous
section
This
means
that
to
make
changes
you
must
be
on
the
same
machine
where
mysqld
is
running
you
must
connect
as
the
MySQL
root
user
and
the
root
user
must
have
the
insert
privilege
for
the
mysql
database
and
the
reload
administrative
privilege
Also
if
you
have
changed
the
root
user
password
you
must
specify
it
for
the
mysql
commands
below
You
can
add
new
users
by
issuing
GRANT
statements
shell
mysql
user
root
mysql
mysql
GRANT
ALL
PRIVILEGES
ON
TO
monty
localhost
IDENTIFIED
BY
something
WITH
GRANT
OPTION
mysql
GRANT
ALL
PRIVILEGES
ON
TO
monty
IDENTIFIED
BY
something
WITH
GRANT
OPTION
mysql
GRANT
RELOAD
PROCESS
ON
TO
admin
localhost
mysql
GRANT
USAGE
ON
TO
dummy
localhost
These
GRANT
statements
set
up
three
new
users
monty
A
full
superuser
who
can
connect
to
the
server
from
anywhere
but
who
must
use
a
password
something
to
do
so
Note
that
we
must
issue
GRANT
statements
for
both
monty
localhost
and
monty
If
we
don
t
add
the
entry
with
localhost
the
anonymous
user
entry
for
localhost
that
is
created
by
mysql
install
db
will
take
precedence
when
we
connect
from
the
local
host
because
it
has
a
more
specific
Host
field
value
and
thuse
comes
earlier
in
the
user
table
sort
order
admin
A
user
who
can
connect
from
localhost
without
a
password
and
who
is
granted
the
reload
and
process
administrative
privileges
This
allows
the
user
to
execute
the
mysqladmin
reload
mysqladmin
refresh
and
mysqladmin
flush
commands
as
well
as
mysqladmin
processlist
No
database
related
privileges
are
granted
They
can
be
granted
later
by
issuing
additional
GRANT
statements
dummy
A
user
who
can
connect
without
a
password
but
only
from
the
local
host
The
global
privileges
are
all
set
to
N
the
USAGE
privilege
type
allows
you
to
set
up
a
user
with
no
privileges
It
is
assumed
that
you
will
grant
database
specific
privileges
later
You
can
also
add
the
same
user
access
information
directly
by
issuing
INSERT
statements
and
then
telling
the
server
to
reload
the
grant
tables
shell
mysql
user
root
mysql
mysql
INSERT
INTO
user
VALUES
localhost
monty
PASSWORD
something
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
mysql
INSERT
INTO
user
VALUES
monty
PASSWORD
something
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
Y
mysql
INSERT
INTO
user
SET
Host
localhost
User
admin
Reload
priv
Y
Process
priv
Y
mysql
INSERT
INTO
user
Host
User
Password
VALUES
localhost
dummy
mysql
FLUSH
PRIVILEGES
Depending
on
your
MySQL
version
you
may
have
to
use
a
different
number
of
Y
values
above
versions
prior
to
3
22
11
had
fewer
privilege
columns
For
the
admin
user
the
more
readable
extended
INSERT
syntax
that
is
available
starting
with
3
22
11
is
used
Note
that
to
set
up
a
superuser
you
need
only
create
a
user
table
entry
with
the
privilege
fields
set
to
Y
No
db
or
host
table
entries
are
necessary
The
privilege
columns
in
the
user
table
were
not
set
explicitly
in
the
last
INSERT
statement
for
the
dummy
user
so
those
columns
are
assigned
the
default
value
of
N
This
is
the
same
thing
that
GRANT
USAGE
does
The
following
example
adds
a
user
custom
who
can
connect
from
hosts
localhost
server
domain
and
whitehouse
gov
He
wants
to
access
the
bankaccount
database
only
from
localhost
the
expenses
database
only
from
whitehouse
gov
and
the
customer
database
from
all
three
hosts
He
wants
to
use
the
password
stupid
from
all
three
hosts
To
set
up
this
user
s
privileges
using
GRANT
statements
run
these
commands
shell
mysql
user
root
mysql
mysql
GRANT
SELECT
INSERT
UPDATE
DELETE
CREATE
DROP
ON
bankaccount
TO
custom
localhost
IDENTIFIED
BY
stupid
mysql
GRANT
SELECT
INSERT
UPDATE
DELETE
CREATE
DROP
ON
expenses
TO
custom
whitehouse
gov
IDENTIFIED
BY
stupid
mysql
GRANT
SELECT
INSERT
UPDATE
DELETE
CREATE
DROP
ON
customer
TO
custom
IDENTIFIED
BY
stupid
To
set
up
the
user
s
privileges
by
modifying
the
grant
tables
directly
run
these
commands
note
the
FLUSH
PRIVILEGES
at
the
end
shell
mysql
user
root
mysql
mysql
INSERT
INTO
user
Host
User
Password
VALUES
localhost
custom
PASSWORD
stupid
mysql
INSERT
INTO
user
Host
User
Password
VALUES
server
domain
custom
PASSWORD
stupid
mysql
INSERT
INTO
user
Host
User
Password
VALUES
whitehouse
gov
custom
PASSWORD
stupid
mysql
INSERT
INTO
db
Host
Db
User
Select
priv
Insert
priv
Update
priv
Delete
priv
Create
priv
Drop
priv
VALUES
localhost
bankaccount
custom
Y
Y
Y
Y
Y
Y
mysql
INSERT
INTO
db
Host
Db
User
Select
priv
Insert
priv
Update
priv
Delete
priv
Create
priv
Drop
priv
VALUES
whitehouse
gov
expenses
custom
Y
Y
Y
Y
Y
Y
mysql
INSERT
INTO
db
Host
Db
User
Select
priv
Insert
priv
Update
priv
Delete
priv
Create
priv
Drop
priv
VALUES
customer
custom
Y
Y
Y
Y
Y
Y
mysql
FLUSH
PRIVILEGES
The
first
three
INSERT
statements
add
user
table
entries
that
allow
user
custom
to
connect
from
the
various
hosts
with
the
given
password
but
grant
no
permissions
to
him
all
privileges
are
set
to
the
default
value
of
N
The
next
three
INSERT
statements
add
db
table
entries
that
grant
privileges
to
custom
for
the
bankaccount
expenses
and
customer
databases
but
only
when
accessed
from
the
proper
hosts
As
usual
when
the
grant
tables
are
modified
directly
the
server
must
be
told
to
reload
them
with
FLUSH
PRIVILEGES
so
that
the
privilege
changes
take
effect
If
you
want
to
give
a
specific
user
access
from
any
machine
in
a
given
domain
you
can
issue
a
GRANT
statement
like
the
following
mysql
GRANT
ON
TO
myusername
mydomainname
com
IDENTIFIED
BY
mypassword
To
do
the
same
thing
by
modifying
the
grant
tables
directly
do
this
mysql
INSERT
INTO
user
VALUES
mydomainname
com
myusername
PASSWORD
mypassword
mysql
FLUSH
PRIVILEGES
You
can
also
use
xmysqladmin
mysql
webadmin
and
even
xmysql
to
insert
change
and
update
values
in
the
grant
tables
You
can
find
these
utilities
at
the
MySQL
472
Contrib
directory
473
6
12
How
to
set
up
passwords
The
examples
in
the
preceding
sections
illustrate
an
important
principle
when
you
store
a
non
empty
password
using
INSERT
or
UPDATE
statements
you
must
use
the
PASSWORD
function
to
encrypt
it
This
is
because
the
user
table
stores
passwords
in
encrypted
form
not
as
plaintext
If
you
forget
that
fact
you
are
likely
to
attempt
to
set
passwords
like
this
shell
mysql
u
root
mysql
mysql
INSERT
INTO
user
Host
User
Password
VALUES
jeffrey
biscuit
mysql
FLUSH
PRIVILEGES
The
result
is
that
the
plaintext
value
biscuit
is
stored
as
the
password
in
the
user
table
When
the
user
jeffrey
attempts
to
connect
to
the
server
using
this
password
the
mysql
client
encrypts
it
with
PASSWORD
and
sends
the
result
to
the
server
The
server
compares
the
value
in
the
user
table
which
is
the
plaintext
value
biscuit
to
the
encrypted
password
which
is
not
biscuit
The
comparison
fails
and
the
server
rejects
the
connection
shell
mysql
u
jeffrey
pbiscuit
test
Access
denied
Since
passwords
must
be
encrypted
when
they
are
inserted
in
the
user
table
the
INSERT
statement
should
have
been
specified
like
this
instead
mysql
INSERT
INTO
user
Host
User
Password
VALUES
jeffrey
PASSWORD
biscuit
You
must
also
use
the
PASSWORD
function
when
you
use
SET
PASSWORD
statements
mysql
SET
PASSWORD
FOR
jeffrey
PASSWORD
biscuit
If
you
set
passwords
using
the
GRANT
IDENTIFIED
BY
statement
or
the
mysqladmin
password
command
the
PASSWORD
function
is
unnecessary
They
both
take
care
of
encrypting
the
password
for
you
so
you
would
specify
a
password
of
biscuit
like
this
mysql
GRANT
USAGE
ON
TO
jeffrey
IDENTIFIED
BY
biscuit
or
shell
mysqladmin
u
jeffrey
password
biscuit
Note
PASSWORD
does
not
perform
password
encryption
in
the
same
way
that
Unix
passwords
are
encrypted
You
should
not
assume
that
if
your
Unix
password
and
your
MySQL
password
are
the
same
PASSWORD
will
result
in
the
same
encrypted
value
as
is
stored
in
the
Unix
password
file
See
section
474
6
2
MySQL
user
names
and
passwords
475
6
13
Causes
of
Access
denied
errors
If
you
encounter
Access
denied
errors
when
you
try
to
connect
to
the
MySQL
server
the
list
below
indicates
some
courses
of
action
you
can
take
to
correct
the
problem
Did
you
run
the
mysql
install
db
script
after
installing
MySQL
to
set
up
the
initial
grant
table
contents
If
not
do
so
See
section
476
6
10
Setting
up
the
initial
MySQL
privileges
Test
the
initial
privileges
by
executing
this
command
shell
mysql
u
root
test
The
server
should
let
you
connect
without
error
You
should
also
make
sure
you
have
a
file
user
ISD
in
the
MySQL
database
directory
Ordinarily
this
is
PATH
var
mysql
user
ISD
where
PATH
is
the
pathname
to
the
MySQL
installation
root
After
a
fresh
installation
you
should
connect
to
the
server
and
set
up
your
users
and
their
access
permissions
shell
mysql
u
root
mysql
The
server
should
let
you
connect
because
the
MySQL
root
user
has
no
password
initially
Since
that
is
also
a
security
risk
setting
the
root
password
is
something
you
should
do
while
you
re
setting
up
your
other
MySQL
users
If
you
try
to
connect
as
root
and
get
this
error
Access
denied
for
user
unknown
to
database
mysql
this
means
that
you
don
t
have
an
entry
in
the
user
table
with
a
User
column
value
of
root
and
that
mysqld
cannot
resolve
the
hostname
for
your
client
In
this
case
you
must
restart
the
server
with
the
skip
grant
tables
option
and
edit
your
etc
hosts
or
windows
hosts
file
to
add
a
entry
for
your
host
If
you
updated
an
existing
MySQL
installation
from
a
pre
3
22
11
version
to
3
22
11
or
later
did
you
run
the
mysql
fix
privilege
tables
script
If
not
do
so
The
structure
of
the
grant
tables
changed
with
MySQL
3
22
11
when
the
GRANT
statement
became
functional
If
you
make
changes
to
the
grant
tables
directly
using
INSERT
or
UPDATE
statement
and
your
changes
seem
to
be
ignored
remember
that
you
must
issue
a
FLUSH
PRIVILEGES
statement
or
execute
a
mysqladmin
flush
privileges
command
to
cause
the
server
to
reread
the
tables
Otherwise
your
changes
have
no
effect
until
the
next
time
the
server
is
restarted
Remember
that
after
you
set
the
root
password
you
won
t
need
to
specify
it
until
after
you
flush
the
privileges
because
the
server
still
won
t
know
you
ve
changed
the
password
yet
If
your
privileges
seem
to
have
changed
in
the
middle
of
a
session
it
may
be
that
a
superuser
has
changed
them
Reloading
the
grant
tables
affects
new
client
connections
but
it
also
affects
existing
connections
as
indicated
in
section
477
6
9
When
privilege
changes
take
effect
For
testing
start
the
mysqld
daemon
with
the
skip
grant
tables
option
Then
you
can
change
the
MySQL
grant
tables
and
use
the
mysqlaccess
script
to
check
whether
or
not
your
modifications
have
the
desired
effect
When
you
are
satisfied
with
your
changes
execute
mysqladmin
flush
privileges
to
tell
the
mysqld
server
to
start
using
the
new
grant
tables
Note
Reloading
the
grant
tables
overrides
the
skip
grant
tables
option
This
allows
you
to
tell
the
server
to
begin
using
the
grant
tables
again
without
bringing
it
down
and
restarting
it
If
you
have
access
problems
with
a
Perl
Python
or
ODBC
program
try
to
connect
to
the
server
with
mysql
u
user
name
db
name
or
mysql
u
user
name
pyour
pass
db
name
If
you
are
able
to
connect
using
the
mysql
client
there
is
a
problem
with
your
program
and
not
with
the
access
privileges
Notice
that
there
is
no
space
between
p
and
the
password
you
can
also
use
the
password
your
pass
syntax
to
specify
the
password
If
you
can
t
get
your
password
to
work
remember
that
you
must
use
the
PASSWORD
function
if
you
set
the
password
with
the
INSERT
UPDATE
or
SET
PASSWORD
statements
The
PASSWORD
function
is
unnecessary
if
you
specify
the
password
using
the
GRANT
INDENTIFIED
BY
statement
or
the
mysqladmin
password
command
See
section
478
6
12
How
to
set
up
passwords
localhost
is
a
synonym
for
your
local
hostname
and
is
also
the
default
host
to
which
clients
try
to
connect
if
you
specify
no
host
explicitly
However
connections
to
localhost
do
not
work
if
you
are
running
on
a
system
that
uses
MIT
pthreads
localhost
connections
are
made
using
Unix
sockets
which
are
not
supported
by
MIT
pthreads
To
avoid
this
problem
on
such
systems
you
should
use
the
host
option
to
name
the
server
host
explicitly
This
will
make
a
TCP
IP
connection
to
the
mysqld
server
In
this
case
you
must
have
your
real
hostname
in
user
table
entries
on
the
server
host
This
is
true
even
if
you
are
running
a
client
program
on
the
same
host
as
the
server
If
you
get
an
Access
denied
error
when
trying
to
connect
to
the
database
with
mysql
u
user
name
db
name
you
may
have
a
problem
with
the
user
table
Check
this
by
executing
mysql
u
root
mysql
and
issuing
this
SQL
statement
mysql
SELECT
FROM
user
The
result
should
include
an
entry
with
the
Host
and
User
columns
matching
your
computer
s
hostname
and
your
MySQL
user
name
The
Access
denied
error
message
will
tell
you
who
you
are
trying
to
log
in
as
the
host
from
which
you
are
trying
to
connect
and
whether
or
not
you
were
using
a
password
Normally
you
should
have
one
entry
in
the
user
table
that
exactly
matches
the
hostname
and
user
name
that
were
given
in
the
error
message
If
you
get
the
following
error
when
you
try
to
connect
from
a
different
host
than
the
one
on
which
the
MySQL
server
is
running
then
there
is
no
row
in
the
user
table
that
matches
that
host
Host
is
not
allowed
to
connect
to
this
MySQL
server
You
can
fix
this
by
using
the
command
line
tool
mysql
on
the
server
host
to
add
a
row
to
the
user
table
for
the
user
hostname
combination
from
which
you
are
trying
to
connect
If
you
are
not
running
MySQL
3
22
and
you
don
t
know
the
IP
number
or
hostname
of
the
machine
from
which
you
are
connecting
you
should
put
an
entry
with
as
the
Host
column
value
in
the
user
table
and
restart
mysqld
with
the
log
option
on
the
server
machine
After
trying
to
connect
from
the
client
machine
the
information
in
the
MySQL
log
will
indicate
how
you
really
did
connect
Then
replace
the
in
the
user
table
entry
with
the
actual
hostname
that
shows
up
in
the
log
Otherwise
you
ll
have
a
system
that
is
insecure
If
mysql
u
root
test
works
but
mysql
h
your
hostname
u
root
test
results
in
Access
denied
then
you
may
not
have
the
correct
name
for
your
host
in
the
user
table
A
common
problem
here
is
that
the
Host
value
in
the
user
table
entry
specifies
an
unqualified
hostname
but
your
system
s
name
resolution
routines
return
a
fully
qualified
domain
name
or
vice
versa
For
example
if
you
have
an
entry
with
host
tcx
in
the
user
table
but
your
DNS
tells
MySQL
that
your
hostname
is
tcx
subnet
se
the
entry
will
not
work
Try
adding
an
entry
to
the
user
table
that
contains
the
IP
number
of
your
host
as
the
Host
column
value
Alternatively
you
could
add
an
entry
to
the
user
table
with
a
Host
value
that
contains
a
wildcard
for
example
tcx
However
use
of
hostnames
ending
with
is
insecure
and
is
not
recommended
If
mysql
u
user
name
test
works
but
mysql
u
user
name
other
db
name
doesn
t
work
you
don
t
have
an
entry
for
other
db
name
listed
in
the
db
table
If
mysql
u
user
name
db
name
works
when
executed
on
the
server
machine
but
mysql
u
host
name
u
user
name
db
name
doesn
t
work
when
executed
on
another
client
machine
you
don
t
have
the
client
machine
listed
in
the
user
table
or
the
db
table
If
you
can
t
figure
out
why
you
get
Access
denied
remove
from
the
user
table
all
entries
that
have
Host
values
containing
wildcards
entries
that
contain
or
A
very
common
error
is
to
insert
a
new
entry
with
Host
and
User
some
user
thinking
that
this
will
allow
you
to
specify
localhost
to
connect
from
the
same
machine
The
reason
that
this
doesn
t
work
is
that
the
default
privileges
include
an
entry
with
Host
localhost
and
User
Since
that
entry
has
a
Host
value
localhost
that
is
more
specific
than
it
is
used
in
preference
to
the
new
entry
when
connecting
from
localhost
The
correct
procedure
is
to
insert
a
second
entry
with
Host
localhost
and
User
some
user
or
to
remove
the
entry
with
with
Host
localhost
and
User
If
you
get
the
following
error
you
may
have
a
problem
with
the
db
or
host
table
Access
to
database
denied
If
the
entry
selected
from
the
db
table
has
an
empty
value
in
the
Host
column
make
sure
there
are
one
or
more
corresponding
entries
in
the
host
table
specifying
which
hosts
the
db
table
entry
applies
to
If
you
get
the
error
when
using
the
SQL
commands
SELECT
INTO
OUTFILE
or
LOAD
DATA
INFILE
your
entry
in
the
user
table
probably
doesn
t
have
the
file
privilege
enabled
Remember
that
client
programs
will
use
connection
parameters
specified
in
configuration
files
or
environment
variables
If
a
client
seems
to
be
sending
the
wrong
default
connection
parameters
when
you
don
t
specify
them
on
the
command
line
check
your
environment
and
the
my
cnf
file
in
your
home
directory
You
might
also
check
the
system
wide
MySQL
configuration
files
though
it
is
far
less
likely
that
client
connection
parameters
will
be
specified
there
See
section
479
4
15
4
Option
files
If
you
get
Access
denied
when
you
run
a
client
without
any
options
make
sure
you
haven
t
specified
an
old
password
in
any
of
your
option
files
See
section
480
4
15
4
Option
files
If
everything
else
fails
start
the
mysqld
daemon
with
a
debugging
option
for
example
debug
d
general
query
This
will
print
host
and
user
information
about
attempted
connections
as
well
as
information
about
each
command
issued
See
section
481
G
1
Debugging
a
MySQL
server
If
you
have
any
other
problems
with
the
MySQL
grant
tables
and
feel
you
must
post
the
problem
to
the
mailing
list
always
provide
a
dump
of
the
MySQL
grant
tables
You
can
dump
the
tables
with
the
mysqldump
mysql
command
As
always
post
your
problem
using
the
mysqlbug
script
In
some
cases
you
may
restart
mysqld
with
skip
grant
tables
to
be
able
to
run
mysqldump
482
6
14
How
to
make
MySQL
secure
against
crackers
When
you
connect
to
a
MySQL
server
you
should
normally
use
a
password
The
password
is
not
transmitted
in
clear
text
over
the
connection
All
other
information
is
transferred
as
text
that
can
be
read
by
anyone
that
is
able
to
watch
the
connection
If
you
are
concerned
about
this
you
can
use
the
compressed
protocol
in
MySQL
3
22
and
above
to
make
things
much
harder
To
make
things
even
more
secure
you
should
install
ssh
see
483
http
www
cs
hut
fi
ssh
With
this
you
can
get
an
encrypted
TCP
IP
connection
between
a
MySQL
server
and
a
MySQL
client
To
make
a
MySQL
system
secure
you
should
strongly
consider
the
following
suggestions
Use
passwords
for
all
MySQL
users
Remember
that
anyone
can
log
in
as
any
other
person
as
simply
as
mysql
u
other
user
db
name
if
other
user
has
no
password
It
is
common
behavior
with
client
server
applications
that
the
client
may
specify
any
user
name
You
can
change
the
password
of
all
users
by
editing
the
mysql
install
db
script
before
you
run
it
or
only
the
password
for
the
MySQL
root
user
like
this
shell
mysql
u
root
mysql
mysql
UPDATE
user
SET
Password
PASSWORD
new
password
WHERE
user
root
mysql
FLUSH
PRIVILEGES
Don
t
run
the
MySQL
daemon
as
the
Unix
root
user
mysqld
can
be
run
as
any
user
You
can
also
create
a
new
Unix
user
mysql
to
make
everything
even
more
secure
If
you
run
mysqld
as
another
Unix
user
you
don
t
need
to
change
the
root
user
name
in
the
user
table
because
MySQL
user
names
have
nothing
to
do
with
Unix
user
names
You
can
edit
the
mysql
server
script
to
start
mysqld
as
another
Unix
user
Normally
this
is
done
with
the
su
command
For
more
details
see
section
484
17
8
How
to
run
MySQL
as
a
normal
user
If
you
put
a
password
for
the
Unix
root
user
in
the
mysql
server
script
make
sure
this
script
is
readable
only
by
root
Check
that
the
Unix
user
that
mysqld
runs
as
is
the
only
user
with
read
write
privileges
in
the
database
directories
Don
t
give
the
process
privilege
to
all
users
The
output
of
mysqladmin
processlist
shows
the
text
of
the
currently
executing
queries
so
any
user
who
is
allowed
to
execute
that
command
might
be
able
to
see
if
another
user
issues
an
UPDATE
user
SET
password
PASSWORD
not
secure
query
mysqld
saves
an
extra
connection
for
users
who
have
the
process
privilege
so
that
a
MySQL
root
user
can
log
in
and
check
things
even
if
all
normal
connections
are
in
use
Don
t
give
the
file
privilege
to
all
users
Any
user
that
has
this
privilege
can
write
a
file
anywhere
in
the
file
system
with
the
privileges
of
the
mysqld
daemon
To
make
this
a
bit
safer
all
files
generated
with
SELECT
INTO
OUTFILE
are
readable
to
everyone
and
you
can
t
overwrite
existing
files
The
file
privilege
may
also
be
used
to
read
any
file
accessible
to
the
Unix
user
that
the
server
runs
as
This
could
be
abused
for
example
by
using
LOAD
DATA
to
load
etc
passwd
into
a
table
which
can
then
be
read
with
SELECT
If
you
don
t
trust
your
DNS
you
should
use
IP
numbers
instead
of
hostnames
in
the
grant
tables
In
principle
the
secure
option
to
mysqld
should
make
hostnames
safe
In
any
case
you
should
be
very
careful
about
using
hostname
values
that
contain
wildcards
The
following
mysqld
options
affect
security
secure
IP
numbers
returned
by
the
gethostbyname
system
call
are
checked
to
make
sure
they
resolve
back
to
the
original
hostname
This
makes
it
harder
for
someone
on
the
outside
to
get
access
by
simulating
another
host
This
option
also
adds
some
sanity
checks
of
hostnames
The
option
is
turned
off
by
default
in
MySQL
3
21
since
it
sometimes
takes
a
long
time
to
perform
backward
resolutions
MySQL
3
22
caches
hostnames
and
has
this
option
enabled
by
default
skip
grant
tables
This
option
causes
the
server
not
to
use
the
privilege
system
at
all
This
gives
everyone
full
access
to
all
databases
You
can
tell
a
running
server
to
start
using
the
grant
tables
again
by
executing
mysqladmin
reload
skip
name
resolve
Hostnames
are
not
resolved
All
Host
column
values
in
the
grant
tables
must
be
IP
numbers
or
localhost
skip
networking
Don
t
allow
TCP
IP
connections
over
the
network
All
connections
to
mysqld
must
be
made
via
Unix
sockets
This
option
is
unsuitable
for
systems
that
use
MIT
pthreads
because
the
MIT
pthreads
package
doesn
t
support
Unix
sockets
485
7
MySQL
language
reference
486
7
1
Literals
how
to
write
strings
and
numbers
487
7
1
1
Strings
A
string
is
a
sequence
of
characters
surrounded
by
either
single
quote
or
double
quote
characters
Examples
a
string
another
string
Within
a
string
certain
sequences
have
special
meaning
Each
of
these
sequences
begins
with
a
backslash
known
as
the
escape
character
MySQL
recognizes
the
following
escape
sequences
0
An
ASCII
0
NUL
character
n
A
newline
character
t
A
tab
character
r
A
carriage
return
character
b
A
backspace
character
A
single
quote
character
A
double
quote
character
A
backslash
character
A
character
This
is
used
to
search
for
literal
instances
of
in
contexts
where
would
otherwise
be
interpreted
as
a
wildcard
character
A
character
This
is
used
to
search
for
literal
instances
of
in
contexts
where
would
otherwise
be
interpreted
as
a
wildcard
character
There
are
several
ways
to
include
quotes
within
a
string
A
inside
a
string
quoted
with
may
be
written
as
A
inside
a
string
quoted
with
may
be
written
as
You
can
precede
the
quote
character
with
an
escape
character
A
inside
a
string
quoted
with
needs
no
special
treatment
and
need
not
be
doubled
or
escaped
In
the
same
way
inside
a
string
quoted
with
needs
no
special
treatment
The
SELECT
statements
shown
below
demonstrate
how
quoting
and
escaping
work
mysql
SELECT
hello
hello
hello
hel
lo
hello
hello
hello
hello
hel
lo
hello
mysql
SELECT
hello
hello
hello
hel
lo
hello
hello
hello
hello
hel
lo
hello
mysql
SELECT
This
nIs
nFour
nlines
This
Is
Four
lines
If
you
want
to
insert
binary
data
into
a
BLOB
column
the
following
characters
must
be
represented
by
escape
sequences
NUL
ASCII
0
You
should
represent
this
by
0
a
backslash
and
an
ASCII
0
character
ASCII
92
backslash
Represent
this
by
ASCII
39
single
quote
Represent
this
by
ASCII
34
double
quote
Represent
this
by
If
you
write
C
code
you
can
use
the
C
API
function
mysql
escape
string
to
escape
characters
for
the
INSERT
statement
See
section
488
19
3
C
API
function
overview
In
Perl
you
can
use
the
quote
method
of
the
DBI
package
to
convert
special
characters
to
the
proper
escape
sequences
See
section
489
19
5
2
The
DBI
interface
You
should
use
an
escape
function
on
any
string
that
might
contain
any
of
the
special
characters
listed
above
490
7
1
2
Numbers
Integers
are
represented
as
a
sequence
of
digits
Floats
use
as
a
decimal
separator
Either
type
of
number
may
be
preceded
by
to
indicate
a
negative
value
Examples
of
valid
integers
1221
0
32
Examples
of
valid
floating
point
numbers
294
42
32032
6809e
10
148
00
An
integer
may
be
used
in
a
floating
point
context
it
is
interpreted
as
the
equivalent
floating
point
number
491
7
1
3
NULL
values
The
NULL
value
means
no
data
and
is
different
from
values
such
as
0
for
numeric
types
or
the
empty
string
for
string
types
See
section
492
17
14
Problems
with
NULL
values
NULL
may
be
represented
by
N
when
using
the
text
file
import
or
export
formats
LOAD
DATA
INFILE
SELECT
INTO
OUTFILE
See
section
493
7
15
LOAD
DATA
INFILE
syntax
494
7
1
4
Database
table
index
column
and
alias
names
Database
table
index
column
and
alias
names
all
follow
the
same
rules
in
MySQL
A
name
may
consist
of
alphanumeric
characters
from
the
current
character
set
and
also
and
The
default
character
set
is
ISO
8859
1
Latin1
this
may
be
changed
by
recompiling
MySQL
See
section
495
9
1
1
The
character
set
used
for
data
and
sorting
A
database
table
index
or
column
name
can
be
up
to
64
characters
long
An
alias
name
can
be
up
to
256
characters
long
A
name
may
start
with
any
character
that
is
legal
in
a
name
In
particular
a
name
may
start
with
a
number
this
differs
from
many
other
database
systems
However
a
name
cannot
consist
only
of
numbers
It
is
recommended
that
you
do
not
use
names
like
1e
because
an
expression
like
1e
1
is
ambiguous
It
may
be
interpreted
as
the
expression
1e
1
or
as
the
number
1e
1
You
cannot
use
the
character
in
names
because
it
is
used
to
extend
the
format
by
which
you
can
refer
to
columns
see
immediately
below
In
MySQL
you
can
refer
to
a
column
using
any
of
the
following
forms
Column
reference
Meaning
col
name
Column
col
name
from
whichever
table
used
in
the
query
contains
a
column
of
that
name
tbl
name
col
name
Column
col
name
from
table
tbl
name
of
the
current
database
db
name
tbl
name
col
name
Column
col
name
from
table
tbl
name
of
the
database
db
name
This
form
is
available
in
MySQL
3
22
or
later
You
need
not
specify
a
tbl
name
or
db
name
tbl
name
prefix
for
a
column
reference
in
a
statement
unless
the
reference
would
be
ambiguous
For
example
suppose
tables
t1
and
t2
each
contain
a
column
c
and
you
retrieve
c
in
a
SELECT
statement
that
uses
both
t1
and
t2
In
this
case
c
is
ambiguous
because
it
is
not
unique
among
the
tables
used
in
the
statement
so
you
must
indicate
which
table
you
mean
by
writing
t1
c
or
t2
c
Similarly
if
you
are
retrieving
from
a
table
t
in
database
db1
and
from
a
table
t
in
database
db2
you
must
refer
to
columns
in
those
tables
as
db1
t
col
name
and
db2
t
col
name
The
syntax
tbl
name
means
the
table
tbl
name
in
the
current
database
This
syntax
is
accepted
for
ODBC
compatibility
because
some
ODBC
programs
prefix
table
names
with
a
character
496
7
1
4
1
Case
sensitivity
in
names
In
MySQL
databases
and
tables
correspond
to
directories
and
files
within
those
directories
Consequently
the
case
sensitivity
of
the
underlying
operating
system
determines
the
case
sensitivity
of
database
and
table
names
This
means
database
and
table
names
are
case
sensitive
in
Unix
and
case
insensitive
in
Win32
Note
Although
database
and
table
names
are
case
insensitive
for
Win32
you
should
not
refer
to
a
given
database
or
table
using
different
cases
within
the
same
query
The
following
query
would
not
work
because
it
refers
to
a
table
both
as
my
table
and
as
MY
TABLE
SELECT
FROM
my
table
WHERE
MY
TABLE
col
1
Column
names
are
case
insensitive
in
all
cases
Aliases
on
tables
are
case
sensitive
The
following
query
would
not
work
because
it
refers
to
the
alias
both
as
a
and
as
A
mysql
SELECT
col
name
FROM
tbl
name
AS
a
WHERE
a
col
name
1
OR
A
col
name
2
Aliases
on
columns
are
case
insensitive
497
7
2
Column
types
MySQL
supports
a
number
of
column
types
which
may
be
grouped
into
three
categories
numeric
types
date
and
time
types
and
string
character
types
This
section
first
gives
an
overview
of
the
types
available
and
summarizes
the
storage
requirements
for
each
column
type
then
provides
a
more
detailed
description
of
the
properties
of
the
types
in
each
category
The
overview
is
intentionally
brief
The
more
detailed
descriptions
should
be
consulted
for
additional
information
about
particular
column
types
such
as
the
allowable
formats
in
which
you
can
specify
values
The
column
types
supported
by
MySQL
are
listed
below
The
following
code
letters
are
used
in
the
descriptions
M
Indicates
the
maximum
display
size
The
maximum
legal
display
size
is
255
D
Applies
to
floating
point
types
and
indicates
the
number
of
digits
following
the
decimal
point
Square
brackets
and
indicate
parts
of
type
specifiers
that
are
optional
Note
that
if
you
specify
ZEROFILL
for
a
column
MySQL
will
automatically
add
the
UNSIGNED
attribute
to
the
column
TINYINT
M
UNSIGNED
ZEROFILL
A
very
small
integer
The
signed
range
is
128
to
127
The
unsigned
range
is
0
to
255
SMALLINT
M
UNSIGNED
ZEROFILL
A
small
integer
The
signed
range
is
32768
to
32767
The
unsigned
range
is
0
to
65535
MEDIUMINT
M
UNSIGNED
ZEROFILL
A
medium
size
integer
The
signed
range
is
8388608
to
8388607
The
unsigned
range
is
0
to
16777215
INT
M
UNSIGNED
ZEROFILL
A
normal
size
integer
The
signed
range
is
2147483648
to
2147483647
The
unsigned
range
is
0
to
4294967295
INTEGER
M
UNSIGNED
ZEROFILL
This
is
a
synonym
for
INT
BIGINT
M
UNSIGNED
ZEROFILL
A
large
integer
The
signed
range
is
9223372036854775808
to
9223372036854775807
The
unsigned
range
is
0
to
18446744073709551615
Note
that
all
arithmetic
is
done
using
signed
BIGINT
or
DOUBLE
values
so
you
shouldn
t
use
unsigned
big
integers
larger
than
9223372036854775807
63
bits
except
with
bit
functions
Note
that
and
will
use
BIGINT
arithmetic
when
both
arguments
are
INTEGER
values
This
means
that
if
you
multiply
two
big
integers
or
results
from
functions
that
return
integers
you
may
get
unexpected
results
if
the
result
is
larger
than
9223372036854775807
FLOAT
precision
ZEROFILL
A
floating
point
number
Cannot
be
unsigned
precision
can
be
4
or
8
FLOAT
4
is
a
single
precision
number
and
FLOAT
8
is
a
double
precision
number
These
types
are
like
the
FLOAT
and
DOUBLE
types
described
immediately
below
FLOAT
4
and
FLOAT
8
have
the
same
ranges
as
the
corresponding
FLOAT
and
DOUBLE
types
but
their
display
size
and
number
of
decimals
is
undefined
In
MySQL
3
23
this
is
a
true
floating
point
value
In
earlier
MySQL
versions
FLOAT
precision
always
has
2
decimals
This
syntax
is
provided
for
ODBC
compatibility
FLOAT
M
D
ZEROFILL
A
small
single
precision
floating
point
number
Cannot
be
unsigned
Allowable
values
are
3
402823466E
38
to
1
175494351E
38
0
and
1
175494351E
38
to
3
402823466E
38
DOUBLE
M
D
ZEROFILL
A
normal
size
double
precision
floating
point
number
Cannot
be
unsigned
Allowable
values
are
1
7976931348623157E
308
to
2
2250738585072014E
308
0
and
2
2250738585072014E
308
to
1
7976931348623157E
308
DOUBLE
PRECISION
M
D
ZEROFILL
REAL
M
D
ZEROFILL
These
are
synonyms
for
DOUBLE
DECIMAL
M
D
ZEROFILL
An
unpacked
floating
point
number
Cannot
be
unsigned
Behaves
like
a
CHAR
column
unpacked
means
the
number
is
stored
as
a
string
using
one
character
for
each
digit
of
the
value
the
decimal
point
and
for
negative
numbers
the
sign
If
D
is
0
values
will
have
no
decimal
point
or
fractional
part
The
maximum
range
of
DECIMAL
values
is
the
same
as
for
DOUBLE
but
the
actual
range
for
a
given
DECIMAL
column
may
be
constrained
by
the
choice
of
M
and
D
In
MySQL
3
23
the
M
argument
no
longer
includes
the
sign
or
the
decimal
point
This
is
according
to
ANSI
SQL
NUMERIC
M
D
ZEROFILL
This
is
a
synonym
for
DECIMAL
DATE
A
date
The
supported
range
is
1000
01
01
to
9999
12
31
MySQL
displays
DATE
values
in
YYYY
MM
DD
format
but
allows
you
to
assign
values
to
DATE
columns
using
either
strings
or
numbers
DATETIME
A
date
and
time
combination
The
supported
range
is
1000
01
01
00
00
00
to
9999
12
31
23
59
59
MySQL
displays
DATETIME
values
in
YYYY
MM
DD
HH
MM
SS
format
but
allows
you
to
assign
values
to
DATETIME
columns
using
either
strings
or
numbers
TIMESTAMP
M
A
timestamp
The
range
is
1970
01
01
00
00
00
to
sometime
in
the
year
2037
MySQL
displays
TIMESTAMP
values
in
YYYYMMDDHHMMSS
YYMMDDHHMMSS
YYYYMMDD
or
YYMMDD
format
depending
on
whether
M
is
14
or
missing
12
8
or
6
but
allows
you
to
assign
values
to
TIMESTAMP
columns
using
either
strings
or
numbers
A
TIMESTAMP
column
is
useful
for
recording
the
date
and
time
of
an
INSERT
or
UPDATE
operation
because
it
is
automatically
set
to
the
date
and
time
of
the
most
recent
operation
if
you
don
t
give
it
a
value
yourself
You
can
also
set
it
to
the
current
date
and
time
by
assigning
it
a
NULL
value
See
section
498
7
2
6
Date
and
time
types
TIME
A
time
The
range
is
838
59
59
to
838
59
59
MySQL
displays
TIME
values
in
HH
MM
SS
format
but
allows
you
to
assign
values
to
TIME
columns
using
either
strings
or
numbers
YEAR
A
year
The
allowable
values
are
1901
to
2155
and
0000
MySQL
displays
YEAR
values
in
YYYY
format
but
allows
you
to
assign
values
to
YEAR
columns
using
either
strings
or
numbers
The
YEAR
type
is
new
in
MySQL
3
22
CHAR
M
BINARY
A
fixed
length
string
that
is
always
right
padded
with
spaces
to
the
specified
length
when
stored
The
range
of
M
is
1
to
255
characters
Trailing
spaces
are
removed
when
the
value
is
retrieved
CHAR
values
are
sorted
and
compared
in
case
insensitive
fashion
unless
the
BINARY
keyword
is
given
VARCHAR
M
BINARY
A
variable
length
string
Note
Trailing
spaces
are
removed
when
the
value
is
stored
this
differs
from
the
ANSI
SQL
specification
The
range
of
M
is
1
to
255
characters
VARCHAR
values
are
sorted
and
compared
in
case
insensitive
fashion
unless
the
BINARY
keyword
is
given
See
section
499
7
6
1
Silent
column
specification
changes
TINYBLOB
TINYTEXT
A
BLOB
or
TEXT
column
with
a
maximum
length
of
255
2
8
1
characters
See
section
500
7
6
1
Silent
column
specification
changes
BLOB
TEXT
A
BLOB
or
TEXT
column
with
a
maximum
length
of
65535
2
16
1
characters
See
section
501
7
6
1
Silent
column
specification
changes
MEDIUMBLOB
MEDIUMTEXT
A
BLOB
or
TEXT
column
with
a
maximum
length
of
16777215
2
24
1
characters
See
section
502
7
6
1
Silent
column
specification
changes
LONGBLOB
LONGTEXT
A
BLOB
or
TEXT
column
with
a
maximum
length
of
4294967295
2
32
1
characters
See
section
503
7
6
1
Silent
column
specification
changes
ENUM
value1
value2
An
enumeration
A
string
object
that
can
have
only
one
value
chosen
from
the
list
of
values
value1
value2
or
NULL
An
ENUM
can
have
a
maximum
of
65535
distinct
values
SET
value1
value2
A
set
A
string
object
that
can
have
zero
or
more
values
each
of
which
must
be
chosen
from
the
list
of
values
value1
value2
A
SET
can
have
a
maximum
of
64
members
504
7
2
1
Column
type
storage
requirements
The
storage
requirements
for
each
of
the
column
types
supported
by
MySQL
are
listed
below
by
category
7
2
2
Numeric
types
Column
type
Storage
required
TINYINT
1
byte
SMALLINT
2
bytes
MEDIUMINT
3
bytes
INT
4
bytes
INTEGER
4
bytes
BIGINT
8
bytes
FLOAT
4
4
bytes
FLOAT
8
8
bytes
FLOAT
4
bytes
DOUBLE
8
bytes
DOUBLE
PRECISION
8
bytes
REAL
8
bytes
DECIMAL
M
D
M
bytes
D
2
if
M
D
NUMERIC
M
D
M
bytes
D
2
if
M
D
7
2
3
Date
and
time
types
Column
type
Storage
required
DATETIME
8
bytes
DATE
3
bytes
TIMESTAMP
4
bytes
TIME
3
bytes
YEAR
1
byte
7
2
4
String
types
Column
type
Storage
required
CHAR
M
M
bytes
1
M
255
VARCHAR
M
L
1
bytes
where
L
M
and
1
M
255
TINYBLOB
TINYTEXT
L
1
bytes
where
L
2
8
BLOB
TEXT
L
2
bytes
where
L
2
16
MEDIUMBLOB
MEDIUMTEXT
L
3
bytes
where
L
2
24
LONGBLOB
LONGTEXT
L
4
bytes
where
L
2
32
ENUM
value1
value2
1
or
2
bytes
depending
on
the
number
of
enumeration
values
65535
values
maximum
SET
value1
value2
1
2
3
4
or
8
bytes
depending
on
the
number
of
set
members
64
members
maximum
VARCHAR
and
the
BLOB
and
TEXT
types
are
variable
length
types
for
which
the
storage
requirements
depend
on
the
actual
length
of
column
values
represented
by
L
in
the
preceding
table
rather
than
on
the
type
s
maximum
possible
size
For
example
a
VARCHAR
10
column
can
hold
a
string
with
a
maximum
length
of
10
characters
The
actual
storage
required
is
the
length
of
the
string
L
plus
1
byte
to
record
the
length
of
the
string
For
the
string
abcd
L
is
4
and
the
storage
requirement
is
5
bytes
The
BLOB
and
TEXT
types
require
1
2
3
or
4
bytes
to
record
the
length
of
the
column
value
depending
on
the
maximum
possible
length
of
the
type
If
a
table
includes
any
variable
length
column
types
the
record
format
will
also
be
variable
length
Note
that
when
a
table
is
created
MySQL
may
under
certain
conditions
change
a
column
from
a
variable
length
type
to
a
fixed
length
type
or
vice
versa
See
section
505
7
6
1
Silent
column
specification
changes
The
size
of
an
ENUM
object
is
determined
by
the
number
of
different
enumeration
values
1
byte
is
used
for
enumerations
with
up
to
255
possible
values
2
bytes
are
used
for
enumerations
with
up
to
65535
values
The
size
of
a
SET
object
is
determined
by
the
number
of
different
set
members
If
the
set
size
is
N
the
object
occupies
N
7
8
bytes
rounded
up
to
1
2
3
4
or
8
bytes
A
SET
can
have
a
maximum
of
64
members
506
7
2
5
Numeric
types
All
integer
types
can
have
an
optional
attribute
UNSIGNED
Unsigned
values
can
be
used
when
you
want
to
allow
only
positive
numbers
in
a
column
and
you
need
a
little
bigger
numeric
range
for
the
column
All
numeric
types
can
have
an
optional
attribute
ZEROFILL
Values
for
ZEROFILL
columns
are
left
padded
with
zeroes
up
to
the
maximum
display
length
when
they
are
displayed
For
example
for
a
column
declared
as
INT
5
ZEROFILL
a
value
of
4
is
retrieved
as
00004
When
asked
to
store
a
value
in
a
numeric
column
that
is
outside
the
column
type
s
allowable
range
MySQL
clips
the
value
to
the
appropriate
endpoint
of
the
range
and
stores
the
resulting
value
instead
For
example
the
range
of
an
INT
column
is
2147483648
to
2147483647
If
you
try
to
insert
9999999999
into
an
INT
column
the
value
is
clipped
to
the
lower
endpoint
of
the
range
and
2147483648
is
stored
instead
Similarly
if
you
try
to
insert
9999999999
2147483647
is
stored
instead
If
the
INT
column
is
UNSIGNED
the
size
of
the
column
s
range
is
the
same
but
its
endpoints
shift
up
to
0
and
4294967295
If
you
try
to
store
9999999999
and
9999999999
the
values
stored
in
the
column
become
0
and
4294967296
Conversions
that
occur
due
to
clipping
are
reported
as
warnings
for
ALTER
TABLE
LOAD
DATA
INFILE
UPDATE
and
multi
row
INSERT
statements
The
maximum
display
size
M
and
number
of
decimals
D
are
used
for
formatting
and
calculation
of
maximum
column
width
MySQL
will
store
any
value
that
fits
a
column
s
storage
type
even
if
the
value
exceeds
the
display
size
For
example
an
INT
4
column
has
a
display
size
of
4
Suppose
you
insert
a
value
which
has
more
than
4
digits
into
the
column
such
as
12345
The
display
size
is
exceeded
but
the
allowable
range
of
the
INT
type
is
not
so
MySQL
stores
the
actual
value
12345
When
retrieving
the
value
from
the
column
MySQL
returns
the
actual
value
stored
in
the
column
The
DECIMAL
type
is
considered
a
numeric
type
as
is
its
synonym
NUMERIC
but
such
values
are
stored
as
strings
One
character
is
used
for
each
digit
of
the
value
the
decimal
point
if
D
0
and
the
sign
for
negative
numbers
If
D
is
0
DECIMAL
and
NUMERIC
values
contain
no
decimal
point
or
fractional
part
The
maximum
range
of
DECIMAL
values
is
the
same
as
for
DOUBLE
but
the
actual
range
for
a
given
DECIMAL
column
may
be
constrained
by
the
choice
of
M
and
D
For
example
a
type
specification
such
as
DECIMAL
4
2
indicates
a
maximum
length
of
four
characters
with
two
digits
after
the
decimal
point
Due
to
the
way
the
DECIMAL
type
is
stored
this
specification
results
in
an
allowable
range
of
99
to
9
99
much
less
than
the
range
of
a
DOUBLE
To
avoid
some
rounding
problems
MySQL
always
rounds
everything
that
it
stores
in
any
floating
point
column
to
the
number
of
decimals
indicated
by
the
column
specification
Suppose
you
have
a
column
type
of
FLOAT
8
2
The
number
of
decimals
is
2
so
a
value
such
as
2
333
is
rounded
to
two
decimals
and
stored
as
2
33
507
7
2
6
Date
and
time
types
The
date
and
time
types
are
DATETIME
DATE
TIMESTAMP
TIME
and
YEAR
Each
of
these
has
a
range
of
legal
values
as
well
as
a
zero
value
that
is
used
when
you
specify
an
illegal
value
Here
are
some
general
considerations
to
keep
in
mind
when
working
with
date
and
time
types
MySQL
retrieves
values
for
a
given
date
or
time
type
in
a
standard
format
but
it
attempts
to
interpret
a
variety
of
formats
for
values
that
you
supply
e
g
when
you
specify
a
value
to
be
assigned
to
or
compared
to
a
date
or
time
type
Nevertheless
only
the
formats
described
in
the
following
sections
are
supported
It
is
expected
that
you
will
supply
legal
values
and
unpredictable
results
may
occur
if
you
use
values
in
other
formats
Although
MySQL
tries
to
interpret
values
in
several
formats
it
always
expects
the
year
part
of
date
values
to
be
leftmost
Dates
must
be
given
in
year
month
day
order
e
g
98
09
04
rather
than
in
the
month
day
year
or
day
month
year
orders
commonly
used
elsewhere
e
g
09
04
98
04
09
98
MySQL
automatically
converts
a
date
or
time
type
value
to
a
number
if
the
value
is
used
in
a
numeric
context
and
vice
versa
When
MySQL
encounters
a
value
for
a
date
or
time
type
that
is
out
of
range
or
otherwise
illegal
for
the
type
it
converts
the
value
to
the
zero
value
for
that
type
The
exception
is
that
out
of
range
TIME
values
are
clipped
to
the
appropriate
endpoint
of
the
TIME
range
The
table
below
shows
the
format
of
the
zero
value
for
each
type
Column
type
Zero
value
DATETIME
0000
00
00
00
00
00
DATE
0000
00
00
TIMESTAMP
00000000000000
length
depends
on
display
size
TIME
00
00
00
YEAR
0000
The
zero
values
are
special
but
you
can
store
or
refer
to
them
explicitly
using
the
values
shown
in
the
table
You
can
also
do
this
using
the
values
0
or
0
which
are
easier
to
write
Zero
date
or
time
values
used
through
MyODBC
are
converted
automatically
to
NULL
in
MyODBC
2
50
12
and
above
because
ODBC
can
t
handle
such
values
508
7
2
6
1
Y2K
issues
and
date
types
MySQL
itself
is
Y2K
safe
see
section
509
1
6
Year
2000
compliance
but
input
values
presented
to
MySQL
may
not
be
Any
input
containing
2
digit
year
values
is
ambiguous
since
the
century
is
unknown
Such
values
must
be
interpreted
into
4
digit
form
since
MySQL
stores
years
internally
using
four
digits
For
DATETIME
DATE
TIMESTAMP
and
YEAR
types
MySQL
interprets
dates
with
ambiguous
year
values
using
the
following
rules
Year
values
in
the
range
00
69
are
converted
to
2000
2069
Year
values
in
the
range
70
99
are
converted
to
1970
1999
Remember
that
these
rules
provide
only
reasonable
guesses
as
to
what
your
data
mean
If
the
heuristics
used
by
MySQL
don
t
produce
the
correct
values
you
should
provide
unambiguous
input
containing
4
digit
year
values
510
7
2
6
2
The
DATETIME
DATE
and
TIMESTAMP
types
The
DATETIME
DATE
and
TIMESTAMP
types
are
related
This
section
describes
their
characteristics
how
they
are
similar
and
how
they
differ
The
DATETIME
type
is
used
when
you
need
values
that
contain
both
date
and
time
information
MySQL
retrieves
and
displays
DATETIME
values
in
YYYY
MM
DD
HH
MM
SS
format
The
supported
range
is
1000
01
01
00
00
00
to
9999
12
31
23
59
59
Supported
means
that
although
earlier
values
might
work
there
is
no
guarantee
that
they
will
The
DATE
type
is
used
when
you
need
only
a
date
value
without
a
time
part
MySQL
retrieves
and
displays
DATE
values
in
YYYY
MM
DD
format
The
supported
range
is
1000
01
01
to
9999
12
31
The
TIMESTAMP
column
type
provides
a
type
that
you
can
use
to
automatically
mark
INSERT
or
UPDATE
operations
with
the
current
date
and
time
If
you
have
multiple
TIMESTAMP
columns
only
the
first
one
is
updated
automatically
Automatic
updating
of
the
first
TIMESTAMP
column
occurs
under
any
of
the
following
conditions
The
column
is
not
specified
explicitly
in
an
INSERT
or
LOAD
DATA
INFILE
statement
The
column
is
not
specified
explicitly
in
an
UPDATE
statement
and
some
other
column
changes
value
Note
that
an
UPDATE
that
sets
a
column
to
the
value
it
already
has
will
not
cause
the
TIMESTAMP
column
to
be
updated
because
if
you
set
a
column
to
its
current
value
MySQL
ignores
the
update
for
efficiency
You
explicitly
set
the
TIMESTAMP
column
to
NULL
TIMESTAMP
columns
other
than
the
first
may
also
be
set
to
the
current
date
and
time
Just
set
the
column
to
NULL
or
to
NOW
You
can
set
any
TIMESTAMP
column
to
a
value
different
than
the
current
date
and
time
by
setting
it
explicitly
to
the
desired
value
This
is
true
even
for
the
first
TIMESTAMP
column
You
can
use
this
property
if
for
example
you
want
a
TIMESTAMP
to
be
set
to
the
current
date
and
time
when
you
create
a
row
but
not
to
be
changed
whenever
the
row
is
updated
later
Let
MySQL
set
the
column
when
the
row
is
created
This
will
initialize
it
to
the
current
date
and
time
When
you
perform
subsequent
updates
to
other
columns
in
the
row
set
the
TIMESTAMP
column
explicitly
to
its
current
value
On
the
other
hand
you
may
find
it
just
as
easy
to
use
a
DATETIME
column
that
you
initialize
to
NOW
when
the
row
is
created
and
leave
alone
for
subsequent
updates
TIMESTAMP
values
may
range
from
the
beginning
of
1970
to
sometime
in
the
year
2037
with
a
resolution
of
one
second
Values
are
displayed
as
numbers
The
format
in
which
MySQL
retrieves
and
displays
TIMESTAMP
values
depends
on
the
display
size
as
illustrated
by
the
table
below
The
full
TIMESTAMP
format
is
14
digits
but
TIMESTAMP
columns
may
be
created
with
shorter
display
sizes
Column
type
Display
format
TIMESTAMP
14
YYYYMMDDHHMMSS
TIMESTAMP
12
YYMMDDHHMMSS
TIMESTAMP
10
YYMMDDHHMM
TIMESTAMP
8
YYYYMMDD
TIMESTAMP
6
YYMMDD
TIMESTAMP
4
YYMM
TIMESTAMP
2
YY
All
TIMESTAMP
columns
have
the
same
storage
size
regardless
of
display
size
The
most
common
display
sizes
are
6
8
12
and
14
You
can
specify
an
arbitrary
display
size
at
table
creation
time
but
values
of
0
or
greater
than
14
are
coerced
to
14
Odd
valued
sizes
in
the
range
from
1
to
13
are
coerced
to
the
next
higher
even
number
You
can
specify
DATETIME
DATE
and
TIMESTAMP
values
using
any
of
a
common
set
of
formats
As
a
string
in
either
YYYY
MM
DD
HH
MM
SS
or
YY
MM
DD
HH
MM
SS
format
A
relaxed
syntax
is
allowed
any
non
numeric
character
may
be
used
as
the
delimiter
between
date
parts
or
time
parts
For
example
98
12
31
11
30
45
98
12
31
11
30
45
98
12
31
11
30
45
and
98
12
31
11
30
45
are
equivalent
As
a
string
in
either
YYYY
MM
DD
or
YY
MM
DD
format
A
relaxed
syntax
is
allowed
here
too
For
example
98
12
31
98
12
31
98
12
31
and
98
12
31
are
equivalent
As
a
string
with
no
delimiters
in
either
YYYYMMDDHHMMSS
or
YYMMDDHHMMSS
format
provided
that
the
string
makes
sense
as
a
date
For
example
19970523091528
and
970523091528
are
interpreted
as
1997
05
23
09
15
28
but
971122459015
is
illegal
it
has
a
nonsensical
minute
part
and
becomes
0000
00
00
00
00
00
As
a
string
with
no
delimiters
in
either
YYYYMMDD
or
YYMMDD
format
provided
that
the
string
makes
sense
as
a
date
For
example
19970523
and
970523
are
interpreted
as
1997
05
23
but
971332
is
illegal
it
has
nonsensical
month
and
day
parts
and
becomes
0000
00
00
As
a
number
in
either
YYYYMMDDHHMMSS
or
YYMMDDHHMMSS
format
provided
that
the
number
makes
sense
as
a
date
For
example
19830905132800
and
830905132800
are
interpreted
as
1983
09
05
13
28
00
As
a
number
in
either
YYYYMMDD
or
YYMMDD
format
provided
that
the
number
makes
sense
as
a
date
For
example
19830905
and
830905
are
interpreted
as
1983
09
05
As
the
result
of
a
function
that
returns
a
value
that
is
acceptable
in
a
DATETIME
DATE
or
TIMESTAMP
context
such
as
NOW
or
CURRENT
DATE
Illegal
DATETIME
DATE
or
TIMESTAMP
values
are
converted
to
the
zero
value
of
the
appropriate
type
0000
00
00
00
00
00
0000
00
00
or
00000000000000
For
values
specified
as
strings
that
include
date
part
delimiters
it
is
not
necessary
to
specify
two
digits
for
month
or
day
values
that
are
less
than
10
1979
6
9
is
the
same
as
1979
06
09
Similarly
for
values
specified
as
strings
that
include
time
part
delimiters
it
is
not
necessary
to
specify
two
digits
for
hour
month
or
second
values
that
are
less
than
10
1979
10
30
1
2
3
is
the
same
as
1979
10
30
01
02
03
Values
specified
as
numbers
should
be
6
8
12
or
14
digits
long
If
the
number
is
8
or
14
digits
long
it
is
assumed
to
be
in
YYYYMMDD
or
YYYYMMDDHHMMSS
format
and
that
the
year
is
given
by
the
first
4
digits
If
the
number
is
6
or
12
digits
long
it
is
assumed
to
be
in
YYMMDD
or
YYMMDDHHMMSS
format
and
that
the
year
is
given
by
the
first
2
digits
Numbers
that
are
not
one
of
these
lengths
are
interpreted
as
though
padded
with
leading
zeros
to
the
closest
length
Values
specified
as
non
delimited
strings
are
interpreted
using
their
length
as
given
If
the
string
is
8
or
14
characters
long
the
year
is
assumed
to
be
given
by
the
first
4
characters
Otherwise
the
year
is
assumed
to
be
given
by
the
first
2
characters
The
string
is
interpreted
from
left
to
right
to
find
year
month
day
hour
minute
and
second
values
for
as
many
parts
as
are
present
in
the
string
This
means
you
should
not
use
strings
that
have
fewer
than
6
characters
For
example
if
you
specify
9903
thinking
that
will
represent
March
1999
you
will
find
that
MySQL
inserts
a
zero
date
into
your
table
This
is
because
the
year
and
month
values
are
99
and
03
but
the
day
part
is
missing
zero
so
the
value
is
not
a
legal
date
TIMESTAMP
columns
store
legal
values
using
the
full
precision
with
which
the
value
was
specified
regardless
of
the
display
size
This
has
several
implications
Always
specify
year
month
and
day
even
if
your
column
types
are
TIMESTAMP
4
or
TIMESTAMP
2
Otherwise
the
value
will
not
be
a
legal
date
and
0
will
be
stored
If
you
use
ALTER
TABLE
to
widen
a
narrow
TIMESTAMP
column
information
will
be
displayed
that
previously
was
hidden
Similarly
narrowing
a
TIMESTAMP
column
does
not
cause
information
to
be
lost
except
in
the
sense
that
less
information
is
shown
when
the
values
are
displayed
Although
TIMESTAMP
values
are
stored
to
full
precision
the
only
function
that
operates
directly
on
the
underlying
stored
value
is
UNIX
TIMESTAMP
Other
functions
operate
on
the
formatted
retrieved
value
This
means
you
cannot
use
functions
such
as
HOUR
or
SECOND
unless
the
relevant
part
of
the
TIMESTAMP
value
is
included
in
the
formatted
value
For
example
the
HH
part
of
a
TIMESTAMP
column
is
not
displayed
unless
the
display
size
is
at
least
10
so
trying
to
use
HOUR
on
shorter
TIMESTAMP
values
produces
a
meaningless
result
You
can
to
some
extent
assign
values
of
one
date
type
to
an
object
of
a
different
date
type
However
there
may
be
some
alteration
of
the
value
or
loss
of
information
If
you
assign
a
DATE
value
to
a
DATETIME
or
TIMESTAMP
object
the
time
part
of
the
resulting
value
is
set
to
00
00
00
because
the
DATE
value
contains
no
time
information
If
you
assign
a
DATETIME
or
TIMESTAMP
value
to
a
DATE
object
the
time
part
of
the
resulting
value
is
deleted
because
the
DATE
type
stores
no
time
information
Remember
that
although
DATETIME
DATE
and
TIMESTAMP
values
all
can
be
specified
using
the
same
set
of
formats
the
types
do
not
all
have
the
same
range
of
values
For
example
TIMESTAMP
values
cannot
be
earlier
than
1970
or
later
than
2037
This
means
that
a
date
such
as
1968
01
01
while
legal
as
a
DATETIME
or
DATE
value
is
not
a
valid
TIMESTAMP
value
and
will
be
converted
to
0
if
assigned
to
such
an
object
Be
aware
of
certain
pitfalls
when
specifying
date
values
The
relaxed
format
allowed
for
values
specified
as
strings
can
be
deceiving
For
example
a
value
such
as
10
11
12
might
look
like
a
time
value
because
of
the
delimiter
but
if
used
in
a
date
context
will
be
interpreted
as
the
year
2010
11
12
The
value
10
45
15
will
be
converted
to
0000
00
00
because
45
is
not
a
legal
month
Year
values
specified
as
two
digits
are
ambiguous
since
the
century
is
unknown
MySQL
interprets
2
digit
year
values
using
the
following
rules
Year
values
in
the
range
00
69
are
converted
to
2000
2069
Year
values
in
the
range
70
99
are
converted
to
1970
1999
511
7
2
6
3
The
TIME
type
MySQL
retrieves
and
displays
TIME
values
in
HH
MM
SS
format
or
HHH
MM
SS
format
for
large
hours
values
TIME
values
may
range
from
838
59
59
to
838
59
59
The
reason
the
hours
part
may
be
so
large
is
that
the
TIME
type
may
be
used
not
only
to
represent
a
time
of
day
which
must
be
less
than
24
hours
but
also
elapsed
time
or
a
time
interval
between
two
events
which
may
be
much
greater
than
24
hours
or
even
negative
You
can
specify
TIME
values
in
a
variety
of
formats
As
a
string
in
HH
MM
SS
format
A
relaxed
syntax
is
allowed
any
non
numeric
character
may
be
used
as
the
delimiter
between
time
parts
For
example
10
11
12
and
10
11
12
are
equivalent
As
a
string
with
no
delimiters
in
HHMMSS
format
provided
that
it
makes
sense
as
a
time
For
example
101112
is
understood
as
10
11
12
but
109712
is
illegal
it
has
a
nonsensical
minute
part
and
becomes
00
00
00
As
a
number
in
HHMMSS
format
provided
that
it
makes
sense
as
a
time
For
example
101112
is
understood
as
10
11
12
As
the
result
of
a
function
that
returns
a
value
that
is
acceptable
in
a
TIME
context
such
as
CURRENT
TIME
For
TIME
values
specified
as
strings
that
include
a
time
part
delimiter
it
is
not
necessary
to
specify
two
digits
for
hours
minutes
or
seconds
values
that
are
less
than
10
8
3
2
is
the
same
as
08
03
02
Be
careful
about
assigning
short
TIME
values
to
a
TIME
column
MySQL
interprets
values
using
the
assumption
that
the
rightmost
digits
represent
seconds
MySQL
interprets
TIME
values
as
elapsed
time
rather
than
as
time
of
day
For
example
you
might
think
of
11
12
1112
and
1112
as
meaning
11
12
00
12
minutes
after
11
o
clock
but
MySQL
interprets
them
as
00
11
12
11
minutes
12
seconds
Similarly
12
and
12
are
interpreted
as
00
00
12
Values
that
lie
outside
the
TIME
range
but
are
otherwise
legal
are
clipped
to
the
appropriate
endpoint
of
the
range
For
example
850
00
00
and
850
00
00
are
converted
to
838
59
59
and
838
59
59
Illegal
TIME
values
are
converted
to
00
00
00
Note
that
since
00
00
00
is
itself
a
legal
TIME
value
there
is
no
way
to
tell
from
a
value
of
00
00
00
stored
in
a
table
whether
the
original
value
was
specified
as
00
00
00
or
whether
it
was
illegal
512
7
2
6
4
The
YEAR
type
The
YEAR
type
is
a
1
byte
type
used
for
representing
years
MySQL
retrieves
and
displays
YEAR
values
in
YYYY
format
The
range
is
1901
to
2155
You
can
specify
YEAR
values
in
a
variety
of
formats
As
a
four
digit
string
in
the
range
1901
to
2155
As
a
four
digit
number
in
the
range
1901
to
2155
As
a
two
digit
string
in
the
range
00
to
99
Values
in
the
ranges
00
to
69
and
70
to
99
are
converted
to
YEAR
values
in
the
ranges
2000
to
2069
and
1970
to
1999
As
a
two
digit
number
in
the
range
1
to
99
Values
in
the
ranges
1
to
69
and
70
to
99
are
converted
to
YEAR
values
in
the
ranges
2001
to
2069
and
1970
to
1999
Note
that
the
range
for
two
digit
numbers
is
slightly
different
than
the
range
for
two
digit
strings
since
you
cannot
specify
zero
directly
as
a
number
and
have
it
be
interpreted
as
2000
You
must
specify
it
as
a
string
0
or
00
or
it
will
be
interpreted
as
0000
As
the
result
of
a
function
that
returns
a
value
that
is
acceptable
in
a
YEAR
context
such
as
NOW
Illegal
YEAR
values
are
converted
to
0000
513
7
2
7
String
types
The
string
types
are
CHAR
VARCHAR
BLOB
TEXT
ENUM
and
SET
514
7
2
7
1
The
CHAR
and
VARCHAR
types
The
CHAR
and
VARCHAR
types
are
similar
but
differ
in
the
way
they
are
stored
and
retrieved
The
length
of
a
CHAR
column
is
fixed
to
the
length
that
you
declare
when
you
create
the
table
The
length
can
be
any
value
between
1
and
255
When
CHAR
values
are
stored
they
are
right
padded
with
spaces
to
the
specified
length
When
CHAR
values
are
retrieved
trailing
spaces
are
removed
Values
in
VARCHAR
columns
are
variable
length
strings
You
can
declare
a
VARCHAR
column
to
be
any
length
between
1
and
255
just
as
for
CHAR
columns
However
in
contrast
to
CHAR
VARCHAR
values
are
stored
using
only
as
many
characters
as
are
needed
plus
one
byte
to
record
the
length
Values
are
not
padded
instead
trailing
spaces
are
removed
when
values
are
stored
This
space
removal
differs
from
the
ANSI
SQL
specification
If
you
assign
a
value
to
a
CHAR
or
VARCHAR
column
that
exceeds
the
column
s
maximum
length
the
value
is
truncated
to
fit
The
table
below
illustrates
the
differences
between
the
two
types
of
columns
by
showing
the
result
of
storing
various
string
values
into
CHAR
4
and
VARCHAR
4
columns
Value
CHAR
4
Storage
required
VARCHAR
4
Storage
required
4
bytes
1
byte
ab
ab
4
bytes
ab
3
bytes
abcd
abcd
4
bytes
abcd
5
bytes
abcdefgh
abcd
4
bytes
abcd
5
bytes
The
values
retrieved
from
the
CHAR
4
and
VARCHAR
4
columns
will
be
the
same
in
each
case
because
trailing
spaces
are
removed
from
CHAR
columns
upon
retrieval
Values
in
CHAR
and
VARCHAR
columns
are
sorted
and
compared
in
case
insensitive
fashion
unless
the
BINARY
attribute
was
specified
when
the
table
was
created
The
BINARY
attribute
means
that
column
values
are
sorted
and
compared
in
case
sensitive
fashion
according
to
the
ASCII
order
of
the
machine
where
the
MySQL
server
is
running
The
BINARY
attribute
is
sticky
This
means
that
if
a
column
marked
BINARY
is
used
in
an
expression
the
whole
expression
is
compared
as
a
BINARY
value
MySQL
may
silently
change
the
type
of
a
CHAR
or
VARCHAR
column
at
table
creation
time
See
section
515
7
6
1
Silent
column
specification
changes
516
7
2
7
2
The
BLOB
and
TEXT
types
A
BLOB
is
a
binary
large
object
that
can
hold
a
variable
amount
of
data
The
four
BLOB
types
TINYBLOB
BLOB
MEDIUMBLOB
and
LONGBLOB
differ
only
in
the
maximum
length
of
the
values
they
can
hold
See
section
517
7
2
1
Column
type
storage
requirements
The
four
TEXT
types
TINYTEXT
TEXT
MEDIUMTEXT
and
LONGTEXT
correspond
to
the
four
BLOB
types
and
have
the
same
maximum
lengths
and
storage
requirements
The
only
difference
between
BLOB
and
TEXT
types
is
that
sorting
and
comparison
is
performed
in
case
sensitive
fashion
for
BLOB
values
and
case
insensitive
fashion
for
TEXT
values
In
other
words
a
TEXT
is
a
case
insensitive
BLOB
If
you
assign
a
value
to
a
BLOB
or
TEXT
column
that
exceeds
the
column
type
s
maximum
length
the
value
is
truncated
to
fit
In
most
respects
you
can
regard
a
TEXT
column
as
a
VARCHAR
column
that
can
be
as
big
as
you
like
Similarly
you
can
regard
a
BLOB
column
as
a
VARCHAR
BINARY
column
The
differences
are
BLOB
and
TEXT
columns
cannot
be
indexed
unlike
all
other
MySQL
column
types
This
will
be
fixed
in
MySQL
3
23
1
There
is
no
trailing
space
removal
for
BLOB
and
TEXT
columns
when
values
are
stored
as
there
is
for
VARCHAR
columns
BLOB
and
TEXT
columns
cannot
have
DEFAULT
values
MyODBC
defines
BLOB
values
as
LONGVARBINARY
and
TEXT
values
as
LONGVARCHAR
Because
BLOB
and
TEXT
values
may
be
extremely
long
you
may
run
up
against
some
constraints
when
using
them
If
you
want
to
use
GROUP
BY
or
ORDER
BY
on
a
BLOB
or
TEXT
column
you
must
convert
the
column
value
into
a
fixed
length
object
The
standard
way
to
do
this
is
with
the
SUBSTRING
function
For
example
mysql
select
comment
from
tbl
name
ORDER
BY
substring
comment
20
If
you
don
t
do
this
only
the
first
max
sort
length
bytes
of
the
column
are
used
when
sorting
The
default
value
of
max
sort
length
is
1024
this
value
can
be
changed
using
the
O
option
when
starting
the
mysqld
server
You
can
group
on
an
expression
involving
BLOB
or
TEXT
values
by
specifying
the
column
position
or
by
using
an
alias
mysql
select
id
substring
blob
col
1
100
from
tbl
name
GROUP
BY
2
mysql
select
id
substring
blob
col
1
100
as
b
from
tbl
name
GROUP
BY
b
The
maximum
size
of
a
BLOB
or
TEXT
object
is
determined
by
its
type
but
the
largest
value
you
can
actually
transmit
between
the
client
and
server
is
determined
by
the
amount
of
available
memory
and
the
size
of
the
communications
buffers
You
can
change
the
message
buffer
size
but
you
must
do
so
on
both
the
server
and
client
ends
See
section
518
10
1
Tuning
server
parameters
Note
that
each
BLOB
or
TEXT
value
is
represented
internally
by
a
separately
allocated
object
This
is
in
contrast
to
all
other
column
types
for
which
storage
is
allocated
once
per
column
when
the
table
is
opened
519
7
2
7
3
The
ENUM
type
An
ENUM
is
a
string
object
whose
value
normally
is
chosen
from
a
list
of
allowed
values
that
are
enumerated
explicitly
in
the
column
specification
at
table
creation
time
The
value
may
also
be
the
empty
string
or
NULL
under
certain
circumstances
If
you
insert
an
invalid
value
into
an
ENUM
that
is
a
string
not
present
in
the
list
of
allowed
values
the
empty
string
is
inserted
instead
as
a
special
error
value
If
an
ENUM
is
declared
NULL
NULL
is
also
a
legal
value
for
the
column
and
the
default
value
is
NULL
If
an
ENUM
is
declared
NOT
NULL
the
default
value
is
the
first
element
of
the
list
of
allowed
values
Each
enumeration
value
has
an
index
Values
from
the
list
of
allowable
elements
in
the
column
specification
are
numbered
beginning
with
1
The
index
value
of
the
empty
string
error
value
is
0
This
means
that
you
can
use
the
following
SELECT
statement
to
find
rows
into
which
invalid
ENUM
values
were
assigned
mysql
SELECT
FROM
tbl
name
WHERE
enum
col
0
The
index
of
the
NULL
value
is
NULL
For
example
a
column
specified
as
ENUM
one
two
three
can
have
any
of
the
values
shown
below
The
index
of
each
value
is
also
shown
Value
Index
NULL
NULL
0
one
1
two
2
three
3
An
enumeration
can
have
a
maximum
of
65535
elements
Lettercase
is
irrelevant
when
you
assign
values
to
an
ENUM
column
However
values
retrieved
from
the
column
later
have
lettercase
matching
the
values
that
were
used
to
specify
the
allowable
values
at
table
creation
time
If
you
retrieve
an
ENUM
in
a
numeric
context
the
column
value
s
index
is
returned
If
you
store
a
number
into
an
ENUM
the
number
is
treated
as
an
index
and
the
the
value
stored
is
the
enumeration
member
with
that
index
ENUM
values
are
sorted
according
to
the
order
in
which
the
enumeration
members
were
listed
in
the
column
specification
In
other
words
ENUM
values
are
sorted
according
to
their
index
numbers
For
example
a
sorts
before
b
for
ENUM
a
b
but
b
sorts
before
a
for
ENUM
b
a
The
empty
string
sorts
before
non
empty
strings
and
NULL
values
sort
before
all
other
enumeration
values
If
you
want
to
get
all
possible
values
for
an
ENUM
column
you
should
use
SHOW
COLUMNS
FROM
table
name
LIKE
enum
column
name
and
parse
the
ENUM
definition
in
the
second
column
520
7
2
7
4
The
SET
type
A
SET
is
a
string
object
that
can
have
zero
or
more
values
each
of
which
must
be
chosen
from
a
list
of
allowed
values
specified
when
the
table
is
created
SET
column
values
that
consist
of
multiple
set
members
are
specified
with
members
separated
by
commas
A
consequence
of
this
is
that
SET
member
values
cannot
themselves
contain
commas
For
example
a
column
specified
as
SET
one
two
NOT
NULL
can
have
any
of
these
values
one
two
one
two
A
SET
can
have
a
maximum
of
64
different
members
MySQL
stores
SET
values
numerically
with
the
low
order
bit
of
the
stored
value
corresponding
to
the
first
set
member
If
you
retrieve
a
SET
value
in
a
numeric
context
the
value
retrieved
has
bits
set
corresponding
to
the
set
members
that
make
up
the
column
value
If
a
number
is
stored
into
a
SET
column
the
bits
that
are
set
in
the
binary
representation
of
the
number
determine
the
set
members
in
the
column
value
Suppose
a
column
is
specified
as
SET
a
b
c
d
Then
the
members
have
the
following
bit
values
SET
member
Decimal
value
Binary
value
a
1
0001
b
2
0010
c
4
0100
d
8
1000
If
you
assign
a
value
of
9
to
this
column
that
is
1001
in
binary
so
the
first
and
fourth
SET
value
members
a
and
d
are
selected
and
the
resulting
value
is
a
d
For
a
value
containing
more
than
one
SET
element
it
does
not
matter
what
order
the
elements
are
listed
in
when
you
insert
the
value
It
also
doesn
t
not
matter
how
many
times
a
given
element
is
listed
in
the
value
When
the
value
is
retrieved
later
each
element
in
the
value
will
appear
once
with
elements
listed
according
to
the
order
in
which
they
were
specified
at
table
creation
time
For
example
if
a
column
is
specified
as
SET
a
b
c
d
then
a
d
d
a
and
d
a
a
d
d
will
all
appear
as
a
d
when
retrieved
SET
values
are
sorted
numerically
NULL
values
sort
before
non
NULL
SET
values
Normally
you
perform
a
SELECT
on
a
SET
column
using
the
LIKE
operator
or
the
FIND
IN
SET
function
mysql
SELECT
FROM
tbl
name
WHERE
set
col
LIKE
value
mysql
SELECT
FROM
tbl
name
WHERE
FIND
IN
SET
value
set
col
0
But
the
following
will
also
work
mysql
SELECT
FROM
tbl
name
WHERE
set
col
val1
val2
mysql
SELECT
FROM
tbl
name
WHERE
set
col
1
The
first
of
these
statements
looks
for
an
exact
match
The
second
looks
for
values
containing
the
first
set
member
If
you
want
to
get
all
possible
values
for
an
SET
column
you
should
use
SHOW
COLUMNS
FROM
table
name
LIKE
set
column
name
and
parse
the
SET
definition
in
the
second
column
521
7
2
8
Choosing
the
right
type
for
a
column
For
the
most
efficient
use
of
storage
try
to
use
the
most
precise
type
in
all
cases
For
example
if
an
integer
column
will
be
used
for
values
in
the
range
between
1
and
99999
MEDIUMINT
UNSIGNED
is
the
best
type
Accurate
representation
of
monetary
values
is
a
common
problem
In
MySQL
you
should
use
the
DECIMAL
type
This
is
stored
as
a
string
so
no
loss
of
accuracy
should
occur
If
accuracy
is
not
too
important
the
DOUBLE
type
may
also
be
good
enough
For
high
precision
you
can
always
convert
to
a
fixed
point
type
stored
in
a
BIGINT
This
allows
you
to
do
all
calculations
with
integers
and
convert
results
back
to
floating
point
values
only
when
necessary
See
section
522
10
16
What
are
the
different
row
formats
Or
when
should
VARCHAR
CHAR
be
used
523
7
2
9
Column
indexes
All
MySQL
column
types
can
be
indexed
except
BLOB
and
TEXT
types
Use
of
indexes
on
the
relevant
columns
is
the
best
way
to
improve
the
performance
of
SELECT
operations
A
table
may
have
up
to
16
indexes
The
maximum
index
length
is
256
bytes
although
this
may
be
changed
when
compiling
MySQL
You
cannot
index
a
column
that
may
contain
NULL
values
so
indexed
columns
must
be
declared
NOT
NULL
For
CHAR
and
VARCHAR
columns
you
can
index
a
prefix
of
a
column
This
is
much
faster
and
requires
less
disk
space
than
indexing
the
whole
column
The
syntax
to
use
in
the
CREATE
TABLE
statement
to
index
a
column
prefix
looks
like
this
KEY
index
name
col
name
length
The
example
below
creates
an
index
for
the
first
10
characters
of
the
name
column
mysql
CREATE
TABLE
test
name
CHAR
200
NOT
NULL
KEY
index
name
name
10
524
7
2
10
Multiple
column
indexes
MySQL
can
create
indexes
on
multiple
columns
An
index
may
consist
of
up
to
15
columns
On
CHAR
and
VARCHAR
columns
you
can
also
use
a
prefix
of
the
column
as
a
part
of
an
index
A
multiple
column
index
can
be
considered
a
sorted
array
containing
values
that
are
created
by
concatenating
the
values
of
the
indexed
columns
MySQL
uses
multiple
column
indexes
in
such
a
way
that
queries
are
fast
when
you
specify
a
known
quantity
for
the
first
column
of
the
index
in
a
WHERE
clause
even
if
you
don
t
specify
values
for
the
other
columns
Suppose
a
table
is
created
using
the
following
specification
mysql
CREATE
TABLE
test
id
INT
NOT
NULL
last
name
CHAR
30
NOT
NULL
first
name
CHAR
30
NOT
NULL
PRIMARY
KEY
id
INDEX
name
last
name
first
name
Then
the
index
name
is
an
index
over
last
name
and
first
name
The
index
will
be
used
for
queries
that
specify
values
in
a
known
range
for
last
name
or
for
both
last
name
and
first
name
Therefore
the
name
index
will
be
used
in
the
following
queries
mysql
SELECT
FROM
test
WHERE
last
name
Widenius
mysql
SELECT
FROM
test
WHERE
last
name
Widenius
AND
first
name
Michael
mysql
SELECT
FROM
test
WHERE
last
name
Widenius
AND
first
name
Michael
OR
first
name
Monty
mysql
SELECT
FROM
test
WHERE
last
name
Widenius
AND
first
name
M
AND
first
name
N
However
the
name
index
will
NOT
be
used
in
the
following
queries
mysql
SELECT
FROM
test
WHERE
first
name
Michael
mysql
SELECT
FROM
test
WHERE
last
name
Widenius
OR
first
name
Michael
For
more
information
on
the
manner
in
which
MySQL
uses
indexes
to
improve
query
performance
see
section
525
10
4
How
MySQL
uses
indexes
526
7
2
11
Using
column
types
from
other
database
engines
To
make
it
easier
to
use
code
written
for
SQL
implementations
from
other
vendors
MySQL
maps
column
types
as
shown
in
the
table
below
These
mappings
make
it
easier
to
move
table
definitions
from
other
database
engines
to
MySQL
Other
vendor
type
MySQL
type
BINARY
NUM
CHAR
NUM
BINARY
CHAR
VARYING
NUM
VARCHAR
NUM
FLOAT4
FLOAT
FLOAT8
DOUBLE
INT1
TINYINT
INT2
SMALLINT
INT3
MEDIUMINT
INT4
INT
INT8
BIGINT
LONG
VARBINARY
MEDIUMBLOB
LONG
VARCHAR
MEDIUMTEXT
MIDDLEINT
MEDIUMINT
VARBINARY
NUM
VARCHAR
NUM
BINARY
Column
type
mapping
occurs
at
table
creation
time
If
you
create
a
table
with
types
used
by
other
vendors
and
then
issue
a
DESCRIBE
tbl
name
statement
MySQL
reports
the
table
structure
using
the
equivalent
MySQL
types
527
7
3
Functions
for
use
in
SELECT
and
WHERE
clauses
A
select
expression
or
where
definition
in
a
SQL
statement
can
consist
of
any
expression
using
the
functions
described
below
An
expression
that
contains
NULL
always
produces
a
NULL
value
unless
otherwise
indicated
in
the
documentation
for
the
operators
and
functions
involved
in
the
expression
Note
There
must
be
no
whitespace
between
a
function
name
and
the
parenthesis
following
it
This
helps
the
MySQL
parser
distinguish
between
function
calls
and
references
to
tables
or
columns
that
happen
to
have
the
same
name
as
a
function
Spaces
around
arguments
are
permitted
though
For
the
sake
of
brevity
examples
display
the
output
from
the
mysql
program
in
abbreviated
form
So
this
mysql
select
MOD
29
9
1
rows
in
set
0
00
sec
mod
29
9
2
Is
displayed
like
this
mysql
select
MOD
29
9
2
528
7
3
1
Grouping
functions
Parentheses
Use
these
to
force
the
order
of
evaluation
in
an
expression
mysql
select
1
2
3
7
mysql
select
1
2
3
9
529
7
3
2
Normal
arithmetic
operations
The
usual
arithmetic
operators
are
available
Note
that
in
the
case
of
and
the
result
is
calculated
with
BIGINT
64
bit
precision
if
both
arguments
are
integers
Addition
mysql
select
3
5
8
Subtraction
mysql
select
3
5
2
Multiplication
mysql
select
3
5
15
mysql
select
18014398509481984
18014398509481984
0
324518553658426726783156020576256
0
mysql
select
18014398509481984
18014398509481984
0
The
result
of
the
last
expression
is
incorrect
because
the
result
of
the
integer
multiplication
exceeds
the
64
bit
range
of
BIGINT
calculations
Division
mysql
select
3
5
0
60
Division
by
zero
produces
a
NULL
result
mysql
select
102
1
1
NULL
A
division
will
be
calculated
with
BIGINT
arithmetic
only
if
performed
in
a
context
where
its
result
is
converted
to
an
integer
530
7
3
3
Bit
functions
MySQL
uses
BIGINT
64
bit
arithmetic
for
bit
operations
so
these
operators
have
a
maximum
range
of
64
bits
Bitwise
OR
mysql
select
29
15
31
Bitwise
AND
mysql
select
29
15
13
Shifts
a
longlong
BIGINT
number
to
the
left
mysql
select
1
2
4
Shifts
a
longlong
BIGINT
number
to
the
right
mysql
select
4
2
1
BIT
COUNT
N
Returns
the
number
of
bits
that
are
set
in
the
argument
N
mysql
select
BIT
COUNT
29
4
531
7
3
4
Logical
operations
All
logical
functions
return
1
TRUE
or
0
FALSE
NOT
Logical
NOT
Returns
1
if
the
argument
is
0
otherwise
returns
0
Exception
NOT
NULL
returns
NULL
mysql
select
NOT
1
0
mysql
select
NOT
NULL
NULL
mysql
select
1
1
0
mysql
select
1
1
1
The
last
example
returns
1
because
the
expression
evaluates
the
same
way
as
1
1
OR
Logical
OR
Returns
1
if
either
argument
is
not
0
and
not
NULL
mysql
select
1
0
1
mysql
select
0
0
0
mysql
select
1
NULL
1
AND
Logical
AND
Returns
0
if
either
argument
is
0
or
NULL
otherwise
returns
1
mysql
select
1
NULL
0
mysql
select
1
0
0
532
7
3
5
Comparison
operators
Comparison
operations
result
in
a
value
of
1
TRUE
0
FALSE
or
NULL
These
functions
work
for
both
numbers
and
strings
Strings
are
automatically
converted
to
numbers
and
numbers
to
strings
as
needed
as
in
Perl
MySQL
performs
comparisons
using
the
following
rules
If
one
or
both
arguments
are
NULL
the
result
of
the
comparison
is
NULL
If
both
arguments
in
a
comparison
operation
are
strings
they
are
compared
as
strings
If
both
arguments
are
integers
they
are
compared
as
integers
If
one
of
the
arguments
is
a
TIMESTAMP
or
DATETIME
column
and
the
other
argument
is
a
constant
the
constant
is
converted
to
a
timestamp
before
the
comparison
is
performed
This
is
done
to
be
more
ODBC
friendly
In
all
other
cases
the
arguments
are
compared
as
floating
point
real
numbers
By
default
string
comparisons
are
done
in
case
independent
fashion
using
the
current
character
set
ISO
8859
1
Latin1
by
default
which
also
works
excellently
for
English
The
examples
below
illustrate
conversion
of
strings
to
numbers
for
comparison
operations
mysql
SELECT
1
6x
0
mysql
SELECT
7
6x
1
mysql
SELECT
0
x6
0
mysql
SELECT
0
x6
1
Equal
mysql
select
1
0
0
mysql
select
0
0
1
mysql
select
0
0
0
1
mysql
select
0
01
0
0
mysql
select
01
0
01
1
Not
equal
mysql
select
01
0
01
1
mysql
select
01
0
01
0
mysql
select
zapp
zappp
1
Less
than
or
equal
mysql
select
0
1
2
1
Less
than
mysql
select
2
2
1
Greater
than
or
equal
mysql
select
2
2
1
Greater
than
mysql
select
2
2
0
Null
safe
equal
mysql
select
1
1
NULL
NULL
1
NULL
1
1
0
ISNULL
expr
If
expr
is
NULL
ISNULL
returns
1
otherwise
it
returns
0
mysql
select
ISNULL
1
1
0
mysql
select
ISNULL
1
0
1
Note
that
a
comparison
of
NULL
values
using
will
always
be
false
expr
BETWEEN
min
AND
max
If
expr
is
greater
than
or
equal
to
min
and
expr
is
less
than
or
equal
to
max
BETWEEN
returns
1
otherwise
it
returns
0
This
is
equivalent
to
the
expression
min
expr
AND
expr
max
if
all
the
arguments
are
of
the
same
type
The
first
argument
expr
determines
how
the
comparison
is
performed
If
expr
is
a
string
expression
a
case
insensitive
string
comparison
is
done
If
expr
is
a
binary
string
a
case
sensitive
string
comparison
is
done
If
expr
is
an
integer
expression
an
integer
comparison
is
done
Otherwise
a
floating
point
real
comparison
is
done
mysql
select
1
BETWEEN
2
AND
3
0
mysql
select
b
BETWEEN
a
AND
c
1
mysql
select
2
BETWEEN
2
AND
3
1
mysql
select
2
BETWEEN
2
AND
x
3
0
expr
IN
value
Returns
1
if
expr
is
any
of
the
values
in
the
IN
list
else
returns
0
If
all
values
are
constants
then
all
values
are
evaluated
according
to
the
type
of
expr
and
sorted
The
search
for
the
item
is
then
done
using
a
binary
search
This
means
IN
is
very
quick
if
the
IN
value
list
consists
entirely
of
constants
If
expr
is
a
case
sensitive
string
expression
the
string
comparison
is
performed
in
case
sensitive
fashion
mysql
select
2
IN
0
3
5
wefwf
0
mysql
select
wefwf
IN
0
3
5
wefwf
1
expr
NOT
IN
value
Same
as
NOT
expr
IN
value
INTERVAL
N
N1
N2
N3
Returns
0
if
N
N1
1
if
N
N2
and
so
on
All
arguments
are
treated
as
numbers
It
is
required
that
N1
N2
N3
Nn
for
this
function
to
work
correctly
This
is
because
a
binary
search
is
used
very
fast
mysql
select
INTERVAL
23
1
15
17
30
44
200
3
mysql
select
INTERVAL
10
1
10
100
1000
2
mysql
select
INTERVAL
22
23
30
44
200
0
533
7
3
6
String
comparison
functions
Normally
if
any
expression
in
a
string
comparison
is
case
sensitive
the
comparison
is
performed
in
case
sensitive
fashion
expr1
LIKE
expr2
ESCAPE
escape
char
SQL
simple
regular
expression
comparison
Returns
1
TRUE
or
0
FALSE
With
LIKE
you
can
use
the
following
two
wildcard
characters
Matches
any
number
of
characters
even
zero
characters
Matches
exactly
one
character
mysql
select
David
LIKE
David
1
mysql
select
David
LIKE
D
v
1
To
test
for
literal
instances
of
a
wildcard
character
precede
the
character
with
the
escape
character
If
you
don
t
specify
the
ESCAPE
character
is
assumed
Matches
one
character
Matches
one
character
mysql
select
David
LIKE
David
0
mysql
select
David
LIKE
David
1
To
specify
a
different
escape
character
use
the
ESCAPE
clause
mysql
select
David
LIKE
David
ESCAPE
1
LIKE
is
allowed
on
numeric
expressions
This
is
a
MySQL
extension
to
the
ANSI
SQL
LIKE
mysql
select
10
LIKE
1
1
Note
Because
MySQL
uses
the
C
escape
syntax
in
strings
e
g
n
you
must
double
any
that
you
use
in
your
LIKE
strings
For
example
to
search
for
n
specify
it
as
n
To
search
for
specify
it
as
the
backslashes
are
stripped
once
by
the
parser
and
another
time
when
the
pattern
match
is
done
leaving
a
single
backslash
to
be
matched
expr1
NOT
LIKE
expr2
ESCAPE
escape
char
Same
as
NOT
expr1
LIKE
expr2
ESCAPE
escape
char
expr
REGEXP
pat
expr
RLIKE
pat
Performs
a
pattern
match
of
a
string
expression
expr
against
a
pattern
pat
The
pattern
can
be
an
extended
regular
expression
See
section
534
H
Description
of
MySQL
regular
expression
syntax
Returns
1
if
expr
matches
pat
otherwise
returns
0
RLIKE
is
a
synonym
for
REGEXP
provided
for
mSQL
compatibility
Note
Because
MySQL
uses
the
C
escape
syntax
in
strings
e
g
n
you
must
double
any
that
you
use
in
your
REGEXP
strings
mysql
select
Monty
REGEXP
m
y
0
mysql
select
Monty
REGEXP
1
mysql
select
new
n
line
REGEXP
new
line
1
REGEXP
and
RLIKE
use
the
current
character
set
ISO
8859
1
Latin1
by
default
when
deciding
the
type
of
a
character
expr
NOT
REGEXP
expr
Same
as
NOT
expr
REGEXP
expr
STRCMP
expr1
expr2
STRCMP
returns
0
if
the
strings
are
the
same
1
if
the
first
argument
is
smaller
than
the
second
according
to
the
current
sort
order
and
1
otherwise
mysql
select
STRCMP
text
text2
1
mysql
select
STRCMP
text2
text
1
mysql
select
STRCMP
text
text
0
535
7
3
7
Cast
operators
BINARY
The
BINARY
operator
casts
the
string
following
it
to
a
binary
string
This
is
an
easy
way
to
force
a
column
comparison
to
be
case
independent
even
if
the
column
isn
t
defined
as
BINARY
or
BLOB
mysql
select
a
A
1
mysql
select
BINARY
a
A
0
BINARY
was
introduced
in
MySQL
3
23
0
536
7
3
8
Control
flow
functions
IFNULL
expr1
expr2
If
expr1
is
not
NULL
IFNULL
returns
expr1
else
it
returns
expr2
IFNULL
returns
a
numeric
or
string
value
depending
on
the
context
in
which
it
is
used
mysql
select
IFNULL
1
0
1
mysql
select
IFNULL
0
10
0
mysql
select
IFNULL
1
0
10
10
mysql
select
IFNULL
1
0
yes
yes
IF
expr1
expr2
expr3
If
expr1
is
TRUE
expr1
0
and
expr1
NULL
then
IF
returns
expr2
else
it
returns
expr3
IFNULL
returns
a
numeric
or
string
value
depending
on
the
context
in
which
it
is
used
mysql
select
IF
1
2
2
3
3
mysql
select
IF
1
2
yes
no
yes
mysql
select
IF
strcmp
test
test1
yes
no
no
expr1
is
evaluated
as
an
integer
value
which
means
that
if
you
are
testing
floating
point
or
string
values
you
should
do
so
using
a
comparison
operation
mysql
select
IF
0
1
1
0
0
mysql
select
IF
0
1
0
1
0
1
In
the
first
case
above
IF
0
1
returns
0
because
0
1
is
converted
to
an
integer
value
resulting
in
a
test
of
IF
0
This
may
not
be
what
you
expect
In
the
second
case
the
comparison
tests
the
original
floating
point
value
to
see
whether
it
is
non
zero
The
result
of
the
comparison
is
used
as
an
integer
537
7
3
9
Mathematical
functions
All
mathematical
functions
return
NULL
in
case
of
an
error
Unary
minus
Changes
the
sign
of
the
argument
mysql
select
2
2
Note
that
if
this
operator
is
used
with
a
BIGINT
the
return
value
is
a
BIGINT
This
means
that
you
should
avoid
using
on
integers
that
may
have
the
value
of
2
63
ABS
X
Returns
the
absolute
value
of
X
mysql
select
ABS
2
2
mysql
select
ABS
32
32
This
function
is
safe
to
use
with
BIGINT
values
SIGN
X
Returns
the
sign
of
the
argument
as
1
0
or
1
depending
on
whether
X
is
negative
zero
or
positive
mysql
select
SIGN
32
1
mysql
select
SIGN
0
0
mysql
select
SIGN
234
1
MOD
N
M
Modulo
like
the
operator
in
C
Returns
the
remainder
of
N
divided
by
M
mysql
select
MOD
234
10
4
mysql
select
253
7
1
mysql
select
MOD
29
9
2
This
function
is
safe
to
use
with
BIGINT
values
FLOOR
X
Returns
the
largest
integer
value
not
greater
than
X
mysql
select
FLOOR
1
23
1
mysql
select
FLOOR
1
23
2
Note
that
the
return
value
is
converted
to
a
BIGINT
CEILING
X
Returns
the
smallest
integer
value
not
less
than
X
mysql
select
CEILING
1
23
2
mysql
select
CEILING
1
23
1
Note
that
the
return
value
is
converted
to
a
BIGINT
ROUND
X
Returns
the
argument
X
rounded
to
an
integer
mysql
select
ROUND
1
23
1
mysql
select
ROUND
1
58
2
mysql
select
ROUND
1
58
2
Note
that
the
return
value
is
converted
to
a
BIGINT
ROUND
X
D
Returns
the
argument
X
rounded
to
a
number
with
D
decimals
If
D
is
0
the
result
will
have
no
decimal
point
or
fractional
part
mysql
select
ROUND
1
298
1
1
3
mysql
select
ROUND
1
298
0
1
Note
that
the
return
value
is
converted
to
a
BIGINT
EXP
X
Returns
the
value
of
e
the
base
of
natural
logarithms
raised
to
the
power
of
X
mysql
select
EXP
2
7
389056
mysql
select
EXP
2
0
135335
LOG
X
Returns
the
natural
logarithm
of
X
mysql
select
LOG
2
0
693147
mysql
select
LOG
2
NULL
If
you
want
the
log
of
a
number
X
to
some
arbitary
base
B
use
the
formula
LOG
X
LOG
B
LOG10
X
Returns
the
base
10
logarithm
of
X
mysql
select
LOG10
2
0
301030
mysql
select
LOG10
100
2
000000
mysql
select
LOG10
100
NULL
POW
X
Y
POWER
X
Y
Returns
the
value
of
X
raised
to
the
power
of
Y
mysql
select
POW
2
2
4
000000
mysql
select
POW
2
2
0
250000
SQRT
X
Returns
the
non
negative
square
root
of
X
mysql
select
SQRT
4
2
000000
mysql
select
SQRT
20
4
472136
PI
Returns
the
value
of
PI
mysql
select
PI
3
141593
COS
X
Returns
the
cosine
of
X
where
X
is
given
in
radians
mysql
select
COS
PI
1
000000
SIN
X
Returns
the
sine
of
X
where
X
is
given
in
radians
mysql
select
SIN
PI
0
000000
TAN
X
Returns
the
tangent
of
X
where
X
is
given
in
radians
mysql
select
TAN
PI
1
1
557408
ACOS
X
Returns
the
arc
cosine
of
X
that
is
the
value
whose
cosine
is
X
Returns
NULL
if
X
is
not
in
the
range
1
to
1
mysql
select
ACOS
1
0
000000
mysql
select
ACOS
1
0001
NULL
mysql
select
ACOS
0
1
570796
ASIN
X
Returns
the
arc
sine
of
X
that
is
the
value
whose
sine
is
X
Returns
NULL
if
X
is
not
in
the
range
1
to
1
mysql
select
ASIN
0
2
0
201358
mysql
select
ASIN
foo
0
000000
ATAN
X
Returns
the
arc
tangent
of
X
that
is
the
value
whose
tangent
is
X
mysql
select
ATAN
2
1
107149
mysql
select
ATAN
2
1
107149
ATAN2
X
Y
Returns
the
arc
tangent
of
the
two
variables
X
and
Y
It
is
similar
to
calculating
the
arc
tangent
of
Y
X
except
that
the
signs
of
both
arguments
are
used
to
determine
the
quadrant
of
the
result
mysql
select
ATAN
2
2
0
785398
mysql
select
ATAN
PI
0
1
570796
COT
X
Returns
the
cotangent
of
X
mysql
select
COT
12
1
57267341
mysql
select
COT
0
NULL
RAND
RAND
N
Returns
a
random
floating
point
value
in
the
range
0
to
1
0
If
an
integer
argument
N
is
specified
it
is
used
as
the
seed
value
mysql
select
RAND
0
5925
mysql
select
RAND
20
0
1811
mysql
select
RAND
20
0
1811
mysql
select
RAND
0
2079
mysql
select
RAND
0
7888
You
can
t
use
a
column
with
RAND
values
in
an
ORDER
BY
clause
because
ORDER
BY
would
evaluate
the
column
multiple
times
LEAST
X
Y
With
two
or
more
arguments
returns
the
smallest
minimum
valued
argument
The
arguments
are
compared
using
the
following
rules
If
the
return
value
is
used
in
an
INTEGER
context
or
all
arguments
are
integer
valued
they
are
compared
as
integers
If
the
return
value
is
used
in
a
REAL
context
or
all
arguments
are
real
valued
they
are
compared
as
reals
If
any
argument
is
a
case
sensitive
string
the
arguments
are
compared
as
case
sensitive
strings
In
other
cases
the
arguments
are
compared
as
case
insensitive
strings
mysql
select
LEAST
2
0
0
mysql
select
LEAST
34
0
3
0
5
0
767
0
3
0
mysql
select
LEAST
B
A
C
A
In
MySQL
versions
prior
to
3
22
5
you
can
use
MIN
instead
of
LEAST
GREATEST
X
Y
Returns
the
largest
maximum
valued
argument
The
arguments
are
compared
using
the
same
rules
as
for
LEAST
mysql
select
GREATEST
2
0
2
mysql
select
GREATEST
34
0
3
0
5
0
767
0
767
0
mysql
select
GREATEST
B
A
C
C
In
MySQL
versions
prior
to
3
22
5
you
can
use
MAX
instead
of
GREATEST
DEGREES
X
Returns
the
argument
X
converted
from
radians
to
degrees
mysql
select
DEGREES
PI
180
000000
RADIANS
X
Returns
the
argument
X
converted
from
degrees
to
radians
mysql
select
RADIANS
90
1
570796
TRUNCATE
X
D
Returns
the
number
X
truncated
to
D
decimals
mysql
select
TRUNCATE
1
223
1
1
2
mysql
select
TRUNCATE
1
999
1
1
9
mysql
select
TRUNCATE
1
999
0
1
538
7
3
10
String
functions
String
valued
functions
return
NULL
if
the
length
of
the
result
would
be
greater
than
the
max
allowed
packet
server
parameter
See
section
539
10
1
Tuning
server
parameters
For
functions
that
operate
on
string
positions
the
first
position
is
numbered
1
ASCII
str
Returns
the
ASCII
code
value
of
the
leftmost
character
of
the
string
str
Returns
0
if
str
is
the
empty
string
Returns
NULL
if
str
is
NULL
mysql
select
ASCII
2
50
mysql
select
ASCII
2
50
mysql
select
ASCII
dx
100
CONV
N
from
base
to
base
Converts
numbers
between
different
number
bases
Returns
a
string
representation
of
the
number
N
converted
from
base
from
base
to
base
to
base
Returns
NULL
if
any
argument
is
NULL
The
argument
N
is
interpreted
as
an
integer
but
may
be
specified
as
an
integer
or
a
string
The
minimum
base
is
2
and
the
maximum
base
is
36
If
to
base
is
a
negative
number
N
is
regarded
as
a
signed
number
Otherwise
N
is
treated
as
unsigned
CONV
works
with
64
bit
precision
mysql
select
CONV
a
16
2
1010
mysql
select
CONV
6E
18
8
172
mysql
select
CONV
17
10
18
H
mysql
select
CONV
10
10
10
0xa
10
10
40
BIN
N
Returns
a
string
representation
of
the
binary
value
of
N
where
N
is
a
longlong
BIGINT
number
This
is
equivalent
to
CONV
N
10
2
Returns
NULL
if
N
is
NULL
mysql
select
BIN
12
1100
OCT
N
Returns
a
string
representation
of
the
octal
value
of
N
where
N
is
a
longlong
number
This
is
equivalent
to
CONV
N
10
8
Returns
NULL
if
N
is
NULL
mysql
select
OCT
12
14
HEX
N
Returns
a
string
representation
of
the
hexadecimal
value
of
N
where
N
is
a
longlong
BIGINT
number
This
is
equivalent
to
CONV
N
10
16
Returns
NULL
if
N
is
NULL
mysql
select
HEX
255
FF
CHAR
N
CHAR
interprets
the
arguments
as
integers
and
returns
a
string
consisting
of
the
characters
given
by
the
ASCII
code
values
of
those
integers
NULL
values
are
skipped
mysql
select
CHAR
77
121
83
81
76
MySQL
mysql
select
CHAR
77
77
3
77
3
MMM
CONCAT
X
Y
Returns
the
string
that
results
from
concatenating
the
arguments
Returns
NULL
if
any
argument
is
NULL
May
have
more
than
2
arguments
mysql
select
CONCAT
My
S
QL
MySQL
mysql
select
CONCAT
My
NULL
QL
NULL
LENGTH
str
OCTET
LENGTH
str
CHAR
LENGTH
str
CHARACTER
LENGTH
str
Returns
the
length
of
the
string
str
mysql
select
LENGTH
text
4
mysql
select
OCTET
LENGTH
text
4
LOCATE
substr
str
POSITION
substr
IN
str
Returns
the
position
of
the
first
occurrence
of
substring
substr
in
string
str
Returns
0
if
substr
is
not
in
str
mysql
select
LOCATE
bar
foobarbar
4
mysql
select
LOCATE
xbar
foobar
0
LOCATE
substr
str
pos
Returns
the
position
of
the
first
occurrence
of
substring
substr
in
string
str
starting
at
position
pos
Returns
0
if
substr
is
not
in
str
mysql
select
LOCATE
bar
foobarbar
5
7
INSTR
str
substr
Returns
the
position
of
the
first
occurrence
of
substring
substr
in
string
str
This
is
the
same
as
the
two
argument
form
of
LOCATE
except
that
the
arguments
are
swapped
mysql
select
INSTR
foobarbar
bar
4
mysql
select
INSTR
xbar
foobar
0
LPAD
str
len
padstr
Returns
the
string
str
left
padded
with
the
string
padstr
until
str
is
len
characters
long
mysql
select
LPAD
hi
4
hi
RPAD
str
len
padstr
Returns
the
string
str
right
padded
with
the
string
padstr
until
str
is
len
characters
long
mysql
select
RPAD
hi
5
hi
LEFT
str
len
Returns
the
leftmost
len
characters
from
the
string
str
mysql
select
LEFT
foobarbar
5
fooba
RIGHT
str
len
SUBSTRING
str
FROM
len
Returns
the
rightmost
len
characters
from
the
string
str
mysql
select
RIGHT
foobarbar
4
rbar
mysql
select
SUBSTRING
foobarbar
FROM
4
rbar
SUBSTRING
str
pos
len
SUBSTRING
str
FROM
pos
FOR
len
MID
str
pos
len
Returns
a
substring
len
characters
long
from
string
str
starting
at
position
pos
The
variant
form
that
uses
FROM
is
ANSI
SQL92
syntax
mysql
select
SUBSTRING
Quadratically
5
6
ratica
SUBSTRING
str
pos
Returns
a
substring
from
string
str
starting
at
position
pos
mysql
select
SUBSTRING
Quadratically
5
ratically
SUBSTRING
INDEX
str
delim
count
Returns
the
substring
from
string
str
after
count
occurrences
of
the
delimiter
delim
If
count
is
positive
everything
to
the
left
of
the
final
delimiter
counting
from
the
left
is
returned
If
count
is
negative
everything
to
the
right
of
the
final
delimiter
counting
from
the
right
is
returned
mysql
select
SUBSTRING
INDEX
www
mysql
com
2
www
mysql
mysql
select
SUBSTRING
INDEX
www
mysql
com
2
mysql
com
LTRIM
str
Returns
the
string
str
with
leading
space
characters
removed
mysql
select
LTRIM
barbar
barbar
RTRIM
str
Returns
the
string
str
with
trailing
space
characters
removed
mysql
select
RTRIM
barbar
barbar
TRIM
BOTH
LEADING
TRAILING
remstr
FROM
str
Returns
the
string
str
with
all
remstr
prefixes
and
or
suffixes
removed
If
none
of
the
specifiers
BOTH
LEADING
or
TRAILING
are
given
BOTH
is
assumed
If
remstr
is
not
specified
spaces
are
removed
mysql
select
TRIM
bar
bar
mysql
select
TRIM
LEADING
x
FROM
xxxbarxxx
barxxx
mysql
select
TRIM
BOTH
x
FROM
xxxbarxxx
bar
mysql
select
TRIM
TRAILING
xyz
FROM
barxxyz
barx
SOUNDEX
str
Returns
a
soundex
string
from
str
Two
strings
that
sound
about
the
same
should
have
identical
soundex
strings
A
standard
soundex
string
is
4
characters
long
but
the
SOUNDEX
function
returns
an
arbitrarily
long
string
You
can
use
SUBSTRING
on
the
result
to
get
a
standard
soundex
string
All
non
alphanumeric
characters
are
ignored
in
the
given
string
All
international
alpha
characters
outside
the
A
Z
range
are
treated
as
vowels
mysql
select
SOUNDEX
Hello
H400
mysql
select
SOUNDEX
Quadratically
Q36324
SPACE
N
Returns
a
string
consisting
of
N
space
characters
mysql
select
SPACE
6
REPLACE
str
from
str
to
str
Returns
the
string
str
with
all
all
occurrences
of
the
string
from
str
replaced
by
the
string
to
str
mysql
select
REPLACE
www
mysql
com
w
Ww
WwWwww
mysql
com
REPEAT
str
count
Returns
a
string
consisting
of
the
string
str
repeated
count
times
If
count
0
returns
an
empty
string
Returns
NULL
if
str
or
count
are
NULL
mysql
select
REPEAT
MySQL
3
MySQLMySQLMySQL
REVERSE
str
Returns
the
string
str
with
the
order
of
the
characters
reversed
mysql
select
REVERSE
abc
cba
INSERT
str
pos
len
newstr
Returns
the
string
str
with
the
substring
beginning
at
position
pos
and
len
characters
long
replaced
by
the
string
newstr
mysql
select
INSERT
Quadratic
3
4
What
QuWhattic
ELT
N
str1
str2
str3
Returns
str1
if
N
1
str2
if
N
2
and
so
on
Returns
NULL
if
N
is
less
than
1
or
greater
than
the
number
of
arguments
ELT
is
the
complement
of
FIELD
mysql
select
ELT
1
ej
Heja
hej
foo
ej
mysql
select
ELT
4
ej
Heja
hej
foo
foo
FIELD
str
str1
str2
str3
Returns
the
index
of
str
in
the
str1
str2
str3
list
Returns
0
if
str
is
not
found
FIELD
is
the
complement
of
ELT
mysql
select
FIELD
ej
Hej
ej
Heja
hej
foo
2
mysql
select
FIELD
fo
Hej
ej
Heja
hej
foo
0
FIND
IN
SET
str
strlist
Returns
a
value
1
to
N
if
the
string
str
is
in
the
list
strlist
consisting
of
N
substrings
A
string
list
is
a
string
composed
of
substrings
separated
by
characters
If
the
first
argument
is
a
constant
string
and
the
second
is
a
column
of
type
SET
the
FIND
IN
SET
function
is
optimized
to
use
bit
arithmetic
Returns
0
if
str
is
not
in
strlist
or
if
strlist
is
the
empty
string
Returns
NULL
if
either
argument
is
NULL
This
function
will
not
work
properly
if
the
first
argument
contains
a
mysql
SELECT
FIND
IN
SET
b
a
b
c
d
2
MAKE
SET
bits
str1
str2
Returns
a
set
a
string
containing
substrings
separated
by
characters
consisting
of
the
strings
that
have
the
corresponding
bit
in
bits
set
str1
corresponds
to
bit
0
str2
to
bit
1
etc
NULL
strings
in
str1
str2
are
not
appended
to
the
result
mysql
SELECT
MAKE
SET
1
a
b
c
a
mysql
SELECT
MAKE
SET
1
4
hello
nice
world
hello
world
mysql
SELECT
MAKE
SET
0
a
b
c
LCASE
str
LOWER
str
Returns
the
string
str
with
all
characters
changed
to
lowercase
according
to
the
current
character
set
mapping
the
default
is
ISO
8859
1
Latin1
mysql
select
LCASE
QUADRATICALLY
quadratically
UCASE
str
UPPER
str
Returns
the
string
str
with
all
characters
changed
to
uppercase
according
to
the
current
character
set
mapping
the
default
is
ISO
8859
1
Latin1
mysql
select
UCASE
Hej
HEJ
LOAD
FILE
file
name
Reads
the
file
and
returns
the
file
contents
as
a
string
The
file
must
be
on
the
server
and
you
must
specify
the
full
pathname
to
the
file
The
file
must
be
readable
by
all
and
be
smaller
than
max
allowed
packet
If
the
file
doesn
t
exist
or
can
t
be
read
due
to
one
of
the
above
reasons
the
function
returns
NULL
mysql
UPDATE
table
name
SET
blob
column
LOAD
FILE
tmp
picture
WHERE
id
1
There
is
no
string
function
to
convert
a
number
to
a
char
There
is
no
need
for
one
because
MySQL
automatically
converts
numbers
to
strings
as
necessary
and
vice
versa
mysql
SELECT
1
1
2
mysql
SELECT
CONCAT
2
test
2
test
If
a
string
function
is
given
a
binary
string
as
an
argument
the
resulting
string
is
also
a
binary
string
A
number
converted
to
a
string
is
treated
as
a
binary
string
This
only
affects
comparisons
540
7
3
11
Date
and
time
functions
See
section
541
7
2
6
Date
and
time
types
for
a
description
of
the
range
of
values
each
type
has
and
the
valid
formats
in
which
date
and
time
values
may
be
specified
Here
is
an
example
that
uses
date
functions
The
query
below
selects
all
records
with
a
date
col
value
from
within
the
last
30
days
mysql
SELECT
something
FROM
table
WHERE
TO
DAYS
NOW
TO
DAYS
date
col
30
DAYOFWEEK
date
Returns
the
weekday
index
for
date
1
Sunday
2
Monday
7
Saturday
These
index
values
correspond
to
the
ODBC
standard
mysql
select
DAYOFWEEK
1998
02
03
3
WEEKDAY
date
Returns
the
weekday
index
for
date
0
Monday
1
Tuesday
6
Sunday
mysql
select
WEEKDAY
1997
10
04
22
23
00
5
mysql
select
WEEKDAY
1997
11
05
2
DAYOFMONTH
date
Returns
the
day
of
the
month
for
date
in
the
range
1
to
31
mysql
select
DAYOFMONTH
1998
02
03
3
DAYOFYEAR
date
Returns
the
day
of
the
year
for
date
in
the
range
1
to
366
mysql
select
DAYOFYEAR
1998
02
03
34
MONTH
date
Returns
the
month
for
date
in
the
range
1
to
12
mysql
select
MONTH
1998
02
03
2
DAYNAME
date
Returns
the
name
of
the
weekday
for
date
mysql
select
DAYNAME
1998
02
05
Thursday
MONTHNAME
date
Returns
the
name
of
the
month
for
date
mysql
select
MONTHNAME
1998
02
05
February
QUARTER
date
Returns
the
quarter
of
the
year
for
date
in
the
range
1
to
4
mysql
select
QUARTER
98
04
01
2
WEEK
date
WEEK
date
first
With
a
single
argument
returns
the
week
for
date
in
the
range
0
to
52
for
locations
where
Sunday
is
the
first
day
of
the
week
The
two
argument
form
of
WEEK
allows
you
to
specify
whether
the
week
starts
on
Sunday
or
Monday
The
week
starts
on
Sunday
if
the
second
argument
is
0
on
Monday
if
the
second
argument
is
1
mysql
select
WEEK
1998
02
20
7
mysql
select
WEEK
1998
02
20
0
7
mysql
select
WEEK
1998
02
20
1
8
YEAR
date
Returns
the
year
for
date
in
the
range
1000
to
9999
mysql
select
YEAR
98
02
03
1998
HOUR
time
Returns
the
hour
for
time
in
the
range
0
to
23
mysql
select
HOUR
10
05
03
10
MINUTE
time
Returns
the
minute
for
time
in
the
range
0
to
59
mysql
select
MINUTE
98
02
03
10
05
03
5
SECOND
time
Returns
the
second
for
time
in
the
range
0
to
59
mysql
select
SECOND
10
05
03
3
PERIOD
ADD
P
N
Adds
N
months
to
period
P
in
the
format
YYMM
or
YYYYMM
Returns
a
value
in
the
format
YYYYMM
Note
that
the
period
argument
P
is
not
a
date
value
mysql
select
PERIOD
ADD
9801
2
199803
PERIOD
DIFF
P1
P2
Returns
the
number
of
months
between
periods
P1
and
P2
P1
and
P2
should
be
in
the
format
YYMM
or
YYYYMM
Note
that
the
period
arguments
P1
and
P2
are
not
date
values
mysql
select
PERIOD
DIFF
9802
199703
11
DATE
ADD
date
INTERVAL
expr
type
DATE
SUB
date
INTERVAL
expr
type
ADDDATE
date
INTERVAL
expr
type
SUBDATE
date
INTERVAL
expr
type
These
functions
perform
date
arithmetic
They
are
new
for
MySQL
3
22
ADDDATE
and
SUBDATE
are
synonyms
for
DATE
ADD
and
DATE
SUB
date
is
a
DATETIME
or
DATE
value
specifying
the
starting
date
expr
is
an
expression
specifying
the
interval
value
to
be
added
or
substracted
from
the
starting
date
expr
is
a
string
it
may
start
with
a
for
negative
intervals
type
is
a
keyword
indicating
how
the
expression
should
be
interpreted
The
following
table
shows
how
the
type
and
expr
arguments
are
related
type
value
Meaning
Expected
expr
format
SECOND
Seconds
SECONDS
MINUTE
Minutes
MINUTES
HOUR
Hours
HOURS
DAY
Days
DAYS
MONTH
Months
MONTHS
YEAR
Years
YEARS
MINUTE
SECOND
Minutes
and
seconds
MINUTES
SECONDS
HOUR
MINUTE
Hours
and
minutes
HOURS
MINUTES
DAY
HOUR
Days
and
hours
DAYS
HOURS
YEAR
MONTH
Years
and
months
YEARS
MONTHS
HOUR
SECOND
Hours
minutes
HOURS
MINUTES
SECONDS
DAY
MINUTE
Days
hours
minutes
DAYS
HOURS
MINUTES
DAY
SECOND
Days
hours
minutes
seconds
DAYS
HOURS
MINUTES
SECONDS
MySQL
allows
any
non
numeric
delimiter
in
the
expr
format
The
ones
shown
in
the
table
are
the
suggested
delimiters
If
the
date
argument
is
a
DATE
value
and
your
calculations
involve
only
YEAR
MONTH
and
DAY
parts
that
is
no
time
parts
the
result
is
a
DATE
value
Otherwise
the
result
is
a
DATETIME
value
mysql
select
DATE
ADD
1997
12
31
23
59
59
INTERVAL
1
SECOND
1998
01
01
00
00
00
mysql
select
DATE
ADD
1997
12
31
23
59
59
INTERVAL
1
DAY
1998
01
01
23
59
59
mysql
select
DATE
ADD
1997
12
31
23
59
59
INTERVAL
1
1
MINUTE
SECOND
1998
01
01
00
01
00
mysql
select
DATE
SUB
1998
01
01
00
00
00
INTERVAL
1
1
1
1
DAY
SECOND
1997
12
30
22
58
59
mysql
select
DATE
ADD
1998
01
01
00
00
00
INTERVAL
1
10
DAY
HOUR
1997
12
30
14
00
00
mysql
select
DATE
SUB
1998
01
02
INTERVAL
31
DAY
1997
12
02
If
you
specify
an
interval
value
that
is
too
short
does
not
include
all
the
interval
parts
that
would
be
expected
from
the
type
keyword
MySQL
assumes
you
have
left
out
the
leftmost
parts
of
the
interval
value
For
example
if
you
specify
a
type
of
DAY
SECOND
the
value
of
expr
is
expected
to
have
days
hours
minutes
and
seconds
parts
If
you
specify
a
value
like
1
10
MySQL
assumes
that
the
days
and
hours
parts
are
missing
and
the
value
represents
minutes
and
seconds
In
other
words
1
10
DAY
SECOND
is
interpreted
in
such
a
way
that
it
is
equivalent
to
1
10
MINUTE
SECOND
This
is
analogous
to
the
way
that
MySQL
interprets
TIME
values
as
representing
elapsed
time
rather
than
as
time
of
day
If
you
use
incorrect
dates
the
result
is
NULL
If
you
add
MONTH
YEAR
MONTH
or
YEAR
and
the
resulting
date
has
a
day
that
is
larger
than
the
maximum
day
for
the
new
month
the
day
is
adjusted
to
the
maximum
days
in
the
new
month
mysql
select
DATE
ADD
1998
01
30
Interval
1
month
1998
02
28
Note
from
the
preceding
example
that
the
word
INTERVAL
and
the
type
keyword
are
not
case
sensitive
TO
DAYS
date
Given
a
date
date
returns
a
daynumber
the
number
of
days
since
year
0
mysql
select
TO
DAYS
950501
728779
mysql
select
TO
DAYS
1997
10
07
729669
TO
DAYS
is
not
intended
for
use
with
values
that
precede
the
advent
of
the
Gregorian
calendar
1582
FROM
DAYS
N
Given
a
daynumber
N
returns
a
DATE
value
mysql
select
FROM
DAYS
729669
1997
10
07
FROM
DAYS
is
not
intended
for
use
with
values
that
precede
the
advent
of
the
Gregorian
calendar
1582
DATE
FORMAT
date
format
Formats
the
date
value
according
to
the
format
string
The
following
specifiers
may
be
used
in
the
format
string
M
Month
name
January
December
W
Weekday
name
Sunday
Saturday
D
Day
of
the
month
with
english
suffix
1st
2nd
3rd
etc
Y
Year
numeric
4
digits
y
Year
numeric
2
digits
a
Abbreviated
weekday
name
Sun
Sat
d
Day
of
the
month
numeric
00
31
e
Day
of
the
month
numeric
0
31
m
Month
numeric
01
12
c
Month
numeric
1
12
b
Abbreviated
month
name
Jan
Dec
j
Day
of
year
001
366
H
Hour
00
23
k
Hour
0
23
h
Hour
01
12
I
Hour
01
12
l
Hour
1
12
i
Minutes
numeric
00
59
r
Time
12
hour
hh
mm
ss
AP
M
T
Time
24
hour
hh
mm
ss
S
Seconds
00
59
s
Seconds
00
59
p
AM
or
PM
w
Day
of
the
week
0
Sunday
6
Saturday
U
Week
0
52
where
Sunday
is
the
first
day
of
the
week
u
Week
0
52
where
Monday
is
the
first
day
of
the
week
Use
to
produce
a
literal
All
other
characters
are
just
copied
to
the
result
without
interpretation
mysql
select
DATE
FORMAT
1997
10
04
22
23
00
W
M
Y
Saturday
October
1997
mysql
select
DATE
FORMAT
1997
10
04
22
23
00
H
i
s
22
23
00
mysql
select
DATE
FORMAT
1997
10
04
22
23
00
D
y
a
d
m
b
j
4th
97
Sat
04
10
Oct
277
mysql
select
DATE
FORMAT
1997
10
04
22
23
00
H
k
I
r
T
S
w
22
22
10
10
23
00
PM
22
23
00
00
6
As
of
MySQL
3
23
the
is
required
before
a
format
specifier
characters
In
earlier
versions
of
MySQL
was
optional
TIME
FORMAT
time
format
This
is
used
like
the
DATE
FORMAT
function
above
but
the
format
string
may
contain
only
those
format
specifiers
that
handle
hours
minutes
and
seconds
Other
specifiers
produce
a
NULL
value
or
0
CURDATE
CURRENT
DATE
Returns
today
s
date
as
a
value
in
YYYY
MM
DD
or
YYYYMMDD
format
depending
on
whether
the
function
is
used
in
a
string
or
numeric
context
mysql
select
CURDATE
1997
12
15
mysql
select
CURDATE
0
19971215
CURTIME
CURRENT
TIME
Returns
the
current
time
as
a
value
in
HH
MM
SS
or
HHMMSS
format
depending
on
whether
the
function
is
used
in
a
string
or
numeric
context
mysql
select
CURTIME
23
50
26
mysql
select
CURTIME
0
235026
NOW
SYSDATE
CURRENT
TIMESTAMP
Returns
the
current
date
and
time
as
a
value
in
YYYY
MM
DD
HH
MM
SS
or
YYYYMMDDHHMMSS
format
depending
on
whether
the
function
is
used
in
a
string
or
numeric
context
mysql
select
NOW
1997
12
15
23
50
26
mysql
select
NOW
0
19971215235026
UNIX
TIMESTAMP
UNIX
TIMESTAMP
date
If
called
with
no
argument
returns
a
Unix
timestamp
seconds
since
1970
01
01
00
00
00
GMT
If
UNIX
TIMESTAMP
is
called
with
a
date
argument
it
returns
the
value
of
the
argument
as
seconds
since
1970
01
01
00
00
00
GMT
date
may
be
a
DATE
string
a
DATETIME
string
a
TIMESTAMP
or
a
number
in
the
format
YYMMDD
or
YYYYMMDD
in
local
time
mysql
select
UNIX
TIMESTAMP
882226357
mysql
select
UNIX
TIMESTAMP
1997
10
04
22
23
00
875996580
When
UNIX
TIMESTAMP
is
used
on
a
TIMESTAMP
column
the
function
will
receive
the
value
directly
with
no
implicit
string
to
unix
timestamp
conversion
FROM
UNIXTIME
unix
timestamp
Returns
a
representation
of
the
unix
timestamp
argument
as
a
value
in
YYYY
MM
DD
HH
MM
SS
or
YYYYMMDDHHMMSS
format
depending
on
whether
the
function
is
used
in
a
string
or
numeric
context
mysql
select
FROM
UNIXTIME
875996580
1997
10
04
22
23
00
mysql
select
FROM
UNIXTIME
875996580
0
19971004222300
FROM
UNIXTIME
unix
timestamp
format
Returns
a
string
representation
of
the
Unix
timestamp
formatted
according
to
the
format
string
format
may
contain
the
same
specifiers
as
those
listed
in
the
entry
for
the
DATE
FORMAT
function
mysql
select
FROM
UNIXTIME
UNIX
TIMESTAMP
Y
D
M
h
i
s
x
1997
23rd
December
03
43
30
x
SEC
TO
TIME
seconds
Returns
the
seconds
argument
converted
to
hours
minutes
and
seconds
as
a
value
in
HH
MM
SS
or
HHMMSS
format
depending
on
whether
the
function
is
used
in
a
string
or
numeric
context
mysql
select
SEC
TO
TIME
2378
00
39
38
mysql
select
SEC
TO
TIME
2378
0
3938
TIME
TO
SEC
time
Returns
the
time
argument
converted
to
seconds
mysql
select
TIME
TO
SEC
22
23
00
80580
mysql
select
TIME
TO
SEC
00
39
38
2378
542
7
3
12
Miscellaneous
functions
DATABASE
Returns
the
current
database
name
mysql
select
DATABASE
test
If
there
is
no
current
database
DATABASE
returns
the
empty
string
USER
SYSTEM
USER
SESSION
USER
Returns
the
current
MySQL
user
name
mysql
select
USER
davida
localhost
In
MySQL
3
22
11
or
later
this
includes
the
client
hostname
as
well
as
the
username
You
can
extract
just
the
username
part
like
this
mysql
select
left
USER
instr
USER
1
davida
PASSWORD
str
Calculates
a
password
string
from
the
plaintext
password
str
This
is
the
function
that
is
used
for
encrypting
MySQL
passwords
for
storage
in
the
Password
column
of
the
user
grant
table
mysql
select
PASSWORD
badpwd
7f84554057dd964b
PASSWORD
encryption
is
non
reversible
PASSWORD
does
not
perform
password
encryption
in
the
same
way
that
Unix
passwords
are
encrypted
You
should
not
assume
that
if
your
Unix
password
and
your
MySQL
password
are
the
same
PASSWORD
will
result
in
the
same
encrypted
value
as
is
stored
in
the
Unix
password
file
See
ENCRYPT
ENCRYPT
str
salt
Encrypt
str
using
the
Unix
crypt
system
call
The
salt
argument
should
be
a
string
with
2
characters
mysql
select
ENCRYPT
hello
VxuFAJXVARROc
If
crypt
is
not
available
on
your
system
ENCRYPT
always
returns
NULL
ENCRYPT
ignores
all
but
the
first
8
characters
of
str
at
least
on
some
systems
This
will
be
determined
by
the
behavior
of
the
underlying
crypt
system
call
ENCODE
str
pass
str
Encrypt
str
using
pass
str
as
the
password
To
decrypt
the
result
use
DECODE
The
results
is
a
binary
string
If
you
want
to
save
it
in
a
column
use
a
BLOB
column
type
DECODE
crypt
str
pass
str
Descrypts
the
encrypted
string
crypt
str
using
pass
str
as
the
password
crypt
str
should
be
a
string
returned
from
ENCODE
LAST
INSERT
ID
expr
Returns
the
last
automatically
generated
value
that
was
inserted
into
an
AUTO
INCREMENT
column
See
section
543
19
4
28
mysql
insert
id
mysql
select
LAST
INSERT
ID
195
The
last
ID
that
was
generated
is
maintained
in
the
server
on
a
per
connection
basis
It
will
not
be
changed
by
another
client
It
will
not
even
be
changed
if
you
update
another
AUTO
INCREMENT
column
with
a
non
magic
value
that
is
a
value
that
is
not
NULL
and
not
0
If
expr
is
given
as
an
argument
to
LAST
INSERT
ID
in
an
UPDATE
clause
then
the
value
of
the
argument
is
returned
as
a
LAST
INSERT
ID
value
This
can
be
used
to
simulate
sequences
First
create
the
table
mysql
create
table
sequence
id
int
not
null
mysql
insert
into
sequence
values
0
Then
the
table
can
be
used
to
generate
sequence
numbers
like
this
mysql
update
sequence
set
id
LAST
INSERT
ID
id
1
You
can
generate
sequences
without
calling
LAST
INSERT
ID
but
the
utility
of
using
the
function
this
way
is
that
the
ID
value
is
maintained
in
the
server
as
the
last
automatically
generated
value
You
can
retrieve
the
new
ID
as
you
would
read
any
normal
AUTO
INCREMENT
value
in
MySQL
For
example
LAST
INSERT
ID
without
an
argument
will
return
the
new
ID
The
C
API
function
mysql
insert
id
can
also
be
used
to
get
the
value
FORMAT
X
D
Formats
the
number
X
to
a
format
like
with
D
decimals
If
D
is
0
the
result
will
have
no
decimal
point
or
fractional
part
mysql
select
FORMAT
12332
1234
2
12
332
12
mysql
select
FORMAT
12332
1
4
12
332
1000
mysql
select
FORMAT
12332
2
0
12
332
VERSION
Returns
a
string
indicating
the
MySQL
server
version
mysql
select
VERSION
3
22
19b
log
GET
LOCK
str
timeout
Tries
to
obtain
a
lock
with
a
name
given
by
the
string
str
with
a
timeout
of
timeout
seconds
Returns
1
if
the
lock
was
obtained
successfully
0
if
the
attempt
timed
out
or
NULL
if
an
error
occurred
such
as
running
out
of
memory
or
the
thread
was
killed
with
mysqladmin
kill
A
lock
is
released
when
you
execute
RELEASE
LOCK
execute
a
new
GET
LOCK
or
the
thread
terminates
This
function
can
be
used
to
implement
application
locks
or
to
simulate
record
locks
mysql
select
GET
LOCK
lock1
10
1
mysql
select
GET
LOCK
lock2
10
1
mysql
select
RELEASE
LOCK
lock2
1
mysql
select
RELEASE
LOCK
lock1
NULL
Note
that
the
second
RELEASE
LOCK
call
returns
NULL
because
the
lock
lock1
was
automatically
released
by
the
second
GET
LOCK
call
RELEASE
LOCK
str
Releases
the
lock
named
by
the
string
str
that
was
obtained
with
GET
LOCK
Returns
1
if
the
lock
was
released
0
if
the
lock
wasn
t
locked
by
this
thread
in
which
case
the
lock
is
not
released
and
NULL
if
the
named
lock
didn
t
exist
The
lock
will
not
exist
if
it
was
never
obtained
by
a
call
to
GET
LOCK
or
if
it
already
has
been
released
BENCHMARK
count
expr
The
BENCHMARK
function
executes
the
expression
expr
repeatedly
count
times
It
may
be
used
to
time
how
fast
MySQL
processes
the
expression
The
result
value
is
always
0
The
intended
use
is
in
the
mysql
client
which
reports
query
execution
times
mysql
select
BENCHMARK
1000000
encode
hello
goodbye
BENCHMARK
1000000
encode
hello
goodbye
0
1
row
in
set
4
74
sec
The
time
reported
is
elapsed
time
on
the
client
end
not
CPU
time
on
the
server
end
It
may
be
advisable
to
execute
BENCHMARK
several
times
and
interpret
the
result
with
regard
to
how
heavily
loaded
the
server
machine
is
544
7
3
13
Functions
for
use
with
GROUP
BY
clauses
If
you
use
a
group
function
in
a
statement
containing
no
GROUP
BY
clause
it
is
equivalent
to
grouping
on
all
rows
COUNT
expr
Returns
a
count
of
the
number
of
non
NULL
rows
retrieved
by
a
SELECT
statement
mysql
select
student
student
name
COUNT
from
student
course
where
student
student
id
course
student
id
GROUP
BY
student
name
COUNT
is
optimized
to
return
very
quickly
if
the
SELECT
retrieves
from
one
table
no
other
columns
are
retrieved
and
there
is
no
WHERE
clause
For
example
mysql
select
COUNT
from
student
AVG
expr
Returns
the
average
value
of
expr
mysql
select
student
name
AVG
test
score
from
student
GROUP
BY
student
name
MIN
expr
MAX
expr
Returns
the
minimum
or
maximum
value
of
expr
MIN
and
MAX
may
take
a
string
argument
in
such
cases
they
return
the
minimum
or
maximum
string
value
mysql
select
student
name
MIN
test
score
MAX
test
score
from
student
GROUP
BY
student
name
SUM
expr
Returns
the
sum
of
expr
STD
expr
STDDEV
expr
Returns
the
standard
deviation
of
expr
This
is
an
extension
to
ANSI
SQL
The
STDDEV
form
of
this
function
is
provided
for
Oracle
compatability
BIT
OR
expr
Returns
the
bitwise
OR
of
all
bits
in
expr
The
calculation
is
performed
with
64
bit
BIGINT
precision
BIT
AND
expr
Returns
the
bitwise
AND
of
all
bits
in
expr
The
calculation
is
performed
with
64
bit
BIGINT
precision
MySQL
has
extended
the
use
of
GROUP
BY
You
can
use
columns
or
calculations
in
the
SELECT
expressions
which
don
t
appear
in
the
GROUP
BY
part
This
stands
for
any
possible
value
for
this
group
You
can
use
this
to
get
better
performance
by
avoiding
sorting
and
grouping
on
unnecessary
items
For
example
you
don
t
need
to
group
on
customer
name
in
the
following
query
mysql
select
order
custid
customer
name
max
payments
from
order
customer
where
order
custid
customer
custid
GROUP
BY
order
custid
In
ANSI
SQL
you
would
have
to
add
customer
name
to
the
GROUP
BY
clause
In
MySQL
the
name
is
redundant
Don
t
use
this
feature
if
the
columns
you
omit
from
the
GROUP
BY
part
aren
t
unique
in
the
group
In
some
cases
you
can
use
MIN
and
MAX
to
obtain
a
specific
column
value
even
if
it
isn
t
unique
The
following
gives
the
value
of
column
from
the
row
containing
the
smallest
value
in
the
sort
column
substr
MIN
concat
sort
space
6
length
sort
column
7
length
column
Note
that
you
can
t
yet
use
expressions
in
GROUP
BY
or
ORDER
BY
clauses
You
can
work
around
this
limitation
by
using
an
alias
for
the
expression
mysql
select
id
floor
value
100
as
val
from
tbl
name
GROUP
BY
id
val
ORDER
BY
val
545
7
4
CREATE
DATABASE
syntax
CREATE
DATABASE
db
name
CREATE
DATABASE
creates
a
database
with
the
given
name
Rules
for
allowable
database
names
are
given
in
section
546
7
1
4
Database
table
index
column
and
alias
names
An
error
occurs
if
the
database
already
exists
Databases
in
MySQL
are
implemented
as
directories
containing
files
that
correspond
to
tables
in
the
database
Since
there
are
no
tables
in
a
database
when
it
is
initially
created
the
CREATE
DATABASE
statement
only
creates
a
directory
under
the
MySQL
data
directory
You
can
also
create
databases
with
mysqladmin
See
section
547
12
1
Overview
of
the
different
MySQL
programs
548
7
5
DROP
DATABASE
syntax
DROP
DATABASE
IF
EXISTS
db
name
DROP
DATABASE
drops
all
tables
in
the
database
and
deletes
the
database
Be
VERY
careful
with
this
command
DROP
DATABASE
returns
the
number
of
files
that
were
removed
from
the
database
directory
Normally
this
is
three
times
the
number
of
tables
since
each
table
corresponds
to
a
ISD
file
a
ISM
file
and
a
frm
file
In
MySQL
3
22
or
later
you
can
use
the
keywords
IF
EXISTS
to
prevent
an
error
from
occurring
if
the
database
doesn
t
exist
You
can
also
drop
databases
with
mysqladmin
See
section
549
12
1
Overview
of
the
different
MySQL
programs
550
7
6
CREATE
TABLE
syntax
CREATE
TABLE
IF
NOT
EXISTS
tbl
name
create
definition
table
options
select
statement
create
definition
col
name
type
NOT
NULL
NULL
DEFAULT
default
value
AUTO
INCREMENT
PRIMARY
KEY
reference
definition
or
PRIMARY
KEY
index
col
name
or
KEY
index
name
KEY
index
col
name
or
INDEX
index
name
index
col
name
or
UNIQUE
INDEX
index
name
index
col
name
or
CONSTRAINT
symbol
FOREIGN
KEY
index
name
index
col
name
reference
definition
or
CHECK
expr
type
TINYINT
length
UNSIGNED
ZEROFILL
or
SMALLINT
length
UNSIGNED
ZEROFILL
or
MEDIUMINT
length
UNSIGNED
ZEROFILL
or
INT
length
UNSIGNED
ZEROFILL
or
INTEGER
length
UNSIGNED
ZEROFILL
or
BIGINT
length
UNSIGNED
ZEROFILL
or
REAL
length
decimals
UNSIGNED
ZEROFILL
or
DOUBLE
length
decimals
UNSIGNED
ZEROFILL
or
FLOAT
length
decimals
UNSIGNED
ZEROFILL
or
DECIMAL
length
decimals
UNSIGNED
ZEROFILL
or
NUMERIC
length
decimals
UNSIGNED
ZEROFILL
or
CHAR
length
BINARY
or
VARCHAR
length
BINARY
or
DATE
or
TIME
or
TIMESTAMP
or
DATETIME
or
TINYBLOB
or
BLOB
or
MEDIUMBLOB
or
LONGBLOB
or
TINYTEXT
or
TEXT
or
MEDIUMTEXT
or
LONGTEXT
or
ENUM
value1
value2
value3
or
SET
value1
value2
value3
index
col
name
col
name
length
reference
definition
REFERENCES
tbl
name
index
col
name
MATCH
FULL
MATCH
PARTIAL
ON
DELETE
reference
option
ON
UPDATE
reference
option
reference
option
RESTRICT
CASCADE
SET
NULL
NO
ACTION
SET
DEFAULT
table
options
type
ISAM
MYISAM
HEAP
or
auto
increment
or
avg
row
length
or
checksum
0
1
or
comment
string
or
max
rows
or
min
rows
or
pack
keys
0
1
or
password
string
select
statement
IGNORE
REPLACE
SELECT
Some
legal
select
statement
CREATE
TABLE
creates
a
table
with
the
given
name
in
the
current
database
Rules
for
allowable
table
names
are
given
in
section
551
7
1
4
Database
table
index
column
and
alias
names
An
error
occurs
if
there
is
no
current
database
or
if
the
table
already
exists
In
MySQL
3
22
or
later
the
table
name
can
be
specified
as
db
name
tbl
name
This
works
whether
or
not
there
is
a
current
database
In
MySQL
3
23
or
later
you
can
use
the
keywords
IF
NOT
EXISTS
so
that
an
error
does
not
occur
if
the
table
already
exits
Note
that
there
is
no
verification
that
the
table
structures
are
identical
Each
table
tbl
name
is
represented
by
three
files
in
the
database
directory
File
Purpose
tbl
name
frm
Table
definition
form
file
tbl
name
ISD
Data
file
tbl
name
ISM
Index
file
For
more
information
on
the
properties
of
the
various
column
types
see
section
552
7
2
Column
types
If
neither
NULL
nor
NOT
NULL
is
specified
the
column
is
treated
as
though
NULL
had
been
specified
An
integer
column
may
have
the
additional
attribute
AUTO
INCREMENT
When
you
insert
a
value
of
NULL
recommended
or
0
into
an
AUTO
INCREMENT
column
the
column
is
set
to
value
1
where
value
is
the
largest
value
for
the
column
currently
in
the
table
AUTO
INCREMENT
sequences
begin
with
1
See
section
553
19
4
28
mysql
insert
id
If
you
delete
the
row
containing
the
maximum
value
for
an
AUTO
INCREMENT
column
the
value
will
be
reused
If
you
delete
all
rows
in
the
table
the
sequence
starts
over
Note
There
can
be
only
one
AUTO
INCREMENT
column
per
table
and
it
must
be
indexed
To
make
MySQL
compatible
with
some
ODBC
applications
you
can
find
the
last
inserted
row
with
the
following
query
SELECT
FROM
tbl
name
WHERE
auto
col
IS
NULL
NULL
values
are
handled
differently
for
TIMESTAMP
columns
than
for
other
column
types
You
cannot
store
a
literal
NULL
in
a
TIMESTAMP
column
setting
the
column
to
NULL
sets
it
to
the
current
date
and
time
Because
TIMESTAMP
columns
behave
this
way
the
NULL
and
NOT
NULL
attributes
do
not
apply
in
the
normal
way
and
are
ignored
if
you
specify
them
On
the
other
hand
to
make
it
easier
for
MySQL
clients
to
use
TIMESTAMP
columns
the
server
reports
that
such
columns
may
be
assigned
NULL
values
which
is
true
even
though
TIMESTAMP
never
actually
will
contain
a
NULL
value
You
can
see
this
when
you
use
DESCRIBE
tbl
name
to
get
a
description
of
your
table
Note
that
setting
a
TIMESTAMP
column
to
0
is
not
the
same
as
setting
it
to
NULL
because
0
is
a
valid
TIMESTAMP
value
If
no
DEFAULT
value
is
specified
for
a
column
MySQL
automatically
assigns
one
If
the
column
may
take
NULL
as
a
value
the
default
value
is
NULL
If
the
column
is
declared
as
NOT
NULL
the
default
value
depends
on
the
column
type
For
numeric
types
other
than
those
declared
with
the
AUTO
INCREMENT
attribute
the
default
is
0
For
an
AUTO
INCREMENT
column
the
default
value
is
the
next
value
in
the
sequence
For
date
and
time
types
other
than
TIMESTAMP
the
default
is
the
appropriate
zero
value
for
the
type
For
the
first
TIMESTAMP
column
in
a
table
the
default
value
is
the
current
date
and
time
See
section
554
7
2
6
Date
and
time
types
For
string
types
other
than
ENUM
the
default
is
the
empty
string
For
ENUM
the
default
is
the
first
enumeration
value
KEY
is
a
synonym
for
INDEX
In
MySQL
a
UNIQUE
key
can
have
only
distinct
values
An
error
occurs
if
you
try
to
add
a
new
row
with
a
key
that
matches
an
existing
row
In
MySQL
a
PRIMARY
KEY
is
the
same
thing
as
a
unique
KEY
that
is
named
PRIMARY
A
table
can
have
only
one
PRIMARY
KEY
If
you
don
t
have
a
PRIMARY
KEY
and
some
applications
ask
for
the
PRIMARY
KEY
in
your
tables
MySQL
will
return
the
first
UNIQUE
key
as
the
PRIMARY
KEY
A
PRIMARY
KEY
can
be
a
multiple
column
index
However
you
cannot
create
a
multiple
column
index
using
the
PRIMARY
KEY
key
attibute
in
a
column
specification
Doing
so
will
mark
only
that
single
column
as
primary
You
must
use
the
PRIMARY
KEY
index
col
name
syntax
If
you
don
t
assign
a
name
to
an
index
the
index
will
be
assigned
the
same
name
as
the
first
index
col
name
with
an
optional
suffix
2
3
to
make
it
unique
You
can
see
index
names
for
a
table
using
SHOW
INDEX
FROM
tbl
name
See
section
555
7
20
SHOW
syntax
Get
information
about
tables
columns
Columns
that
are
indexed
cannot
have
NULL
values
You
must
declare
such
columns
NOT
NULL
or
an
error
results
BLOB
and
TEXT
columns
cannot
be
indexed
With
col
name
length
syntax
you
can
specify
an
index
which
uses
only
a
part
of
a
CHAR
or
VARCHAR
column
This
can
make
the
index
file
much
smaller
See
section
556
7
2
9
Column
indexes
When
you
use
ORDER
BY
or
GROUP
BY
with
a
TEXT
or
BLOB
column
only
the
first
max
sort
length
bytes
are
used
See
section
557
7
2
7
2
The
BLOB
and
TEXT
types
The
FOREIGN
KEY
CHECK
and
REFERENCES
clauses
don
t
actually
do
anything
The
syntax
for
them
is
provided
only
for
compatibility
to
make
it
easier
to
port
code
from
other
SQL
servers
and
to
run
applications
that
create
tables
with
references
See
section
558
5
3
Functionality
missing
from
MySQL
Each
NULL
column
takes
one
bit
extra
rounded
up
to
the
nearest
byte
The
maximum
record
length
in
bytes
can
be
calculated
as
follows
row
length
1
sum
of
column
lengths
number
of
NULL
columns
7
8
number
of
variable
length
columns
The
table
options
and
SELECT
options
is
only
implemented
in
MySQL
3
23
and
above
The
different
table
types
are
ISAM
The
original
table
handler
MyISAM
The
new
binary
portable
table
handler
HEAP
The
data
for
this
table
is
only
stored
in
memory
See
section
559
10
17
MySQL
table
types
The
other
table
options
are
used
to
optimize
the
behavior
of
the
table
In
most
cases
you
don
t
have
to
specify
any
of
them
The
options
work
for
all
table
types
if
not
otherwise
indicated
auto
increment
The
next
auto
increment
value
you
want
to
set
for
your
table
MyISAM
avg
row
length
An
approximation
of
the
average
row
length
for
your
table
checksum
Set
this
to
1
if
you
want
MySQL
to
maintain
a
checksum
for
all
rows
makes
the
table
a
little
slower
to
update
but
makes
it
easier
to
find
corrupted
tables
MyISAM
comment
tab
A
60
character
comment
for
your
table
max
rows
Max
number
of
rows
you
plan
to
store
in
the
table
min
rows
Minimum
number
of
rows
you
plan
to
store
in
the
table
pack
keys
Set
this
to
1
if
you
want
to
have
smaller
index
This
usually
makes
updates
slower
and
reads
faster
MyISAM
ISAM
password
Encrypt
the
frm
file
with
password
This
option
doesn
t
do
anything
in
the
standard
MySQL
version
When
you
use
a
MyISAM
table
MySQL
uses
the
product
of
max
rows
avg
row
length
to
decide
how
big
the
resulting
table
will
be
If
you
don
t
specify
any
of
the
above
options
the
maximum
size
for
a
table
will
be
4G
or
2G
if
your
operating
systems
only
supports
2G
tables
If
you
specify
a
SELECT
after
the
CREATE
STATEMENT
MySQL
will
create
new
fields
for
all
elements
in
the
SELECT
For
example
mysql
CREATE
TABLE
test
a
int
not
null
auto
increment
primary
key
a
key
b
TYPE
HEAP
SELECT
b
c
from
test2
This
will
create
a
HEAP
table
with
3
columns
Note
that
the
table
will
automatically
be
deleted
if
any
errors
occur
while
copying
data
into
the
table
560
7
6
1
Silent
column
specification
changes
In
some
cases
MySQL
silently
changes
a
column
specification
from
that
given
in
a
CREATE
TABLE
statement
This
may
also
occur
with
ALTER
TABLE
VARCHAR
columns
with
a
length
less
than
four
are
changed
to
CHAR
If
any
column
in
a
table
has
a
variable
length
the
entire
row
is
variable
length
as
a
result
Therefore
if
a
table
contains
any
variable
length
columns
VARCHAR
TEXT
or
BLOB
all
CHAR
columns
longer
than
three
characters
are
changed
to
VARCHAR
columnss
This
doesn
t
affect
how
you
use
the
columns
in
any
way
in
MySQL
VARCHAR
is
just
a
different
way
to
store
characters
MySQL
performs
this
conversion
because
it
saves
space
and
makes
table
operations
faster
See
section
561
10
16
What
are
the
different
row
formats
Or
when
should
VARCHAR
CHAR
be
used
TIMESTAMP
display
sizes
must
be
even
and
in
the
range
from
2
to
14
If
you
specify
a
display
size
of
0
or
greater
than
14
the
size
is
coerced
to
14
Odd
valued
sizes
in
the
range
from
1
to
13
are
coerced
to
the
next
higher
even
number
You
cannot
store
a
literal
NULL
in
a
TIMESTAMP
column
setting
it
to
NULL
sets
it
to
the
current
date
and
time
Because
TIMESTAMP
columns
behave
this
way
the
NULL
and
NOT
NULL
attributes
do
not
apply
in
the
normal
way
and
are
ignored
if
you
specify
them
DESCRIBE
tbl
name
always
reports
that
a
TIMESTAMP
column
may
be
assigned
NULL
values
MySQL
maps
certain
column
types
used
by
other
SQL
database
vendors
to
MySQL
types
See
section
562
7
2
11
Using
column
types
from
other
database
engines
If
you
want
to
see
whether
or
not
MySQL
used
a
column
type
other
than
the
one
you
specified
issue
a
DESCRIBE
tbl
name
statement
after
creating
or
altering
your
table
Certain
other
column
type
changes
may
occur
if
you
compress
a
table
using
pack
isam
See
section
563
10
16
What
are
the
different
row
formats
Or
when
should
VARCHAR
CHAR
be
used
564
7
7
ALTER
TABLE
syntax
ALTER
IGNORE
TABLE
tbl
name
alter
spec
alter
spec
alter
specification
ADD
COLUMN
create
definition
FIRST
AFTER
column
name
or
ADD
INDEX
index
name
index
col
name
or
ADD
PRIMARY
KEY
index
col
name
or
ADD
UNIQUE
index
name
index
col
name
or
ALTER
COLUMN
col
name
SET
DEFAULT
literal
DROP
DEFAULT
or
CHANGE
COLUMN
old
col
name
create
definition
or
MODIFY
COLUMN
create
definition
or
DROP
COLUMN
col
name
or
DROP
PRIMARY
KEY
or
DROP
INDEX
key
name
or
RENAME
AS
new
tbl
name
or
table
option
ALTER
TABLE
allows
you
to
change
the
structure
of
an
existing
table
For
example
you
can
add
or
delete
columns
create
or
destroy
indexes
change
the
type
of
existing
columns
or
rename
columns
or
the
table
itself
You
can
also
change
the
comment
for
the
table
and
type
of
the
table
See
section
565
7
6
CREATE
TABLE
syntax
If
you
use
ALTER
TABLE
to
change
a
column
specification
but
DESCRIBE
tbl
name
indicates
that
your
column
was
not
changed
it
is
possible
that
MySQL
ignored
your
modification
for
one
of
the
reasons
described
in
section
566
7
6
1
Silent
column
specification
changes
For
example
if
you
try
to
change
a
VARCHAR
column
to
CHAR
MySQL
will
still
use
VARCHAR
if
the
table
contains
other
variable
length
columns
ALTER
TABLE
works
by
making
a
temporary
copy
of
the
original
table
The
alteration
is
performed
on
the
copy
then
the
original
table
is
deleted
and
the
new
one
is
renamed
This
is
done
in
such
a
way
that
all
updates
are
automatically
redirected
to
the
new
table
without
any
failed
updates
While
ALTER
TABLE
is
executing
the
original
table
is
readable
by
other
clients
Updates
and
writes
to
the
table
are
stalled
until
the
new
table
is
ready
To
use
ALTER
TABLE
you
need
select
insert
delete
update
create
and
drop
privileges
on
the
table
IGNORE
is
a
MySQL
extension
to
ANSI
SQL92
It
controls
how
ALTER
TABLE
works
if
there
are
duplicates
on
unique
keys
in
the
new
table
If
IGNORE
isn
t
specified
the
copy
is
aborted
and
rolled
back
If
IGNORE
is
specified
then
for
rows
with
duplicates
on
a
unique
key
only
the
first
row
is
used
the
others
are
deleted
You
can
issue
multiple
ADD
ALTER
DROP
and
CHANGE
clauses
in
a
single
ALTER
TABLE
statement
This
is
a
MySQL
extension
to
ANSI
SQL92
which
allows
only
one
of
each
clause
per
ALTER
TABLE
statement
CHANGE
col
name
DROP
col
name
and
DROP
INDEX
are
MySQL
extensions
to
ANSI
SQL92
MODIFY
is
an
Oracle
extension
to
ALTER
TABLE
The
optional
word
COLUMN
is
a
pure
noise
word
and
can
be
omitted
If
you
use
ALTER
TABLE
tbl
name
RENAME
AS
new
name
without
any
other
options
MySQL
simply
renames
the
files
that
correspond
to
the
table
tbl
name
There
is
no
need
to
create
the
temporary
table
create
definition
clauses
use
the
same
syntax
for
ADD
and
CHANGE
as
for
CREATE
TABLE
Note
that
this
syntax
includes
the
column
name
not
just
the
column
type
See
section
567
7
6
CREATE
TABLE
syntax
You
can
rename
a
column
using
a
CHANGE
old
col
name
create
definition
clause
To
do
so
specify
the
old
and
new
column
names
and
the
type
that
the
column
currently
has
For
example
to
rename
an
INTEGER
column
from
a
to
b
you
can
do
this
mysql
ALTER
TABLE
t1
CHANGE
a
b
INTEGER
If
you
want
to
change
a
column
s
type
but
not
the
name
CHANGE
syntax
still
requires
two
column
names
even
if
they
are
the
same
For
example
mysql
ALTER
TABLE
t1
CHANGE
b
b
BIGINT
NOT
NULL
However
as
of
MySQL
3
22
16a
you
can
also
use
MODIFY
to
change
a
column
s
type
without
renaming
it
mysql
ALTER
TABLE
t1
MODIFY
b
BIGINT
NOT
NULL
If
you
use
CHANGE
or
MODIFY
to
shorten
a
column
for
which
an
index
exists
on
part
of
the
column
for
instance
if
you
have
an
index
on
the
first
10
characters
of
a
VARCHAR
column
you
cannot
make
the
column
shorter
than
the
number
of
characters
that
are
indexed
When
you
change
a
column
type
using
CHANGE
or
MODIFY
MySQL
tries
to
convert
data
to
the
new
type
as
well
as
possible
In
MySQL
3
22
or
later
you
can
use
FIRST
or
ADD
AFTER
col
name
to
add
a
column
at
a
specific
position
within
a
table
row
The
default
is
to
add
the
column
last
ALTER
COLUMN
specifies
a
new
default
value
for
a
column
or
removes
the
old
default
value
If
the
old
default
is
removed
and
the
column
can
be
NULL
the
new
default
is
NULL
If
the
column
cannot
be
NULL
MySQL
assigns
a
default
value
Default
value
assignment
is
described
in
section
568
7
6
CREATE
TABLE
syntax
DROP
INDEX
removes
an
index
This
is
a
MySQL
extension
to
ANSI
SQL92
If
columns
are
dropped
from
a
table
the
columns
are
also
removed
from
any
index
of
which
they
are
a
part
If
all
columns
that
make
up
an
index
are
dropped
the
index
is
dropped
as
well
DROP
PRIMARY
KEY
drops
the
primary
index
If
no
such
index
exists
it
drops
the
first
UNIQUE
index
in
the
table
MySQL
marks
the
first
UNIQUE
key
as
the
PRIMARY
KEY
if
no
PRIMARY
KEY
was
specified
explicitly
With
the
C
API
function
mysql
info
you
can
find
out
how
many
records
were
copied
and
when
IGNORE
is
used
how
many
records
were
deleted
due
to
duplication
of
unique
key
values
The
FOREIGN
KEY
CHECK
and
REFERENCES
clauses
don
t
actually
do
anything
The
syntax
for
them
is
provided
only
for
compatibility
to
make
it
easier
to
port
code
from
other
SQL
servers
and
to
run
applications
that
create
tables
with
references
See
section
569
5
3
Functionality
missing
from
MySQL
Here
is
an
example
that
shows
some
of
the
uses
of
ALTER
TABLE
We
begin
with
a
table
t1
that
is
created
as
shown
below
mysql
CREATE
TABLE
t1
a
INTEGER
b
CHAR
10
To
rename
the
table
from
t1
to
t2
mysql
ALTER
TABLE
t1
RENAME
t2
To
change
column
a
from
INTEGER
to
TINYINT
NOT
NULL
leaving
the
name
the
same
and
to
change
column
b
from
CHAR
10
to
CHAR
20
as
well
as
renaming
it
from
b
to
c
mysql
ALTER
TABLE
t2
MODIFY
a
TINYINT
NOT
NULL
CHANGE
b
c
CHAR
20
To
add
a
new
TIMESTAMP
column
named
d
mysql
ALTER
TABLE
t2
ADD
d
TIMESTAMP
To
add
an
index
on
column
d
and
make
column
a
the
primary
key
mysql
ALTER
TABLE
t2
ADD
INDEX
d
ADD
PRIMARY
KEY
a
To
remove
column
c
mysql
ALTER
TABLE
t2
DROP
COLUMN
c
To
add
a
new
AUTO
INCREMENT
integer
column
named
c
mysql
ALTER
TABLE
t2
ADD
c
INT
UNSIGNED
NOT
NULL
AUTO
INCREMENT
ADD
INDEX
c
Note
that
we
indexed
c
because
AUTO
INCREMENT
columns
must
be
indexed
and
also
that
we
declare
c
as
NOT
NULL
because
indexed
columns
cannot
be
NULL
570
7
8
OPTIMIZE
TABLE
syntax
OPTIMIZE
TABLE
tbl
name
OPTIMZE
TABLE
should
be
used
if
you
have
deleted
a
large
part
of
a
table
or
if
you
have
made
many
changes
to
a
table
with
variable
length
rows
tables
that
have
VARCHAR
BLOB
or
TEXT
columns
Deleted
records
are
maintained
in
a
linked
list
and
subsequent
INSERT
operations
reuse
old
record
positions
You
can
use
OPTIMIZE
TABLE
to
reclaim
the
unused
space
OPTIMIZE
TABLE
works
by
making
a
temporary
copy
of
the
original
table
The
old
table
is
copied
to
the
new
table
without
the
unused
rows
then
the
original
table
is
deleted
and
the
new
one
is
renamed
This
is
done
in
such
a
way
that
all
updates
are
automatically
redirected
to
the
new
table
without
any
failed
updates
While
OPTIMIZE
TABLE
is
executing
the
original
table
is
readable
by
other
clients
Updates
and
writes
to
the
table
are
stalled
until
the
new
table
is
ready
571
7
9
DROP
TABLE
syntax
DROP
TABLE
IF
EXISTS
tbl
name
tbl
name
DROP
TABLE
removes
one
or
more
tables
All
table
data
and
the
table
definition
are
removed
so
be
careful
with
this
command
In
MySQL
3
22
or
later
you
can
use
the
keywords
IF
EXISTS
to
prevent
an
error
from
occurring
for
tables
that
don
t
exist
572
7
10
DELETE
syntax
DELETE
LOW
PRIORITY
FROM
tbl
name
WHERE
where
definition
LIMIT
rows
DELETE
deletes
rows
from
tbl
name
that
satisfy
the
condition
given
by
where
definition
and
returns
the
number
of
records
deleted
If
you
issue
a
DELETE
with
no
WHERE
clause
all
rows
are
deleted
MySQL
does
this
by
recreating
the
table
as
an
empty
table
which
is
much
faster
than
deleting
each
row
In
this
case
DELETE
returns
zero
as
the
number
of
affected
records
MySQL
can
t
return
the
number
of
rows
that
were
actually
deleted
since
the
recreate
is
done
without
opening
the
data
files
As
long
as
the
table
definition
file
tbl
name
frm
is
valid
the
table
can
be
recreated
this
way
even
if
the
data
or
index
files
have
become
corrupted
If
you
really
want
to
know
how
many
records
are
deleted
when
you
are
deleting
all
rows
and
are
willing
to
suffer
a
speed
penalty
you
can
use
a
DELETE
statement
of
this
form
mysql
DELETE
FROM
tbl
name
WHERE
1
0
Note
that
this
is
MUCH
slower
than
DELETE
FROM
tbl
name
with
no
WHERE
clause
because
it
deletes
rows
one
at
a
time
If
you
specify
the
keyword
LOW
PRIORITY
execution
of
the
DELETE
is
delayed
until
no
other
clients
are
reading
from
the
table
Deleted
records
are
maintained
in
a
linked
list
and
subsequent
INSERT
operations
reuse
old
record
positions
To
reclaim
unused
space
and
reduce
file
sizes
use
the
OPTIMIZE
TABLE
statement
or
the
isamchk
utility
to
reorganize
tables
OPTIMIZE
TABLE
is
easier
but
isamchk
is
faster
See
section
573
7
8
OPTIMIZE
TABLE
syntax
and
section
574
13
4
3
Table
optimization
The
MySQL
specific
LIMIT
rows
option
to
DELETE
tells
the
server
the
maximum
number
of
rows
to
be
deleted
before
control
is
returned
to
the
client
This
can
be
used
to
ensure
that
a
specific
DELETE
command
doesn
t
take
too
much
time
You
can
simply
repeat
the
DELETE
command
until
the
number
of
affected
rows
is
less
than
the
LIMIT
value
575
7
11
SELECT
syntax
SELECT
STRAIGHT
JOIN
SQL
SMALL
RESULT
DISTINCT
DISTINCTROW
ALL
select
expression
INTO
OUTFILE
file
name
export
options
FROM
table
references
WHERE
where
definition
GROUP
BY
col
name
HAVING
where
definition
ORDER
BY
unsigned
integer
col
name
ASC
DESC
LIMIT
offset
rows
PROCEDURE
procedure
name
SELECT
is
used
to
retrieve
rows
selected
from
one
or
more
tables
select
expression
indicates
the
columns
you
want
to
retrieve
SELECT
may
also
be
used
to
retrieve
rows
computed
without
reference
to
any
table
For
example
mysql
SELECT
1
1
2
All
keywords
used
must
be
given
in
exactly
the
order
shown
above
For
example
a
HAVING
clause
must
come
after
any
GROUP
BY
clause
and
before
any
ORDER
BY
clause
A
SELECT
expression
may
be
given
an
alias
using
AS
The
alias
is
used
as
the
expression
s
column
name
and
can
be
used
with
ORDER
BY
or
HAVING
clauses
For
example
mysql
select
concat
last
name
first
name
AS
full
name
from
mytable
ORDER
BY
full
name
The
FROM
table
references
clause
indicates
the
tables
from
which
to
retrieve
rows
If
you
name
more
than
one
table
you
are
performing
a
join
For
information
on
join
syntax
see
section
576
7
12
JOIN
syntax
You
can
refer
to
a
column
as
col
name
tbl
name
col
name
or
db
name
tbl
name
col
name
You
need
not
specify
a
tbl
name
or
db
name
tbl
name
prefix
for
a
column
reference
in
a
SELECT
statement
unless
the
reference
would
be
ambiguous
See
section
577
7
1
4
Database
table
index
column
and
alias
names
for
examples
of
ambiguity
that
require
the
more
explicit
column
reference
forms
A
table
reference
may
be
aliased
using
tbl
name
AS
alias
name
mysql
select
t1
name
t2
salary
from
employee
AS
t1
info
AS
t2
where
t1
name
t2
name
mysql
select
t1
name
t2
salary
from
employee
t1
info
t2
where
t1
name
t2
name
Columns
selected
for
output
may
be
referred
to
in
ORDER
BY
and
GROUP
BY
clauses
using
column
names
column
aliases
or
column
positions
Column
positions
begin
with
1
mysql
select
college
region
seed
from
tournament
ORDER
BY
region
seed
mysql
select
college
region
AS
r
seed
AS
s
from
tournament
ORDER
BY
r
s
mysql
select
college
region
seed
from
tournament
ORDER
BY
2
3
To
sort
in
reverse
order
add
the
DESC
descending
keyword
to
the
name
of
the
column
in
the
ORDER
BY
clause
that
you
are
sorting
by
The
default
is
ascending
order
this
may
be
specified
explicitly
using
the
ASC
keyword
The
HAVING
clause
can
refer
to
any
column
or
alias
named
in
the
select
expression
It
is
applied
last
just
before
items
are
sent
to
the
client
with
no
optimization
Don
t
use
HAVING
for
items
that
should
be
in
the
WHERE
clause
For
example
do
not
write
this
mysql
select
col
name
from
tbl
name
HAVING
col
name
0
Write
this
instead
mysql
select
col
name
from
tbl
name
WHERE
col
name
0
In
MySQL
3
22
5
or
later
you
can
also
write
queries
like
this
mysql
select
user
max
salary
from
users
group
by
user
HAVING
max
salary
10
In
older
MySQL
versions
you
can
write
this
instead
mysql
select
user
max
salary
AS
sum
from
users
group
by
user
HAVING
sum
10
STRAIGHT
JOIN
forces
the
optimizer
to
join
the
tables
in
the
order
in
which
they
are
listed
in
the
FROM
clause
You
can
use
this
to
speed
up
a
query
if
the
optimizer
joins
the
tables
in
non
optimal
order
See
section
578
7
21
EXPLAIN
syntax
Get
information
about
a
SELECT
SQL
SMALL
RESULT
can
be
used
with
GROUP
BY
or
DISTINCT
to
tell
the
optimizer
that
the
result
set
will
be
small
In
this
case
MySQL
will
use
fast
temporary
tables
to
store
the
resulting
table
instead
of
using
sorting
SQL
SMALL
RESULT
is
a
MySQL
extension
to
ANSI
SQL92
The
LIMIT
clause
can
be
used
to
constrain
the
number
of
rows
returned
by
the
SELECT
statement
LIMIT
takes
one
or
two
numeric
arguments
If
two
arguments
are
given
the
first
specifies
the
offset
of
the
first
row
to
return
the
second
specifies
the
maximum
number
of
rows
to
return
The
offset
of
the
initial
row
is
0
not
1
mysql
select
from
table
LIMIT
5
10
Retrieve
rows
6
15
If
one
argument
is
given
it
indicates
the
maximum
number
of
rows
to
return
mysql
select
from
table
LIMIT
5
Retrieve
first
5
rows
In
other
words
LIMIT
n
is
equivalent
to
LIMIT
0
n
The
SELECT
INTO
OUTFILE
file
name
form
of
SELECT
writes
the
selected
rows
to
a
file
The
file
is
created
on
the
server
host
and
cannot
already
exist
among
other
things
this
prevents
database
tables
and
files
such
as
etc
passwd
from
being
destroyed
You
must
have
the
file
privilege
on
the
server
host
to
use
this
form
of
SELECT
SELECT
INTO
OUTFILE
is
the
complement
of
LOAD
DATA
INFILE
the
syntax
for
the
export
options
part
of
the
statement
consists
of
the
same
FIELDS
and
LINES
clauses
that
are
used
with
the
LOAD
DATA
INFILE
statement
See
section
579
7
15
LOAD
DATA
INFILE
syntax
In
the
resulting
text
file
only
the
following
characters
are
escaped
by
the
ESCAPED
BY
character
The
ESCAPED
BY
character
The
first
character
in
FIELDS
TERMINATED
BY
The
first
character
in
LINES
TERMINATED
BY
Additionally
ASCII
0
is
converted
to
ESCAPED
BY
followed
by
0
ASCII
48
The
reason
for
the
above
is
that
you
MUST
escape
any
FIELDS
TERMINATED
BY
ESCAPED
BY
or
LINES
TERMINATED
BY
characters
to
reliably
be
able
to
read
the
file
back
ASCII
0
is
escaped
to
make
it
easier
to
view
with
some
pagers
As
the
resulting
file
doesn
t
have
to
conform
to
the
SQL
syntax
nothing
else
need
be
escaped
580
7
12
JOIN
syntax
MySQL
supports
the
following
JOIN
syntaxes
for
use
in
SELECT
statements
table
reference
table
reference
table
reference
CROSS
JOIN
table
reference
table
reference
STRAIGHT
JOIN
table
reference
table
reference
LEFT
OUTER
JOIN
table
reference
ON
conditional
expr
table
reference
LEFT
OUTER
JOIN
table
reference
USING
column
list
table
reference
NATURAL
LEFT
OUTER
JOIN
table
reference
oj
table
reference
LEFT
OUTER
JOIN
table
reference
ON
conditional
expr
The
last
LEFT
OUTER
JOIN
syntax
shown
above
exists
only
for
compatibility
with
ODBC
A
table
reference
may
be
aliased
using
tbl
name
AS
alias
name
or
tbl
name
alias
name
mysql
select
t1
name
t2
salary
from
employee
AS
t1
info
AS
t2
where
t1
name
t2
name
JOIN
and
comma
are
semantically
equivalent
Both
do
a
full
join
between
the
tables
used
Normally
you
specify
how
the
tables
should
be
linked
in
the
WHERE
condition
The
ON
conditional
is
any
conditional
of
the
form
that
may
be
used
in
a
WHERE
clause
If
there
is
no
matching
record
for
the
right
table
in
a
LEFT
JOIN
a
row
with
all
columns
set
to
NULL
is
used
for
the
right
table
You
can
use
this
fact
to
find
records
in
a
table
that
have
no
counterpart
in
another
table
mysql
select
table1
from
table1
LEFT
JOIN
table2
ON
table1
id
table2
id
where
table2
id
is
NULL
This
example
finds
all
rows
in
table1
with
an
id
value
that
is
not
present
in
table2
i
e
all
rows
in
table1
with
no
corresponding
row
in
table2
This
assumes
that
table2
id
is
declared
NOT
NULL
of
course
The
USING
column
list
clause
names
a
list
of
columns
that
must
exist
in
both
tables
A
USING
clause
such
as
A
LEFT
JOIN
B
USING
C1
C2
C3
is
defined
to
be
semantically
identical
to
an
ON
expression
like
this
A
C1
B
C1
AND
A
C2
B
C2
AND
A
C3
B
C3
The
NATURAL
LEFT
JOIN
of
two
tables
is
defined
to
be
semantically
equivalent
to
a
LEFT
JOIN
with
a
USING
clause
that
names
all
columns
that
exist
in
both
tables
STRAIGHT
JOIN
is
identical
to
JOIN
except
that
the
left
table
is
always
read
before
the
right
table
This
can
be
used
for
those
few
cases
where
the
join
optimizer
puts
the
tables
in
the
wrong
order
Some
examples
mysql
select
from
table1
table2
where
table1
id
table2
id
mysql
select
from
table1
LEFT
JOIN
table2
ON
table1
id
table2
id
mysql
select
from
table1
LEFT
JOIN
table2
USING
id
mysql
select
from
table1
LEFT
JOIN
table2
ON
table1
id
table2
id
LEFT
JOIN
table3
ON
table2
id
table3
id
See
section
581
10
6
How
MySQL
optimizes
LEFT
JOIN
582
7
13
INSERT
syntax
INSERT
LOW
PRIORITY
DELAYED
IGNORE
INTO
tbl
name
col
name
VALUES
expression
or
INSERT
LOW
PRIORITY
DELAYED
IGNORE
INTO
tbl
name
col
name
SELECT
or
INSERT
LOW
PRIORITY
DELAYED
IGNORE
INTO
tbl
name
SET
col
name
expression
col
name
expression
INSERT
inserts
new
rows
into
an
existing
table
The
INSERT
VALUES
form
of
the
statement
inserts
rows
based
on
explicitly
specified
values
The
INSERT
SELECT
form
inserts
rows
selected
from
another
table
or
tables
The
INSERT
VALUES
form
with
multiple
value
lists
is
supported
in
MySQL
3
22
5
or
later
The
col
name
expression
syntax
is
supported
in
MySQL
3
22
10
or
later
tbl
name
is
the
table
into
which
rows
should
be
inserted
The
column
name
list
or
the
SET
clause
indicates
which
columns
the
statement
specifies
values
for
If
you
specify
no
column
list
for
INSERT
VALUES
or
INSERT
SELECT
values
for
all
columns
must
be
provided
in
the
VALUES
list
or
by
the
SELECT
If
you
don
t
know
the
order
of
the
columns
in
the
table
use
DESCRIBE
tbl
name
to
find
out
Any
column
not
explicitly
given
a
value
is
set
to
its
default
value
For
example
if
you
specify
a
column
list
that
doesn
t
name
all
the
columns
in
the
table
unnamed
columns
are
set
to
their
default
values
Default
value
assignment
is
described
in
section
583
7
6
CREATE
TABLE
syntax
An
expression
may
refer
to
any
column
that
was
set
earlier
in
a
value
list
For
example
you
can
say
this
mysql
INSERT
INTO
tbl
name
col1
col2
VALUES
15
col1
2
But
not
this
mysql
INSERT
INTO
tbl
name
col1
col2
VALUES
col2
2
15
If
you
specify
the
keyword
LOW
PRIORITY
execution
of
the
INSERT
is
delayed
until
no
other
clients
are
reading
from
the
table
If
you
specify
the
keyword
IGNORE
in
an
INSERT
with
many
value
rows
any
rows
which
duplicate
an
existing
PRIMARY
or
UNIQUE
key
in
the
table
are
ignored
and
are
not
inserted
If
you
do
not
specify
IGNORE
the
insert
is
aborted
if
there
is
any
row
that
duplicates
an
existing
key
value
You
can
check
with
the
mysql
info
how
many
rows
were
inserted
into
the
table
If
MySQL
was
configured
using
the
DONT
USE
DEFAULT
FIELDS
option
INSERT
statements
generate
an
error
unless
you
explicitly
specify
values
for
all
columns
that
require
a
non
NULL
value
See
section
584
4
7
3
Typical
configure
options
The
following
conditions
hold
for
a
INSERT
INTO
SELECT
statement
The
query
cannot
contain
an
ORDER
BY
clause
The
target
table
of
the
INSERT
statement
cannot
appear
in
the
FROM
clause
of
the
SELECT
part
of
the
query
because
it
s
forbidden
in
ANSI
SQL
to
SELECT
from
the
same
table
into
which
you
are
INSERTing
The
problem
is
that
the
SELECT
possibly
would
find
records
that
were
inserted
earlier
during
the
same
run
When
using
sub
select
clauses
the
situation
could
easily
be
very
confusing
AUTO
INCREMENT
columns
work
as
usual
If
you
use
INSERT
SELECT
or
a
INSERT
VALUES
statement
with
multiple
value
lists
you
can
use
the
C
API
function
mysql
info
to
get
information
about
the
query
The
format
of
the
information
string
is
shown
below
Records
100
Duplicates
0
Warnings
0
Duplicates
indicates
the
number
of
rows
that
couldn
t
be
inserted
because
they
would
duplicate
some
existing
unique
index
value
Warnings
indicates
the
number
of
attempts
to
insert
column
values
that
were
problematic
in
some
way
Warnings
can
occur
under
any
of
the
following
conditions
Inserting
NULL
into
a
column
that
has
been
declared
NOT
NULL
The
column
is
set
to
its
default
value
Setting
a
numeric
column
to
a
value
that
lies
outside
the
column
s
range
The
value
is
clipped
to
the
appropriate
endpoint
of
the
range
Setting
a
numeric
column
to
a
value
such
as
10
34
a
The
trailing
garbage
is
stripped
and
the
remaining
numeric
part
is
inserted
If
the
value
doesn
t
make
sense
as
a
number
at
all
the
column
is
set
to
0
Inserting
a
string
into
a
CHAR
VARCHAR
TEXT
or
BLOB
column
that
exceeds
the
column
s
maximum
length
The
value
is
truncated
to
the
column
s
maximum
length
Inserting
a
value
into
a
date
or
time
column
that
is
illegal
for
the
column
type
The
column
is
set
to
the
appropriate
zero
value
for
the
type
The
DELAYED
option
for
the
INSERT
statement
is
a
MySQL
specific
option
that
is
very
useful
if
you
have
clients
that
can
t
wait
for
the
INSERT
to
complete
This
is
common
when
you
use
MySQL
for
logging
and
you
also
periodically
run
SELECT
statements
that
take
a
long
time
to
complete
DELAYED
was
introduced
in
MySQL
3
22
15
It
is
a
MySQL
extension
to
ANSI
SQL92
Another
major
benefit
of
using
INSERT
DELAYED
is
that
inserts
from
many
clients
are
bundled
together
and
written
in
one
block
This
is
much
faster
than
doing
many
separate
inserts
Note
that
currently
the
queued
rows
are
only
stored
in
memory
until
they
are
inserted
into
the
table
This
means
that
if
you
kill
mysqld
the
hard
way
kill
9
or
if
mysqld
dies
unexpectedly
any
queued
rows
that
weren
t
written
to
disk
are
lost
The
following
happens
when
you
use
the
DELAYED
option
to
INSERT
or
REPLACE
In
this
description
the
thread
is
the
thread
that
received
an
INSERT
DELAYED
command
and
handler
is
the
thread
that
handles
all
INSERT
DELAYED
statements
for
a
particular
table
When
a
thread
executes
a
DELAYED
statement
for
a
table
a
handler
thread
is
created
to
handle
all
DELAYED
statements
for
the
table
if
no
such
handler
already
exists
The
thread
checks
whether
or
not
the
handler
has
acquired
a
DELAYED
lock
already
if
not
it
tells
the
handler
thread
to
do
so
The
DELAYED
lock
can
be
obtained
even
if
other
threads
have
a
READ
or
WRITE
lock
on
the
table
However
the
handler
will
wait
for
all
ALTER
TABLE
locks
or
FLUSH
TABLES
to
ensure
that
the
table
structure
is
up
to
date
The
thread
executes
the
INSERT
statement
but
instead
of
writing
the
row
to
the
table
it
puts
a
copy
of
the
final
row
into
a
queue
that
is
managed
by
the
handler
thread
Any
syntax
errors
are
noticed
by
the
thread
and
reported
the
client
program
The
client
can
t
report
the
number
of
duplicates
or
the
AUTO
INCREMENT
value
for
the
resulting
row
it
can
t
obtain
them
from
the
server
because
the
INSERT
returns
before
the
insert
operation
has
been
completed
If
you
use
the
C
API
the
mysql
info
function
doesn
t
return
anything
meaningful
for
the
same
reason
The
update
log
is
updated
by
the
handler
thread
when
the
row
is
inserted
into
the
table
In
case
of
multiple
row
inserts
the
update
log
is
updated
when
the
first
row
is
inserted
After
every
delayed
insert
limit
rows
are
written
the
handler
checks
whether
or
not
any
SELECT
statements
are
still
pending
If
so
it
allows
these
to
execute
before
continuing
When
the
handler
has
no
more
rows
in
its
queue
the
table
is
unlocked
If
no
new
INSERT
DELAYED
commands
are
received
within
delayed
insert
timeout
seconds
the
handler
terminates
If
more
than
delayed
queue
size
rows
are
pending
already
in
a
specific
handler
queue
the
thread
waits
until
there
is
room
in
the
queue
This
is
useful
to
ensure
that
the
mysqld
server
doesn
t
use
all
memory
for
the
delayed
memory
queue
The
handler
thread
will
show
up
in
the
MySQL
process
list
with
delayed
insert
in
the
Command
column
It
will
be
killed
if
you
execute
a
FLUSH
TABLES
command
or
kill
it
with
KILL
thread
id
However
it
will
first
store
all
queued
rows
into
the
table
before
exiting
During
this
time
it
will
not
accept
any
new
INSERT
commands
from
another
thread
If
you
execute
an
INSERT
DELAYED
command
after
this
a
new
handler
thread
will
be
created
Note
that
the
above
means
that
INSERT
DELAYED
commands
have
higher
priority
than
normal
INSERT
commands
if
there
is
an
INSERT
DELAYED
handler
already
running
Other
update
commands
will
have
to
wait
until
the
INSERT
DELAY
queue
is
empty
someone
kills
the
handler
thread
with
KILL
thread
id
or
someone
executes
FLUSH
TABLES
The
following
status
variables
provide
information
about
INSERT
DELAYED
commands
Delayed
insert
threads
Number
of
handler
threads
Delayed
writes
Number
of
rows
written
with
INSERT
DELAYED
Not
flushed
delayed
rows
Number
of
rows
waiting
to
be
written
You
can
view
these
variables
by
issuing
a
SHOW
STATUS
statement
or
by
executing
a
mysqladmin
extended
status
command
585
7
14
REPLACE
syntax
REPLACE
LOW
PRIORITY
DELAYED
INTO
tbl
name
col
name
VALUES
expression
or
REPLACE
LOW
PRIORITY
DELAYED
INTO
tbl
name
col
name
SELECT
or
REPLACE
LOW
PRIORITY
DELAYED
INTO
tbl
name
SET
col
name
expression
col
name
expression
REPLACE
works
exactly
like
INSERT
except
that
if
an
old
record
in
the
table
has
the
same
value
as
a
new
record
on
a
unique
index
the
old
record
is
deleted
before
the
new
record
is
inserted
See
section
586
7
13
INSERT
syntax
587
7
15
LOAD
DATA
INFILE
syntax
LOAD
DATA
LOCAL
INFILE
file
name
txt
REPLACE
IGNORE
INTO
TABLE
tbl
name
FIELDS
TERMINATED
BY
t
OPTIONALLY
ENCLOSED
BY
ESCAPED
BY
LINES
TERMINATED
BY
n
IGNORE
number
LINES
col
name
The
LOAD
DATA
INFILE
statement
reads
rows
from
a
text
file
into
a
table
at
a
very
high
speed
If
the
LOCAL
keyword
is
specified
the
file
is
read
from
the
client
host
If
LOCAL
is
not
specified
the
file
must
be
located
on
the
server
LOCAL
is
available
in
MySQL
3
22
6
or
later
For
security
reasons
when
reading
text
files
located
on
the
server
the
files
must
either
reside
in
the
database
directory
or
be
readable
by
all
Also
to
use
LOAD
DATA
INFILE
on
server
files
you
must
have
the
file
privilege
on
the
server
host
See
section
588
6
6
How
the
privilege
system
works
Using
LOCAL
will
be
a
bit
slower
than
letting
the
server
access
the
files
directly
since
the
contents
of
the
file
must
travel
from
the
client
host
to
the
server
host
On
the
other
hand
you
do
not
need
the
file
privilege
to
load
local
files
You
can
also
load
data
files
by
using
the
mysqlimport
utility
it
operates
by
sending
a
LOAD
DATA
INFILE
command
to
the
server
The
local
option
causes
mysqlimport
to
read
data
files
from
the
client
host
You
can
specify
the
compress
option
to
get
better
performance
over
slow
networks
if
the
client
and
server
support
the
compressed
protocol
When
locating
files
on
the
server
host
the
server
uses
the
following
rules
If
an
absolute
pathname
is
given
the
server
uses
the
pathname
as
is
If
a
relative
pathname
with
one
or
more
leading
components
is
given
the
server
searches
for
the
file
relative
to
the
server
s
data
directory
If
a
filename
with
no
leading
components
is
given
the
server
looks
for
the
file
in
the
database
directory
of
the
current
database
Note
that
these
rules
mean
a
file
given
as
myfile
txt
is
read
from
the
server
s
data
directory
whereas
a
file
given
as
myfile
txt
is
read
from
the
database
directory
of
the
current
database
Note
also
that
for
statements
such
as
those
below
the
file
is
read
from
the
database
directory
for
db1
not
db2
mysql
USE
db1
mysql
LOAD
DATA
INFILE
data
txt
INTO
TABLE
db2
my
table
The
REPLACE
and
IGNORE
keywords
control
handling
of
input
records
that
duplicate
existing
records
on
unique
key
values
If
you
specify
REPLACE
new
rows
replace
existing
rows
that
have
the
same
unique
key
value
If
you
specify
IGNORE
input
rows
that
duplicate
an
existing
row
on
a
unique
key
value
are
skipped
If
you
don
t
specify
either
option
an
error
occurs
when
a
duplicate
key
value
is
found
and
the
rest
of
the
text
file
is
ignored
If
you
load
data
from
a
local
file
using
the
LOCAL
keyword
the
server
has
no
way
to
stop
transmission
of
the
file
in
the
middle
of
the
operation
so
the
default
bahavior
is
the
same
as
if
IGNORE
is
specified
LOAD
DATA
INFILE
is
the
complement
of
SELECT
INTO
OUTFILE
See
section
589
7
11
SELECT
syntax
To
write
data
from
a
database
to
a
file
use
SELECT
INTO
OUTFILE
To
read
the
file
back
into
the
database
use
LOAD
DATA
INFILE
The
syntax
of
the
FIELDS
and
LINES
clauses
is
the
same
for
both
commands
Both
clauses
are
optional
but
FIELDS
must
precede
LINES
if
both
are
specified
If
you
specify
a
FIELDS
clause
each
of
its
subclauses
TERMINATED
BY
OPTIONALLY
ENCLOSED
BY
and
ESCAPED
BY
is
also
optional
except
that
you
must
specify
at
least
one
of
them
If
you
don
t
specify
a
FIELDS
clause
the
defaults
are
the
same
as
if
you
had
written
this
FIELDS
TERMINATED
BY
t
ENCLOSED
BY
ESCAPED
BY
If
you
don
t
specify
a
LINES
clause
the
default
is
the
same
as
if
you
had
written
this
LINES
TERMINATED
BY
n
In
other
words
the
defaults
cause
LOAD
DATA
INFILE
to
act
as
follows
when
reading
input
Look
for
line
boundaries
at
newlines
Break
lines
into
fields
at
tabs
Do
not
expect
fields
to
be
enclosed
within
any
quoting
characters
Interpret
occurrences
of
tab
newline
or
preceded
by
as
literal
characters
that
are
part
of
field
values
Conversely
the
defaults
cause
SELECT
INTO
OUTFILE
to
act
as
follows
when
writing
output
Write
tabs
between
fields
Do
not
enclose
fields
within
any
quoting
characters
Use
to
escape
instances
of
tab
newline
or
that
occur
within
field
values
Write
newlines
at
the
ends
of
lines
Note
that
to
write
FIELDS
ESCAPED
BY
you
must
specify
two
backslashes
for
the
value
to
be
read
as
a
single
backslash
The
IGNORE
number
LINES
option
can
be
used
to
ignore
a
header
of
column
names
at
the
start
of
the
file
mysql
LOAD
DATA
INFILE
tmp
file
name
into
table
test
IGNORE
1
LINES
When
you
use
SELECT
INTO
OUTFILE
in
tandem
with
LOAD
DATA
INFILE
to
write
data
from
a
database
into
a
file
and
then
read
the
file
back
into
the
database
later
the
field
and
line
handling
options
for
both
commands
must
match
Otherwise
LOAD
DATA
INFILE
will
not
interpret
the
contents
of
the
file
properly
Suppose
you
use
SELECT
INTO
OUTFILE
to
write
a
file
with
fields
delimited
by
commas
mysql
SELECT
FROM
table1
INTO
OUTFILE
data
txt
FIELDS
TERMINATED
BY
FROM
To
read
the
comma
delimited
file
back
in
the
correct
statement
would
be
mysql
LOAD
DATA
INFILE
data
txt
INTO
TABLE
table2
FIELDS
TERMINATED
BY
If
instead
you
tried
to
read
in
the
file
with
the
statement
shown
below
it
wouldn
t
work
because
it
instructs
LOAD
DATA
INFILE
to
look
for
tabs
between
fields
mysql
LOAD
DATA
INFILE
data
txt
INTO
TABLE
table2
FIELDS
TERMINATED
BY
t
The
likely
result
is
that
each
input
line
would
be
interpreted
as
a
single
field
LOAD
DATA
INFILE
can
be
used
to
read
files
obtained
from
external
sources
too
For
example
a
file
in
dBASE
format
will
have
fields
separated
by
commas
and
enclosed
in
double
quotes
If
lines
in
the
file
are
terminated
by
newlines
the
command
shown
below
illustrates
the
field
and
line
handling
options
you
would
use
to
load
the
file
mysql
LOAD
DATA
INFILE
data
txt
INTO
TABLE
tbl
name
FIELDS
TERMINATED
BY
ENCLOSED
BY
LINES
TERMINATED
BY
n
Any
of
the
field
or
line
handling
options
may
specify
an
empty
string
If
not
empty
the
FIELDS
OPTIONALLY
ENCLOSED
BY
and
FIELDS
ESCAPED
BY
values
must
be
a
single
character
The
FIELDS
TERMINATED
BY
and
LINES
TERMINATED
BY
values
may
be
more
than
one
character
For
example
to
write
lines
that
are
terminated
by
carriage
return
linefeed
pairs
or
to
read
a
file
containing
such
lines
specify
a
LINES
TERMINATED
BY
r
n
clause
FIELDS
OPTIONALLY
ENCLOSED
BY
controls
quoting
of
fields
For
output
SELECT
INTO
OUTFILE
if
you
omit
the
word
OPTIONALLY
all
fields
are
enclosed
by
the
ENCLOSED
BY
character
An
example
of
such
output
using
a
comma
as
the
field
delimiter
is
shown
below
1
a
string
100
20
2
a
string
containing
a
comma
102
20
3
a
string
containing
a
quote
102
20
4
a
string
containing
a
quote
and
comma
102
20
If
you
specify
OPTIONALLY
the
ENCLOSED
BY
character
is
used
only
to
enclose
CHAR
and
VARCHAR
fields
1
a
string
100
20
2
a
string
containing
a
comma
102
20
3
a
string
containing
a
quote
102
20
4
a
string
containing
a
quote
and
comma
102
20
Note
that
occurrences
of
the
ENCLOSED
BY
character
within
a
field
value
are
escaped
by
prefixing
them
with
the
ESCAPED
BY
character
Also
note
that
if
you
specify
an
empty
ESCAPED
BY
value
it
is
possible
to
generate
output
that
cannot
be
read
properly
by
LOAD
DATA
INFILE
For
example
the
output
just
shown
above
would
appear
as
shown
below
if
the
escape
character
is
empty
Observe
that
the
second
field
in
the
fourth
line
contains
a
comma
following
the
quote
which
erroneously
appears
to
terminate
the
field
1
a
string
100
20
2
a
string
containing
a
comma
102
20
3
a
string
containing
a
quote
102
20
4
a
string
containing
a
quote
and
comma
102
20
For
input
the
ENCLOSED
BY
character
if
present
is
stripped
from
the
ends
of
field
values
This
is
true
whether
or
not
OPTIONALLY
is
specified
OPTIONALLY
has
no
effect
on
input
interpretation
Occurrences
of
the
ENCLOSED
BY
character
preceded
by
the
ESCAPED
BY
character
are
interpreted
as
part
of
the
current
field
value
In
addition
duplicated
ENCLOSED
BY
characters
occurring
within
fields
are
interpreted
as
single
ENCLOSED
BY
characters
if
the
field
itself
starts
with
that
character
For
example
if
ENCLOSED
BY
is
specified
quotes
are
handled
as
shown
below
The
BIG
boss
The
BIG
boss
The
BIG
boss
The
BIG
boss
The
BIG
boss
The
BIG
boss
FIELDS
ESCAPED
BY
controls
how
to
write
or
read
special
characters
If
the
FIELDS
ESCAPED
BY
character
is
not
empty
it
is
used
to
prefix
the
following
characters
on
output
The
FIELDS
ESCAPED
BY
character
The
FIELDS
OPTIONALLY
ENCLOSED
BY
character
The
first
character
of
the
FIELDS
TERMINATED
BY
and
LINES
TERMINATED
BY
values
ASCII
0
what
is
actually
written
following
the
escape
character
is
ASCII
0
not
a
zero
valued
byte
If
the
FIELDS
ESCAPED
BY
character
is
empty
no
characters
are
escaped
It
is
probably
not
a
good
idea
to
specify
an
empty
escape
character
particularly
if
field
values
in
your
data
contain
any
of
the
characters
in
the
list
just
given
For
input
if
the
FIELDS
ESCAPED
BY
character
is
not
empty
occurrences
of
that
character
are
stripped
and
the
following
character
is
taken
literally
as
part
of
a
field
value
The
exceptions
are
an
escaped
0
or
N
e
g
0
or
N
if
the
escape
character
is
These
sequences
are
interpreted
as
ASCII
0
a
zero
valued
byte
and
NULL
See
below
for
the
rules
on
NULL
handling
For
more
information
about
escape
syntax
see
section
590
7
1
Literals
how
to
write
strings
and
numbers
In
certain
cases
field
and
line
handling
options
interact
If
LINES
TERMINATED
BY
is
an
empty
string
and
FIELDS
TERMINATED
BY
is
non
empty
lines
are
also
terminated
with
FIELDS
TERMINATED
BY
If
the
FIELDS
TERMINATED
BY
and
FIELDS
ENCLOSED
BY
values
are
both
empty
a
fixed
row
non
delimited
format
is
used
With
fixed
row
format
no
delimiters
are
used
between
fields
Instead
column
values
are
written
and
read
using
the
display
widths
of
the
columns
For
example
if
a
column
is
declared
as
INT
7
values
for
the
column
are
written
using
7
character
fields
On
input
values
for
the
column
are
obtained
by
reading
7
characters
Fixed
row
format
also
affects
handling
of
NULL
values
see
below
Handling
of
NULL
values
varies
depending
on
the
FIELDS
and
LINES
options
you
use
For
the
default
FIELDS
and
LINES
values
NULL
is
written
as
N
for
output
and
N
is
read
as
NULL
for
input
assuming
the
ESCAPED
BY
character
is
If
FIELDS
ENCLOSED
BY
is
not
empty
a
field
containing
the
literal
word
NULL
as
its
value
is
read
as
a
NULL
value
this
differs
from
the
word
NULL
enclosed
within
FIELDS
ENCLOSED
BY
characters
which
is
read
as
the
string
NULL
If
FIELDS
ESCAPED
BY
is
empty
NULL
is
written
as
the
word
NULL
With
fixed
row
format
which
happens
when
FIELDS
TERMINATED
BY
and
FIELDS
ENCLOSED
BY
are
both
empty
NULL
is
written
as
an
empty
string
Note
that
this
causes
both
NULL
values
and
empty
strings
in
the
table
to
be
indistinguishable
when
written
to
the
file
since
they
are
both
written
as
empty
strings
If
you
need
to
be
able
to
tell
the
two
apart
when
reading
the
file
back
in
you
should
not
use
fixed
row
format
Some
cases
are
not
supported
by
LOAD
DATA
INFILE
Fixed
size
rows
FIELDS
TERMINATED
BY
and
FIELDS
ENCLOSED
BY
both
empty
and
BLOB
or
TEXT
columns
If
you
specify
one
separator
that
is
the
same
as
or
a
prefix
of
another
LOAD
DATA
INFILE
won
t
be
able
to
interpret
the
input
properly
For
example
the
following
FIELDS
clause
would
cause
problems
FIELDS
TERMINATED
BY
ENCLOSED
BY
If
FIELDS
ESCAPED
BY
is
empty
a
field
value
that
contains
an
occurrence
of
FIELDS
ENCLOSED
BY
or
LINES
TERMINATED
BY
followed
by
the
FIELDS
TERMINATED
BY
value
will
cause
LOAD
DATA
INFILE
to
stop
reading
a
field
or
line
too
early
This
happens
because
LOAD
DATA
INFILE
cannot
properly
determine
where
the
field
or
line
value
ends
The
following
example
loads
all
columns
of
the
persondata
table
mysql
LOAD
DATA
INFILE
persondata
txt
INTO
TABLE
persondata
No
field
list
is
specified
so
LOAD
DATA
INFILE
expects
input
rows
to
contain
a
field
for
each
table
column
The
default
FIELDS
and
LINES
values
are
used
If
you
wish
to
load
only
some
of
a
table
s
columns
specify
a
field
list
mysql
LOAD
DATA
INFILE
persondata
txt
INTO
TABLE
persondata
col1
col2
You
must
also
specify
a
field
list
if
the
order
of
the
fields
in
the
input
file
differs
from
the
order
of
the
columns
in
the
table
Otherwise
MySQL
cannot
tell
how
to
match
up
input
fields
with
table
columns
If
a
row
has
too
few
fields
the
columns
for
which
no
input
field
is
present
are
set
to
default
values
Default
value
assignment
is
described
in
section
591
7
6
CREATE
TABLE
syntax
An
empty
field
value
is
interpreted
differently
than
if
the
field
value
is
missing
For
string
types
the
column
is
set
to
the
empty
string
For
numeric
types
the
column
is
set
to
0
For
date
and
time
types
the
column
is
set
to
the
appropriate
zero
value
for
the
type
See
section
592
7
2
6
Date
and
time
types
TIMESTAMP
columns
are
only
set
to
the
current
date
and
time
if
there
is
a
NULL
value
for
the
column
or
for
the
first
TIMESTAMP
column
only
if
the
TIMESTAMP
column
is
left
out
from
the
field
list
when
a
field
list
is
specified
If
an
input
row
has
too
many
fields
the
extra
fields
are
ignored
and
the
number
of
warnings
is
incremented
LOAD
DATA
INFILE
regards
all
input
as
strings
so
you
can
t
use
numeric
values
for
ENUM
or
SET
columns
the
way
you
can
with
INSERT
statements
All
ENUM
and
SET
values
must
be
specified
as
strings
If
you
are
using
the
C
API
you
can
get
information
about
the
query
by
calling
the
API
function
mysql
info
when
the
LOAD
DATA
INFILE
query
finishes
The
format
of
the
information
string
is
shown
below
Records
1
Deleted
0
Skipped
0
Warnings
0
Warnings
occur
under
the
same
circumstances
as
when
values
are
inserted
via
the
INSERT
statement
see
section
593
7
13
INSERT
syntax
except
that
LOAD
DATA
INFILE
also
generates
warnings
when
there
are
too
few
or
too
many
fields
in
the
input
row
The
warnings
are
not
stored
anywhere
the
number
of
warnings
can
only
be
used
as
an
indication
if
everything
went
well
If
you
get
warnings
and
want
to
know
exactly
why
you
got
them
one
way
to
do
this
is
to
use
SELECT
INTO
OUTFILE
into
another
file
and
compare
this
to
your
original
input
file
For
more
information
about
the
efficiency
of
INSERT
versus
LOAD
DATA
INFILE
and
speeding
up
LOAD
DATA
INFILE
see
section
594
10
11
How
to
arrange
a
table
to
be
as
fast
small
as
possible
595
7
16
UPDATE
syntax
UPDATE
LOW
PRIORITY
tbl
name
SET
col
name1
expr1
col
name2
expr2
WHERE
where
definition
UPDATE
updates
columns
in
existing
table
rows
with
new
values
The
SET
clause
indicates
which
columns
to
modify
and
the
values
they
should
be
given
The
WHERE
clause
if
given
specifies
which
rows
should
be
updated
Otherwise
all
rows
are
updated
If
you
specify
the
keyword
LOW
PRIORITY
execution
of
the
UPDATE
is
delayed
until
no
other
clients
are
reading
from
the
table
If
you
access
a
column
from
tbl
name
in
an
expression
UPDATE
uses
the
current
value
of
the
column
For
example
the
following
statement
sets
the
age
column
to
one
more
than
its
current
value
mysql
UPDATE
persondata
SET
age
age
1
UPDATE
assignments
are
evaluated
from
left
to
right
For
example
the
following
statement
doubles
the
age
column
then
increments
it
mysql
UPDATE
persondata
SET
age
age
2
age
age
1
If
you
set
a
column
to
the
value
it
currently
has
MySQL
notices
this
and
doesn
t
update
it
UPDATE
returns
the
number
of
rows
that
were
actually
changed
In
MySQL
3
22
or
later
the
C
API
function
mysql
info
returns
the
number
of
rows
that
were
matched
and
updated
and
the
number
of
warnings
that
occurred
during
the
UPDATE
596
7
17
USE
syntax
USE
db
name
The
USE
db
name
statement
tells
MySQL
to
use
the
db
name
database
as
the
default
database
for
subsequent
queries
The
database
remains
current
until
the
end
of
the
session
or
until
another
USE
statement
is
issued
mysql
USE
db1
mysql
SELECT
count
FROM
mytable
selects
from
db1
mytable
mysql
USE
db2
mysql
SELECT
count
FROM
mytable
selects
from
db2
mytable
Making
a
particular
database
current
by
means
of
the
USE
statement
does
not
preclude
you
from
accessing
tables
in
other
databases
The
example
below
accesses
the
author
table
from
the
db1
database
and
the
editor
table
from
the
db2
database
mysql
USE
db1
mysql
SELECT
author
name
editor
name
FROM
author
db2
editor
WHERE
author
editor
id
db2
editor
editor
id
The
USE
statement
is
provided
for
Sybase
compatibility
597
7
18
FLUSH
syntax
clearing
caches
FLUSH
flush
option
flush
option
You
should
use
the
FLUSH
command
if
you
want
to
clear
some
of
the
internal
caches
MySQL
uses
To
execute
FLUSH
you
must
have
the
reload
privilege
flush
option
can
be
any
of
the
following
HOSTS
Empties
the
host
cache
tables
You
should
flush
the
host
tables
if
some
of
your
hosts
change
IP
number
or
if
you
get
the
error
message
Host
is
blocked
When
more
than
max
connect
errors
errors
occur
in
a
row
for
a
given
host
while
connection
to
the
MySQL
server
MySQL
assumes
something
is
wrong
and
blocks
the
host
from
further
connection
requests
Flushing
the
host
tables
allows
the
host
to
attempt
to
connect
again
See
section
598
17
2
3
Host
is
blocked
error
You
can
start
mysqld
with
O
max
connection
errors
999999999
to
avoid
this
error
message
LOGS
Closes
and
reopens
the
standard
and
update
log
files
If
you
have
specified
the
update
log
file
without
an
extension
the
extension
number
of
the
new
update
log
file
will
be
incremented
by
one
relative
to
the
previous
file
PRIVILEGES
Reloads
the
privileges
from
the
grant
tables
in
the
mysql
database
TABLES
Closes
all
open
tables
STATUS
Resets
most
status
variables
to
zero
You
can
also
access
each
of
the
commands
shown
above
with
the
mysqladmin
utility
using
the
flush
hosts
flush
logs
reload
or
flush
tables
commands
599
7
19
KILL
syntax
KILL
thread
id
Each
connection
to
mysqld
runs
in
a
separate
thread
You
can
see
which
threads
are
running
with
the
SHOW
PROCESSLIST
command
and
kill
a
thread
with
the
KILL
thread
id
command
If
you
have
the
process
privilege
you
can
see
and
kill
all
threads
Otherwise
you
can
see
and
kill
only
your
own
threads
You
can
also
use
the
mysqladmin
processlist
and
mysqladmin
kill
commands
to
examine
and
kill
threads
600
7
20
SHOW
syntax
Get
information
about
tables
columns
SHOW
DATABASES
LIKE
wild
or
SHOW
TABLES
FROM
db
name
LIKE
wild
or
SHOW
COLUMNS
FROM
tbl
name
FROM
db
name
LIKE
wild
or
SHOW
INDEX
FROM
tbl
name
FROM
db
name
or
SHOW
STATUS
or
SHOW
VARIABLES
LIKE
wild
or
SHOW
PROCESSLIST
or
SHOW
TABLE
STATUS
FROM
db
name
LIKE
wild
SHOW
provides
information
about
databases
tables
columns
or
the
server
If
the
LIKE
wild
part
is
used
the
wild
string
can
be
a
string
that
uses
the
SQL
and
wildcard
characters
You
can
use
db
name
tbl
name
as
an
alternative
to
the
tbl
name
FROM
db
name
syntax
These
two
statements
are
equivalent
mysql
SHOW
INDEX
FROM
mytable
FROM
mydb
mysql
SHOW
INDEX
FROM
mydb
mytable
SHOW
DATABASES
lists
the
databases
on
the
MySQL
server
host
You
can
also
get
this
list
using
the
mysqlshow
command
SHOW
TABLES
lists
the
tables
in
a
given
database
You
can
also
get
this
list
using
the
mysqlshow
db
name
command
Note
If
a
user
doesn
t
have
any
privileges
for
a
table
the
table
will
not
show
up
in
the
output
from
SHOW
TABLES
or
mysqlshow
db
name
SHOW
COLUMNS
lists
the
columns
in
a
given
table
If
the
column
types
are
different
than
you
expect
them
to
be
based
on
a
CREATE
TABLE
statement
note
that
MySQL
sometimes
changes
column
types
See
section
601
7
6
1
Silent
column
specification
changes
The
DESCRIBE
statement
provides
information
similar
to
SHOW
COLUMNS
See
section
602
7
22
DESCRIBE
syntax
Get
information
about
columns
SHOW
TABLE
STATUS
new
in
3
23
works
likes
SHOW
STATUS
but
provides
a
lot
of
information
about
each
table
You
can
also
get
this
list
using
the
mysqlshow
status
db
name
command
The
following
columns
are
returned
Name
Name
of
the
table
Type
Type
of
table
NISAM
MyISAM
or
HEAP
Rows
Number
of
rows
Avg
row
length
Average
row
length
Data
length
Length
of
the
data
file
Max
data
length
Max
length
of
the
data
file
Index
length
Length
of
the
index
file
Data
free
Number
of
allocated
but
not
used
bytes
Auto
increment
Next
autoincrement
value
Create
time
When
the
table
was
created
Update
time
When
the
data
file
was
last
updated
Check
time
When
one
last
run
a
check
on
the
table
Create
min
rows
The
min
rows
option
used
when
creating
the
table
Create
max
rows
The
max
rows
option
used
when
creating
the
table
Create
avg
row
length
The
avg
row
length
option
used
when
creating
the
table
Comment
The
comment
used
when
creating
the
table
or
some
information
why
MySQL
couldn
t
access
the
table
information
SHOW
FIELDS
is
a
synonym
for
SHOW
COLUMNS
and
SHOW
KEYS
is
a
synonym
for
SHOW
INDEX
You
can
also
list
a
table
s
columns
or
indexes
with
mysqlshow
db
name
tbl
name
or
mysqlshow
k
db
name
tbl
name
SHOW
INDEX
returns
the
index
information
in
a
format
that
closely
resembles
the
SQLStatistics
call
in
ODBC
The
following
columns
are
returned
Table
Name
of
the
table
Non
unique
0
if
the
index
can
t
contain
duplicates
Key
name
Name
of
the
index
Seq
in
index
Column
sequence
number
in
index
starting
with
1
Column
name
Column
name
Collation
How
the
column
is
sorted
in
the
index
In
MySQL
this
can
have
values
A
Ascending
or
NULL
Not
sorted
Cardinality
Number
of
unique
values
in
the
index
This
is
updated
by
running
isamchk
a
Sub
part
Number
of
indexed
characters
if
the
column
is
only
partly
indexed
NULL
if
the
entire
key
is
indexed
SHOW
STATUS
provides
server
status
information
like
mysqladmin
extended
status
The
output
resembles
that
shown
below
though
the
format
and
numbers
may
differ
somewhat
Variable
name
Value
Aborted
clients
0
Aborted
connects
0
Created
tmp
tables
0
Delayed
insert
threads
0
Delayed
writes
0
Delayed
errors
0
Flush
commands
2
Handler
delete
2
Handler
read
first
0
Handler
read
key
1
Handler
read
next
0
Handler
read
rnd
35
Handler
update
0
Handler
write
2
Key
blocks
used
0
Key
read
requests
0
Key
reads
0
Key
write
requests
0
Key
writes
0
Max
used
connections
1
Not
flushed
key
blocks
0
Not
flushed
delayed
rows
0
Open
tables
1
Open
files
2
Open
streams
0
Opened
tables
11
Questions
14
Running
threads
1
Slow
queries
0
Uptime
149111
The
status
variables
listed
above
have
the
following
meaning
Aborted
clients
Number
of
connections
that
has
been
aborted
because
the
client
has
died
without
closing
the
connection
properly
Aborted
connects
Number
of
tries
to
connect
to
the
MySQL
server
that
has
failed
Created
tmp
tables
Number
of
implicit
temporary
tables
that
has
been
created
while
executing
statements
Delayed
insert
threads
Number
of
delayed
insert
handler
threads
in
use
Delayed
writes
Number
of
rows
written
with
INSERT
DELAYED
Delayed
errors
Number
of
rows
written
with
INSERT
DELAYED
for
which
some
error
occurred
probably
duplicate
key
Flush
commands
Number
of
executed
FLUSH
commands
Handler
delete
Number
of
requests
to
delete
a
row
from
a
table
Handler
read
first
Number
of
request
to
read
first
the
row
in
a
table
Handler
read
key
Number
of
request
to
read
a
row
based
on
a
key
Handler
read
next
Number
of
request
to
read
next
row
in
key
order
Handler
read
rnd
Number
of
request
to
read
a
row
based
on
a
fixed
position
Handler
update
Number
of
requests
to
update
a
row
in
a
table
Handler
write
Number
of
requests
to
insert
a
row
in
a
table
Key
blocks
used
The
number
of
used
blocks
in
the
key
cache
Key
read
requests
The
number
of
request
to
read
a
key
block
from
the
cache
Key
reads
The
number
of
physical
reads
of
a
key
block
from
disk
Key
write
requests
The
number
of
request
to
write
a
key
block
to
the
cache
Key
writes
The
number
of
physical
writes
of
a
key
block
to
disk
Max
used
connections
The
maximum
number
of
connections
that
has
been
in
use
simultaneously
Not
flushed
key
blocks
Keys
blocks
in
the
key
cache
that
has
changed
but
hasn
t
yet
been
flushed
to
disk
Not
flushed
delayed
rows
Number
of
rows
waiting
to
be
written
in
INSERT
DELAY
queues
Open
tables
Number
of
tables
that
are
open
Open
files
Number
of
files
that
are
open
Open
streams
Number
of
streams
that
are
open
used
mainly
for
logging
Opened
tables
Number
of
tables
that
has
been
opened
Questions
Number
of
questions
asked
from
to
the
server
Running
threads
Number
of
currently
open
connections
Slow
queries
Number
of
queries
that
has
taken
more
than
long
query
time
Uptime
How
many
seconds
the
server
has
been
up
Some
comments
about
the
above
If
Opened
tables
is
big
then
your
table
cache
variable
is
probably
too
small
If
key
reads
is
big
then
your
key
cache
is
probably
too
small
The
cache
hit
rate
can
be
calculated
with
key
reads
key
read
requests
If
Handler
read
rnd
is
big
then
you
have
a
probably
a
lot
of
queries
that
requires
MySQL
to
scan
whole
tables
or
you
have
joins
that
doesn
t
use
keys
properly
SHOW
VARIABLES
shows
the
values
of
the
some
of
MySQL
system
variables
You
can
also
get
this
information
using
the
mysqladmin
variables
command
If
the
default
values
are
unsuitable
you
can
set
most
of
these
variables
using
command
line
options
when
mysqld
starts
up
The
output
resembles
that
shown
below
though
the
format
and
numbers
may
differ
somewhat
Variable
name
Value
back
log
5
connect
timeout
5
basedir
my
monty
datadir
my
monty
data
delayed
insert
limit
100
delayed
insert
timeout
300
delayed
queue
size
1000
join
buffer
size
131072
flush
time
0
key
buffer
size
1048540
language
my
monty
share
english
log
OFF
log
update
OFF
long
query
time
10
low
priority
updates
OFF
max
allowed
packet
1048576
max
connections
100
max
connect
errors
10
max
delayed
threads
20
max
heap
table
size
16777216
max
join
size
4294967295
max
sort
length
1024
max
tmp
tables
32
net
buffer
length
16384
port
3306
protocol
version
10
record
buffer
131072
skip
locking
ON
socket
tmp
mysql
sock
sort
buffer
2097116
table
cache
64
thread
stack
131072
tmp
table
size
1048576
tmpdir
machine
tmp
version
3
23
0
alpha
debug
wait
timeout
28800
See
section
603
10
1
Tuning
server
parameters
SHOW
PROCESSLIST
shows
you
which
threads
are
running
You
can
also
get
this
information
using
the
mysqladmin
processlist
command
If
you
have
the
process
privilege
you
can
see
all
threads
Otherwise
you
can
see
only
your
own
threads
See
section
604
7
19
KILL
syntax
605
7
21
EXPLAIN
syntax
Get
information
about
a
SELECT
EXPLAIN
SELECT
select
options
When
you
precede
a
SELECT
statement
with
the
keyword
EXPLAIN
MySQL
explains
how
it
would
process
the
SELECT
providing
information
about
how
tables
are
joined
and
in
which
order
With
the
help
of
EXPLAIN
you
can
see
when
you
must
add
indexes
to
tables
to
get
a
faster
SELECT
that
uses
indexes
to
find
the
records
You
can
also
see
if
the
optimizer
joins
the
tables
in
an
optimal
order
To
force
the
optimizer
to
use
a
specific
join
order
for
a
SELECT
statement
add
a
STRAIGHT
JOIN
clause
For
non
simple
joins
EXPLAIN
returns
a
row
of
information
for
each
table
used
in
the
SELECT
statement
The
tables
are
listed
in
the
order
they
would
be
read
MySQL
resolves
all
joins
using
a
single
sweep
multi
join
method
This
means
that
MySQL
reads
a
row
from
the
first
table
then
finds
a
matching
row
in
the
second
table
then
in
the
third
table
and
so
on
When
all
tables
are
processed
it
outputs
the
selected
columns
and
backtracks
through
the
table
list
until
a
table
is
found
for
which
there
are
more
matching
rows
The
next
row
is
read
from
this
table
and
the
process
continues
with
the
next
table
Output
from
EXPLAIN
includes
the
following
columns
table
The
table
to
which
the
row
of
output
refers
type
The
join
type
Information
about
the
various
types
is
given
below
possible
keys
The
possible
keys
column
indicates
which
indexes
MySQL
could
use
to
find
the
rows
in
the
table
If
this
column
is
empty
there
are
no
relevant
indexes
In
this
case
you
may
be
able
to
improve
the
performance
of
your
query
by
examining
the
WHERE
clause
to
see
if
it
refers
to
some
column
or
columns
that
would
be
suitable
for
indexing
If
so
create
an
appropriate
index
and
check
the
query
with
EXPLAIN
again
To
see
what
indexes
a
table
has
use
SHOW
INDEX
FROM
tbl
name
key
The
key
column
indicates
the
key
that
MySQL
actually
decided
to
use
The
key
is
NULL
if
no
index
was
chosen
key
len
The
key
len
column
indicates
the
length
of
the
key
that
MySQL
decided
to
use
The
length
is
NULL
if
the
key
is
NULL
ref
The
ref
column
shows
which
columns
or
constants
are
used
with
the
key
to
select
rows
from
the
table
rows
The
rows
column
indicates
the
number
of
rows
MySQL
must
examine
to
execute
the
query
Extra
If
the
Extra
column
includes
the
text
Only
index
this
means
that
information
is
retrieved
from
the
table
using
only
information
in
the
index
tree
Normally
this
is
much
faster
than
scanning
the
entire
table
If
the
Extra
column
includes
the
text
where
used
it
means
that
a
WHERE
clause
will
be
used
to
restrict
which
rows
will
be
matched
against
the
next
table
or
sent
to
the
client
The
different
join
types
are
listed
below
ordered
from
best
to
worst
type
system
The
table
has
only
one
row
system
table
This
is
a
special
case
of
the
const
join
type
const
The
table
has
at
most
one
matching
row
which
will
be
read
at
the
start
of
the
query
Since
there
is
only
one
row
values
from
the
column
in
this
row
can
be
regarded
as
constants
by
the
rest
of
the
optimizer
const
tables
are
very
fast
as
they
are
read
only
once
eq
ref
One
row
will
be
read
from
this
table
for
each
combination
of
rows
from
the
previous
tables
This
the
best
possible
join
type
other
than
the
const
types
It
is
used
when
all
parts
of
an
index
are
used
by
the
join
and
the
index
is
UNIQUE
or
a
PRIMARY
KEY
ref
All
rows
with
matching
index
values
will
be
read
from
this
table
for
each
combination
of
rows
from
the
previous
tables
ref
is
used
if
the
join
uses
only
a
leftmost
prefix
of
the
key
or
if
the
key
is
not
UNIQUE
or
a
PRIMARY
KEY
in
other
words
if
the
join
cannot
select
a
single
row
based
on
the
key
value
If
the
key
that
is
used
matches
only
a
few
rows
this
join
type
is
good
range
Only
rows
that
are
in
a
given
range
will
be
retrieved
using
an
index
to
select
the
rows
The
ref
column
indicates
which
index
is
used
index
This
is
the
same
as
ALL
except
that
only
the
index
tree
is
scanned
This
is
usually
faster
than
ALL
as
the
index
file
is
usually
smaller
than
the
data
file
ALL
A
full
table
scan
will
be
done
for
each
combination
of
rows
from
the
previous
tables
This
is
normally
not
good
if
the
table
is
the
first
table
not
marked
const
and
usually
very
bad
in
all
other
cases
You
normally
can
avoid
ALL
by
adding
more
indexes
so
that
the
row
can
be
retrieved
based
on
constant
values
or
column
values
from
earlier
tables
You
can
get
a
good
indication
of
how
good
a
join
is
by
multiplying
all
values
in
the
rows
column
of
the
EXPLAIN
output
This
should
tell
you
roughly
how
many
rows
MySQL
must
examine
to
execute
the
query
This
number
is
also
used
when
you
restrict
queries
with
the
max
join
size
variable
See
section
606
10
1
Tuning
server
parameters
The
following
example
shows
how
a
JOIN
can
be
optimized
progressively
using
the
information
provided
by
EXPLAIN
Suppose
you
have
the
SELECT
statement
shown
below
that
you
examine
using
EXPLAIN
EXPLAIN
SELECT
tt
TicketNumber
tt
TimeIn
tt
ProjectReference
tt
EstimatedShipDate
tt
ActualShipDate
tt
ClientID
tt
ServiceCodes
tt
RepetitiveID
tt
CurrentProcess
tt
CurrentDPPerson
tt
RecordVolume
tt
DPPrinted
et
COUNTRY
et
1
COUNTRY
do
CUSTNAME
FROM
tt
et
et
AS
et
1
do
WHERE
tt
SubmitTime
IS
NULL
AND
tt
ActualPC
et
EMPLOYID
AND
tt
AssignedPC
et
1
EMPLOYID
AND
tt
ClientID
do
CUSTNMBR
For
this
example
assume
that
The
columns
being
compared
have
been
declared
as
follows
Table
Column
Column
type
tt
ActualPC
CHAR
10
tt
AssignedPC
CHAR
10
tt
ClientID
CHAR
10
et
EMPLOYID
CHAR
15
do
CUSTNMBR
CHAR
15
The
tables
have
the
indexes
shown
below
Table
Index
tt
ActualPC
tt
AssignedPC
tt
ClientID
et
EMPLOYID
primary
key
do
CUSTNMBR
primary
key
The
tt
ActualPC
values
aren
t
evenly
distributed
Initially
before
any
optimizations
have
been
performed
the
EXPLAIN
statement
produces
the
following
information
table
type
possible
keys
key
key
len
ref
rows
Extra
et
ALL
PRIMARY
NULL
NULL
NULL
74
do
ALL
PRIMARY
NULL
NULL
NULL
2135
et
1
ALL
PRIMARY
NULL
NULL
NULL
74
tt
ALL
AssignedPC
ClientID
ActualPC
NULL
NULL
NULL
3872
range
checked
for
each
record
key
map
35
Since
type
is
ALL
for
each
table
this
output
indicates
that
MySQL
is
doing
a
full
join
for
all
tables
This
will
take
quite
a
long
time
as
the
product
of
the
number
of
rows
in
each
table
must
be
examined
For
the
case
at
hand
this
is
74
2135
74
3872
45
268
558
720
rows
If
the
tables
were
bigger
you
can
only
imagine
how
long
it
would
take
One
problem
here
is
that
MySQL
can
t
yet
use
indexes
on
columns
efficiently
if
they
are
declared
differently
In
this
context
VARCHAR
and
CHAR
are
the
same
unless
they
are
declared
as
different
lengths
Since
tt
ActualPC
is
declared
as
CHAR
10
and
et
EMPLOYID
is
declared
as
CHAR
15
there
is
a
length
mismatch
To
fix
this
disparity
between
column
lengths
use
ALTER
TABLE
to
lengthen
ActualPC
from
10
characters
to
15
characters
mysql
ALTER
TABLE
tt
MODIFY
ActualPC
VARCHAR
15
Now
tt
ActualPC
and
et
EMPLOYID
are
both
VARCHAR
15
Executing
the
EXPLAIN
statement
again
produces
this
result
table
type
possible
keys
key
key
len
ref
rows
Extra
tt
ALL
AssignedPC
ClientID
ActualPC
NULL
NULL
NULL
3872
where
used
do
ALL
PRIMARY
NULL
NULL
NULL
2135
range
checked
for
each
record
key
map
1
et
1
ALL
PRIMARY
NULL
NULL
NULL
74
range
checked
for
each
record
key
map
1
et
eq
ref
PRIMARY
PRIMARY
15
tt
ActualPC
1
This
is
not
perfect
but
is
much
better
the
product
of
the
rows
values
is
now
less
by
a
factor
of
74
This
version
is
executed
in
a
couple
of
seconds
A
second
alteration
can
be
made
to
eliminate
the
column
length
mismatches
for
the
tt
AssignedPC
et
1
EMPLOYID
and
tt
ClientID
do
CUSTNMBR
comparisons
mysql
ALTER
TABLE
tt
MODIFY
AssignedPC
VARCHAR
15
MODIFY
ClientID
VARCHAR
15
Now
EXPLAIN
produces
the
output
shown
below
table
type
possible
keys
key
key
len
ref
rows
Extra
et
ALL
PRIMARY
NULL
NULL
NULL
74
tt
ref
AssignedPC
ClientID
ActualPC
ActualPC
15
et
EMPLOYID
52
where
used
et
1
eq
ref
PRIMARY
PRIMARY
15
tt
AssignedPC
1
do
eq
ref
PRIMARY
PRIMARY
15
tt
ClientID
1
This
is
almost
as
good
as
it
can
get
The
remaining
problem
is
that
by
default
MySQL
assumes
that
values
in
the
tt
ActualPC
column
are
evenly
distributed
and
that
isn
t
the
case
for
the
tt
table
Fortunately
it
is
easy
to
tell
MySQL
about
this
shell
isamchk
analyze
PATH
TO
MYSQL
DATABASE
tt
shell
mysqladmin
refresh
Now
the
join
is
perfect
and
EXPLAIN
produces
this
result
table
type
possible
keys
key
key
len
ref
rows
Extra
tt
ALL
AssignedPC
ClientID
ActualPC
NULL
NULL
NULL
3872
where
used
et
eq
ref
PRIMARY
PRIMARY
15
tt
ActualPC
1
et
1
eq
ref
PRIMARY
PRIMARY
15
tt
AssignedPC
1
do
eq
ref
PRIMARY
PRIMARY
15
tt
ClientID
1
Note
that
the
rows
column
in
the
output
from
EXPLAIN
is
an
educated
guess
from
the
MySQL
join
optimizer
To
optimize
a
query
you
should
check
if
the
numbers
are
even
close
to
the
truth
If
not
you
may
get
better
performance
by
using
STRAIGHT
JOIN
in
your
SELECT
statement
and
trying
to
list
the
tables
in
a
different
order
in
the
FROM
clause
607
7
22
DESCRIBE
syntax
Get
information
about
columns
DESCRIBE
DESC
tbl
name
col
name
wild
DESCRIBE
provides
information
about
a
table
s
columns
col
name
may
be
a
column
name
or
a
string
containing
the
SQL
and
wildcard
characters
If
the
column
types
are
different
than
you
expect
them
to
be
based
on
a
CREATE
TABLE
statement
note
that
MySQL
sometimes
changes
column
types
See
section
608
7
6
1
Silent
column
specification
changes
This
statement
is
provided
for
Oracle
compatibility
The
SHOW
statement
provides
similar
information
See
section
609
7
20
SHOW
syntax
Get
information
about
tables
columns
610
7
23
LOCK
TABLES
UNLOCK
TABLES
syntax
LOCK
TABLES
tbl
name
AS
alias
READ
LOW
PRIORITY
WRITE
tbl
name
READ
LOW
PRIORITY
WRITE
UNLOCK
TABLES
LOCK
TABLES
locks
tables
for
the
current
thread
UNLOCK
TABLES
releases
any
locks
held
by
the
current
thread
All
tables
that
are
locked
by
the
current
thread
are
automatically
unlocked
when
the
thread
issues
another
LOCK
TABLES
or
when
the
connection
to
the
server
is
closed
If
a
thread
obtains
a
READ
lock
on
a
table
that
thread
and
all
other
threads
can
only
read
from
the
table
If
a
thread
obtains
a
WRITE
lock
on
a
table
then
only
the
thread
holding
the
lock
can
READ
from
or
WRITE
to
the
table
Other
threads
are
blocked
Each
thread
waits
without
timing
out
until
it
obtains
all
the
locks
it
has
requested
WRITE
locks
normally
have
higher
priority
than
READ
locks
to
ensure
that
updates
are
processed
as
soon
as
possible
This
means
that
if
one
thread
obtains
a
READ
lock
and
then
another
thread
requests
a
WRITE
lock
subsequent
READ
lock
requests
will
wait
until
the
WRITE
thread
has
gotten
the
lock
and
released
it
You
can
use
LOW
PRIORITY
WRITE
locks
to
allow
other
threads
to
obtain
READ
locks
while
the
thread
is
waiting
for
the
WRITE
lock
You
should
only
use
LOW
PRIORITY
WRITE
locks
if
you
are
sure
that
there
will
eventually
be
a
time
when
no
threads
will
have
a
READ
lock
When
you
use
LOCK
TABLES
you
must
lock
all
tables
that
you
are
going
to
use
If
you
are
using
a
table
multiple
times
in
a
query
with
aliases
you
must
get
a
lock
for
each
alias
This
policy
ensures
that
table
locking
is
deadlock
free
Note
that
you
should
NOT
lock
any
tables
that
you
are
using
with
INSERT
DELAYED
This
is
because
that
in
this
case
the
INSERT
is
done
by
a
separate
thread
Normally
you
don
t
have
to
lock
tables
as
all
single
UPDATE
statements
are
atomic
no
other
thread
can
interfere
with
any
other
currently
executing
SQL
statement
There
are
a
few
cases
when
you
would
like
to
lock
tables
anyway
If
you
are
going
to
run
many
operations
on
a
bunch
of
tables
it
s
much
faster
to
lock
the
tables
you
are
going
to
use
The
downside
is
of
course
that
no
other
thread
can
update
a
READ
locked
table
and
no
other
thread
can
read
a
WRITE
locked
table
MySQL
doesn
t
support
a
transaction
environment
so
you
must
use
LOCK
TABLES
if
you
want
to
ensure
that
no
other
thread
comes
between
a
SELECT
and
an
UPDATE
The
example
shown
below
requires
LOCK
TABLES
in
order
to
execute
safely
mysql
LOCK
TABLES
trans
READ
customer
WRITE
mysql
select
sum
value
from
trans
where
customer
id
some
id
mysql
update
customer
set
total
value
sum
from
previous
statement
where
customer
id
some
id
mysql
UNLOCK
TABLES
Without
LOCK
TABLES
there
is
a
chance
that
another
thread
might
insert
a
new
row
in
the
trans
table
between
execution
of
the
SELECT
and
UPDATE
statements
By
using
incremental
updates
UPDATE
customer
SET
value
value
new
value
or
the
LAST
INSERT
ID
function
you
can
avoid
using
LOCK
TABLES
in
many
cases
You
can
also
solve
some
cases
by
using
the
user
level
lock
functions
GET
LOCK
and
RELEASE
LOCK
These
locks
are
saved
in
a
hash
table
in
the
server
and
implemented
with
pthread
mutex
lock
and
pthread
mutex
unlock
for
high
speed
See
section
611
7
3
12
Miscellaneous
functions
See
section
612
10
10
How
MySQL
locks
tables
for
more
information
on
locking
policy
613
7
24
SET
OPTION
syntax
SET
OPTION
SQL
VALUE
OPTION
value
SET
OPTION
sets
various
options
that
affect
the
operation
of
the
server
or
your
client
Any
option
you
set
remains
in
effect
until
the
current
session
ends
or
until
you
set
the
option
to
a
different
value
CHARACTER
SET
character
set
name
DEFAULT
This
maps
all
strings
from
and
to
the
client
with
the
given
mapping
Currently
the
only
option
for
character
set
name
is
cp1251
koi8
but
you
can
easily
add
new
mappings
by
editing
the
sql
convert
cc
file
in
the
MySQL
source
distribution
The
default
mapping
can
be
restored
by
using
a
character
set
name
value
of
DEFAULT
Note
that
the
syntax
for
setting
the
CHARACTER
SET
option
differs
from
the
syntax
for
setting
the
other
options
PASSWORD
PASSWORD
some
password
Set
the
password
for
the
current
user
Any
non
anonymous
user
can
change
his
own
password
PASSWORD
FOR
user
PASSWORD
some
password
Set
the
password
for
a
specific
user
on
the
current
server
host
Only
a
user
with
access
to
the
mysql
database
can
do
this
The
user
should
be
given
in
user
hostname
format
where
user
and
hostname
are
exactly
as
they
are
listed
in
the
User
and
Host
columns
of
the
mysql
user
table
entry
For
example
if
you
had
an
entry
with
User
and
Host
fields
of
bob
and
loc
gov
you
would
write
mysql
SET
PASSWORD
FOR
bob
loc
gov
PASSWORD
newpass
SQL
BIG
TABLES
0
1
If
set
to
1
all
temporary
tables
are
stored
on
disk
rather
than
in
memory
This
will
be
a
little
slower
but
you
will
not
get
the
error
The
table
tbl
name
is
full
for
big
SELECT
operations
that
require
a
large
temporary
table
The
default
value
for
a
new
connection
is
0
i
e
use
in
memory
temporary
tables
SQL
BIG
SELECTS
0
1
If
set
to
1
MySQL
will
abort
if
a
SELECT
is
attempted
that
probably
will
take
a
very
long
time
This
is
useful
when
an
inadvisable
WHERE
statement
has
been
issued
A
big
query
is
defined
as
a
SELECT
that
probably
will
have
to
examine
more
than
max
join
size
rows
The
default
value
for
a
new
connection
is
0
which
will
allow
all
SELECT
statements
SQL
LOW
PRIORITY
UPDATES
0
1
If
set
to
1
all
INSERT
UPDATE
and
DELETE
statements
wait
until
there
is
no
pending
SELECT
on
the
affected
table
SQL
SELECT
LIMIT
value
DEFAULT
The
maximum
number
of
records
to
return
from
SELECT
statements
If
a
SELECT
has
a
LIMIT
clause
the
LIMIT
takes
precedence
over
the
value
of
SQL
SELECT
LIMIT
The
default
value
for
a
new
connection
is
unlimited
If
you
have
changed
the
limit
the
default
value
can
be
restored
by
using
a
SQL
SELECT
LIMIT
value
of
DEFAULT
SQL
LOG
OFF
0
1
If
set
to
1
no
logging
will
be
done
to
the
standard
log
for
this
client
if
the
client
has
the
process
privilege
This
does
not
affect
the
update
log
SQL
LOG
UPDATE
0
1
If
set
to
0
no
logging
will
be
done
to
the
update
log
for
the
client
if
the
client
has
the
process
privilege
This
does
not
affect
the
standard
log
TIMESTAMP
timestamp
value
DEFAULT
Set
the
time
for
this
client
This
is
used
to
get
the
original
timestamp
if
you
use
the
update
log
to
restore
rows
LAST
INSERT
ID
Set
the
value
to
be
returned
from
LAST
INSERT
ID
This
is
stored
in
the
update
log
when
you
use
LAST
INSERT
ID
in
a
command
that
updates
a
table
INSERT
ID
Set
the
value
to
be
used
by
the
following
INSERT
command
when
inserting
an
AUTO
INCREMENT
value
This
is
mainly
used
with
the
update
log
614
7
25
GRANT
and
REVOKE
syntax
GRANT
priv
type
column
list
priv
type
column
list
ON
tbl
name
db
name
TO
user
name
IDENTIFIED
BY
password
user
name
IDENTIFIED
BY
password
WITH
GRANT
OPTION
REVOKE
priv
type
column
list
priv
type
column
list
ON
tbl
name
db
name
FROM
user
name
user
name
GRANT
is
implemented
in
MySQL
3
22
11
or
later
For
earlier
MySQL
versions
the
GRANT
statement
does
nothing
The
GRANT
and
REVOKE
commands
allow
system
administrators
to
grant
and
revoke
rights
to
MySQL
users
at
four
privilege
levels
Global
level
Global
privileges
apply
to
all
databases
on
a
given
server
These
privileges
are
stored
in
the
mysql
user
table
Database
level
Database
privileges
apply
to
all
tables
in
a
given
database
These
privileges
are
stored
in
the
mysql
db
and
mysql
host
tables
Table
level
Table
privileges
apply
to
all
columns
in
a
given
table
These
privileges
are
stored
in
the
mysql
tables
priv
table
Column
level
Column
privileges
apply
to
single
columns
in
a
given
table
These
privileges
are
stored
in
the
mysql
columns
priv
table
For
examples
of
how
GRANT
works
see
section
615
6
11
Adding
new
user
privileges
to
MySQL
For
the
GRANT
and
REVOKE
statements
priv
type
may
be
specified
as
any
of
the
following
ALL
PRIVILEGES
FILE
RELOAD
ALTER
INDEX
SELECT
CREATE
INSERT
SHUTDOWN
DELETE
PROCESS
UPDATE
DROP
REFERENCES
USAGE
ALL
is
a
synonym
for
ALL
PRIVILEGES
REFERENCES
is
not
yet
implemented
USAGE
is
currently
a
synonym
for
no
privileges
It
can
be
used
when
you
want
to
create
a
user
that
has
no
privileges
To
revoke
the
grant
privilege
from
a
user
use
a
priv
type
value
of
GRANT
OPTION
REVOKE
GRANT
OPTION
ON
FROM
The
only
priv
type
values
you
can
specify
for
a
table
are
SELECT
INSERT
UPDATE
DELETE
CREATE
DROP
GRANT
INDEX
and
ALTER
The
only
priv
type
values
you
can
specify
for
a
column
that
is
when
you
use
a
column
list
clause
are
SELECT
INSERT
and
UPDATE
You
can
set
global
privileges
by
using
ON
syntax
You
can
set
database
privileges
by
using
ON
db
name
syntax
If
you
specify
ON
and
you
have
a
current
database
you
will
set
the
privileges
for
that
database
Warning
If
you
specify
ON
and
you
don
t
have
a
current
database
you
will
affect
the
global
privileges
In
order
to
accommodate
granting
rights
to
users
from
arbitrary
hosts
MySQL
supports
specifying
the
user
name
value
in
the
form
user
host
If
you
want
to
specify
a
user
string
containing
special
characters
such
as
or
a
host
string
containing
special
characters
or
wildcard
characters
such
as
you
can
quote
the
user
or
host
name
e
g
test
user
test
hostname
You
can
specify
wildcards
in
the
hostname
For
example
user
loc
gov
applies
to
user
for
any
host
in
the
loc
gov
domain
and
user
144
155
166
applies
to
user
for
any
host
in
the
144
155
166
class
C
subnet
The
simple
form
user
is
a
synonym
for
user
Note
If
you
allow
anonymous
users
to
connect
to
the
MySQL
server
which
is
the
default
you
should
also
add
all
local
users
as
user
localhost
because
otherwise
the
anonymous
user
entry
for
the
local
host
in
the
mysql
user
table
will
be
used
when
the
user
tries
to
log
into
the
MySQL
server
from
the
local
machine
Anonymous
users
are
defined
by
inserting
entries
with
User
into
the
mysql
user
table
You
can
verify
if
this
applies
to
you
by
executing
this
query
mysql
SELECT
Host
User
FROM
mysql
user
WHERE
User
For
the
moment
GRANT
only
supports
host
table
database
and
column
names
up
to
60
characters
long
A
user
name
can
be
up
to
16
characters
The
privileges
for
a
table
or
column
are
formed
from
the
logical
OR
of
the
privileges
at
each
of
the
four
privilege
levels
For
example
if
the
mysql
user
table
specifies
that
a
user
has
a
global
select
privilege
this
can
t
be
denied
by
an
entry
at
the
database
table
or
column
level
The
privileges
for
a
column
can
be
calculated
as
follows
global
privileges
OR
database
privileges
AND
host
privileges
OR
table
privileges
OR
column
privileges
In
most
cases
you
grant
rights
to
a
user
at
only
one
of
the
privilege
levels
so
life
isn
t
normally
as
complicated
as
above
The
details
of
the
privilege
checking
procedure
are
presented
in
section
616
6
The
MySQL
access
privilege
system
If
you
grant
privileges
for
a
user
hostname
combination
that
does
not
exist
in
the
mysql
user
table
an
entry
is
added
and
remains
there
until
deleted
with
a
DELETE
command
In
other
words
GRANT
may
create
user
table
entries
but
REVOKE
will
not
remove
them
you
must
do
that
explicitly
using
DELETE
In
MySQL
3
22
12
or
later
if
a
new
user
is
created
or
if
you
have
global
grant
privileges
the
user
s
password
will
be
set
to
the
password
specified
by
the
IDENTIFIED
BY
clause
if
one
is
given
If
the
user
already
had
a
password
it
is
replaced
by
the
new
one
Warning
If
you
create
a
new
user
but
do
not
specify
an
IDENTIFIED
BY
clause
the
user
has
no
password
This
is
insecure
Passwords
can
also
be
set
with
the
SET
PASSWORD
command
See
section
617
7
24
SET
OPTION
syntax
If
you
grant
privileges
for
a
database
an
entry
in
the
mysql
db
table
is
created
if
needed
When
all
privileges
for
the
database
have
been
removed
with
REVOKE
this
entry
is
deleted
If
a
user
doesn
t
have
any
privileges
on
a
table
the
table
is
not
displayed
when
the
user
requests
a
list
of
tables
e
g
with
a
SHOW
TABLES
statement
The
WITH
GRANT
OPTION
clause
gives
the
user
the
ability
to
give
to
other
users
any
privileges
the
user
has
at
the
specified
privilege
level
You
should
be
careful
to
whom
you
give
the
grant
privilege
as
two
users
with
different
privileges
may
be
able
to
join
privileges
You
cannot
grant
another
user
a
privilege
you
don
t
have
yourself
the
grant
privilege
allows
you
to
give
away
only
those
privileges
you
possess
Be
aware
that
when
you
grant
a
user
the
grant
privilege
at
a
particular
privilege
level
any
privileges
the
user
already
possesses
or
is
given
in
the
future
at
that
level
are
also
grantable
by
that
user
Suppose
you
grant
a
user
the
insert
privilege
on
a
database
If
you
then
grant
the
select
privilege
on
the
database
and
specify
WITH
GRANT
OPTION
the
user
can
give
away
not
only
the
select
privilege
but
also
insert
If
you
then
grant
the
update
privilege
to
the
user
on
the
database
the
user
can
give
away
the
insert
select
and
update
You
should
not
grant
alter
privileges
to
a
normal
user
If
you
do
that
the
user
can
try
to
subvert
the
privilege
system
by
renaming
tables
Note
that
if
you
are
using
table
or
column
privileges
for
even
one
user
the
server
examines
table
and
column
privileges
for
all
users
and
this
will
slow
down
MySQL
a
bit
When
mysqld
starts
all
privileges
are
read
into
memory
Database
table
and
column
privileges
take
effect
at
once
and
user
level
privileges
take
effect
the
next
time
the
user
connects
Modifications
to
the
grant
tables
that
you
perform
using
GRANT
or
REVOKE
are
noticed
by
the
server
immediately
If
you
modify
the
grant
tables
manually
using
INSERT
UPDATE
etc
you
should
execute
a
FLUSH
PRIVILEGES
statement
or
run
mysqladmin
flush
privileges
to
tell
the
server
to
reload
the
grant
tables
See
section
618
6
9
When
privilege
changes
take
effect
The
biggest
differences
between
the
ANSI
SQL
and
MySQL
versions
of
GRANT
are
ANSI
SQL
doesn
t
have
global
or
database
level
privileges
and
ANSI
SQL
doesn
t
support
all
privilege
types
that
MySQL
supports
When
you
drop
a
table
in
ANSI
SQL
all
privileges
for
the
table
are
revoked
If
you
revoke
a
privilege
in
ANSI
SQL
all
privileges
that
were
granted
based
on
this
privilege
are
also
revoked
In
MySQL
privileges
can
be
dropped
only
with
explicit
REVOKE
commands
or
by
manipulating
the
MySQL
grant
tables
619
7
26
CREATE
INDEX
syntax
CREATE
UNIQUE
INDEX
index
name
ON
tbl
name
col
name
length
The
CREATE
INDEX
statement
doesn
t
do
anything
in
MySQL
prior
to
version
3
22
In
3
22
or
later
CREATE
INDEX
is
mapped
to
an
ALTER
TABLE
statement
to
create
indexes
See
section
620
7
7
ALTER
TABLE
syntax
Normally
you
create
all
indexes
on
a
table
at
the
time
the
table
itself
is
created
with
CREATE
TABLE
See
section
621
7
6
CREATE
TABLE
syntax
CREATE
INDEX
allows
you
to
add
indexes
to
existing
tables
A
column
list
of
the
form
col1
col2
creates
a
multiple
column
index
Index
values
are
formed
by
concatenating
the
values
of
the
given
columns
For
CHAR
and
VARCHAR
columns
indexes
can
be
created
that
use
only
part
of
a
column
using
col
name
length
syntax
The
statement
shown
below
creates
an
index
using
the
first
10
characters
of
the
name
column
mysql
CREATE
INDEX
part
of
name
ON
customer
name
10
Since
most
names
usually
differ
in
the
first
10
characters
this
index
should
not
be
much
slower
than
an
index
created
from
the
entire
name
column
Also
using
partial
columns
for
indexes
can
make
the
index
file
much
smaller
which
could
save
a
lot
of
disk
space
and
might
also
speed
up
INSERT
operations
For
more
information
about
how
MySQL
uses
indexes
see
section
622
10
4
How
MySQL
uses
indexes
623
7
27
DROP
INDEX
syntax
DROP
INDEX
index
name
DROP
INDEX
doesn
t
do
anything
in
MySQL
prior
to
version
3
22
In
3
22
or
later
DROP
INDEX
is
mapped
to
an
ALTER
TABLE
statement
to
drop
the
index
See
section
624
7
7
ALTER
TABLE
syntax
625
7
28
Comment
syntax
The
MySQL
server
supports
the
to
end
of
line
and
in
line
or
multiple
line
comment
styles
mysql
select
1
1
This
comment
continues
to
the
end
of
line
mysql
select
1
this
is
an
in
line
comment
1
mysql
select
1
this
is
a
multiple
line
comment
1
Although
the
server
understands
the
comment
syntax
just
described
there
are
some
limitations
on
the
way
that
the
mysql
client
parses
comments
Single
quote
and
double
quote
characters
are
taken
to
indicate
the
beginning
of
a
quoted
string
even
within
a
comment
If
the
quote
is
not
matched
by
a
second
quote
within
the
comment
the
parser
doesn
t
realize
the
comment
has
ended
If
you
are
running
mysql
interactively
you
can
tell
that
it
has
gotten
confused
like
this
because
the
prompt
changes
from
mysql
to
or
A
semicolon
is
taken
to
indicate
the
end
of
the
current
SQL
statement
and
anything
following
it
to
indicate
the
beginning
of
the
next
statement
These
limitations
apply
both
when
you
run
mysql
interactively
and
when
you
put
commands
in
a
file
and
tell
mysql
to
read
its
input
from
that
file
with
mysql
some
file
MySQL
doesn
t
support
the
ANSI
SQL
comment
style
See
section
626
5
3
7
as
the
start
of
a
comment
627
7
29
CREATE
FUNCTION
DROP
FUNCTION
syntax
CREATE
FUNCTION
function
name
RETURNS
STRING
REAL
INTEGER
SONAME
shared
library
name
DROP
FUNCTION
function
name
A
user
definable
function
UDF
is
a
way
to
extend
MySQL
with
a
new
function
that
works
like
native
built
in
MySQL
functions
such
as
ABS
and
CONCAT
CREATE
FUNCTION
saves
the
function
s
name
type
and
shared
library
name
in
the
mysql
func
system
table
You
must
have
the
insert
and
delete
privileges
for
the
mysql
database
to
create
and
drop
functions
All
active
functions
are
reloaded
each
time
the
server
starts
unless
you
start
mysqld
with
the
skip
grant
tables
option
In
this
case
UDF
initialization
is
skipped
and
UDFs
are
unavailable
An
active
function
is
one
that
has
been
loaded
with
CREATE
FUNCTION
and
not
removed
with
DROP
FUNCTION
For
instructions
on
writing
user
definable
functions
see
section
628
14
Adding
new
functions
to
MySQL
For
the
UDF
mechanism
to
work
functions
must
be
written
in
C
or
C
and
your
operating
system
must
support
dynamic
loading
629
7
30
Is
MySQL
picky
about
reserved
words
A
common
problem
stems
from
trying
to
create
a
table
with
column
names
that
use
the
names
of
datatypes
or
functions
built
into
MySQL
such
as
TIMESTAMP
or
GROUP
You
re
allowed
to
do
it
for
example
ABS
is
an
allowed
column
name
but
whitespace
is
not
allowed
between
a
function
name
and
the
when
using
functions
whose
names
are
also
column
names
The
following
words
are
explicitly
reserved
in
MySQL
Most
of
them
are
forbidden
by
ANSI
SQL92
as
column
and
or
table
names
for
example
group
A
few
are
reserved
because
MySQL
needs
them
and
is
currently
using
a
yacc
parser
action
add
all
alter
after
and
as
asc
auto
increment
between
bigint
bit
binary
blob
bool
both
by
cascade
char
character
change
check
column
columns
constraint
create
cross
current
date
current
time
current
timestamp
data
database
databases
date
datetime
day
day
hour
day
minute
day
second
dayofmonth
dayofweek
dayofyear
dec
decimal
default
delete
desc
describe
distinct
distinctrow
double
drop
escaped
enclosed
enum
explain
exists
fields
first
float
float4
float8
foreign
from
for
full
function
grant
group
having
hour
hour
minute
hour
second
ignore
in
index
infile
insert
int
integer
interval
int1
int2
int3
int4
int8
into
if
is
join
key
keys
last
insert
id
leading
left
like
lines
limit
load
lock
long
longblob
longtext
low
priority
match
mediumblob
mediumtext
mediumint
middleint
minute
minute
second
month
monthname
natural
numeric
no
not
null
on
option
optionally
or
order
outer
outfile
partial
password
precision
primary
procedure
processlist
privileges
quarter
read
real
references
rename
regexp
reverse
repeat
replace
restrict
returns
rlike
second
select
set
show
smallint
soname
sql
big
tables
sql
big
selects
sql
select
limit
sql
low
priority
updates
sql
log
off
sql
log
update
straight
join
starting
status
string
table
tables
terminated
text
time
timestamp
tinyblob
tinytext
tinyint
trailing
to
use
using
unique
unlock
unsigned
update
usage
values
varchar
variables
varying
varbinary
with
write
where
year
year
month
zerofill
The
following
symbols
from
the
table
above
are
disallowed
by
ANSI
SQL
but
allowed
by
MySQL
as
column
table
names
This
is
because
some
of
these
names
are
very
natural
names
and
a
lot
of
people
have
already
used
them
ACTION
BIT
DATE
ENUM
NO
TEXT
TIME
TIMESTAMP
630
8
MySQL
Tutorial
This
chapter
provides
a
tutorial
introduction
to
MySQL
by
showing
how
to
use
the
mysql
client
program
to
create
and
use
a
simple
database
mysql
sometimes
referred
to
as
the
terminal
monitor
or
just
monitor
is
an
interactive
program
that
allows
you
to
connect
to
a
MySQL
server
run
queries
and
view
the
results
mysql
may
also
be
used
in
batch
mode
you
place
your
queries
in
a
file
beforehand
then
tell
mysql
to
execute
the
contents
of
the
file
Both
ways
of
using
mysql
are
covered
here
To
see
a
list
of
options
provided
by
mysql
invoke
it
with
the
help
option
shell
mysql
help
This
chapter
assumes
that
mysql
is
installed
on
your
machine
and
that
a
MySQL
server
is
available
to
which
you
can
connect
If
this
is
not
true
contact
your
MySQL
administrator
If
you
are
the
administrator
you
will
need
to
consult
other
sections
of
this
manual
The
chapter
describes
the
entire
process
of
setting
up
and
using
a
database
If
you
are
interested
only
in
accessing
an
already
existing
database
you
may
want
to
skip
over
the
sections
that
describe
how
to
create
the
database
and
the
tables
it
contains
Since
this
chapter
is
tutorial
in
nature
many
details
are
necessarily
left
out
Consult
the
relevant
sections
of
the
manual
for
more
information
on
the
topics
covered
here
631
8
1
Connecting
to
and
disconnecting
from
the
server
To
connect
to
the
server
you
ll
usually
need
to
provide
a
MySQL
user
name
when
you
invoke
mysql
and
most
likely
a
password
If
the
server
runs
on
a
machine
other
than
the
one
where
you
log
in
you
ll
also
need
to
specify
a
hostname
Contact
your
administrator
to
find
out
what
connection
parameters
you
should
use
to
connect
i
e
what
host
user
name
and
password
to
use
Once
you
know
the
proper
parameters
you
should
be
able
to
connect
like
this
shell
mysql
h
host
u
user
p
Enter
password
The
represents
your
password
enter
it
when
mysql
displays
the
Enter
password
prompt
If
that
works
you
should
see
some
introductory
information
followed
by
a
mysql
prompt
shell
mysql
h
host
u
user
p
Enter
password
Welcome
to
the
MySQL
monitor
Commands
end
with
or
g
Your
MySQL
connection
id
is
459
to
server
version
3
22
20a
log
Type
help
for
help
mysql
The
prompt
tells
you
that
mysql
is
ready
for
you
to
enter
commands
Some
MySQL
installations
allow
users
to
connect
as
the
anonymous
unnamed
user
to
the
server
running
on
the
local
host
If
this
is
the
case
on
your
machine
you
should
be
able
to
connect
to
that
server
by
invoking
mysql
without
any
options
shell
mysql
After
you
have
connected
successfully
you
can
disconnect
any
time
by
typing
QUIT
at
the
mysql
prompt
mysql
QUIT
Bye
You
can
also
disconnect
by
typing
control
D
Most
examples
in
the
following
sections
assume
you
are
connected
to
the
server
They
indicate
this
by
the
mysql
prompt
632
8
2
Entering
queries
Make
sure
you
are
connected
to
the
server
as
discussed
in
the
previous
section
Doing
so
will
not
in
itself
select
any
database
to
work
with
but
that
s
okay
At
this
point
it
s
more
important
to
find
out
a
little
about
how
to
issue
queries
than
to
jump
right
in
creating
tables
loading
data
into
them
and
retrieving
data
from
them
This
section
describes
the
basic
principles
of
entering
commands
using
several
queries
you
can
try
out
to
familiarize
yourself
with
how
mysql
works
Here
s
a
simple
command
that
asks
the
server
to
tell
you
its
version
number
and
the
current
date
Type
it
in
as
shown
below
following
the
mysql
prompt
and
hit
the
RETURN
key
mysql
SELECT
VERSION
CURRENT
DATE
version
CURRENT
DATE
3
22
20a
log
1999
03
19
1
row
in
set
0
01
sec
mysql
This
query
illustrates
several
things
about
mysql
A
command
normally
consists
of
a
SQL
statement
followed
by
a
semicolon
There
are
some
exceptions
where
a
semicolon
is
not
needed
QUIT
mentioned
earlier
is
one
of
them
We
ll
get
to
others
later
When
you
issue
a
command
mysql
sends
it
to
the
server
for
execution
and
displays
the
results
then
prints
another
mysql
to
indicate
that
it
is
ready
for
another
command
mysql
displays
query
output
as
a
table
rows
and
columns
The
first
row
contains
labels
for
the
columns
The
rows
following
are
the
query
results
Normally
column
labels
are
the
names
of
the
columns
you
fetch
from
database
tables
If
you
re
retrieving
the
value
of
an
expression
rather
than
a
table
column
as
in
the
example
just
shown
mysql
labels
the
column
using
the
expression
itself
mysql
shows
how
many
rows
were
returned
and
how
long
the
query
took
to
execute
which
gives
you
a
rough
idea
of
server
performance
These
values
are
imprecise
because
they
represent
wall
clock
time
not
CPU
or
machine
time
and
because
they
are
affected
by
factors
such
as
server
load
and
network
latency
For
brevity
the
rows
in
set
line
is
not
shown
in
the
remaining
examples
in
this
chapter
Keywords
may
be
entered
in
any
lettercase
The
following
queries
are
equivalent
mysql
SELECT
VERSION
CURRENT
DATE
mysql
select
version
current
date
mysql
SeLeCt
vErSiOn
current
DATE
Here
s
another
query
It
demonstrates
that
you
can
use
mysql
as
a
simple
calculator
mysql
SELECT
SIN
PI
4
4
1
5
SIN
PI
4
4
1
5
0
707107
25
The
commands
shown
thus
far
have
been
relatively
short
single
line
statements
You
can
even
enter
multiple
statements
on
a
single
line
Just
end
each
one
with
a
semicolon
mysql
SELECT
VERSION
SELECT
NOW
version
3
22
20a
log
NOW
1999
03
19
00
15
33
A
command
need
not
be
given
all
on
a
single
line
so
lengthy
commands
that
require
several
lines
are
not
a
problem
mysql
determines
where
your
statement
ends
by
looking
for
the
terminating
semicolon
not
by
looking
for
the
end
of
the
input
line
In
other
words
mysql
accepts
free
format
input
it
collects
input
lines
but
does
not
execute
them
until
it
sees
the
semicolon
Here
s
a
simple
multiple
line
statement
mysql
SELECT
USER
CURRENT
DATE
USER
CURRENT
DATE
joesmith
localhost
1999
03
18
In
this
example
notice
how
the
prompt
changes
from
mysql
to
after
you
enter
the
first
line
of
a
multiple
line
query
This
is
how
mysql
indicates
that
it
hasn
t
seen
a
complete
statement
and
is
waiting
for
the
rest
The
prompt
is
your
friend
because
it
provides
valuable
feedback
If
you
use
that
feedback
you
will
always
be
aware
of
what
mysql
is
waiting
for
If
you
decide
you
don
t
want
to
execute
a
command
that
you
are
in
the
process
of
entering
cancel
it
by
typing
c
mysql
SELECT
USER
c
mysql
Here
too
notice
the
prompt
It
switches
back
to
mysql
after
you
type
c
providing
feedback
to
indicate
that
mysql
is
ready
for
a
new
command
The
following
table
shows
each
of
the
prompts
you
may
see
and
summarizes
what
they
mean
about
the
state
that
mysql
is
in
Prompt
Meaning
mysql
Ready
for
new
command
Waiting
for
next
line
of
multiple
line
command
Waiting
for
next
line
collecting
a
string
that
begins
with
a
single
quote
Waiting
for
next
line
collecting
a
string
that
begins
with
a
double
quote
Multiple
line
statements
commonly
occur
by
accident
when
you
intend
to
issue
a
command
on
a
single
line
but
forget
the
terminating
semicolon
In
this
case
mysql
waits
for
more
input
mysql
SELECT
USER
If
this
happens
to
you
you
think
you
ve
entered
a
statement
but
the
only
response
is
a
prompt
most
likely
mysql
is
waiting
for
the
semicolon
If
you
don
t
notice
what
the
prompt
is
telling
you
you
might
sit
there
for
a
while
before
realizing
what
you
need
to
do
Enter
a
semicolon
to
complete
the
statement
and
mysql
will
execute
it
mysql
SELECT
USER
USER
joesmith
localhost
The
and
prompts
occur
during
string
collection
In
MySQL
you
can
write
strings
surrounded
by
either
or
characters
for
example
hello
or
goodbye
and
mysql
lets
you
enter
strings
that
span
multiple
lines
When
you
see
a
or
prompt
it
means
that
you
ve
entered
a
line
containing
a
string
that
begins
with
a
or
quote
character
but
have
not
yet
entered
the
matching
quote
that
terminates
the
string
That
s
fine
if
you
really
are
entering
a
multiple
line
string
but
how
likely
is
that
Not
very
More
often
the
and
prompts
indicate
that
you
ve
inadvertantly
left
out
a
quote
character
For
example
mysql
SELECT
FROM
my
table
WHERE
name
Smith
AND
age
30
If
you
enter
this
SELECT
statement
then
hit
RETURN
and
wait
for
the
result
nothing
will
happen
Instead
of
wondering
why
does
this
query
take
so
long
notice
the
clue
provided
by
the
prompt
It
tells
you
that
mysql
expects
to
see
the
rest
of
an
unterminated
string
Do
you
see
the
error
in
the
statement
The
string
Smith
is
missing
the
second
quote
At
this
point
what
do
you
do
The
simplest
thing
is
to
cancel
the
command
However
you
cannot
just
type
c
in
this
case
because
mysql
interprets
it
as
part
of
the
string
that
it
is
collecting
Instead
enter
the
closing
quote
character
so
mysql
knows
you
ve
finished
the
string
then
type
c
mysql
SELECT
FROM
my
table
WHERE
name
Smith
AND
age
30
c
mysql
The
prompt
changes
back
to
mysql
indicating
that
mysql
is
ready
for
a
new
command
It
s
important
to
know
what
the
and
prompts
signify
because
if
you
mistakenly
enter
an
unterminated
string
any
further
lines
you
type
will
appear
to
be
ignored
by
mysql
including
a
line
containing
QUIT
This
can
be
quite
confusing
especially
if
you
don
t
know
that
you
need
to
supply
the
terminating
quote
before
you
can
cancel
the
current
command
633
8
3
Creating
and
using
a
database
Now
that
you
know
how
to
enter
commands
it
s
time
to
access
a
database
Suppose
you
have
several
pets
in
your
home
your
menagerie
and
you
d
like
to
keep
track
of
various
types
of
information
about
them
You
can
do
so
by
creating
tables
to
hold
your
data
and
loading
them
with
the
desired
information
Then
you
can
answer
different
sorts
of
questions
about
your
animals
by
retrieving
data
from
the
tables
This
section
shows
how
to
do
all
that
How
to
create
a
database
How
to
create
a
table
How
to
load
data
into
the
table
How
to
retrieve
data
from
the
table
in
various
ways
How
to
use
multiple
tables
The
menagerie
database
will
be
simple
deliberately
but
it
is
not
difficult
to
think
of
real
world
situations
in
which
a
similar
type
of
database
might
be
used
For
example
a
database
like
this
could
be
used
by
a
farmer
to
keep
track
of
livestock
or
by
a
veterinarian
to
keep
track
of
patient
records
Use
the
SHOW
statement
to
find
out
what
databases
currently
exist
on
the
server
mysql
SHOW
DATABASES
Database
mysql
test
tmp
The
list
of
databases
is
probably
different
on
your
machine
but
the
mysql
and
test
databases
are
likely
to
be
among
them
The
mysql
database
is
required
because
it
describes
user
access
privileges
The
test
database
is
often
provided
as
a
workspace
for
users
to
try
things
out
If
the
test
database
exists
try
to
access
it
mysql
USE
test
Database
changed
Note
that
USE
like
QUIT
does
not
require
a
semicolon
You
can
terminate
such
statements
with
a
semicolon
if
you
like
it
does
no
harm
The
USE
statement
is
special
in
another
way
too
it
must
be
given
on
a
single
line
You
can
use
the
test
database
if
you
have
access
to
it
for
the
examples
that
follow
but
anything
you
create
in
that
database
can
be
removed
by
anyone
else
with
access
to
it
For
this
reason
you
should
probably
ask
your
MySQL
administrator
for
permission
to
use
a
database
of
your
own
Suppose
you
want
to
call
yours
menagerie
The
administrator
needs
to
execute
a
command
like
this
mysql
GRANT
ALL
ON
menagerie
TO
your
mysql
name
where
your
mysql
name
is
the
MySQL
user
name
assigned
to
you
634
8
3
1
Creating
and
selecting
a
database
If
the
administrator
creates
your
database
for
you
when
setting
up
your
permissions
you
can
begin
using
it
Otherwise
you
need
to
create
it
yourself
mysql
CREATE
DATABASE
menagerie
Under
Unix
database
names
are
case
sensitive
unlike
SQL
keywords
so
you
must
always
refer
to
your
database
as
menagerie
not
as
Menagerie
MENAGERIE
or
some
other
variant
This
is
also
true
for
table
names
Under
Windows
this
restriction
does
not
apply
although
you
must
refer
to
databases
and
tables
using
the
same
lettercase
throughout
a
given
query
Creating
a
database
does
not
select
it
for
use
you
must
do
that
explicitly
To
make
menagerie
the
current
database
use
this
command
mysql
USE
menagerie
Database
changed
Your
database
needs
to
be
created
only
once
but
you
must
select
it
for
use
each
time
you
begin
a
mysql
session
You
can
do
this
by
issuing
a
USE
statement
as
shown
above
Alternatively
you
can
select
the
database
on
the
command
line
when
you
invoke
mysql
Just
specify
its
name
after
any
connection
parameters
that
you
might
need
to
provide
For
example
shell
mysql
h
host
u
user
p
menagerie
Enter
password
Note
that
menagerie
is
not
your
password
on
the
command
just
shown
If
you
want
to
supply
your
password
on
the
command
line
after
the
p
option
you
must
do
so
with
no
intervening
space
e
g
as
pmypassword
not
as
p
mypassword
However
putting
your
password
on
the
command
line
is
not
recommended
because
doing
so
exposes
it
to
snooping
by
other
users
logged
in
on
your
machine
635
8
3
2
Creating
a
table
Creating
the
database
is
the
easy
part
but
at
this
point
it
s
empty
as
SHOW
TABLES
will
tell
you
mysql
SHOW
TABLES
Empty
set
0
00
sec
The
harder
part
is
deciding
what
the
structure
of
your
database
should
be
what
tables
you
will
need
and
what
columns
will
be
in
each
of
them
You
ll
want
a
table
that
contains
a
record
for
each
of
your
pets
This
can
be
called
the
pet
table
and
it
should
contain
as
a
bare
minimum
each
animal
s
name
Since
the
name
by
itself
is
not
very
interesting
the
table
should
contain
other
information
For
example
if
more
than
one
person
in
your
family
keeps
pets
you
might
want
to
list
each
animal
s
owner
You
might
also
want
to
record
some
basic
descriptive
information
such
as
species
and
sex
How
about
age
That
might
be
of
interest
but
it
s
not
a
good
thing
to
store
in
a
database
Age
changes
as
time
passes
which
means
you
d
have
to
update
your
records
often
Instead
it
s
better
to
store
a
fixed
value
such
as
date
of
birth
Then
whenever
you
need
age
you
can
calculate
it
as
the
difference
between
the
current
date
and
the
birth
date
MySQL
provides
functions
for
doing
date
arithmetic
so
this
is
not
difficult
Storing
birth
date
rather
than
age
has
other
advantages
too
You
can
use
the
database
for
tasks
such
as
generating
reminders
for
upcoming
pet
birthdays
If
you
think
this
type
of
query
is
somewhat
silly
note
that
it
is
the
same
question
you
might
ask
in
the
context
of
a
business
database
to
identify
clients
to
whom
you
ll
soon
need
to
send
out
birthday
greetings
for
that
computer
assisted
personal
touch
You
can
calculate
age
in
relation
to
dates
other
than
the
current
date
For
example
if
you
store
death
date
in
the
database
you
can
easily
calculate
how
old
a
pet
was
when
it
died
You
can
probably
think
of
other
types
of
information
that
would
be
useful
in
the
pet
table
but
the
ones
identified
so
far
are
sufficient
for
now
name
owner
species
sex
birth
and
death
Use
a
CREATE
TABLE
statement
to
specify
the
layout
of
your
table
mysql
CREATE
TABLE
pet
name
VARCHAR
20
owner
VARCHAR
20
species
VARCHAR
20
sex
CHAR
1
birth
DATE
death
DATE
VARCHAR
is
a
good
choice
for
the
name
owner
and
species
columns
since
the
column
values
will
vary
in
length
The
lengths
of
those
columns
need
not
all
be
the
same
and
need
not
be
20
You
can
pick
any
length
from
1
to
255
whatever
seems
most
reasonable
to
you
If
you
make
a
poor
choice
and
it
turns
out
later
that
you
need
a
longer
field
MySQL
provides
an
ALTER
TABLE
statement
Animal
sex
can
be
represented
in
a
variety
of
ways
for
example
m
and
f
or
perhaps
male
and
female
It
s
simplest
to
use
the
single
characters
m
and
f
The
use
of
the
DATE
data
type
for
the
birth
and
death
columns
is
a
fairly
obvious
choice
Now
that
you
have
created
a
table
SHOW
TABLES
should
produce
some
output
mysql
SHOW
TABLES
Tables
in
menagerie
pet
To
verify
that
your
table
was
created
the
way
you
expected
use
a
DESCRIBE
statement
mysql
DESCRIBE
pet
Field
Type
Null
Key
Default
Extra
name
varchar
20
YES
NULL
owner
varchar
20
YES
NULL
species
varchar
20
YES
NULL
sex
char
1
YES
NULL
birth
date
YES
NULL
death
date
YES
NULL
You
can
use
DESCRIBE
any
time
for
example
if
you
forget
the
names
of
the
columns
in
your
table
or
what
types
they
are
636
8
3
3
Loading
data
into
a
table
After
creating
your
table
you
need
to
populate
it
The
LOAD
DATA
and
INSERT
statements
are
useful
for
this
Suppose
your
pet
records
can
be
described
as
shown
below
Observe
that
MySQL
expects
dates
in
YYYY
MM
DD
format
this
may
be
different
than
what
you
are
used
to
name
owner
species
sex
birth
death
Fluffy
Harold
cat
f
1993
02
04
Claws
Gwen
cat
m
1994
03
17
Buffy
Harold
dog
f
1989
05
13
Fang
Benny
dog
m
1990
08
27
Bowser
Diane
dog
m
1998
08
31
1995
07
29
Chirpy
Gwen
bird
f
1998
09
11
Whistler
Gwen
bird
1997
12
09
Slim
Benny
snake
m
1996
04
29
Since
you
are
beginning
with
an
empty
table
an
easy
way
to
populate
it
is
to
create
a
text
file
containing
a
row
for
each
of
your
animals
then
load
the
contents
of
the
file
into
the
table
with
a
single
statement
You
could
create
a
text
file
pet
txt
containing
one
record
per
line
with
values
separated
by
tabs
and
given
in
the
order
in
which
the
columns
were
listed
in
the
CREATE
TABLE
statement
For
missing
values
such
as
unknown
sexes
or
death
dates
for
animals
that
are
still
living
you
can
use
NULL
values
To
represent
these
in
your
text
file
use
N
For
example
the
record
for
Whistler
the
bird
would
look
like
this
where
the
whitespace
between
values
is
a
single
tab
character
Whistler
Gwen
bird
N
1997
12
09
N
To
load
the
text
file
pet
txt
into
the
pet
table
use
this
command
mysql
LOAD
DATA
LOCAL
INFILE
pet
txt
INTO
TABLE
pet
You
can
specify
the
column
value
separator
and
end
of
line
marker
explicitly
in
the
LOAD
DATA
statement
if
you
wish
but
the
defaults
are
tab
and
linefeed
These
are
sufficient
for
the
statement
to
read
the
file
pet
txt
properly
When
you
want
to
add
new
records
one
at
a
time
the
INSERT
statement
is
useful
In
its
simplest
form
you
supply
values
for
each
column
in
the
order
in
which
the
columns
were
listed
in
the
CREATE
TABLE
statement
Suppose
Diane
gets
a
new
hamster
named
Puffball
You
could
add
a
new
record
using
an
INSERT
statement
like
this
mysql
INSERT
INTO
pet
VALUES
Puffball
Diane
hamster
f
1999
03
30
NULL
Note
that
string
and
date
values
are
specified
as
quoted
strings
here
Also
with
INSERT
you
can
insert
NULL
directly
to
represent
a
missing
value
You
do
not
use
N
like
you
do
with
LOAD
DATA
From
this
example
you
should
be
able
to
see
that
there
would
be
a
lot
more
typing
involved
to
load
your
records
initially
using
several
INSERT
statements
rather
than
a
single
LOAD
DATA
statement
637
8
3
4
Retrieving
information
from
a
table
The
SELECT
statement
is
used
to
pull
information
from
a
table
The
general
form
of
the
statement
is
SELECT
what
to
select
FROM
which
table
WHERE
conditions
to
satisfy
what
to
select
indicates
what
you
want
to
see
This
can
be
a
list
of
columns
or
to
to
indicate
all
columns
which
table
indicates
the
table
from
which
you
want
to
retrieve
data
The
WHERE
clause
is
optional
If
it
s
present
conditions
to
satisfy
specifies
conditions
that
rows
must
satisfy
to
qualify
for
retrieval
638
8
3
4
1
Selecting
all
data
The
simplest
form
of
SELECT
retrieves
everything
from
a
table
mysql
SELECT
FROM
pet
name
owner
species
sex
birth
death
Fluffy
Harold
cat
f
1993
02
04
NULL
Claws
Gwen
cat
m
1994
03
17
NULL
Buffy
Harold
dog
f
1989
05
13
NULL
Fang
Benny
dog
m
1990
08
27
NULL
Bowser
Diane
dog
m
1998
08
31
1995
07
29
Chirpy
Gwen
bird
f
1998
09
11
NULL
Whistler
Gwen
bird
NULL
1997
12
09
NULL
Slim
Benny
snake
m
1996
04
29
NULL
Puffball
Diane
hamster
f
1999
03
30
NULL
This
form
of
SELECT
is
useful
if
you
want
to
review
your
entire
table
for
instance
after
you
ve
just
loaded
it
with
your
initial
dataset
As
it
happens
the
output
just
shown
reveals
an
error
in
your
data
file
Bowser
appears
to
have
been
born
after
he
died
Consulting
your
original
pedigree
papers
you
find
that
the
correct
birth
year
is
1989
not
1998
There
are
are
least
a
couple
of
ways
to
fix
this
Edit
the
file
pet
txt
to
correct
the
error
then
empty
the
table
and
reload
it
using
DELETE
and
LOAD
DATA
mysql
DELETE
FROM
pet
mysql
LOAD
DATA
LOCAL
INFILE
pet
txt
INTO
TABLE
pet
However
if
you
do
this
you
must
also
re
enter
the
record
for
Puffball
Fix
only
the
erroneous
record
with
an
UPDATE
statement
mysql
UPDATE
pet
SET
birth
1989
08
31
WHERE
name
Bowser
As
shown
above
it
is
easy
to
retrieve
an
entire
table
But
typically
you
don
t
want
to
do
that
particularly
when
the
table
becomes
large
Instead
you
re
usually
more
interested
in
answering
a
particular
question
in
which
case
you
specify
some
constraints
on
the
information
you
want
Let
s
look
at
some
selection
queries
in
terms
of
questions
about
your
pets
that
they
answer
639
8
3
4
2
Selecting
particular
rows
You
can
select
only
particular
rows
from
your
table
For
example
if
you
want
to
verify
the
change
that
you
made
to
Bowser
s
birth
date
select
Bowser
s
record
like
this
mysql
SELECT
FROM
pet
WHERE
name
Bowser
name
owner
species
sex
birth
death
Bowser
Diane
dog
m
1989
08
31
1995
07
29
The
output
confirms
that
the
year
is
correctly
recorded
now
as
1989
not
1998
String
comparisons
are
normally
case
insensitive
so
you
can
specify
the
name
as
bowser
BOWSER
etc
The
query
result
will
be
the
same
You
can
specify
conditions
on
any
column
not
just
name
For
example
if
you
want
to
know
which
animals
were
born
after
1998
test
the
birth
column
mysql
SELECT
FROM
pet
WHERE
birth
1998
1
1
name
owner
species
sex
birth
death
Chirpy
Gwen
bird
f
1998
09
11
NULL
Puffball
Diane
hamster
f
1999
03
30
NULL
You
can
combine
conditions
for
example
to
locate
female
dogs
mysql
SELECT
FROM
pet
WHERE
species
dog
AND
sex
f
name
owner
species
sex
birth
death
Buffy
Harold
dog
f
1989
05
13
NULL
The
preceding
query
uses
the
AND
logical
operator
There
is
also
an
OR
operator
mysql
SELECT
FROM
pet
WHERE
species
snake
OR
species
bird
name
owner
species
sex
birth
death
Chirpy
Gwen
bird
f
1998
09
11
NULL
Whistler
Gwen
bird
NULL
1997
12
09
NULL
Slim
Benny
snake
m
1996
04
29
NULL
AND
and
OR
may
be
intermixed
If
you
do
that
it
s
a
good
idea
to
use
parentheses
to
indicate
how
conditions
should
be
grouped
mysql
SELECT
FROM
pet
WHERE
species
cat
AND
sex
m
OR
species
dog
AND
sex
f
name
owner
species
sex
birth
death
Claws
Gwen
cat
m
1994
03
17
NULL
Buffy
Harold
dog
f
1989
05
13
NULL
640
8
3
4
3
Selecting
particular
columns
If
you
don
t
want
to
see
entire
rows
from
your
table
just
name
the
columns
in
which
you
re
interested
separated
by
commas
For
example
if
you
want
to
know
when
your
animals
were
born
select
the
name
and
birth
columns
mysql
SELECT
name
birth
FROM
pet
name
birth
Fluffy
1993
02
04
Claws
1994
03
17
Buffy
1989
05
13
Fang
1990
08
27
Bowser
1989
08
31
Chirpy
1998
09
11
Whistler
1997
12
09
Slim
1996
04
29
Puffball
1999
03
30
To
find
out
who
owns
pets
use
this
query
mysql
SELECT
owner
FROM
pet
owner
Harold
Gwen
Harold
Benny
Diane
Gwen
Gwen
Benny
Diane
However
notice
that
the
query
simply
retrieves
the
owner
field
from
each
record
and
some
of
them
appear
more
than
once
To
minimize
the
output
retrieve
each
unique
output
record
just
once
by
adding
the
keyword
DISTINCT
mysql
SELECT
DISTINCT
owner
FROM
pet
owner
Benny
Diane
Gwen
Harold
You
can
use
a
WHERE
clause
to
combine
row
selection
with
column
selection
For
example
to
get
birth
dates
for
dogs
and
cats
only
use
this
query
mysql
SELECT
name
species
birth
FROM
pet
WHERE
species
dog
OR
species
cat
name
species
birth
Fluffy
cat
1993
02
04
Claws
cat
1994
03
17
Buffy
dog
1989
05
13
Fang
dog
1990
08
27
Bowser
dog
1989
08
31
641
8
3
4
4
Sorting
rows
You
may
have
noticed
in
the
preceding
examples
that
the
result
rows
are
displayed
in
no
particular
order
However
it
s
often
easier
to
examine
query
output
when
the
rows
are
sorted
in
some
meaningful
way
To
sort
a
result
use
an
ORDER
BY
clause
Here
are
animal
birthdays
sorted
by
date
mysql
SELECT
name
birth
FROM
pet
ORDER
BY
birth
name
birth
Buffy
1989
05
13
Bowser
1989
08
31
Fang
1990
08
27
Fluffy
1993
02
04
Claws
1994
03
17
Slim
1996
04
29
Whistler
1997
12
09
Chirpy
1998
09
11
Puffball
1999
03
30
To
sort
in
reverse
order
add
the
DESC
descending
keyword
to
the
name
of
the
column
you
are
sorting
by
mysql
SELECT
name
birth
FROM
pet
ORDER
BY
birth
DESC
name
birth
Puffball
1999
03
30
Chirpy
1998
09
11
Whistler
1997
12
09
Slim
1996
04
29
Claws
1994
03
17
Fluffy
1993
02
04
Fang
1990
08
27
Bowser
1989
08
31
Buffy
1989
05
13
You
can
sort
on
multiple
columns
For
example
to
sort
by
type
of
animal
then
by
birth
date
within
animal
type
with
youngest
animals
first
use
the
following
query
mysql
SELECT
name
species
birth
FROM
pet
ORDER
BY
species
birth
DESC
name
species
birth
Chirpy
bird
1998
09
11
Whistler
bird
1997
12
09
Claws
cat
1994
03
17
Fluffy
cat
1993
02
04
Fang
dog
1990
08
27
Bowser
dog
1989
08
31
Buffy
dog
1989
05
13
Puffball
hamster
1999
03
30
Slim
snake
1996
04
29
Note
that
the
DESC
keyword
applies
only
to
the
column
name
immediately
preceding
it
birth
species
values
are
still
sorted
in
ascending
order
642
8
3
4
5
Date
calculations
MySQL
provides
several
functions
that
you
can
use
to
perform
calculations
on
dates
for
example
to
calculate
ages
or
extract
parts
of
dates
To
determine
how
many
years
old
each
of
your
pets
is
compute
age
as
the
difference
between
the
birth
date
and
the
current
date
Do
this
by
converting
the
two
dates
to
days
take
the
difference
and
divide
by
365
the
number
of
days
in
a
year
mysql
SELECT
name
TO
DAYS
NOW
TO
DAYS
birth
365
FROM
pet
name
TO
DAYS
NOW
TO
DAYS
birth
365
Fluffy
6
15
Claws
5
04
Buffy
9
88
Fang
8
59
Bowser
9
58
Chirpy
0
55
Whistler
1
30
Slim
2
92
Puffball
0
00
Although
the
query
works
there
are
some
things
about
it
that
could
be
improved
First
the
result
could
be
scanned
more
easily
if
the
rows
were
presented
in
some
order
Second
the
heading
for
the
age
column
isn
t
very
meaningful
The
first
problem
can
be
handled
by
adding
an
ORDER
BY
name
clause
to
sort
the
output
by
name
To
deal
with
the
column
heading
provide
a
name
for
the
column
so
that
a
different
label
appears
in
the
output
this
is
called
a
column
alias
mysql
SELECT
name
TO
DAYS
NOW
TO
DAYS
birth
365
AS
age
FROM
pet
ORDER
BY
name
name
age
Bowser
9
58
Buffy
9
88
Chirpy
0
55
Claws
5
04
Fang
8
59
Fluffy
6
15
Puffball
0
00
Slim
2
92
Whistler
1
30
To
sort
the
output
by
age
rather
than
name
just
use
a
different
ORDER
BY
clause
mysql
SELECT
name
TO
DAYS
NOW
TO
DAYS
birth
365
AS
age
FROM
pet
ORDER
BY
age
name
age
Puffball
0
00
Chirpy
0
55
Whistler
1
30
Slim
2
92
Claws
5
04
Fluffy
6
15
Fang
8
59
Bowser
9
58
Buffy
9
88
A
similar
query
can
be
used
to
determine
age
at
death
for
animals
that
have
died
You
determine
which
animals
these
are
by
checking
whether
or
not
the
death
value
is
NULL
Then
for
those
with
non
NULL
values
compute
the
difference
between
the
death
and
birth
values
mysql
SELECT
name
birth
death
TO
DAYS
death
TO
DAYS
birth
365
AS
age
FROM
pet
WHERE
death
IS
NOT
NULL
ORDER
BY
age
name
birth
death
age
Bowser
1989
08
31
1995
07
29
5
91
The
query
uses
death
IS
NOT
NULL
rather
than
death
NULL
because
NULL
is
a
special
value
This
is
explained
later
See
section
643
8
3
4
6
Working
with
NULL
values
What
if
you
want
to
know
which
animals
have
birthdays
next
month
For
this
type
of
calculation
year
and
day
are
irrelevant
you
simply
want
to
extract
the
month
part
of
the
birth
column
MySQL
provides
several
date
part
extraction
functions
such
as
YEAR
MONTH
and
DAY
MONTH
is
the
appropriate
function
here
To
see
how
it
works
run
a
simple
query
that
displays
the
value
of
both
birth
and
MONTH
birth
mysql
SELECT
name
birth
MONTH
birth
FROM
pet
name
birth
MONTH
birth
Fluffy
1993
02
04
2
Claws
1994
03
17
3
Buffy
1989
05
13
5
Fang
1990
08
27
8
Bowser
1989
08
31
8
Chirpy
1998
09
11
9
Whistler
1997
12
09
12
Slim
1996
04
29
4
Puffball
1999
03
30
3
Finding
animals
with
birthdays
in
the
upcoming
month
is
easy
too
Suppose
the
current
month
is
April
Then
the
month
value
is
4
and
you
look
for
animals
born
in
May
month
5
like
this
mysql
SELECT
name
birth
FROM
pet
WHERE
MONTH
birth
5
name
birth
Buffy
1989
05
13
There
is
a
small
complication
if
the
current
month
is
December
of
course
You
don
t
just
add
one
to
the
month
number
12
and
look
for
animals
born
in
month
13
because
there
is
no
such
month
Instead
you
look
for
animals
born
in
January
month
1
You
can
even
write
the
query
so
that
it
works
no
matter
what
the
current
month
is
That
way
you
don
t
have
to
use
a
particular
month
number
in
the
query
DATE
ADD
allows
you
to
add
a
time
interval
to
a
given
date
If
you
add
a
month
to
the
value
of
NOW
then
extract
the
month
part
with
MONTH
the
result
produces
the
month
in
which
to
look
for
birthdays
mysql
SELECT
name
birth
FROM
pet
WHERE
MONTH
birth
MONTH
DATE
ADD
NOW
INTERVAL
1
MONTH
A
different
way
to
accomplish
the
same
task
is
to
add
1
to
get
the
next
month
after
the
current
one
after
using
the
modulo
function
MOD
to
wrap
around
the
month
value
to
0
if
it
is
currently
12
mysql
SELECT
name
birth
FROM
pet
WHERE
MONTH
birth
MOD
MONTH
NOW
12
1
644
8
3
4
6
Working
with
NULL
values
The
NULL
value
can
be
surprising
until
you
get
used
to
it
Conceptually
NULL
means
missing
value
or
unknown
value
and
it
is
treated
somewhat
differently
than
other
values
To
test
for
NULL
you
cannot
use
the
arithmetic
comparison
operators
such
as
or
To
demonstrate
this
for
yourself
try
the
following
query
mysql
SELECT
1
NULL
1
NULL
1
NULL
1
NULL
1
NULL
1
NULL
1
NULL
1
NULL
NULL
NULL
NULL
NULL
Clearly
you
get
no
meaningful
results
from
these
comparisons
Use
the
IS
NULL
and
IS
NOT
NULL
operators
instead
mysql
SELECT
1
IS
NULL
1
IS
NOT
NULL
1
IS
NULL
1
IS
NOT
NULL
0
1
In
MySQL
0
means
false
and
1
means
true
This
special
treatment
of
NULL
is
why
in
the
previous
section
it
was
necessary
to
determine
which
animals
are
no
longer
alive
using
death
IS
NOT
NULL
instead
of
death
NULL
645
8
3
4
7
Pattern
matching
MySQL
provides
standard
SQL
pattern
matching
as
well
as
a
form
of
pattern
matching
based
on
extended
regular
expressions
similar
to
those
used
by
Unix
utilities
such
as
vi
grep
and
sed
SQL
pattern
matching
allows
you
to
use
to
match
any
single
character
and
to
match
an
arbitrary
number
of
characters
including
zero
characters
SQL
patterns
are
case
insensitive
Some
examples
are
shown
below
Note
that
you
do
not
use
or
when
you
use
SQL
patterns
use
the
LIKE
or
NOT
LIKE
comparison
operators
instead
To
find
names
beginning
with
b
mysql
SELECT
FROM
pet
WHERE
name
LIKE
b
name
owner
species
sex
birth
death
Buffy
Harold
dog
f
1989
05
13
NULL
Bowser
Diane
dog
m
1989
08
31
1995
07
29
To
find
names
ending
with
fy
mysql
SELECT
FROM
pet
WHERE
name
LIKE
fy
name
owner
species
sex
birth
death
Fluffy
Harold
cat
f
1993
02
04
NULL
Buffy
Harold
dog
f
1989
05
13
NULL
To
find
names
containing
a
w
mysql
SELECT
FROM
pet
WHERE
name
LIKE
w
name
owner
species
sex
birth
death
Claws
Gwen
cat
m
1994
03
17
NULL
Bowser
Diane
dog
m
1989
08
31
1995
07
29
Whistler
Gwen
bird
NULL
1997
12
09
NULL
To
find
names
containing
exactly
five
characters
use
the
pattern
character
mysql
SELECT
FROM
pet
WHERE
name
LIKE
name
owner
species
sex
birth
death
Claws
Gwen
cat
m
1994
03
17
NULL
Buffy
Harold
dog
f
1989
05
13
NULL
The
other
type
of
pattern
matching
provided
by
MySQL
uses
extended
regular
expressions
When
you
test
for
a
match
for
this
type
of
pattern
use
the
REGEXP
and
NOT
REGEXP
operators
or
RLIKE
and
NOT
RLIKE
which
are
synonyms
Some
characteristics
of
extended
regular
expressions
are
matches
any
single
character
A
character
class
matches
any
character
within
the
brackets
For
example
abc
matches
a
b
or
c
To
name
a
range
of
characters
use
a
dash
a
z
matches
any
lowercase
letter
whereas
0
9
matches
any
digit
matches
zero
or
more
instances
of
the
thing
preceding
it
For
example
x
matches
any
number
of
x
characters
0
9
matches
any
number
of
digits
and
matches
any
number
of
anything
Regular
expressions
are
case
sensitive
but
you
can
use
a
character
class
to
match
both
lettercases
if
you
wish
For
example
aA
matches
lowercase
or
uppercase
a
and
a
zA
Z
matches
any
letter
in
either
case
The
pattern
matches
if
it
occurs
anywhere
in
the
value
being
tested
SQL
patterns
match
only
if
they
match
the
entire
value
To
anchor
a
pattern
so
that
it
must
match
the
beginning
or
end
of
the
value
being
tested
use
at
the
beginning
or
at
the
end
of
the
pattern
To
demonstrate
how
extended
regular
expressions
work
the
LIKE
queries
shown
above
are
rewritten
below
to
use
REGEXP
To
find
names
beginning
with
b
use
to
match
the
beginning
of
the
name
and
bB
to
match
either
lowercase
or
uppercase
b
mysql
SELECT
FROM
pet
WHERE
name
REGEXP
bB
name
owner
species
sex
birth
death
Buffy
Harold
dog
f
1989
05
13
NULL
Bowser
Diane
dog
m
1989
08
31
1995
07
29
To
find
names
ending
with
fy
use
to
match
the
end
of
the
name
mysql
SELECT
FROM
pet
WHERE
name
REGEXP
fy
name
owner
species
sex
birth
death
Fluffy
Harold
cat
f
1993
02
04
NULL
Buffy
Harold
dog
f
1989
05
13
NULL
To
find
names
containing
a
w
use
wW
to
match
either
lowercase
or
uppercase
w
mysql
SELECT
FROM
pet
WHERE
name
REGEXP
wW
name
owner
species
sex
birth
death
Claws
Gwen
cat
m
1994
03
17
NULL
Bowser
Diane
dog
m
1989
08
31
1995
07
29
Whistler
Gwen
bird
NULL
1997
12
09
NULL
Since
a
regular
expression
pattern
matches
if
it
occurs
anywhere
in
the
value
it
is
not
necessary
in
the
previous
query
to
put
a
wildcard
on
either
side
of
the
pattern
to
get
it
to
match
the
entire
value
like
it
would
be
if
you
used
an
SQL
pattern
To
find
names
containing
exactly
five
characters
use
and
to
match
the
beginning
and
end
of
the
name
and
five
instances
of
in
between
mysql
SELECT
FROM
pet
WHERE
name
REGEXP
name
owner
species
sex
birth
death
Claws
Gwen
cat
m
1994
03
17
NULL
Buffy
Harold
dog
f
1989
05
13
NULL
You
could
also
write
the
previous
query
using
the
n
repeat
n
times
operator
mysql
SELECT
FROM
pet
WHERE
name
REGEXP
5
name
owner
species
sex
birth
death
Claws
Gwen
cat
m
1994
03
17
NULL
Buffy
Harold
dog
f
1989
05
13
NULL
646
8
3
4
8
Counting
rows
Databases
are
often
used
to
answer
the
question
how
often
does
a
certain
type
of
data
occur
in
a
table
For
example
you
might
want
to
know
how
many
pets
you
have
or
how
many
pets
each
owner
has
or
you
might
want
to
perform
various
kinds
of
censuses
on
your
animals
Counting
the
total
number
of
animals
you
have
is
the
same
question
as
how
many
rows
are
in
the
pet
table
since
there
is
one
record
per
pet
The
COUNT
function
counts
the
number
of
non
NULL
results
so
the
query
to
count
your
animals
looks
like
this
mysql
SELECT
COUNT
FROM
pet
COUNT
9
Earlier
you
retrieved
the
names
of
the
people
who
owned
pets
You
can
use
COUNT
if
you
want
to
find
out
how
many
pets
each
owner
has
mysql
SELECT
owner
COUNT
FROM
pet
GROUP
BY
owner
owner
COUNT
Benny
2
Diane
2
Gwen
3
Harold
2
Note
the
use
of
GROUP
BY
to
group
together
all
records
for
each
owner
Without
it
all
you
get
is
an
error
message
mysql
SELECT
owner
COUNT
owner
FROM
pet
ERROR
1140
at
line
1
Mixing
of
GROUP
columns
MIN
MAX
COUNT
with
no
GROUP
columns
is
illegal
if
there
is
no
GROUP
BY
clause
COUNT
and
GROUP
BY
are
useful
for
characterizing
your
data
in
various
ways
The
following
examples
show
different
ways
to
perform
animal
census
operations
Number
of
animals
per
species
mysql
SELECT
species
COUNT
FROM
pet
GROUP
BY
species
species
COUNT
bird
2
cat
2
dog
3
hamster
1
snake
1
Number
of
animals
per
sex
mysql
SELECT
sex
COUNT
FROM
pet
GROUP
BY
sex
sex
COUNT
NULL
1
f
4
m
4
In
this
output
NULL
indicates
sex
unknown
Number
of
animals
per
combination
of
species
and
sex
mysql
SELECT
species
sex
COUNT
FROM
pet
GROUP
BY
species
sex
species
sex
COUNT
bird
NULL
1
bird
f
1
cat
f
1
cat
m
1
dog
f
1
dog
m
2
hamster
f
1
snake
m
1
You
need
not
retrieve
an
entire
table
when
you
use
COUNT
For
example
the
previous
query
when
performed
just
on
dogs
and
cats
looks
like
this
mysql
SELECT
species
sex
COUNT
FROM
pet
WHERE
species
dog
OR
species
cat
GROUP
BY
species
sex
species
sex
COUNT
cat
f
1
cat
m
1
dog
f
1
dog
m
2
Or
if
you
wanted
the
number
of
animals
per
sex
only
for
known
sex
animals
mysql
SELECT
species
sex
COUNT
FROM
pet
WHERE
sex
IS
NOT
NULL
GROUP
BY
species
sex
species
sex
COUNT
bird
f
1
cat
f
1
cat
m
1
dog
f
1
dog
m
2
hamster
f
1
snake
m
1
647
8
3
5
Using
more
than
one
table
The
pet
table
keeps
track
of
which
pets
you
have
If
you
want
to
record
other
information
about
them
such
as
events
in
their
lives
like
visits
to
the
vet
or
when
litters
are
born
you
need
another
table
What
should
this
table
look
like
It
needs
to
contain
the
pet
name
so
you
know
which
animal
each
event
pertains
to
It
needs
a
date
so
you
know
when
the
event
occurred
It
needs
a
field
to
describe
the
event
If
you
want
to
be
able
to
categorize
events
it
would
be
useful
to
have
an
event
type
field
Given
these
considerations
the
CREATE
TABLE
statement
for
the
event
table
might
look
like
this
mysql
CREATE
TABLE
event
name
VARCHAR
20
date
DATE
type
VARCHAR
15
remark
VARCHAR
255
As
with
the
pet
table
it
s
easiest
to
load
the
initial
records
by
creating
a
tab
delimited
text
file
containing
the
information
Fluffy
1995
05
15
litter
4
kittens
3
female
1
male
Buffy
1993
06
23
litter
5
puppies
2
female
3
male
Buffy
1994
06
19
litter
3
puppies
3
female
Chirpy
1999
03
21
vet
needed
beak
straightened
Slim
1997
08
03
vet
broken
rib
Bowser
1991
10
12
kennel
Fang
1991
10
12
kennel
Fang
1998
08
28
birthday
Gave
him
a
new
chew
toy
Claws
1998
03
17
birthday
Gave
him
a
new
flea
collar
Whistler
1998
12
09
birthday
First
birthday
Load
the
records
like
this
mysql
LOAD
DATA
LOCAL
INFILE
event
txt
INTO
TABLE
event
Based
on
what
you
ve
learned
from
the
queries
you
ve
run
on
the
pet
table
you
should
be
able
to
perform
retrievals
on
the
records
in
the
event
table
the
principles
are
the
same
But
when
is
the
event
table
by
itself
insufficient
to
answer
questions
you
might
ask
Suppose
you
want
to
find
out
the
ages
of
each
pet
when
they
had
their
litters
The
event
table
indicates
when
this
occurred
but
to
calculate
age
of
the
mother
you
need
her
birth
date
Since
that
is
stored
in
the
pet
table
you
need
both
tables
for
the
query
mysql
SELECT
pet
name
TO
DAYS
date
TO
DAYS
birth
365
AS
age
remark
FROM
pet
event
WHERE
pet
name
event
name
AND
type
litter
name
age
remark
Fluffy
2
27
4
kittens
3
female
1
male
Buffy
4
12
5
puppies
2
female
3
male
Buffy
5
10
3
puppies
3
female
There
are
several
things
to
note
about
this
query
The
FROM
clause
lists
two
tables
since
the
query
needs
to
pull
information
from
both
of
them
When
combining
information
from
multiple
tables
you
need
to
specify
how
records
in
one
table
can
be
matched
to
records
in
the
other
This
is
easy
since
they
both
have
a
name
column
The
query
uses
WHERE
clause
to
match
up
records
in
the
two
tables
based
on
the
name
values
Since
the
name
column
occurs
in
both
tables
you
must
be
specific
about
which
table
you
mean
when
referring
to
the
column
This
is
done
by
prepending
the
table
name
to
the
column
name
You
need
not
have
two
different
tables
to
perform
a
join
Sometimes
it
is
useful
to
join
a
table
to
itself
if
you
want
to
compare
records
in
a
table
to
other
records
in
that
same
table
For
example
to
find
breeding
pairs
among
your
pets
you
can
join
the
pet
table
with
itself
to
pair
up
males
and
females
of
like
species
mysql
SELECT
p1
name
p1
sex
p2
name
p2
sex
p1
species
FROM
pet
AS
p1
pet
AS
p2
WHERE
p1
species
p2
species
AND
p1
sex
f
AND
p2
sex
m
name
sex
name
sex
species
Fluffy
f
Claws
m
cat
Buffy
f
Fang
m
dog
Buffy
f
Bowser
m
dog
In
this
query
we
specify
aliases
for
the
table
name
in
order
to
be
able
to
refer
to
the
columns
and
keep
straight
which
instance
of
the
table
each
column
reference
is
associated
with
648
8
4
Getting
information
about
databases
and
tables
What
if
you
forget
the
name
of
a
database
or
table
or
what
the
structure
of
a
given
table
is
e
g
what
its
columns
are
called
MySQL
addresses
this
problem
through
several
statements
that
provide
information
about
the
databases
and
tables
it
supports
You
have
already
seen
SHOW
DATABASES
which
lists
the
databases
managed
by
the
server
To
find
out
which
database
is
currently
selected
use
the
DATABASE
function
mysql
SELECT
DATABASE
DATABASE
menagerie
If
you
haven
t
selected
any
database
yet
the
result
is
blank
To
find
out
what
tables
the
current
database
contains
for
example
when
you
re
not
sure
about
the
name
of
a
table
use
this
command
mysql
SHOW
TABLES
Tables
in
menagerie
event
pet
If
you
want
to
find
out
about
the
structure
of
a
table
the
DESCRIBE
command
is
useful
it
displays
information
about
each
of
a
table
s
columns
mysql
DESCRIBE
pet
Field
Type
Null
Key
Default
Extra
name
varchar
20
YES
NULL
owner
varchar
20
YES
NULL
species
varchar
20
YES
NULL
sex
char
1
YES
NULL
birth
date
YES
NULL
death
date
YES
NULL
Field
indicates
the
column
name
Type
is
the
data
type
for
the
column
Null
indicates
whether
or
not
the
column
can
contain
NULL
values
Key
indicates
whether
or
not
the
column
is
indexed
and
Default
specifies
the
column
s
default
value
If
you
have
indexes
on
a
table
SHOW
INDEX
FROM
tbl
name
produces
information
about
them
649
8
5
Using
mysql
in
batch
mode
In
the
previous
sections
you
used
mysql
interactively
to
enter
queries
and
view
the
results
You
can
also
run
mysql
in
batch
mode
To
do
this
put
the
commands
you
want
to
run
in
a
file
then
tell
mysql
to
read
its
input
from
the
file
shell
mysql
batch
file
If
you
need
to
specify
connection
parameters
on
the
command
line
the
command
might
look
like
this
shell
mysql
h
host
u
user
p
batch
file
Enter
password
When
you
use
mysql
this
way
you
are
creating
a
script
file
then
executing
the
script
Why
use
a
script
Here
are
a
few
reasons
If
you
run
a
query
repeatedly
say
every
day
or
every
week
making
it
a
script
allows
you
to
avoid
retyping
it
each
time
you
execute
it
You
can
generate
new
queries
from
existing
ones
that
are
similar
by
copying
and
editing
script
files
Batch
mode
can
also
be
useful
while
you
re
developing
a
query
particularly
for
multiple
line
commands
or
multiple
statement
sequences
of
commands
If
you
make
a
mistake
you
don
t
have
to
retype
everything
Just
edit
your
script
to
correct
the
error
then
tell
mysql
to
execute
it
again
If
you
have
a
query
that
produces
a
lot
of
output
you
can
run
the
output
through
a
pager
rather
than
watching
it
scroll
off
the
top
of
your
screen
shell
mysql
batch
file
more
You
can
catch
the
output
in
a
file
for
further
processing
shell
mysql
batch
file
mysql
out
You
can
distribute
your
script
to
other
people
so
they
can
run
the
commands
too
Some
situations
do
not
allow
for
interactive
use
for
example
when
you
run
a
query
from
a
cron
job
In
this
case
you
must
use
batch
mode
The
default
output
format
is
different
more
concise
when
you
run
mysql
in
batch
mode
than
when
you
use
it
interactively
For
example
the
output
of
SELECT
DISTINCT
species
FROM
pet
looks
like
this
when
run
interactively
species
bird
cat
dog
hamster
snake
But
like
this
when
run
in
batch
mode
species
bird
cat
dog
hamster
snake
If
you
want
to
get
the
interactive
output
format
in
batch
mode
use
mysql
t
To
echo
to
the
output
the
commands
that
are
executed
use
mysql
vvv
650
8
6
Queries
from
twin
project
At
Analytikerna
and
Lentus
we
have
been
doing
the
systems
and
field
work
for
a
big
research
project
This
project
is
a
collaboration
between
the
Institute
of
Environmental
Medicine
at
Karolinska
Institutet
Stockholm
and
the
Section
on
Clinical
Research
in
Aging
and
Psychology
at
the
University
of
Southern
California
The
project
involves
a
screening
part
where
all
twins
in
Sweden
older
than
65
years
are
interviewed
by
telephone
Twins
who
meet
certain
criteria
are
passed
on
to
the
next
stage
In
this
latter
stage
twins
who
want
to
participate
are
visited
by
a
doctor
nurse
team
Some
of
the
examinations
include
physical
and
neuropsychological
examination
laboratory
testing
neuroimaging
psychological
status
assessment
and
family
history
collection
In
addition
data
are
collected
on
medical
and
environmental
risk
factors
More
information
about
Twin
studies
can
be
found
at
http
www
imm
ki
se
TWIN
TWINUKW
HTM
The
latter
part
of
the
project
is
administered
with
a
web
interface
written
using
Perl
and
MySQL
Each
night
all
data
from
the
interviews
are
moved
into
a
MySQL
database
651
8
6
1
Find
all
non
distributed
twins
The
following
query
is
used
to
determine
who
goes
into
the
second
part
of
the
project
select
concat
p1
id
p1
tvab
0
as
tvid
concat
p1
christian
name
p1
surname
as
Name
p1
postal
code
as
Code
p1
city
as
City
pg
abrev
as
Area
if
td
participation
Aborted
A
as
A
p1
dead
as
dead1
l
event
as
event1
td
suspect
as
tsuspect1
id
suspect
as
isuspect1
td
severe
as
tsevere1
id
severe
as
isevere1
p2
dead
as
dead2
l2
event
as
event2
h2
nurse
as
nurse2
h2
doctor
as
doctor2
td2
suspect
as
tsuspect2
id2
suspect
as
isuspect2
td2
severe
as
tsevere2
id2
severe
as
isevere2
l
finish
date
from
twin
project
as
tp
For
Twin
1
left
join
twin
data
as
td
on
tp
id
td
id
and
tp
tvab
td
tvab
left
join
informant
data
as
id
on
tp
id
id
id
and
tp
tvab
id
tvab
left
join
harmony
as
h
on
tp
id
h
id
and
tp
tvab
h
tvab
left
join
lentus
as
l
on
tp
id
l
id
and
tp
tvab
l
tvab
For
Twin
2
left
join
twin
data
as
td2
on
p2
id
td2
id
and
p2
tvab
td2
tvab
left
join
informant
data
as
id2
on
p2
id
id2
id
and
p2
tvab
id2
tva
b
left
join
harmony
as
h2
on
p2
id
h2
id
and
p2
tvab
h2
tvab
left
join
lentus
as
l2
on
p2
id
l2
id
and
p2
tvab
l2
tvab
person
data
as
p1
person
data
as
p2
postal
groups
as
pg
where
p1
gets
main
twin
and
p2
gets
his
her
twin
ptvab
is
a
field
inverted
from
tvab
p1
id
tp
id
and
p1
tvab
tp
tvab
and
p2
id
p1
id
and
p2
ptvab
p1
tvab
and
Just
the
sceening
survey
tp
survey
no
5
and
Skip
if
partner
died
before
65
but
allow
emigration
dead
9
p2
dead
0
or
p2
dead
9
or
p2
dead
1
and
p2
death
date
0
or
to
days
p2
death
date
to
days
p2
birthday
365
65
and
Twin
is
suspect
td
future
contact
Yes
and
td
suspect
2
or
Twin
is
suspect
Informant
is
Blessed
td
future
contact
Yes
and
td
suspect
1
and
id
suspect
1
or
No
twin
Informant
is
Blessed
ISNULL
td
suspect
and
id
suspect
1
and
id
future
contact
Yes
o
r
Twin
broken
off
Informant
is
Blessed
td
participation
Aborted
and
id
suspect
1
and
id
future
contact
Yes
or
Twin
broken
off
No
inform
Have
partner
td
participation
Aborted
and
ISNULL
id
suspect
and
p2
dead
0
and
l
event
Finished
Get
at
area
code
and
substring
p1
postal
code
1
2
pg
code
Not
already
distributed
and
h
nurse
is
NULL
or
h
nurse
00
or
h
doctor
00
Has
not
refused
or
been
aborted
and
not
h
status
Refused
or
h
status
Aborted
or
h
status
Died
or
h
status
Other
order
by
tvid
Some
explanations
concat
p1
id
p1
tvab
0
as
tvid
We
want
to
sort
on
the
concatenated
id
and
tvab
in
numerical
order
Adding
0
to
the
result
causes
MySQL
to
treat
the
result
as
a
number
column
id
This
identifies
a
pair
of
twins
It
is
a
key
in
all
tables
column
tvab
This
identifies
a
twin
in
a
pair
It
has
a
value
of
1
or
2
column
ptvab
This
is
an
inverse
of
tvab
When
tvab
is
1
this
is
2
and
vice
versa
It
exists
to
save
typing
and
to
make
it
easier
for
MySQL
to
optimize
the
query
This
query
demonstrates
among
other
things
how
to
do
lookups
on
a
table
from
the
same
table
with
a
join
p1
and
p2
In
the
example
this
is
used
to
check
whether
a
twin
s
partner
died
before
the
age
of
65
If
so
the
row
is
not
returned
All
of
the
above
exist
in
all
tables
with
twin
related
information
We
have
a
key
on
both
id
tvab
all
tables
and
id
ptvab
person
data
to
make
queries
faster
On
our
production
machine
A
200MHz
UltraSPARC
this
query
returns
about
150
200
rows
and
takes
less
than
one
second
The
current
number
of
records
in
the
tables
used
above
Table
Rows
person
data
71074
lentus
5291
twin
project
5286
twin
data
2012
informant
data
663
harmony
381
postal
groups
100
652
8
6
2
Show
a
table
on
twin
pair
status
Each
interview
ends
with
a
status
code
called
event
The
query
shown
below
is
used
to
display
a
table
over
all
twin
pairs
combined
by
event
This
indicates
in
how
many
pairs
both
twins
are
finished
in
how
many
pairs
one
twin
is
finished
and
the
other
refused
and
so
on
select
t1
event
t2
event
count
from
lentus
as
t1
lentus
as
t2
twin
project
as
tp
where
We
are
looking
at
one
pair
at
a
time
t1
id
tp
id
and
t1
tvab
tp
tvab
and
t1
id
t2
id
Just
the
sceening
survey
and
tp
survey
no
5
This
makes
each
pair
only
appear
once
and
t1
tvab
1
and
t2
tvab
2
group
by
t1
event
t2
event
653
9
MySQL
Server
functions
654
9
1
What
languages
are
supported
by
MySQL
mysqld
can
issue
error
messages
in
the
following
languages
Czech
Dutch
English
the
default
Estonia
French
German
Hungarian
Italian
Norwegian
Norwegian
ny
Polish
Portuguese
Spanish
and
Swedish
To
start
mysqld
with
a
particular
language
use
either
the
language
lang
or
L
lang
options
For
example
shell
mysqld
language
swedish
or
shell
mysqld
language
usr
local
share
swedish
Note
that
all
language
names
are
specified
in
lowercase
The
language
files
are
located
by
default
in
mysql
base
dir
share
LANGUAGE
To
update
the
error
message
file
you
should
edit
the
errmsg
txt
file
and
execute
the
following
command
to
generate
the
errmsg
sys
file
shell
comp
err
errmsg
txt
errmsg
sys
If
you
upgrade
to
a
newer
version
of
MySQL
remember
to
repeat
your
changes
with
the
new
errmsg
txt
file
655
9
1
1
The
character
set
used
for
data
and
sorting
By
default
MySQL
uses
the
ISO
8859
1
Latin1
character
set
This
is
the
character
set
used
in
the
USA
and
western
Europe
The
character
set
determines
what
characters
are
allowed
in
names
and
how
things
are
sorted
by
the
ORDER
BY
and
GROUP
BY
clauses
of
the
SELECT
statement
You
can
change
the
character
set
at
compile
time
by
using
the
with
charset
charset
option
to
configure
See
section
656
4
7
1
Quick
installation
overview
To
add
another
character
set
to
MySQL
use
the
following
procedure
657
9
1
2
Adding
a
new
character
set
1
Choose
a
name
for
the
character
set
denoted
MYSET
below
2
Create
the
file
strings
ctype
MYSET
c
in
the
MySQL
source
distribution
3
Look
at
one
of
the
existing
ctype
c
files
to
see
what
needs
to
be
defined
Note
that
the
arrays
in
your
file
must
have
names
like
ctype
MYSET
to
lower
MYSET
and
so
on
to
lower
and
to
upper
are
simple
arrays
that
hold
the
lowercase
and
uppercase
characters
corresponding
to
each
member
of
the
character
set
For
example
to
lower
A
should
contain
a
to
upper
a
should
contain
A
sort
order
is
a
map
indicating
how
characters
should
be
ordered
for
comparison
and
sorting
purposes
For
many
character
sets
this
is
the
same
as
to
upper
which
means
sorting
will
be
case
insensitive
MySQL
will
sort
characters
based
on
the
value
of
sort
order
character
ctype
is
an
array
of
bit
values
with
one
element
for
one
character
Note
that
to
lower
to
upper
and
sort
order
are
indexed
by
character
value
but
ctype
is
indexed
by
character
value
1
This
is
an
old
legacy
to
be
able
to
handle
EOF
You
can
find
the
following
bitmask
definitions
in
m
ctype
h
define
U
01
Upper
case
define
L
02
Lower
case
define
N
04
Numeral
digit
define
S
010
Spacing
character
define
P
020
Punctuation
define
C
040
Control
character
define
B
0100
Blank
define
X
0200
heXadecimal
digit
The
ctype
entry
for
each
character
should
be
the
union
of
the
applicable
bitmask
values
that
describe
the
character
For
example
A
is
an
uppercase
character
U
as
well
as
a
hexidecimal
digit
X
so
ctype
A
1
should
contain
the
value
U
X
01
0200
0201
4
Add
a
unique
number
for
your
character
set
to
include
m
ctype
h
in
5
Add
the
character
set
name
to
the
CHARSETS
AVAILABLE
list
in
configure
in
6
Reconfigure
recompile
and
test
658
9
1
3
Multi
byte
character
support
If
you
are
creating
a
multi
byte
character
set
you
can
use
the
MB
macros
In
include
m
ctype
h
in
add
define
MY
CHARSET
MYSET
X
if
MY
CHARSET
CURRENT
MY
CHARSET
MYSET
define
USE
MB
define
USE
MB
IDENT
define
ismbchar
p
end
define
ismbhead
c
define
mbcharlen
c
define
MBMAXLEN
N
endif
Where
MY
CHARSET
MYSET
A
unique
character
set
value
USE
MB
This
character
set
has
multi
byte
characters
handled
by
ismbhead
and
mbcharlen
USE
MB
IDENT
optional
If
defined
you
can
use
table
and
column
names
that
use
multi
byte
characters
ismbchar
p
e
return
0
if
p
is
not
a
multi
byte
character
string
or
the
size
of
the
character
in
bytes
if
it
is
p
and
e
point
to
the
beginning
and
end
of
the
string
Check
from
char
p
to
char
e
1
ismbhead
c
True
if
c
is
the
first
character
of
a
multi
byte
character
string
mbcharlen
c
Size
of
a
multi
byte
character
string
if
c
is
the
first
character
of
such
a
string
MBMAXLEN
Size
in
bytes
of
the
largest
character
in
the
set
659
9
2
The
update
log
When
started
with
the
log
update
file
name
option
mysqld
writes
a
log
file
containing
all
SQL
commands
that
update
data
The
file
is
written
in
the
data
directory
and
has
a
name
of
file
name
where
is
a
number
that
is
incremented
each
time
you
execute
mysqladmin
refresh
or
mysqladmin
flush
logs
the
FLUSH
LOGS
statement
or
restart
the
server
If
you
use
the
log
or
l
options
the
filename
is
hostname
log
and
restarts
and
refreshes
do
not
cause
a
new
log
file
to
be
generated
By
default
the
mysql
server
script
starts
the
MySQL
server
with
the
l
option
If
you
need
better
performance
when
you
start
using
MySQL
in
a
production
environment
you
can
remove
the
l
option
from
mysql
server
Update
logging
is
smart
since
it
logs
only
statements
that
really
update
data
So
an
UPDATE
or
a
DELETE
with
a
WHERE
that
finds
no
rows
is
not
written
to
the
log
It
even
skips
UPDATE
statements
that
set
a
column
to
the
value
it
already
has
If
you
want
to
update
a
database
from
update
log
files
you
could
do
the
following
assuming
your
log
files
have
names
of
the
form
file
name
shell
ls
1
t
r
file
name
0
9
xargs
cat
mysql
ls
is
used
to
get
all
the
log
files
in
the
right
order
This
can
be
useful
if
you
have
to
revert
to
backup
files
after
a
crash
and
you
want
to
redo
the
updates
that
occurred
between
the
time
of
the
backup
and
the
crash
You
can
also
use
the
update
logs
when
you
have
a
mirrored
database
on
another
host
and
you
want
to
replicate
the
changes
that
have
been
made
to
the
master
database
660
9
3
How
big
MySQL
tables
can
be
MySQL
itself
has
a
4G
limit
on
table
size
and
operating
systems
have
their
own
file
size
limits
On
Linux
the
current
limit
is
2G
on
Solaris
2
5
1
the
limit
is
4G
on
Solaris
2
6
the
limit
is
going
to
be
1000G
Currently
table
sizes
are
limited
to
either
4G
the
MySQL
limit
or
the
operating
system
limit
whichever
is
smaller
To
get
more
than
4G
requires
some
changes
to
MySQL
that
are
on
the
TODO
See
section
661
F
List
of
things
we
want
to
add
to
MySQL
in
the
future
The
TODO
If
your
big
table
is
going
to
be
read
only
you
could
use
pack
isam
to
merge
and
compress
many
tables
to
one
pack
isam
usually
compresses
a
table
by
at
least
50
so
you
can
have
in
effect
much
bigger
tables
See
section
662
12
5
The
MySQL
compressed
read
only
table
generator
Another
solution
can
be
the
included
MERGE
library
which
allows
you
to
handle
a
collection
of
identical
tables
as
one
Identical
in
this
case
means
that
all
tables
are
created
with
identical
column
information
Currently
MERGE
can
only
be
used
to
scan
a
collection
of
tables
because
it
doesn
t
support
indexes
We
will
add
indexes
to
this
in
the
near
future
663
10
Getting
maximum
performance
from
MySQL
664
10
1
Tuning
server
parameters
You
can
get
the
default
buffer
sizes
used
by
the
mysqld
server
with
this
command
shell
mysqld
help
This
command
produces
a
list
of
all
mysqld
options
and
configurable
variables
The
output
includes
the
default
values
and
looks
something
like
this
Possible
variables
for
option
set
variable
O
are
back
log
current
value
5
connect
timeout
current
value
5
delayed
insert
timeout
current
value
300
delayed
insert
limit
current
value
100
delayed
queue
size
current
value
1000
flush
time
current
value
0
join
buffer
size
current
value
131072
key
buffer
size
current
value
1048540
long
query
time
current
value
10
max
allowed
packet
current
value
1048576
max
connections
current
value
100
max
connect
errors
current
value
10
max
delayed
threads
current
value
20
max
heap
table
size
current
value
16777216
max
join
size
current
value
4294967295
max
sort
length
current
value
1024
max
tmp
tables
current
value
32
net
buffer
length
current
value
16384
record
buffer
current
value
131072
sort
buffer
current
value
2097116
table
cache
current
value
64
tmp
table
size
current
value
1048576
thread
stack
current
value
131072
wait
timeout
current
value
28800
If
there
is
a
mysqld
server
currently
running
you
can
see
what
values
it
actually
is
using
for
the
variables
by
executing
this
command
shell
mysqladmin
variables
Each
option
is
described
below
Values
for
buffer
sizes
lengths
and
stack
sizes
are
given
in
bytes
You
can
specify
values
with
a
suffix
of
K
or
M
to
indicate
kilobytes
or
megabytes
For
example
16M
indicates
16
megabytes
Case
of
suffix
letters
does
not
matter
16M
and
16m
are
equivalent
back
log
The
number
of
outstanding
connection
requests
MySQL
can
have
This
comes
into
play
when
the
main
MySQL
thread
gets
VERY
many
connection
requests
in
a
very
short
time
It
then
takes
some
time
although
very
little
for
the
main
thread
to
check
the
connection
and
start
a
new
thread
The
back
log
value
indicates
how
many
requests
can
be
stacked
during
this
short
time
before
MySQL
momentarily
stops
answering
new
requests
You
need
to
increase
this
only
if
you
expect
a
large
number
of
connections
in
a
short
period
of
time
In
other
words
this
value
is
the
size
of
the
listen
queue
for
incoming
TCP
IP
connections
Your
operating
system
has
its
own
limit
on
the
size
of
this
queue
The
manual
page
for
the
Unix
listen
2
system
call
should
have
more
details
Check
your
OS
documentation
for
the
maximum
value
for
this
variable
Attempting
to
set
back
log
higher
than
this
maximum
will
be
ineffective
connect
timeout
The
number
of
seconds
the
mysqld
server
is
waiting
for
a
connect
packet
before
responding
with
Bad
handshake
delayed
insert
timeout
How
long
a
INSERT
DELAYED
thread
should
wait
for
INSERT
statements
before
terminating
delayed
insert
limit
After
inserting
delayed
insert
limit
rows
the
INSERT
DELAYED
handler
will
check
if
there
are
any
SELECT
statements
pending
If
so
it
allows
these
to
execute
before
continuing
delayed
queue
size
How
big
a
queue
in
rows
should
be
allocated
for
handling
INSERT
DELAYED
If
the
queue
becomes
full
any
client
that
does
INSERT
DELAYED
will
wait
until
there
is
room
in
the
queue
again
flush
time
If
this
is
set
then
every
flush
time
seconds
all
tables
will
be
closed
to
free
up
resources
and
sync
things
to
disk
join
buffer
The
size
of
the
buffer
that
is
used
for
full
joins
joins
that
do
not
use
indexes
The
buffer
is
allocated
one
time
for
each
full
join
between
two
tables
Increase
this
value
to
get
a
faster
full
join
when
adding
indexes
is
not
possible
Normally
the
best
way
to
get
fast
joins
is
to
add
indexes
key
buffer
Index
blocks
are
buffered
and
are
shared
by
all
threads
key
buffer
is
the
size
of
the
buffer
used
for
index
blocks
You
might
want
to
increase
this
value
when
doing
many
DELETE
or
INSERT
operations
on
a
table
with
lots
of
indexes
To
get
even
more
speed
use
LOCK
TABLES
See
section
665
7
23
LOCK
TABLES
UNLOCK
TABLES
syntax
long
query
time
If
a
query
takes
longer
than
this
in
seconds
the
slow
queries
counter
will
be
incremented
max
allowed
packet
The
maximum
size
of
one
packet
The
message
buffer
is
initialized
to
net
buffer
length
bytes
but
can
grow
up
to
max
allowed
packet
bytes
when
needed
This
value
by
default
is
small
to
catch
big
possibly
wrong
packets
You
must
increase
this
value
if
you
are
using
big
BLOB
columns
It
should
be
as
big
as
the
biggest
BLOB
you
want
to
use
max
connections
The
number
of
simultaneous
clients
allowed
Increasing
this
value
increases
the
number
of
file
descriptors
that
mysqld
requires
See
below
for
comments
on
file
descriptor
limits
max
connect
errors
If
there
is
more
than
this
number
of
interrupted
connections
from
a
host
this
host
will
be
blocked
for
further
connections
You
can
unblock
a
host
with
the
command
FLUSH
HOSTS
max
delayed
threads
Don
t
start
more
than
this
number
of
threads
to
handle
INSERT
DELAYED
If
you
try
to
insert
data
in
a
new
table
after
all
INSERT
DELAYED
threads
are
in
use
the
row
will
be
inserted
as
if
the
DELAYED
attribute
wasn
t
specified
max
join
size
Joins
that
are
probably
going
to
read
more
than
max
join
size
records
return
an
error
Set
this
value
if
your
users
tend
to
perform
joins
without
a
WHERE
clause
that
take
a
long
time
and
return
millions
of
rows
max
sort
length
The
number
of
bytes
to
use
when
sorting
BLOB
or
TEXT
values
only
the
first
max
sort
length
bytes
of
each
value
are
used
the
rest
are
ignored
max
tmp
tables
This
option
doesn
t
yet
do
anything
Maximum
number
of
temporary
tables
a
client
can
keep
open
at
the
same
time
net
buffer
length
The
communication
buffer
is
reset
to
this
size
between
queries
This
should
not
normally
be
changed
but
if
you
have
very
little
memory
you
can
set
it
to
the
expected
size
of
a
query
That
is
the
expected
length
of
SQL
statements
sent
by
clients
If
statements
exceed
this
length
the
buffer
is
automatically
enlarged
up
to
max
allowed
packet
bytes
record
buffer
Each
thread
that
does
a
sequential
scan
allocates
a
buffer
of
this
size
for
each
table
it
scans
If
you
do
many
sequential
scans
you
may
want
to
increase
this
value
sort
buffer
Each
thread
that
needs
to
do
a
sort
allocates
a
buffer
of
this
size
Increase
this
value
for
faster
ORDER
BY
or
GROUP
BY
operations
See
section
666
17
5
Where
MySQL
stores
temporary
files
table
cache
The
number
of
open
tables
for
all
threads
Increasing
this
value
increases
the
number
of
file
descriptors
that
mysqld
requires
MySQL
needs
two
file
descriptors
for
each
unique
open
table
See
below
for
comments
on
file
descriptor
limits
For
information
about
how
the
table
cache
works
see
section
667
10
7
How
MySQL
opens
and
closes
tables
tmp
table
size
If
a
temporary
table
exceeds
this
size
MySQL
generates
an
error
of
the
form
The
table
tbl
name
is
full
Increase
the
value
of
tmp
table
size
if
you
do
many
advanced
GROUP
BY
queries
thread
stack
The
stack
size
for
each
thread
Many
of
the
limits
detected
by
the
crash
me
test
are
dependent
on
this
value
The
default
is
normally
large
enough
See
section
668
11
The
MySQL
benchmark
suite
wait
timeout
The
number
of
seconds
the
server
waits
for
activity
on
a
connection
before
closing
it
table
cache
max
connections
and
max
tmp
tables
affect
the
maximum
number
of
files
the
server
keeps
open
If
you
increase
one
or
both
of
these
values
you
may
run
up
against
a
limit
imposed
by
your
operating
system
on
the
per
process
number
of
open
file
descriptors
However
you
can
increase
the
limit
on
many
systems
Consult
your
OS
documentation
to
find
out
how
to
do
this
because
the
method
for
changing
the
limit
varies
widely
from
system
to
system
table
cache
is
related
to
max
connections
For
example
for
200
open
connections
you
should
have
a
table
cache
of
at
least
200
n
where
n
is
the
maximum
number
of
tables
in
a
join
MySQL
uses
algorithms
that
are
very
scalable
so
you
can
usually
run
with
very
little
memory
or
give
MySQL
more
memory
to
get
better
performance
If
you
have
much
memory
and
many
tables
and
want
maximum
performance
with
a
moderate
number
of
clients
you
should
use
something
like
this
shell
safe
mysqld
O
key
buffer
16M
O
table
cache
128
O
sort
buffer
4M
O
record
buffer
1M
If
you
have
little
memory
and
lots
of
connections
use
something
like
this
shell
safe
mysqld
O
key
buffer
512k
O
sort
buffer
100k
O
record
buffer
100k
or
even
shell
safe
mysqld
O
key
buffer
512k
O
sort
buffer
16k
O
table
cache
32
O
record
buffer
8k
O
net
buffer
1K
If
there
are
very
many
connections
swapping
problems
may
occur
unless
mysqld
has
been
configured
to
use
very
little
memory
for
each
connection
mysqld
performs
better
if
you
have
enough
memory
for
all
connections
of
course
Note
that
if
you
change
an
option
to
mysqld
it
remains
in
effect
only
for
that
instance
of
the
server
To
see
the
effects
of
a
parameter
change
do
something
like
this
shell
mysqld
O
key
buffer
32m
help
Make
sure
that
the
help
option
is
last
otherwise
the
effect
of
any
options
listed
after
it
on
the
command
line
will
not
be
reflected
in
the
output
669
10
2
How
MySQL
uses
memory
The
list
below
indicates
some
of
the
ways
that
the
mysqld
server
uses
memory
Where
applicable
the
name
of
the
server
variable
relevant
to
the
memory
use
is
given
The
key
buffer
variable
key
buffer
is
shared
by
all
threads
Other
buffers
used
by
the
server
are
allocated
as
needed
Each
connection
uses
some
thread
specific
space
A
stack
64K
variable
thread
stack
a
connection
buffer
variable
net
buffer
length
and
a
result
buffer
variable
net
buffer
length
The
connection
buffer
and
result
buffer
are
dynamicly
enlarged
up
to
max
allowed
packet
when
needed
When
a
query
is
running
a
copy
of
the
current
query
string
is
also
alloced
All
threads
share
the
same
base
memory
Nothing
is
memory
mapped
yet
except
compressed
tables
but
that
s
another
story
This
is
because
the
32
bit
memory
space
of
4GB
is
not
large
enough
for
most
large
tables
When
we
get
a
system
with
a
64
bit
address
space
we
may
add
general
support
for
memory
mapping
Each
request
doing
a
sequential
scan
over
a
table
allocates
a
read
buffer
variable
record
buffer
All
joins
are
done
in
one
pass
and
most
joins
can
be
done
without
even
using
a
temporary
table
Most
temporary
tables
are
memory
based
HEAP
tables
Temporary
tables
with
a
big
record
length
calculated
as
the
sum
of
all
column
lengths
or
that
contain
BLOB
columns
are
stored
on
disk
One
current
problem
is
that
if
a
HEAP
table
exceeds
the
size
of
tmp
table
size
you
get
the
error
The
table
tbl
name
is
full
In
the
future
we
will
fix
this
by
automatically
changing
the
in
memory
HEAP
table
to
a
disk
based
NISAM
table
as
necessary
To
work
around
this
problem
you
can
increase
the
temporary
table
size
by
setting
the
tmp
table
size
option
to
mysqld
or
by
setting
the
SQL
option
SQL
BIG
TABLES
in
the
client
program
See
section
670
7
24
SET
OPTION
syntax
In
MySQL
3
20
the
maximum
size
of
the
temporary
table
was
record
buffer
16
so
if
you
are
using
this
version
you
have
to
increase
the
value
of
record
buffer
You
can
also
start
mysqld
with
the
big
tables
option
to
always
store
temporary
tables
on
disk
however
this
will
affect
the
speed
of
all
complicated
queries
Most
requests
doing
a
sort
allocate
a
sort
buffer
and
one
or
two
temporary
files
See
section
671
17
5
Where
MySQL
stores
temporary
files
Almost
all
parsing
and
calculating
is
done
in
a
local
memory
store
No
memory
overhead
is
needed
for
small
items
and
the
normal
slow
memory
allocation
and
freeing
is
avoided
Memory
is
allocated
only
for
unexpectedly
large
strings
this
is
done
with
malloc
and
free
Each
index
file
is
opened
once
and
the
data
file
is
opened
once
for
each
concurrently
running
thread
For
each
concurrent
thread
a
table
structure
column
structures
for
each
column
and
a
buffer
of
size
3
n
is
allocated
where
n
is
the
maximum
row
length
not
counting
BLOB
columns
A
BLOB
uses
5
to
8
bytes
plus
the
length
of
the
BLOB
data
For
each
table
having
BLOB
columns
a
buffer
is
enlarged
dynamically
to
read
in
larger
BLOB
values
If
you
scan
a
table
a
buffer
as
large
as
the
largest
BLOB
value
is
allocated
Table
handlers
for
all
in
use
tables
are
saved
in
a
cache
and
managed
as
a
FIFO
Normally
the
cache
has
64
entries
If
a
table
has
been
used
by
two
running
threads
at
the
same
time
the
cache
contains
two
entries
for
the
table
See
section
672
10
7
How
MySQL
opens
and
closes
tables
A
mysqladmin
flush
tables
command
closes
all
tables
that
are
not
in
use
and
marks
all
in
use
tables
to
be
closed
when
the
currently
executing
thread
finishes
This
will
effectively
free
most
in
use
memory
ps
and
other
system
status
programs
may
report
that
mysqld
uses
a
lot
of
memory
This
may
be
caused
by
thread
stacks
on
different
memory
addresses
For
example
the
Solaris
version
of
ps
counts
the
unused
memory
between
stacks
as
used
memory
You
can
verify
this
by
checking
available
swap
with
swap
s
We
have
tested
mysqld
with
commercial
memory
leakage
detectors
so
there
should
be
no
memory
leaks
673
10
3
How
compiling
and
linking
affects
the
speed
of
MySQL
Most
of
the
following
tests
are
done
on
Linux
and
with
the
MySQL
benchmarks
but
they
should
give
some
indication
for
other
operating
systems
You
get
the
fastest
executable
when
you
link
with
static
Using
Unix
sockets
rather
than
TCP
IP
to
connect
to
a
database
also
gives
better
performance
On
Linux
you
will
get
the
fastest
code
when
compiling
with
pgcc
and
O6
To
compile
sql
yacc
cc
with
these
options
you
need
180M
memory
because
gcc
pgcc
needs
a
lot
of
memory
to
make
all
functions
inline
You
should
also
set
CXX
gcc
when
configuring
MySQL
to
avoid
inclusion
of
the
libstdc
library
If
you
use
pgcc
and
compile
everything
with
O6
the
mysqld
server
is
11
faster
than
with
gcc
If
you
link
dynamically
without
static
the
result
is
13
slower
If
you
connect
using
TCP
IP
rather
than
Unix
sockets
the
result
is
7
5
slower
On
a
Sun
SPARCstation
10
gcc
2
7
3
is
13
faster
than
Sun
Pro
C
4
2
On
Solaris
2
5
1
MIT
pthreads
is
8
12
slower
than
Solaris
native
threads
The
MySQL
Linux
distribution
provided
by
TcX
is
compiled
with
pgcc
and
linked
statically
674
10
4
How
MySQL
uses
indexes
All
indexes
PRIMARY
UNIQUE
and
INDEX
are
stored
in
B
trees
Strings
are
automatically
prefix
and
end
space
compressed
See
section
675
7
26
CREATE
INDEX
syntax
Indexes
are
used
to
Quickly
find
the
rows
that
match
a
WHERE
clause
Retrieve
rows
from
other
tables
when
performing
joins
Find
the
MAX
or
MIN
value
for
a
specific
key
Sort
or
group
a
table
if
the
sorting
or
grouping
is
done
on
a
leftmost
prefix
of
a
usable
key
e
g
ORDER
BY
key
part
1
key
part
2
The
key
is
read
in
reverse
order
if
all
key
parts
are
followed
by
DESC
Retrieve
values
without
consulting
the
data
file
in
some
cases
If
all
used
columns
for
some
table
are
numeric
and
form
a
leftmost
prefix
for
some
key
the
values
may
be
retrieved
from
the
index
tree
for
greater
speed
Suppose
you
issue
the
following
SELECT
statement
mysql
SELECT
FROM
tbl
name
WHERE
col1
val1
AND
col2
val2
If
a
multiple
column
index
exists
on
col1
and
col2
the
appropriate
rows
can
be
fetched
directly
If
separate
single
column
indexes
exist
on
col1
and
col2
the
optimizer
decides
which
index
will
find
fewer
rows
and
uses
that
index
to
fetch
the
rows
If
the
table
has
a
multiple
column
index
any
leftmost
prefix
of
the
index
can
be
used
by
the
optimizer
to
find
rows
For
example
if
you
have
a
three
column
index
on
col1
col2
col3
you
have
indexed
search
capabilities
on
col1
col1
col2
and
col1
col2
col3
MySQL
can
t
use
a
partial
index
if
the
columns
don
t
form
a
leftmost
prefix
of
the
index
Suppose
you
have
the
SELECT
statements
shown
below
mysql
SELECT
FROM
tbl
name
WHERE
col1
val1
mysql
SELECT
FROM
tbl
name
WHERE
col2
val2
mysql
SELECT
FROM
tbl
name
WHERE
col2
val2
AND
col3
val3
If
an
index
exists
on
col1
col2
col3
only
the
first
query
shown
above
uses
the
index
The
second
and
third
queries
do
involve
indexed
columns
but
col2
and
col2
col3
are
not
leftmost
prefixes
of
col1
col2
col3
MySQL
also
uses
indexes
for
LIKE
comparisons
if
the
argument
to
LIKE
is
a
constant
string
that
doesn
t
start
with
a
wildcard
character
For
example
the
following
SELECT
statements
use
indexes
mysql
select
from
tbl
name
where
key
col
LIKE
Patrick
mysql
select
from
tbl
name
where
key
col
LIKE
Pat
ck
In
the
first
statement
only
rows
with
Patrick
key
col
Patricl
are
considered
In
the
second
statement
only
rows
with
Pat
key
col
Pau
are
considered
The
following
SELECT
statements
will
not
use
indexes
mysql
select
from
tbl
name
where
key
col
LIKE
Patrick
mysql
select
from
tbl
name
where
key
col
LIKE
other
col
In
the
first
statement
the
LIKE
value
begins
with
a
wildcard
character
In
the
second
statement
the
LIKE
value
is
not
a
constant
MySQL
normally
uses
the
index
that
finds
least
number
of
rows
An
index
is
used
for
columns
that
you
compare
with
the
following
operators
BETWEEN
and
a
LIKE
with
a
non
wildcard
prefix
like
something
Any
index
that
doesn
t
span
all
AND
levels
in
the
WHERE
clause
is
not
used
to
optimize
the
query
The
following
WHERE
clauses
use
indexes
WHERE
index
part1
1
AND
index
part2
2
WHERE
index
1
OR
A
10
AND
index
2
index
1
OR
index
2
WHERE
index
part1
hello
AND
index
part
3
5
optimized
like
index
part1
hello
These
WHERE
clauses
do
NOT
use
indexes
WHERE
index
part2
1
AND
index
part3
2
index
part
1
is
not
used
WHERE
index
1
OR
A
10
No
index
WHERE
index
part1
1
OR
index
part2
10
No
index
spans
all
rows
676
10
5
How
MySQL
optimizes
WHERE
clauses
This
section
is
incomplete
MySQL
does
many
optimizations
In
general
when
you
want
to
make
a
slow
SELECT
WHERE
faster
the
first
thing
to
check
is
whether
or
not
you
can
add
an
index
All
references
between
different
tables
should
usually
be
done
with
indexes
You
can
use
the
EXPLAIN
command
to
determine
which
indexes
are
used
for
a
SELECT
See
section
677
7
21
EXPLAIN
syntax
Get
information
about
a
SELECT
Some
of
the
optimizations
performed
by
MySQL
are
listed
below
Removal
of
unnecessary
parentheses
a
AND
b
AND
c
OR
a
AND
b
AND
c
AND
d
a
AND
b
AND
c
OR
a
AND
b
AND
c
AND
d
Constant
folding
a
b
AND
b
c
AND
a
5
b
5
AND
b
c
AND
a
5
Constant
condition
removal
needed
because
of
constant
folding
B
5
AND
B
5
OR
B
6
AND
5
5
OR
B
7
AND
5
6
B
5
OR
B
6
Constant
expressions
used
by
indexes
are
evaluated
only
once
COUNT
on
a
single
table
without
a
WHERE
is
retrieved
directly
from
the
table
information
This
is
also
done
for
any
NOT
NULL
expression
when
used
with
only
one
table
Early
detection
of
invalid
constant
expressions
MySQL
quickly
detects
that
some
SELECT
statements
are
impossible
and
returns
no
rows
HAVING
is
merged
with
WHERE
if
you
don
t
use
GROUP
BY
or
group
functions
COUNT
MIN
For
each
sub
join
a
simpler
WHERE
is
constructed
to
get
a
fast
WHERE
evaluation
for
each
sub
join
and
also
to
skip
records
as
soon
as
possible
All
constant
tables
are
read
first
before
any
other
tables
in
the
query
A
constant
table
is
An
empty
table
or
a
table
with
1
row
A
table
that
is
used
with
a
WHERE
clause
on
a
UNIQUE
index
or
a
PRIMARY
KEY
where
all
index
parts
are
used
with
constant
expressions
All
the
following
tables
are
used
as
constant
tables
mysql
SELECT
FROM
t
WHERE
primary
key
1
mysql
SELECT
FROM
t1
t2
WHERE
t1
primary
key
1
AND
t2
primary
key
t1
id
The
best
join
combination
to
join
the
tables
is
found
by
trying
all
possibilities
If
all
columns
in
ORDER
BY
and
in
GROUP
BY
come
from
the
same
table
then
this
table
is
preferred
first
when
joining
If
there
is
an
ORDER
BY
clause
and
a
different
GROUP
BY
clause
or
if
the
ORDER
BY
or
GROUP
BY
contains
columns
from
tables
other
than
the
first
table
in
the
join
queue
a
temporary
table
is
created
If
you
use
SQL
SMALL
RESULT
MySQL
will
use
an
in
memory
temporary
table
As
DISTINCT
is
converted
to
a
GROUP
BY
on
all
columns
DISTINCT
combined
with
ORDER
BY
will
in
many
cases
also
need
a
temporary
table
Each
table
index
is
queried
and
the
best
index
that
spans
less
than
30
of
the
rows
is
used
If
no
such
index
can
be
found
a
quick
table
scan
is
used
In
some
cases
MySQL
can
read
rows
from
the
index
without
even
consulting
the
data
file
If
all
columns
used
from
the
index
are
numeric
then
only
the
index
tree
is
used
to
resolve
the
query
Before
each
record
is
output
those
that
do
not
match
the
HAVING
clause
are
skipped
Some
examples
of
queries
that
are
very
fast
mysql
SELECT
COUNT
FROM
tbl
name
mysql
SELECT
MIN
key
part1
MAX
key
part1
FROM
tbl
name
mysql
SELECT
MAX
key
part2
FROM
tbl
name
WHERE
key
part
1
constant
mysql
SELECT
FROM
tbl
name
ORDER
BY
key
part1
key
part2
LIMIT
10
mysql
SELECT
FROM
tbl
name
ORDER
BY
key
part1
DESC
key
part2
DESC
LIMIT
10
The
following
queries
are
resolved
using
only
the
index
tree
assuming
the
indexed
columns
are
numeric
mysql
SELECT
key
part1
key
part2
FROM
tbl
name
WHERE
key
part1
val
mysql
SELECT
COUNT
FROM
tbl
name
WHERE
key
part1
val1
AND
key
part2
val2
mysql
SELECT
key
part2
FROM
tbl
name
GROUP
BY
key
part1
The
following
queries
use
indexing
to
retrieve
the
rows
in
sorted
order
without
a
separate
sorting
pass
mysql
SELECT
FROM
tbl
name
ORDER
BY
key
part1
key
part2
mysql
SELECT
FROM
tbl
name
ORDER
BY
key
part1
DESC
key
part2
DESC
678
10
6
How
MySQL
optimizes
LEFT
JOIN
A
LEFT
JOIN
B
is
in
MySQL
implemented
as
follows
The
table
B
is
set
to
be
dependent
on
table
A
The
table
A
is
set
to
be
dependent
on
all
tables
except
B
that
are
used
in
the
LEFT
JOIN
condition
All
LEFT
JOIN
conditions
are
moved
to
the
WHERE
clause
All
standard
join
optimizations
are
done
with
the
exception
that
a
table
is
always
read
after
all
tables
it
is
dependent
on
If
there
is
a
circular
dependence
then
MySQL
will
issue
an
error
All
standard
WHERE
optimzations
are
done
If
there
is
a
row
in
A
that
matches
the
WHERE
clause
but
there
wasn
t
any
row
in
B
that
matched
the
LEFT
JOIN
condition
then
an
extra
B
row
is
generated
with
all
columns
set
to
NULL
679
10
7
How
MySQL
opens
and
closes
tables
The
cache
of
open
tables
can
grow
to
a
maximum
of
table
cache
default
64
this
can
be
changed
with
with
the
O
table
cache
option
to
mysqld
A
table
is
never
closed
except
when
the
cache
is
full
and
another
thread
tries
to
open
a
table
or
if
you
use
mysqladmin
refresh
or
mysqladmin
flush
tables
When
the
table
cache
fills
up
the
server
uses
the
following
procedure
to
locate
a
cache
entry
to
use
Tables
that
are
not
currently
in
use
are
released
in
least
recently
used
order
If
the
cache
is
full
and
no
tables
can
be
released
but
a
new
table
needs
to
be
opened
the
cache
is
temporarily
extended
as
necessary
If
the
cache
is
in
a
temporarily
extended
state
and
a
table
goes
from
in
use
to
not
in
use
state
it
is
closed
and
released
from
the
cache
A
table
is
opened
for
each
concurrent
access
This
means
that
if
you
have
two
threads
accessing
the
same
table
or
access
the
table
twice
in
the
same
query
with
AS
the
table
needs
to
be
opened
twice
The
first
open
of
any
table
takes
two
file
descriptors
each
additional
use
of
the
table
takes
only
one
file
descriptor
The
extra
descriptor
for
the
first
open
is
used
for
the
index
file
this
descriptor
is
shared
among
all
threads
680
10
7
1
Drawbacks
of
creating
large
numbers
of
tables
in
a
database
If
you
have
many
files
in
a
directory
open
close
and
create
operations
will
be
slow
If
you
execute
SELECT
statements
on
many
different
tables
there
will
be
a
little
overhead
when
the
table
cache
is
full
because
for
every
table
that
has
to
be
opened
another
must
be
closed
You
can
reduce
this
overhead
by
making
the
table
cache
larger
681
10
8
Why
so
many
open
tables
When
you
run
mysqladmin
status
you
ll
see
something
like
this
Uptime
426
Running
threads
1
Questions
11082
Reloads
1
Open
tables
12
This
can
be
somewhat
perplexing
if
you
only
have
6
tables
MySQL
is
multithreaded
so
it
may
have
many
queries
on
the
same
table
simultaneously
To
minimize
the
problem
with
two
threads
having
different
states
on
the
same
file
the
table
is
opened
independently
by
each
concurrent
thread
This
takes
some
memory
and
one
extra
file
descriptor
for
the
data
file
The
index
file
descriptor
is
shared
between
all
threads
682
10
9
Using
symbolic
links
for
databases
and
tables
You
can
move
tables
and
databases
from
the
database
directory
to
other
locations
and
replace
them
with
symbolic
links
to
the
new
locations
You
might
want
to
do
this
for
example
to
move
a
database
to
a
file
system
with
more
free
space
If
MySQL
notices
that
a
table
is
a
symbolically
linked
it
will
resolve
the
symlink
and
use
the
table
it
points
to
instead
This
works
on
all
systems
that
support
the
realpath
call
at
least
Linux
and
Solaris
support
realpath
On
systems
that
don
t
support
realpath
you
should
not
access
the
table
through
the
real
path
and
through
the
symlink
at
the
same
time
If
you
do
the
table
will
be
inconsistent
after
any
update
MySQL
doesn
t
support
linking
of
databases
by
default
Things
will
work
fine
as
long
as
you
don
t
make
a
symbolic
link
between
databases
Suppose
you
have
a
database
db1
under
the
MySQL
data
directory
and
then
make
a
symlink
db2
that
points
to
db1
shell
cd
path
to
datadir
shell
ln
s
db1
db2
Now
for
any
table
tbl
a
in
db1
there
also
appears
to
be
a
table
tbl
a
in
db2
If
one
thread
updates
db1
tbl
a
and
another
thread
updates
db2
tbl
a
there
will
be
problems
If
you
really
need
this
you
must
change
the
following
code
in
mysys
mf
format
c
if
lstat
to
stat
buff
Check
if
it
s
a
symbolic
link
if
S
ISLNK
stat
buff
st
mode
realpath
to
buff
Change
the
code
to
this
if
realpath
to
buff
683
10
10
How
MySQL
locks
tables
All
locking
in
MySQL
is
deadlock
free
This
is
managed
by
always
requesting
all
needed
locks
at
once
at
the
beginning
of
a
query
and
always
locking
the
tables
in
the
same
order
The
locking
method
MySQL
uses
for
WRITE
locks
works
as
follows
If
there
are
no
locks
on
the
table
put
a
write
lock
on
it
Otherwise
put
the
lock
request
in
the
write
lock
queue
The
locking
method
MySQL
uses
for
READ
locks
works
as
follows
If
there
are
no
write
locks
on
the
table
put
a
read
lock
on
it
Otherwise
put
the
lock
request
in
the
read
lock
queue
When
a
lock
is
released
the
lock
is
made
available
to
the
threads
in
the
write
lock
queue
then
to
the
threads
in
the
read
lock
queue
This
means
that
if
you
have
many
updates
on
a
table
SELECT
statements
will
wait
until
there
are
no
more
updates
To
work
around
this
for
the
case
where
you
want
to
do
many
INSERT
and
SELECT
operations
on
a
table
you
can
insert
rows
in
a
temporary
table
and
update
the
real
table
with
the
records
from
the
temporary
table
once
in
a
while
This
can
be
done
with
the
following
code
mysql
LOCK
TABLES
real
table
WRITE
insert
table
WRITE
mysql
insert
into
real
table
select
from
insert
table
mysql
delete
from
insert
table
mysql
UNLOCK
TABLES
You
can
use
the
LOW
PRIORITY
or
HIGH
PRIORITY
options
with
INSERT
if
you
want
to
prioritize
retrieval
in
some
specific
cases
See
section
684
7
13
INSERT
syntax
You
could
also
change
the
locking
code
in
mysys
thr
lock
c
to
use
a
single
queue
In
this
case
write
locks
and
read
locks
would
have
the
same
priority
which
might
help
some
applications
685
10
11
How
to
arrange
a
table
to
be
as
fast
small
as
possible
You
can
get
better
performance
on
a
table
and
minimize
storage
space
using
the
techniques
listed
below
Declare
columns
to
be
NOT
NULL
if
possible
It
makes
everything
faster
and
you
save
one
bit
per
column
Take
advantage
of
the
fact
that
all
columns
have
default
values
Insert
values
explicitly
only
when
the
value
to
be
inserted
differs
from
the
default
You
don
t
have
to
insert
a
value
into
the
first
TIMESTAMP
column
or
into
an
AUTO
INCREMENT
column
in
an
INSERT
statement
See
section
686
19
4
28
mysql
insert
id
Use
the
smaller
integer
types
if
possible
to
get
smaller
tables
For
example
MEDIUMINT
is
often
better
than
INT
If
you
don
t
have
any
variable
length
columns
VARCHAR
TEXT
or
BLOB
columns
a
fixed
size
record
format
is
used
This
is
much
faster
but
unfortunately
may
waste
some
space
See
section
687
10
16
What
are
the
different
row
formats
Or
when
should
VARCHAR
CHAR
be
used
To
help
MySQL
optimize
queries
better
run
isamchk
analyze
on
a
table
after
it
has
been
loaded
with
relevant
data
This
updates
a
value
for
each
index
that
indicates
the
average
number
of
rows
that
have
the
same
value
For
unique
indexes
this
is
always
1
of
course
To
sort
an
index
and
data
according
to
an
index
use
isamchk
sort
index
sort
records
1
if
you
want
to
sort
on
index
1
If
you
have
a
unique
index
from
which
you
want
to
read
all
records
in
order
according
to
that
index
this
is
a
good
way
to
make
that
faster
Note
however
that
this
sorting
isn
t
written
optimally
and
will
take
a
long
time
for
a
large
table
For
INSERT
statements
use
multiple
value
lists
if
possible
This
is
much
faster
than
using
separate
INSERT
statements
When
loading
a
table
with
data
use
LOAD
DATA
INFILE
This
is
usually
20
times
faster
than
using
a
lot
of
INSERT
statements
See
section
688
7
15
LOAD
DATA
INFILE
syntax
You
can
even
get
more
speed
when
loading
data
into
a
table
with
many
indexes
using
the
following
procedure
1
Create
the
table
in
mysql
or
Perl
with
CREATE
TABLE
2
Execute
mysqladmin
flush
tables
3
Use
isamchk
keys
used
0
rq
path
to
db
tbl
name
This
will
remove
all
usage
of
all
indexes
from
the
table
4
Insert
data
into
the
table
with
LOAD
DATA
INFILE
5
If
you
have
pack
isam
and
want
to
compress
the
table
run
pack
isam
on
it
6
Recreate
the
indexes
with
isamchk
r
q
path
to
db
tbl
name
7
Execute
mysqladmin
flush
tables
To
get
some
more
speed
for
both
LOAD
DATA
INFILE
and
INSERT
enlarge
the
key
buffer
This
can
be
done
with
the
O
key
buffer
option
to
mysqld
or
safe
mysqld
For
example
16M
should
be
a
good
value
if
you
have
much
RAM
When
dumping
data
as
text
files
for
use
by
other
programs
use
SELECT
INTO
OUTFILE
See
section
689
7
15
LOAD
DATA
INFILE
syntax
When
doing
many
successive
inserts
or
updates
you
can
get
more
speed
by
locking
your
tables
using
LOCK
TABLES
LOAD
DATA
INFILE
and
SELECT
INTO
OUTFILE
are
atomic
so
you
don
t
have
to
use
LOCK
TABLES
when
using
them
See
section
690
7
23
LOCK
TABLES
UNLOCK
TABLES
syntax
To
check
how
fragmented
your
tables
are
run
isamchk
evi
on
the
ISM
file
See
section
691
13
Maintaining
a
MySQL
installation
692
10
12
Table
locking
issues
The
table
locking
code
in
MySQL
is
deadlock
free
MySQL
uses
table
locking
instead
of
row
locking
or
column
locking
to
achieve
a
very
high
lock
speed
For
large
tables
table
locking
is
MUCH
better
than
row
locking
but
there
are
of
course
some
pitfalls
Table
locking
enables
many
threads
to
read
from
a
table
at
the
same
time
but
if
a
thread
wants
to
write
to
a
table
it
must
first
get
exclusive
access
During
the
update
all
others
threads
that
want
to
access
this
particular
table
will
wait
until
the
update
is
ready
As
updates
of
databases
normally
are
considered
to
be
more
important
than
SELECT
all
statements
that
update
a
table
have
higher
priority
than
statements
that
retrieve
information
from
a
table
This
should
ensure
that
updates
are
not
starved
because
one
issues
a
lot
of
heavy
queries
against
a
specific
table
One
main
problem
with
this
is
the
following
A
client
issues
a
SELECT
that
takes
a
long
time
to
run
Another
client
then
issues
an
INSERT
on
a
used
table
This
client
will
wait
until
the
SELECT
is
finished
Another
client
issues
another
SELECT
statement
on
the
same
table
As
INSERT
has
higher
priority
than
SELECT
this
SELECT
will
wait
for
the
INSERT
to
finish
It
will
also
wait
for
the
first
SELECT
to
finish
Some
possible
solutions
to
this
problem
are
Try
to
get
the
SELECT
statements
to
run
faster
You
may
have
to
create
some
summary
tables
to
do
this
Start
mysqld
with
low
priority
inserts
This
will
give
all
statements
that
update
a
table
lower
priority
than
a
SELECT
statement
In
this
case
the
last
SELECT
statement
in
the
previous
scenario
would
execute
before
the
INSERT
statement
You
can
give
a
specific
INSERT
UPDATE
or
DELETE
statement
lower
priority
with
the
LOW
PRIORITY
attribute
You
can
specify
that
all
updates
from
a
specific
thread
should
be
done
with
low
priority
by
using
the
SQL
command
SET
SQL
LOW
PRIORITY
UPDATES
1
See
section
693
7
24
SET
OPTION
syntax
You
can
specify
that
a
specific
SELECT
is
very
important
with
the
HIGH
PRIORITY
attribute
See
section
694
7
11
SELECT
syntax
If
you
mainly
mix
INSERT
and
SELECT
statements
the
DELAYED
attribute
to
INSERT
will
probably
solve
your
problems
See
section
695
7
13
INSERT
syntax
If
you
have
problems
with
SELECT
and
DELETE
the
LIMIT
option
to
DELETE
may
help
See
section
696
7
10
DELETE
syntax
697
10
13
Factors
affecting
the
speed
of
INSERT
statements
The
time
to
insert
a
record
consists
of
Connect
3
Sending
query
to
server
2
Parsing
query
2
Inserting
record
1
x
size
of
record
Inserting
indexes
1
x
indexes
Close
1
Where
number
is
proportional
time
This
does
not
take
into
consideration
the
initial
overhead
to
open
tables
which
is
done
once
for
each
concurrently
running
query
The
size
of
the
table
slows
down
the
insertion
of
indexes
by
N
log
N
B
trees
You
can
speed
up
insertions
by
locking
your
table
and
or
using
multiple
value
lists
with
INSERT
statements
Using
multiple
value
lists
can
be
up
to
5
times
faster
than
using
separate
inserts
mysql
LOCK
TABLES
a
WRITE
mysql
INSERT
INTO
a
VALUES
1
23
2
34
4
33
mysql
INSERT
INTO
a
VALUES
8
26
6
29
mysql
UNLOCK
TABLES
The
main
speed
difference
is
that
the
index
buffer
is
flushed
to
disk
only
once
after
all
INSERT
statements
have
completed
Normally
there
would
be
as
many
index
buffer
flushes
as
there
are
different
INSERT
statements
Locking
is
not
needed
if
you
can
insert
all
rows
with
a
single
statement
Locking
will
also
lower
the
total
time
of
multi
connection
tests
but
the
maximum
wait
time
for
some
threads
will
go
up
because
they
wait
for
locks
For
example
thread
1
does
1000
inserts
thread
2
3
and
4
does
1
insert
thread
5
does
1000
inserts
If
you
don
t
use
locking
2
3
and
4
will
finish
before
1
and
5
If
you
use
locking
2
3
and
4
probably
will
not
finish
before
1
or
5
but
the
total
time
should
be
about
40
faster
As
INSERT
UPDATE
and
DELETE
operations
are
very
fast
in
MySQL
you
will
obtain
better
overall
performance
by
adding
locks
around
everything
that
does
more
than
about
5
inserts
or
updates
in
a
row
If
you
do
very
many
inserts
in
a
row
you
could
do
a
LOCK
TABLES
followed
by
a
UNLOCK
TABLES
once
in
a
while
about
each
1000
rows
to
allow
other
threads
access
to
the
table
This
would
still
result
in
a
nice
performance
gain
Of
course
LOAD
DATA
INFILE
is
much
faster
still
If
you
are
inserting
a
lot
of
rows
from
different
clients
you
can
get
higher
speed
by
using
the
INSERT
DELAYED
statement
See
section
698
7
13
INSERT
syntax
699
10
14
Factors
affecting
the
speed
of
DELETE
statements
The
time
to
delete
a
record
is
exactly
proportional
to
the
number
of
indexes
To
delete
records
more
quickly
you
can
increase
the
size
of
the
index
cache
The
default
index
cache
is
1M
to
get
faster
deletes
it
should
be
increased
by
several
factors
try
16M
if
you
have
enough
memory
700
10
15
How
do
I
get
MySQL
to
run
at
full
speed
Start
by
benchmarking
your
problem
You
can
take
any
program
from
the
MySQL
benchmark
suite
normally
found
in
the
sql
bench
directory
and
modify
it
for
your
needs
By
doing
this
you
can
try
different
solutions
to
your
problem
and
test
which
is
really
the
fastest
solution
for
you
Start
mysqld
with
the
correct
options
More
memory
gives
more
speed
if
you
have
it
See
section
701
10
1
Tuning
server
parameters
Create
indexes
to
make
your
SELECT
statements
faster
See
section
702
10
4
How
MySQL
uses
indexes
Optimize
your
column
types
to
be
as
efficient
as
possible
For
example
declere
columns
to
be
NOT
NULL
if
possible
See
section
703
10
11
How
to
arrange
a
table
to
be
as
fast
small
as
possible
MySQL
has
two
different
levels
of
locks
Internal
locks
and
external
locks
The
internal
locks
ensures
that
all
update
retrieve
operations
are
atomic
run
without
conflicts
from
other
clients
The
external
locks
allows
multiple
MySQL
servers
to
run
on
the
same
data
and
allows
you
to
use
isamchk
to
check
tables
without
taking
down
mysqld
The
skip
locking
option
disables
external
locking
file
locking
between
SQL
requests
This
gives
greater
speed
but
has
the
following
consequences
You
MUST
flush
all
tables
with
mysqladmin
flush
tables
before
you
try
to
check
or
repair
tables
with
isamchk
isamchk
d
tbl
name
is
always
allowed
since
that
simply
displays
table
information
You
can
t
run
two
MySQL
servers
on
the
same
data
files
if
both
are
going
to
update
the
same
tables
The
skip
locking
option
is
on
by
default
when
compiling
with
MIT
pthreads
because
flock
isn
t
fully
supported
by
MIT
pthreads
on
all
platforms
The
only
case
when
you
can
t
use
skip
locking
is
if
you
run
multiple
MySQL
SERVERS
not
clients
on
the
same
data
or
run
isamchk
on
the
table
without
first
flushing
the
mysqld
server
tables
first
You
can
still
use
LOCK
TABLES
UNLOCK
TABLES
even
if
you
are
using
skip
locking
If
updates
are
a
problem
you
can
delay
updates
and
then
do
many
updates
in
a
row
later
Doing
many
updates
in
a
row
is
much
quicker
than
doing
one
at
a
time
On
FreeBSD
systems
if
the
problem
is
with
MIT
pthreads
upgrading
to
FreeBSD
3
0
or
higher
should
help
This
makes
it
possible
to
use
Unix
sockets
with
FreeBSD
this
is
quicker
than
connecting
using
TCP
IP
with
MIT
pthreads
and
the
threads
package
is
much
more
integrated
GRANT
checking
on
the
table
or
column
level
will
decrease
performance
If
your
problem
is
with
some
explicit
MySQL
function
you
can
always
time
this
in
the
MySQL
client
mysql
select
benchmark
1000000
1
1
benchmark
1000000
1
1
0
1
row
in
set
0
32
sec
The
above
shows
that
MySQL
can
execute
1
000
000
expressions
in
0
32
seconds
on
a
simple
PentiumII
400MHz
All
MySQL
functions
should
be
very
optimized
but
there
may
be
some
exceptions
and
the
benchmark
loop
count
expression
is
a
great
tool
to
find
if
this
is
a
problem
with
your
query
704
10
16
What
are
the
different
row
formats
Or
when
should
VARCHAR
CHAR
be
used
MySQL
dosen
t
have
true
SQL
VARCHAR
types
Instead
MySQL
has
three
different
ways
to
store
records
and
uses
these
to
emulate
VARCHAR
If
a
table
doesn
t
have
any
VARCHAR
BLOB
or
TEXT
columns
a
fixed
row
size
is
used
Otherwise
a
dynamic
row
size
is
used
CHAR
and
VARCHAR
columns
are
treated
identically
from
the
application
s
point
of
view
both
have
trailing
spaces
removed
when
the
columns
are
retrieved
You
can
check
the
format
used
in
a
table
with
isamchk
d
d
means
describe
the
table
MySQL
has
three
different
table
formats
fixed
length
dynamic
and
compressed
These
are
compared
below
Fixed
length
tables
This
is
the
default
format
It
s
used
when
the
table
contains
no
VARCHAR
BLOB
or
TEXT
columns
All
CHAR
NUMERIC
and
DECIMAL
columns
are
space
padded
to
the
column
width
Very
quick
Easy
to
cache
Easy
to
reconstruct
after
a
crash
because
records
are
located
in
fixed
positions
Doesn
t
have
to
be
reorganized
with
isamchk
unless
a
huge
number
of
records
are
deleted
and
you
want
to
return
free
disk
space
to
the
operating
system
Usually
requires
more
disk
space
than
dynamic
tables
Dynamic
tables
This
format
is
used
if
the
table
contains
any
VARCHAR
BLOB
or
TEXT
columns
All
string
columns
are
dynamic
except
those
with
a
length
less
than
4
Each
record
is
preceded
by
a
bitmap
indicating
which
columns
are
empty
for
string
columns
or
zero
for
numeric
columns
this
isn
t
the
same
as
columns
containing
NULL
values
If
a
string
column
has
a
length
of
zero
after
removal
of
trailing
spaces
or
a
numeric
column
has
a
value
of
zero
it
is
marked
in
the
bit
map
and
not
saved
to
disk
Non
empty
strings
are
saved
as
a
length
byte
plus
the
string
contents
Usually
takes
much
less
disk
space
than
fixed
length
tables
Each
record
uses
only
as
much
space
as
is
required
If
a
record
becomes
larger
it
is
split
into
as
many
pieces
as
required
This
results
in
record
fragmentation
If
you
update
a
row
with
information
that
extends
the
row
length
the
row
will
be
fragmented
In
this
case
you
may
have
to
run
isamchk
r
from
time
to
time
to
get
better
performance
Use
isamchk
ei
tbl
name
for
some
statistics
Not
as
easy
to
reconstruct
after
a
crash
because
a
record
may
be
fragmented
into
many
pieces
and
a
link
fragment
may
be
missing
The
expected
row
length
for
dynamic
sized
records
is
3
number
of
columns
7
8
number
of
char
columns
packed
size
of
numeric
columns
length
of
strings
number
of
NULL
columns
7
8
There
is
a
penalty
of
6
bytes
for
each
link
A
dynamic
record
is
linked
whenever
an
update
causes
an
enlargement
of
the
record
Each
new
link
will
be
at
least
20
bytes
so
the
next
enlargement
will
probably
go
in
the
same
link
If
not
there
will
be
another
link
You
may
check
how
many
links
there
are
with
isamchk
ed
All
links
may
be
removed
with
isamchk
r
Compressed
tables
A
read
only
table
made
with
the
pack
isam
utility
All
customers
with
extended
MySQL
email
support
are
entitled
to
a
copy
of
pack
isam
for
their
internal
usage
The
uncompress
code
exists
in
all
MySQL
distributions
so
that
even
customers
who
don
t
have
pack
isam
can
read
tables
that
were
compressed
with
pack
isam
as
long
as
the
table
was
compressed
on
the
same
platform
Takes
very
little
disk
space
Minimises
disk
usage
Each
record
is
compressed
separately
very
little
access
overhead
The
header
for
a
record
is
fixed
1
3
bytes
depending
on
the
biggest
record
in
the
table
Each
column
is
compressed
differently
Some
of
the
compression
types
are
There
is
usually
a
different
Huffman
table
for
each
column
Suffix
space
compression
Prefix
space
compression
Numbers
with
value
0
are
stored
using
1
bit
If
values
in
an
integer
column
have
a
small
range
the
column
is
stored
using
the
smallest
possible
type
For
example
a
BIGINT
column
8
bytes
may
be
stored
as
a
TINYINT
column
1
byte
if
all
values
are
in
the
range
0
to
255
If
a
column
has
only
a
small
set
of
possible
values
the
column
type
is
converted
to
ENUM
A
column
may
use
a
combination
of
the
above
compressions
Can
handle
fixed
or
dynamic
length
records
but
not
BLOB
or
TEXT
columns
Can
be
uncompressed
with
isamchk
MySQL
can
support
different
index
types
but
the
normal
type
is
NISAM
This
is
a
B
tree
index
and
you
can
roughly
calculate
the
size
for
the
index
file
as
key
length
4
0
67
summed
over
all
keys
This
is
for
the
worst
case
when
all
keys
are
inserted
in
sorted
order
String
indexes
are
space
compressed
If
the
first
index
part
is
a
string
it
will
also
be
prefix
compressed
Space
compression
makes
the
index
file
smaller
if
the
string
column
has
a
lot
of
trailing
space
or
is
a
VARCHAR
column
that
is
not
always
used
to
the
full
length
Prefix
compression
helps
if
there
are
many
strings
with
an
identical
prefix
705
10
17
MySQL
table
types
Table
types
are
introduced
in
MySQL
3
23
When
you
create
a
new
table
you
can
tell
MySQL
which
table
type
it
should
use
for
the
table
MySQL
will
always
create
a
frm
file
to
hold
the
table
and
column
definitions
Depending
on
the
table
type
the
index
and
data
will
be
stored
in
other
files
You
can
convert
tables
between
different
types
with
the
ALTER
TABLE
statement
See
section
706
7
7
ALTER
TABLE
syntax
ISAM
This
is
the
original
MySQL
table
type
This
uses
a
B
tree
index
The
index
is
stored
in
a
file
with
the
ISM
extension
and
the
data
is
stored
in
file
with
the
ISD
extension
You
can
check
repair
ISAM
tables
with
the
isamchk
utility
See
section
707
13
4
Using
isamchk
for
crash
recovery
ISAM
tables
are
not
binary
portable
across
OS
Platforms
ISAM
has
the
following
features
properties
Compressed
and
fixed
length
keys
Fixed
and
dynamic
record
length
16
keys
with
16
key
parts
key
Max
key
length
256
default
Data
is
stored
in
machine
format
Fast
but
is
machine
OS
dependent
MyISAM
MyISAM
is
the
default
table
type
in
MySQL
3
23
It
s
based
on
the
ISAM
code
and
has
a
lot
of
useful
extensions
The
index
is
stored
in
a
file
with
the
MYI
extension
and
the
data
is
stored
in
file
with
the
MYD
extension
You
can
check
repair
ISAM
tables
with
the
myisamchk
utility
See
section
708
13
4
Using
isamchk
for
crash
recovery
The
following
is
new
in
MyISAM
Supports
for
big
files
63
bit
on
OSes
that
support
big
files
All
data
are
stored
with
low
byte
first
This
makes
the
data
machine
and
OS
independent
All
number
keys
are
stored
with
high
byte
first
to
give
better
compression
Internal
handling
of
one
AUTO
INCREMENT
column
MyISAM
will
automatically
update
this
on
INSERT
UPDATE
The
AUTO
INCREMENT
value
can
be
reset
with
myisamchk
This
will
make
AUTO
INCREMENT
columns
faster
and
old
numbers
will
not
be
reused
Maximum
key
length
is
now
500
by
default
In
cases
of
keys
longer
than
250
a
bigger
key
block
size
than
the
default
of
1024
bytes
is
used
for
this
key
Maximum
number
of
keys
table
enlarged
to
32
as
default
This
can
be
enlarged
to
64
without
having
to
recompile
myisamchk
There
is
a
flag
in
the
MyISAM
file
that
indicates
whether
or
not
the
table
was
closed
correctly
This
will
soon
be
used
for
automatic
repair
in
the
MySQL
server
myisamchk
will
now
mark
tables
as
checked
myisamchk
fast
will
only
check
those
tables
that
don
t
have
this
mark
myisamchk
a
stores
statistics
for
key
parts
and
not
only
for
whole
keys
as
in
NISAM
Dynamic
size
rows
will
now
be
much
less
fragmented
when
mixing
deletes
with
updates
and
inserts
This
is
done
by
automatically
combining
adjacent
deleted
blocks
and
by
extending
blocks
if
the
next
block
is
deleted
myisampack
called
pack
isam
in
NISAM
can
pack
BLOB
and
VARCHARcolumns
MyISAM
also
supports
the
following
things
which
MySQL
will
be
able
to
use
in
the
near
future
BLOB
and
TEXT
columns
can
be
indexed
Support
for
a
true
VARCHAR
type
A
VARCHAR
column
starts
with
a
length
stored
in
2
bytes
Tables
with
VARCHAR
may
have
fixed
or
dynamic
record
length
VARCHAR
and
CHAR
may
be
up
to
64K
All
key
segments
have
their
own
language
definition
This
will
enable
MySQL
to
have
different
language
definitions
per
column
NULL
values
are
allowed
in
indexed
columns
This
takes
0
1
bytes
key
A
hashed
computed
index
can
be
used
for
UNIQUE
This
will
allow
you
to
have
UNIQUE
on
any
combination
of
columns
in
a
table
You
can
t
search
on
a
UNIQUE
computed
index
however
HEAP
HEAP
tables
use
a
hashed
index
and
are
stored
in
memory
This
makes
them
very
fast
but
if
MySQL
crashes
you
will
lose
all
data
stored
in
them
HEAP
is
very
usable
as
temporary
tables
CREATE
TABLE
test
TYPE
HEAP
SELECT
ip
SUM
downloads
as
down
FROM
log
table
GRO
UP
BY
ip
SELECT
COUNT
ip
AVG
down
from
test
drop
table
test
Here
are
some
things
you
should
consider
when
you
use
HEAP
tables
You
should
always
use
specify
MAX
ROWS
in
the
CREATE
statement
to
ensure
that
you
accidently
do
not
use
all
memory
Indexes
will
only
be
used
with
and
but
are
VERY
fast
HEAP
tables
uses
a
fixed
record
length
format
HEAP
doesn
t
support
BLOB
TEXT
columns
HEAP
doesn
t
support
AUTO
INCREMENT
columns
HEAP
doesn
t
support
an
index
on
a
NULL
column
You
can
have
non
unique
keys
in
a
HEAP
table
not
that
normal
with
hashed
tables
HEAP
tables
are
shared
between
all
clients
just
like
any
other
table
Data
for
HEAP
tables
are
allocated
in
small
blocks
The
tables
are
100
dynamic
on
inserting
No
overflow
areas
and
no
extra
key
space
is
needed
Deleted
rows
are
put
in
a
linked
list
and
will
be
reused
when
you
insert
new
data
into
the
table
To
free
memory
you
should
execute
DELETE
FROM
heap
table
or
DROP
TABLE
heap
table
To
ensure
that
you
accidentally
don
t
do
anything
stupid
you
can
t
create
HEAP
tables
bigger
than
max
heap
table
size
709
11
The
MySQL
benchmark
suite
This
should
contain
a
technical
description
of
the
MySQL
benchmark
suite
and
crash
me
but
that
description
is
not
written
yet
Currently
you
should
look
at
the
code
and
results
in
the
bench
directory
in
the
distribution
and
of
course
on
the
web
page
at
710
http
www
mysql
com
crash
me
choose
htmy
It
is
meant
to
be
a
benchmark
that
will
tell
any
user
what
things
a
given
SQL
implementation
performs
well
or
poorly
at
crash
me
tries
to
determine
what
features
a
database
supports
and
what
its
capabilities
and
limitations
are
by
actually
running
queries
For
example
it
determines
What
column
types
are
supported
How
many
indexes
are
supported
What
functions
are
supported
How
big
a
query
can
be
How
big
a
VARCHAR
column
can
be
711
12
MySQL
Utilites
712
12
1
Overview
of
the
different
MySQL
programs
All
MySQL
clients
that
communicate
with
the
server
using
the
mysqlclient
library
use
the
following
environment
variables
Name
Description
MYSQL
UNIX
PORT
The
default
socket
used
for
connections
to
localhost
MYSQL
TCP
PORT
The
default
TCP
IP
port
MYSQL
PWD
The
default
password
MYSQL
DEBUG
Debug
trace
options
when
debugging
TMPDIR
The
directory
where
temporary
tables
files
are
created
Use
of
MYSQL
PWD
is
insecure
See
section
713
6
3
Connecting
to
the
MySQL
server
The
mysql
client
uses
the
file
named
in
the
MYSQL
HISTFILE
environment
variable
to
save
the
command
line
history
The
default
value
for
the
history
file
is
HOME
mysql
history
where
HOME
is
the
value
of
the
HOME
environment
variable
All
MySQL
programs
take
many
different
options
However
every
MySQL
program
provides
a
help
option
that
you
can
use
to
get
a
full
description
of
the
program
s
different
options
For
example
try
mysql
help
You
can
override
default
options
for
all
standard
client
programs
with
an
option
file
section
714
4
15
4
Option
files
The
list
below
briefly
describes
the
MySQL
programs
isamchk
Utility
to
describe
check
optimize
and
repair
MySQL
tables
Because
isamchk
has
many
functions
it
is
described
in
its
own
chapter
See
section
715
13
Maintaining
a
MySQL
installation
make
binary
release
Makes
a
binary
release
of
a
compiled
MySQL
This
could
be
sent
by
FTP
to
pub
mysql
Incoming
on
ftp
tcx
se
for
the
convenience
of
other
MySQL
users
msql2mysql
A
shell
script
that
converts
mSQL
programs
to
MySQL
It
doesn
t
handle
all
cases
but
it
gives
a
good
start
when
converting
mysql
mysql
is
a
simple
SQL
shell
with
GNU
readline
capabilities
It
supports
interactive
and
non
interactive
use
When
used
interactively
query
results
are
presented
in
an
ASCII
table
format
When
used
non
interactively
e
g
as
a
filter
the
result
is
presented
in
tab
separated
format
The
output
format
can
be
changed
using
command
line
options
You
can
run
scripts
simply
like
this
shell
mysql
database
script
sql
output
tab
If
you
have
problems
due
to
insufficient
memory
in
the
client
use
the
quick
option
This
forces
mysql
to
use
mysql
use
result
rather
than
mysql
store
result
to
retrieve
the
result
set
mysqlaccess
A
script
that
checks
the
access
privileges
for
a
host
user
and
database
combination
mysqladmin
Utility
for
performing
administrative
operations
such
as
creating
or
dropping
databases
reloading
the
grant
tables
flushing
tables
to
disk
and
reopening
log
files
mysqladmin
can
also
be
used
to
retrieve
version
process
and
status
information
from
the
server
See
section
716
12
2
Administering
a
MySQL
server
mysqlbug
The
MySQL
bug
report
script
This
script
should
always
be
used
when
filing
a
bug
report
to
the
MySQL
list
mysqld
The
SQL
daemon
This
should
always
be
running
mysqldump
Dumps
a
MySQL
database
into
a
file
as
SQL
statements
or
as
tab
separated
text
files
Enhanced
freeware
originally
by
Igor
Romanenko
See
section
717
12
3
Dumping
the
structure
and
data
from
MySQL
databases
and
tables
mysqlimport
Imports
text
files
into
their
respective
tables
using
LOAD
DATA
INFILE
See
section
718
12
4
Importing
data
from
text
files
mysqlshow
Displays
information
about
databases
tables
columns
and
indexes
mysql
install
db
Creates
the
MySQL
grant
tables
with
default
privileges
This
is
usually
executed
only
once
when
first
installing
MySQL
on
a
system
replace
A
utility
program
that
is
used
by
msql2mysql
but
that
has
more
general
applicability
as
well
replace
changes
strings
in
place
in
files
or
on
the
standard
input
Uses
a
finite
state
machine
to
match
longer
strings
first
Can
be
used
to
swap
strings
For
example
this
command
swaps
a
and
b
in
the
given
files
shell
replace
a
b
b
a
file1
file2
safe
mysqld
A
script
that
starts
the
mysqld
daemon
with
some
safety
features
such
as
restarting
the
server
when
an
error
occurs
and
logging
runtime
information
to
a
log
file
719
12
2
Administering
a
MySQL
server
Utility
for
performing
administrative
operations
The
syntax
is
shell
mysqladmin
OPTIONS
command
command
option
command
You
can
get
a
list
of
the
options
your
version
of
mysqladmin
supports
by
executing
mysqladmin
help
The
current
mysqladmin
supports
the
following
commands
create
databasename
Create
a
new
database
drop
databasename
Delete
a
database
and
all
its
tables
extended
status
Gives
an
extended
status
message
from
the
server
flush
hosts
Flush
all
cached
hosts
flush
logs
Flush
all
logs
flush
tables
Flush
all
tables
flush
privileges
Reload
grant
tables
same
as
reload
kill
id
id
Kill
mysql
threads
password
new
password
Change
old
password
to
new
password
ping
Check
if
mysqld
is
alive
processlist
Show
list
of
active
threads
in
server
reload
Reload
grant
tables
refresh
Flush
all
tables
and
close
and
open
logfiles
shutdown
Take
server
down
status
Gives
a
short
status
message
from
the
server
variables
Prints
variables
available
version
Get
version
info
from
server
All
commands
can
be
shortened
to
their
unique
prefix
For
example
shell
mysqladmin
proc
stat
Id
User
Host
db
Command
Time
State
Info
6
monty
localhost
Processlist
0
Uptime
10077
Threads
1
Questions
9
Slow
queries
0
Opens
6
Flush
table
s
1
Open
tables
2
Memory
in
use
1092K
Max
memory
used
1116K
The
mysqladmin
status
command
result
has
the
following
columns
Uptime
Number
of
seconds
the
MySQL
server
have
been
up
Threads
Number
of
active
threads
clients
Questions
Number
of
questions
from
clients
since
mysqld
was
started
Slow
queries
Queries
that
has
taken
more
than
long
query
time
seconds
Opens
How
many
tables
mysqld
has
opened
Flush
tables
Number
of
flush
refresh
and
reload
commands
Open
tables
Number
of
tables
that
are
open
now
Memory
in
use
Memory
allocated
directly
by
the
mysqld
code
only
available
when
MySQL
is
compiled
with
with
debug
Max
memory
used
Maximum
memory
allocated
directly
by
the
mysqld
code
only
available
when
MySQL
is
compiled
with
with
debug
720
12
3
Dumping
the
structure
and
data
from
MySQL
databases
and
tables
Utility
to
dump
a
database
or
a
collection
of
database
for
backup
or
for
transferring
the
data
to
another
SQL
server
The
dump
will
contain
SQL
statements
to
create
the
table
and
or
populate
the
table
shell
mysqldump
OPTIONS
database
tables
If
you
don
t
give
any
tables
the
whole
database
will
be
dumped
You
can
get
a
list
of
the
options
your
version
of
mysqldump
supports
by
executing
mysqldump
help
Note
that
if
you
run
mysqldump
without
quick
or
opt
mysqldump
will
load
the
whole
result
set
into
memory
before
dumping
the
result
This
will
probably
be
a
problem
if
you
are
dumping
a
big
database
mysqldump
supports
the
following
options
add
locks
Add
LOCK
TABLES
before
and
UNLOCK
TABLE
after
each
table
dump
To
get
faster
inserts
into
MySQL
add
drop
table
Add
a
drop
table
before
each
create
statement
allow
keywords
Allow
creation
of
column
names
that
are
keywords
This
works
by
prefixing
each
column
name
with
the
table
name
c
complete
insert
Use
complete
insert
statements
with
column
names
C
compress
Compress
all
information
between
the
client
and
the
server
if
both
support
compression
delayed
Insert
rows
with
the
INSERT
DELAYED
command
e
extended
insert
Use
the
new
multiline
INSERT
syntax
Gives
more
compact
and
faster
inserts
statements
debug
option
string
Trace
usage
of
the
program
for
debugging
help
Display
a
help
message
and
exit
fields
terminated
by
fields
enclosed
by
fields
optionally
enclosed
by
fields
escaped
by
fields
terminated
by
These
options
are
used
with
the
T
option
and
have
the
same
meaning
as
the
corresponding
clauses
for
LOAD
DATA
INFILE
See
section
721
7
15
LOAD
DATA
INFILE
syntax
F
flush
logs
Flush
logs
file
in
the
MySQL
server
before
starting
the
dump
f
force
Continue
even
if
we
get
an
SQL
error
during
a
table
dump
h
host
Dump
data
from
the
MySQL
server
on
the
named
host
The
default
host
is
localhost
l
lock
tables
Lock
all
tables
for
starting
the
dump
t
no
create
info
Don
t
write
table
creation
info
The
CREATE
TABLE
statment
d
no
data
Don
t
write
any
row
information
for
the
table
This
is
very
useful
if
you
just
want
to
get
a
dump
of
the
structure
for
a
table
opt
Same
as
quick
add
drop
table
add
locks
extended
insert
use
locks
Should
give
you
the
fastest
possible
dump
for
reading
into
a
MySQL
server
pyour
pass
password
your
pass
The
password
to
use
when
connecting
to
the
server
If
you
specify
no
your
pass
part
mysqldump
solicits
the
password
from
the
terminal
P
port
num
port
port
num
The
TCP
IP
port
number
to
use
for
connecting
to
a
host
This
is
used
for
connections
to
hosts
other
than
localhost
for
which
Unix
sockets
are
used
q
quick
Don
t
buffer
query
dump
directly
to
stdout
Uses
mysql
use
result
to
do
this
S
path
to
socket
socket
path
to
socket
The
socket
file
to
use
when
connecting
to
localhost
which
is
the
default
host
T
tab
path
to
some
directory
Creates
a
table
name
sql
file
that
conntains
the
SQL
CREATE
commands
and
a
table
name
txt
file
that
contains
the
data
for
each
give
table
NOTE
This
only
works
if
mysqldump
is
run
on
the
same
machine
as
the
mysqld
daemon
The
format
of
the
txt
file
is
made
according
to
the
fields
xxx
and
lines
xxx
options
u
user
name
user
user
name
The
MySQL
user
name
to
use
when
connecting
to
the
server
The
default
value
is
your
Unix
login
name
O
var
option
set
variable
var
option
Set
the
value
of
a
variable
The
possible
variables
are
listed
below
v
verbose
Verbose
mode
Print
out
more
information
what
the
program
does
V
version
Print
version
information
and
exit
w
where
where
condition
Dump
only
selected
records
Note
that
QUOTES
are
mandatory
where
user
jimf
wuserid
1
wuserid
1
The
most
normal
use
of
mysqldump
is
probably
for
making
a
backup
of
whole
database
mysqldump
opt
database
backup
file
sql
But
it
s
also
very
useful
to
populate
another
MySQL
server
with
information
from
a
databas
mysqldump
opt
database
mysql
host
remote
host
C
database
722
12
4
Importing
data
from
text
files
mysqlimport
provides
a
command
line
interface
to
the
LOAD
DATA
INFILE
SQL
statement
Most
options
to
mysqlimport
correspond
directly
to
the
same
options
to
LOAD
DATA
INFILE
See
section
723
7
15
LOAD
DATA
INFILE
syntax
mysqlimport
is
invoked
like
this
shell
mysqlimport
options
filename
For
each
text
file
named
on
the
command
line
mysqlimport
strips
any
extension
from
the
filename
and
uses
the
result
to
determine
which
table
to
import
the
file
s
contents
into
For
example
files
named
patient
txt
patient
text
and
patient
would
all
be
imported
into
a
table
named
patient
mysqlimport
supports
the
following
options
C
compress
Compress
all
information
between
the
client
and
the
server
if
both
support
compression
debug
option
string
Trace
usage
of
the
program
for
debugging
d
delete
Empty
the
table
before
importing
the
text
file
fields
terminated
by
fields
enclosed
by
fields
optionally
enclosed
by
fields
escaped
by
fields
terminated
by
These
options
have
the
same
meaning
as
the
corresponding
clauses
for
LOAD
DATA
INFILE
See
section
724
7
15
LOAD
DATA
INFILE
syntax
f
force
Ignore
errors
For
example
if
a
table
for
a
text
file
doesn
t
exist
continue
processing
any
remaining
files
Without
force
mysqlimport
exits
if
a
table
doesn
t
exist
help
Display
a
help
message
and
exit
h
host
name
host
host
name
Import
data
to
the
MySQL
server
on
the
named
host
The
default
host
is
localhost
i
ignore
See
the
description
for
the
replace
option
l
lock
tables
Lock
ALL
tables
for
writing
before
processing
any
text
files
This
ensures
that
all
tables
are
synchronized
on
the
server
L
local
Read
input
files
from
the
client
By
default
text
files
are
assumed
to
be
on
the
server
if
you
connect
to
localhost
which
is
the
default
host
pyour
pass
password
your
pass
The
password
to
use
when
connecting
to
the
server
If
you
specify
no
your
pass
part
mysqlimport
solicits
the
password
from
the
terminal
P
port
num
port
port
num
The
TCP
IP
port
number
to
use
for
connecting
to
a
host
This
is
used
for
connections
to
hosts
other
than
localhost
for
which
Unix
sockets
are
used
r
replace
The
replace
and
ignore
options
control
handling
of
input
records
that
duplicate
existing
records
on
unique
key
values
If
you
specify
replace
new
rows
replace
existing
rows
that
have
the
same
unique
key
value
If
you
specify
ignore
input
rows
that
duplicate
an
existing
row
on
a
unique
key
value
are
skipped
If
you
don
t
specify
either
option
an
error
occurs
when
a
duplicate
key
value
is
found
and
the
rest
of
the
text
file
is
ignored
s
silent
Silent
mode
Write
output
only
when
errors
occur
S
path
to
socket
socket
path
to
socket
The
socket
file
to
use
when
connecting
to
localhost
which
is
the
default
host
u
user
name
user
user
name
The
MySQL
user
name
to
use
when
connecting
to
the
server
The
default
value
is
your
Unix
login
name
v
verbose
Verbose
mode
Print
out
more
information
what
the
program
does
V
version
Print
version
information
and
exit
725
12
5
The
MySQL
compressed
read
only
table
generator
pack
isam
is
an
extra
utility
that
you
get
when
you
order
more
than
10
licenses
or
extended
support
Since
pack
isam
is
distributed
only
in
binary
form
pack
isam
is
available
only
on
some
platforms
Of
course
all
future
updates
to
pack
isam
are
included
in
the
price
pack
isam
may
at
some
time
be
included
as
standard
when
we
get
some
kind
of
turnover
for
MySQL
pack
isam
works
by
compressing
each
column
in
the
table
separately
The
information
needed
to
decompress
columns
is
read
into
memory
when
the
table
is
opened
This
results
in
much
better
performance
when
accessing
individual
records
since
you
only
have
to
uncompress
exactly
one
record
not
a
much
larger
disk
block
like
when
using
Stacker
on
MS
DOS
Usually
pack
isam
packs
the
data
file
40
70
MySQL
uses
memory
mapping
mmap
on
compressed
tables
and
falls
back
to
normal
read
write
file
usage
if
mmap
doesn
t
work
There
are
currently
two
limitations
with
pack
isam
After
packing
the
table
is
read
only
It
can
t
pack
BLOB
columns
yet
Fixing
these
limitations
is
on
our
TODO
list
but
with
low
priority
pack
isam
is
invoked
like
this
shell
pack
isam
options
filename
Each
filename
should
be
the
name
of
an
index
ISM
file
If
you
are
not
in
the
database
directory
you
should
specify
the
pathname
to
the
file
It
is
permissible
to
omit
the
ISM
extension
pack
isam
supports
the
following
options
b
backup
Make
a
backup
of
the
table
as
tbl
name
OLD
debug
debug
options
Output
debug
log
The
debug
options
string
often
is
d
t
o
filename
f
force
Force
packing
of
the
table
even
if
it
becomes
bigger
or
if
the
temporary
file
exists
pack
isam
creates
a
temporary
file
named
tbl
name
TMD
while
it
compresses
the
table
If
you
kill
pack
isam
the
TMD
file
may
not
be
deleted
Normally
pack
isam
exits
with
an
error
if
it
finds
that
tbl
name
TMD
exists
With
force
pack
isam
packs
the
table
anyway
help
Display
a
help
message
and
exit
j
big
tbl
name
join
big
tbl
name
Join
all
tables
named
on
the
command
line
into
a
single
table
big
tbl
name
All
tables
that
are
to
be
combined
MUST
be
identical
same
column
names
and
types
same
indexes
etc
p
packlength
Specify
the
record
length
storage
size
in
bytes
The
value
should
be
1
2
or
3
pack
isam
stores
all
rows
with
length
pointers
of
1
2
or
3
bytes
In
most
normal
cases
pack
isam
can
determine
the
right
length
value
before
it
begins
packing
the
file
but
it
may
notice
during
the
packing
process
that
it
could
have
used
a
shorter
length
In
this
case
pack
isam
will
print
a
note
that
the
next
time
you
pack
the
same
file
you
could
use
a
shorter
record
length
s
silent
Silent
mode
Write
output
only
when
errors
occur
t
test
Don
t
pack
table
only
test
packing
it
T
dir
name
tmp
dir
dir
name
Use
the
named
directory
as
the
location
in
which
to
write
the
temporary
table
v
verbose
Verbose
mode
Write
info
about
progress
and
packing
result
V
version
Display
version
information
and
exit
w
wait
Wait
and
retry
if
table
is
in
use
If
the
mysqld
server
was
invoked
with
the
skip
locking
option
it
is
not
a
good
idea
to
invoke
pack
isam
if
the
table
might
be
updated
during
the
packing
process
The
sequence
of
commands
shown
below
illustrates
a
typical
table
compression
session
shell
ls
l
station
rw
rw
r
1
monty
my
994128
Apr
17
19
00
station
ISD
rw
rw
r
1
monty
my
53248
Apr
17
19
00
station
ISM
rw
rw
r
1
monty
my
5767
Apr
17
19
00
station
frm
shell
isamchk
dvv
station
ISAM
file
station
Isam
version
2
Creation
time
1996
03
13
10
08
58
Recover
time
1997
02
02
3
06
43
Data
records
1192
Deleted
blocks
0
Datafile
Parts
1192
Deleted
data
0
Datafile
pointer
bytes
2
Keyfile
pointer
bytes
2
Max
datafile
length
54657023
Max
keyfile
length
33554431
Recordlength
834
Record
format
Fixed
length
table
description
Key
Start
Len
Index
Type
Root
Blocksize
Rec
key
1
2
4
unique
unsigned
long
1024
1024
1
2
32
30
multip
text
10240
1024
1
Field
Start
Length
Type
1
1
1
2
2
4
3
6
4
4
10
1
5
11
20
6
31
1
7
32
30
8
62
35
9
97
35
10
132
35
11
167
4
12
171
16
13
187
35
14
222
4
15
226
16
16
242
20
17
262
20
18
282
20
19
302
30
20
332
4
21
336
4
22
340
1
23
341
8
24
349
8
25
357
8
26
365
2
27
367
2
28
369
4
29
373
4
30
377
1
31
378
2
32
380
8
33
388
4
34
392
4
35
396
4
36
400
4
37
404
1
38
405
4
39
409
4
40
413
4
41
417
4
42
421
4
43
425
4
44
429
20
45
449
30
46
479
1
47
480
1
48
481
79
49
560
79
50
639
79
51
718
79
52
797
8
53
805
1
54
806
1
55
807
20
56
827
4
57
831
4
shell
pack
isam
station
ISM
Compressing
station
ISM
1192
records
Calculating
statistics
normal
20
empty
space
16
empty
zero
12
empty
fill
11
pre
space
0
end
space
12
table
lookups
5
zero
7
Original
trees
57
After
join
17
Compressing
file
87
14
shell
ls
l
station
rw
rw
r
1
monty
my
127874
Apr
17
19
00
station
ISD
rw
rw
r
1
monty
my
55296
Apr
17
19
04
station
ISM
rw
rw
r
1
monty
my
5767
Apr
17
19
00
station
frm
shell
isamchk
dvv
station
ISAM
file
station
Isam
version
2
Creation
time
1996
03
13
10
08
58
Recover
time
1997
04
17
19
04
26
Data
records
1192
Deleted
blocks
0
Datafile
Parts
1192
Deleted
data
0
Datafilepointer
bytes
3
Keyfile
pointer
bytes
1
Max
datafile
length
16777215
Max
keyfile
length
131071
Recordlength
834
Record
format
Compressed
table
description
Key
Start
Len
Index
Type
Root
Blocksize
Rec
key
1
2
4
unique
unsigned
long
10240
1024
1
2
32
30
multip
text
54272
1024
1
Field
Start
Length
Type
Huff
tree
Bits
1
1
1
constant
1
0
2
2
4
zerofill
1
2
9
3
6
4
no
zeros
zerofill
1
2
9
4
10
1
3
9
5
11
20
table
lookup
4
0
6
31
1
3
9
7
32
30
no
endspace
not
always
5
9
8
62
35
no
endspace
not
always
no
empty
6
9
9
97
35
no
empty
7
9
10
132
35
no
endspace
not
always
no
empty
6
9
11
167
4
zerofill
1
2
9
12
171
16
no
endspace
not
always
no
empty
5
9
13
187
35
no
endspace
not
always
no
empty
6
9
14
222
4
zerofill
1
2
9
15
226
16
no
endspace
not
always
no
empty
5
9
16
242
20
no
endspace
not
always
8
9
17
262
20
no
endspace
no
empty
8
9
18
282
20
no
endspace
no
empty
5
9
19
302
30
no
endspace
no
empty
6
9
20
332
4
always
zero
2
9
21
336
4
always
zero
2
9
22
340
1
3
9
23
341
8
table
lookup
9
0
24
349
8
table
lookup
10
0
25
357
8
always
zero
2
9
26
365
2
2
9
27
367
2
no
zeros
zerofill
1
2
9
28
369
4
no
zeros
zerofill
1
2
9
29
373
4
table
lookup
11
0
30
377
1
3
9
31
378
2
no
zeros
zerofill
1
2
9
32
380
8
no
zeros
2
9
33
388
4
always
zero
2
9
34
392
4
table
lookup
12
0
35
396
4
no
zeros
zerofill
1
13
9
36
400
4
no
zeros
zerofill
1
2
9
37
404
1
2
9
38
405
4
no
zeros
2
9
39
409
4
always
zero
2
9
40
413
4
no
zeros
2
9
41
417
4
always
zero
2
9
42
421
4
no
zeros
2
9
43
425
4
always
zero
2
9
44
429
20
no
empty
3
9
45
449
30
no
empty
3
9
46
479
1
14
4
47
480
1
14
4
48
481
79
no
endspace
no
empty
15
9
49
560
79
no
empty
2
9
50
639
79
no
empty
2
9
51
718
79
no
endspace
16
9
52
797
8
no
empty
2
9
53
805
1
17
1
54
806
1
3
9
55
807
20
no
empty
3
9
56
827
4
no
zeros
zerofill
2
2
9
57
831
4
no
zeros
zerofill
1
2
9
The
information
printed
by
pack
isam
is
described
below
normal
The
number
of
columns
for
which
no
extra
packing
is
used
empty
space
The
number
of
columns
containing
values
that
are
only
spaces
these
will
occupy
1
bit
empty
zero
The
number
of
columns
containing
values
that
are
only
binary
0
s
these
will
occupy
1
bit
empty
fill
The
number
of
integer
columns
that
don
t
occupy
the
full
byte
range
of
their
type
these
are
changed
to
a
smaller
type
for
example
an
INTEGER
column
may
be
changed
to
MEDIUMINT
pre
space
The
number
of
decimal
columns
that
are
stored
with
leading
space
In
this
case
each
value
will
contain
a
count
for
the
number
of
leading
spaces
end
space
The
number
of
columns
that
have
a
lot
of
trailing
space
In
this
case
each
value
will
contain
a
count
for
the
number
of
trailing
spaces
table
lookup
The
column
had
only
a
small
number
of
different
values
and
that
were
converted
to
an
ENUM
before
Huffman
compression
zero
The
number
of
columns
for
which
all
values
are
zero
Original
trees
The
initial
number
of
Huffman
trees
After
join
The
number
of
distinct
Huffman
trees
left
after
joining
trees
to
save
some
header
space
After
a
table
has
been
compressed
isamchk
dvv
prints
additional
information
about
each
field
Type
The
field
type
may
contain
the
following
descriptors
constant
All
rows
have
the
same
value
no
endspace
Don
t
store
endspace
no
endspace
not
always
Don
t
store
endspace
and
don
t
do
end
space
compression
for
all
values
no
endspace
no
empty
Don
t
store
endspace
Don
t
store
empty
values
table
lookup
The
column
was
converted
to
an
ENUM
zerofill
n
The
most
significant
n
bytes
in
the
value
are
always
0
and
are
not
stored
no
zeros
Don
t
store
zeros
always
zero
0
values
are
stored
in
1
bit
Huff
tree
The
Huffman
tree
associated
with
the
field
Bits
The
number
of
bits
used
in
the
Huffman
tree
726
13
Maintaining
a
MySQL
installation
727
13
1
Using
isamchk
for
table
maintenance
and
crash
recovery
To
check
repair
ISAM
tables
ISM
and
ISD
you
should
use
the
isamchk
utility
To
check
repair
MyISAM
tables
MYI
and
MYD
you
should
use
the
myisamchk
utility
See
section
728
10
17
MySQL
table
types
In
the
following
text
we
will
talk
about
isamchk
but
everything
also
applies
to
myisamchk
You
can
use
the
isamchk
utility
to
get
information
about
your
database
tables
check
and
repair
them
or
optimize
them
The
following
sections
describe
how
to
invoke
isamchk
including
a
description
of
its
options
how
to
set
up
a
table
maintenance
schedule
and
how
to
use
isamchk
to
perform
its
various
functions
If
you
run
mysqld
with
skip
locking
which
is
the
default
on
some
systems
like
Linux
you
can
t
reliably
use
isamchk
to
check
a
table
when
mysqld
is
using
the
same
table
If
you
can
be
sure
that
no
one
is
accessing
the
tables
through
mysqld
while
you
run
isamchk
you
only
have
to
do
mysqladmin
flush
tables
before
you
start
checking
the
tables
If
you
can
t
guarantee
the
above
then
you
must
take
down
mysqld
while
you
check
the
tables
If
you
run
isamchk
while
mysqld
is
updating
the
tables
you
may
get
a
warning
that
a
table
is
corrupt
even
if
it
isn
t
If
you
are
not
using
skip
locking
you
can
use
isamchk
to
check
tables
at
any
time
While
you
do
this
all
clients
that
try
to
update
the
table
will
wait
until
isamchk
is
ready
before
continuing
If
you
use
isamchk
to
repair
or
optimize
tables
you
MUST
always
ensure
that
the
mysqld
server
is
not
using
the
table
this
also
applies
if
you
are
using
skip
locking
If
you
don
t
take
down
mysqld
you
should
at
least
do
a
mysqladmin
flush
tables
before
you
run
isamchk
You
can
in
most
cases
also
use
the
command
OPTIMIZE
TABLES
to
optimize
and
repair
tables
but
this
is
not
as
fast
or
reliable
in
case
of
real
fatal
errors
as
isamchk
On
the
other
hand
OPTIMIZE
TABLE
is
easier
to
use
and
you
don
t
have
to
worry
about
flushing
tables
See
section
729
7
8
OPTIMIZE
TABLE
syntax
730
13
1
1
isamchk
invocation
syntax
isamchk
is
invoked
like
this
shell
isamchk
options
tbl
name
The
options
specify
what
you
want
isamchk
to
do
They
are
described
below
You
can
also
get
a
list
of
options
by
invoking
isamchk
help
With
no
options
isamchk
simply
checks
your
table
To
get
more
information
or
to
tell
isamchk
to
take
corrective
action
specify
options
as
described
below
and
in
the
following
sections
tbl
name
is
the
database
table
you
want
to
check
If
you
run
isamchk
somewhere
other
than
in
the
database
directory
you
must
specify
the
path
to
the
file
since
isamchk
has
no
idea
where
your
database
is
located
Actually
isamchk
doesn
t
care
whether
or
not
the
files
you
are
working
on
are
located
in
a
database
directory
you
can
copy
the
files
that
correspond
to
a
database
table
into
another
location
and
perform
recovery
operations
on
them
there
You
can
name
several
tables
on
the
isamchk
command
line
if
you
wish
You
can
also
specify
a
name
as
an
index
file
name
with
the
ISM
suffix
which
allows
you
to
specify
all
tables
in
a
directory
by
using
the
pattern
ISM
For
example
if
you
are
in
a
database
directory
you
can
check
all
the
tables
in
the
directory
like
this
shell
isamchk
ISM
If
you
are
not
in
the
database
directory
you
can
check
all
the
tables
there
by
specifying
the
path
to
the
directory
shell
isamchk
path
to
database
dir
ISM
You
can
even
check
all
tables
in
all
databases
by
specifying
a
wildcard
with
the
path
to
the
MySQL
data
directory
shell
isamchk
path
to
datadir
ISM
isamchk
supports
the
following
options
a
analyze
Analyze
the
distribution
of
keys
This
improves
join
performance
by
enabling
the
join
optimizer
to
better
choose
in
which
order
it
should
join
the
tables
and
which
keys
it
should
how
use
debug
debug
options
Output
debug
log
The
debug
options
string
often
is
d
t
o
filename
d
description
Prints
some
information
about
the
table
e
extend
check
Check
the
table
VERY
thoroughly
This
is
necessary
only
in
extreme
cases
Normally
isamchk
should
find
all
errors
even
without
this
option
f
force
Overwrite
old
temporary
files
If
you
use
f
when
checking
tables
running
isamchk
without
r
isamchk
will
automatically
restart
with
r
on
any
table
for
which
an
error
occurs
during
checking
help
Display
a
help
message
and
exit
i
information
Print
informational
statistics
about
the
table
that
is
checked
k
keys
used
Used
with
r
Tell
the
NISAM
table
handler
to
update
only
the
first
indexes
Higher
numbered
indexes
are
deactivated
This
can
be
used
to
get
faster
inserts
Deactivated
indexes
can
be
reactivated
by
using
isamchk
r
l
no
symlinks
Do
not
follow
symbolic
links
when
repairing
Normally
isamchk
repairs
the
table
a
symlink
points
at
q
quick
Used
with
r
to
get
a
faster
repair
Normally
the
original
data
file
isn
t
touched
you
can
specify
a
second
q
to
force
the
original
data
file
to
be
used
r
recover
Recovery
mode
Can
fix
almost
anything
except
unique
keys
that
aren
t
unique
o
safe
recover
Recovery
mode
Uses
an
old
recovery
method
this
is
slower
than
r
but
can
handle
a
couple
of
cases
that
r
cannot
handle
O
var
option
set
variable
var
option
Set
the
value
of
a
variable
The
possible
variables
are
listed
below
s
silent
Silent
mode
Write
output
only
when
errors
occur
You
can
use
s
twice
ss
to
make
isamchk
very
silent
S
sort
index
Sort
the
index
tree
blocks
in
high
low
order
This
will
optimize
seeks
and
will
make
table
scanning
by
key
faster
R
index
num
sort
records
index
num
Sorts
records
according
to
an
index
This
makes
your
data
much
more
localized
and
may
speed
up
ranged
SELECT
and
ORDER
BY
operations
on
this
index
It
may
be
VERY
slow
to
do
a
sort
the
first
time
To
find
out
a
table
s
index
numbers
use
SHOW
INDEX
which
shows
a
table
s
indexes
in
the
same
order
that
isamchk
sees
them
Indexes
are
numbered
beginning
with
1
u
unpack
Unpack
a
table
that
was
packed
with
pack
isam
v
verbose
Verbose
mode
Print
more
information
This
can
be
used
with
d
and
e
Use
v
multiple
times
vv
vvv
for
more
verbosity
V
version
Print
the
isamchk
version
and
exit
w
wait
Wait
if
the
table
is
locked
Possible
variables
for
the
set
variable
O
option
are
key
buffer
size
current
value
16776192
read
buffer
size
current
value
262136
write
buffer
size
current
value
262136
sort
buffer
size
current
value
2097144
sort
key
blocks
current
value
16
decode
bits
current
value
9
731
13
1
2
isamchk
memory
usage
Memory
allocation
is
important
when
you
run
isamchk
isamchk
uses
no
more
memory
than
you
specify
with
the
O
options
If
you
are
going
to
use
isamchk
on
very
large
files
you
should
first
decide
how
much
memory
you
want
it
to
use
The
default
is
to
use
only
about
3M
to
fix
things
By
using
larger
values
you
can
get
isamchk
to
operate
faster
For
example
if
you
have
more
than
32M
RAM
you
could
use
options
such
as
these
in
addition
to
any
other
options
you
might
specify
shell
isamchk
O
sort
16M
O
key
16M
O
read
1M
O
write
1M
Using
O
sort
16M
should
probably
be
enough
for
most
cases
Be
aware
that
isamchk
uses
temporary
files
in
TMPDIR
If
TMPDIR
points
to
a
memory
file
system
you
may
easily
get
out
of
memory
errors
If
this
happens
set
TMPDIR
to
point
at
some
directory
with
more
space
and
restart
isamchk
732
13
2
Setting
up
a
table
maintenance
regime
It
is
a
good
idea
to
perform
table
checks
on
a
regular
basis
rather
than
waiting
for
problems
to
occur
For
maintenance
purposes
you
can
use
isamchk
s
to
check
tables
The
s
option
causes
isamchk
to
run
in
silent
mode
printing
messages
only
when
errors
occur
It
s
a
good
idea
to
check
tables
when
the
server
starts
up
For
example
whenever
the
machine
has
done
a
reboot
in
the
middle
of
an
update
you
usually
need
to
check
all
the
tables
that
could
have
been
affected
This
is
an
expected
crashed
table
You
could
add
a
test
to
safe
mysqld
that
runs
isamchk
to
check
all
tables
that
have
been
modified
during
the
last
24
hours
if
there
is
an
old
pid
process
ID
file
left
after
a
reboot
The
pid
file
is
created
by
mysqld
when
it
starts
up
and
removed
when
it
terminates
normally
The
presence
of
a
pid
file
at
system
startup
time
indicates
that
mysqld
terminated
abnormally
An
even
better
test
would
be
to
check
any
table
whose
last
modified
time
is
more
recent
than
that
of
the
pid
file
You
should
also
check
your
tables
regularly
during
normal
system
operation
At
TcX
we
run
a
cron
job
to
check
all
our
important
tables
once
a
week
using
a
line
like
this
in
a
crontab
file
35
0
0
path
to
isamchk
s
path
to
datadir
ISM
This
prints
out
information
about
crashed
tables
so
we
can
examine
and
repair
them
when
needed
As
we
haven
t
had
any
unexpectedly
crashed
tables
tables
that
become
corrupted
for
reasons
other
than
hardware
trouble
for
a
couple
of
years
now
this
is
really
true
once
a
week
is
more
than
enough
for
us
We
recommend
that
to
start
with
you
execute
isamchk
s
each
night
on
all
tables
that
have
been
updated
during
the
last
24
hours
until
you
come
to
trust
MySQL
as
much
as
we
do
733
13
3
Getting
information
about
a
table
To
get
a
description
of
a
table
or
statistics
about
it
use
the
commands
shown
below
We
explain
some
of
the
information
in
more
detail
later
isamchk
d
tbl
name
Runs
isamchk
in
describe
mode
to
produce
a
description
of
your
table
If
you
start
the
MySQL
server
using
the
skip
locking
option
isamchk
may
report
an
error
for
a
table
that
is
updated
while
it
runs
However
since
isamchk
doesn
t
change
the
table
in
describe
mode
there
isn
t
any
risk
of
destroying
data
isamchk
d
v
tbl
name
To
produce
more
information
about
what
isamchk
is
doing
add
v
to
tell
it
to
run
in
verbose
mode
isamchk
eis
tbl
name
Shows
only
the
most
important
information
from
a
table
It
is
slow
since
it
must
read
the
whole
table
isamchk
eiv
tbl
name
This
is
like
eis
but
tells
you
what
is
being
done
Example
of
isamchk
d
output
ISAM
file
company
ISM
Data
records
1403698
Deleted
blocks
0
Recordlength
226
Record
format
Fixed
length
table
description
Key
Start
Len
Index
Type
1
2
8
unique
double
2
15
10
multip
text
packed
stripped
3
219
8
multip
double
4
63
10
multip
text
packed
stripped
5
167
2
multip
unsigned
short
6
177
4
multip
unsigned
long
7
155
4
multip
text
8
138
4
multip
unsigned
long
9
177
4
multip
unsigned
long
193
1
text
Example
of
isamchk
d
v
output
ISAM
file
company
ISM
Isam
version
2
Creation
time
1996
08
28
11
44
22
Recover
time
1997
01
12
18
35
29
Data
records
1403698
Deleted
blocks
0
Datafile
Parts
1403698
Deleted
data
0
Datafilepointer
bytes
3
Keyfile
pointer
bytes
3
Max
datafile
length
3791650815
Max
keyfile
length
4294967294
Recordlength
226
Record
format
Fixed
length
table
description
Key
Start
Len
Index
Type
Root
Blocksize
Rec
key
1
2
8
unique
double
15845376
1024
1
2
15
10
multip
text
packed
stripped
25062400
1024
2
3
219
8
multip
double
40907776
1024
73
4
63
10
multip
text
packed
stripped
48097280
1024
5
5
167
2
multip
unsigned
short
55200768
1024
4840
6
177
4
multip
unsigned
long
65145856
1024
1346
7
155
4
multip
text
75090944
1024
4995
8
138
4
multip
unsigned
long
85036032
1024
87
9
177
4
multip
unsigned
long
96481280
1024
178
193
1
text
Example
of
isamchk
eis
output
Checking
ISAM
file
company
ISM
Key
1
Keyblocks
used
97
Packed
0
Max
levels
4
Key
2
Keyblocks
used
98
Packed
50
Max
levels
4
Key
3
Keyblocks
used
97
Packed
0
Max
levels
4
Key
4
Keyblocks
used
99
Packed
60
Max
levels
3
Key
5
Keyblocks
used
99
Packed
0
Max
levels
3
Key
6
Keyblocks
used
99
Packed
0
Max
levels
3
Key
7
Keyblocks
used
99
Packed
0
Max
levels
3
Key
8
Keyblocks
used
99
Packed
0
Max
levels
3
Key
9
Keyblocks
used
98
Packed
0
Max
levels
4
Total
Keyblocks
used
98
Packed
17
Records
1403698
M
recordlength
226
Packed
0
Recordspace
used
100
Empty
space
0
Blocks
Record
1
00
Recordblocks
1403698
Deleteblocks
0
Recorddata
317235748
Deleted
data
0
Lost
space
0
Linkdata
0
User
time
1626
51
System
time
232
36
Maximum
resident
set
size
0
Integral
resident
set
size
0
Non
physical
pagefaults
0
Physical
pagefaults
627
Swaps
0
Blocks
in
0
out
0
Messages
in
0
out
0
Signals
0
Voluntary
context
switches
639
Involuntary
context
switches
28966
Example
of
isamchk
eiv
output
Checking
ISAM
file
company
ISM
Data
records
1403698
Deleted
blocks
0
check
file
size
check
delete
chain
index
1
index
2
index
3
index
4
index
5
index
6
index
7
index
8
index
9
No
recordlinks
check
index
reference
check
data
record
references
index
1
Key
1
Keyblocks
used
97
Packed
0
Max
levels
4
check
data
record
references
index
2
Key
2
Keyblocks
used
98
Packed
50
Max
levels
4
check
data
record
references
index
3
Key
3
Keyblocks
used
97
Packed
0
Max
levels
4
check
data
record
references
index
4
Key
4
Keyblocks
used
99
Packed
60
Max
levels
3
check
data
record
references
index
5
Key
5
Keyblocks
used
99
Packed
0
Max
levels
3
check
data
record
references
index
6
Key
6
Keyblocks
used
99
Packed
0
Max
levels
3
check
data
record
references
index
7
Key
7
Keyblocks
used
99
Packed
0
Max
levels
3
check
data
record
references
index
8
Key
8
Keyblocks
used
99
Packed
0
Max
levels
3
check
data
record
references
index
9
Key
9
Keyblocks
used
98
Packed
0
Max
levels
4
Total
Keyblocks
used
9
Packed
17
check
records
and
index
references
LOTS
OF
ROW
NUMBERS
DELETED
Records
1403698
M
recordlength
226
Packed
0
Recordspace
used
100
Empty
space
0
Blocks
Record
1
00
Recordblocks
1403698
Deleteblocks
0
Recorddata
317235748
Deleted
data
0
Lost
space
0
Linkdata
0
User
time
1639
63
System
time
251
61
Maximum
resident
set
size
0
Integral
resident
set
size
0
Non
physical
pagefaults
0
Physical
pagefaults
10580
Swaps
0
Blocks
in
4
out
0
Messages
in
0
out
0
Signals
0
Voluntary
context
switches
10604
Involuntary
context
switches
122798
Here
are
the
sizes
of
the
data
and
index
files
for
the
table
used
in
the
preceding
examples
rw
rw
r
1
monty
tcx
317235748
Jan
12
17
30
company
ISD
rw
rw
r
1
davida
tcx
96482304
Jan
12
18
35
company
ISM
Explanations
for
the
types
of
information
isamchk
produces
are
given
below
The
keyfile
is
the
index
file
Record
and
row
are
synonymous
ISAM
file
Name
of
the
ISAM
index
file
Isam
version
Version
of
ISAM
format
Currently
always
2
Creation
time
When
the
data
file
was
created
Recover
time
When
the
index
data
file
was
last
reconstructed
Data
records
How
many
records
are
in
the
table
Deleted
blocks
How
many
deleted
blocks
still
have
reserved
space
You
can
optimize
your
table
to
minimize
this
space
See
section
734
13
4
3
Table
optimization
Datafile
Parts
For
dynamic
record
format
this
indicates
how
many
data
blocks
there
are
For
an
optimized
table
without
fragmented
records
this
is
the
same
as
Data
records
Deleted
data
How
many
bytes
of
non
reclaimed
deleted
data
there
are
You
can
optimize
your
table
to
minimize
this
space
See
section
735
13
4
3
Table
optimization
Datafile
pointer
The
size
of
the
data
file
pointer
in
bytes
It
is
usually
2
3
4
or
5
bytes
Most
tables
manage
with
2
bytes
but
this
cannot
be
controlled
from
MySQL
yet
For
fixed
tables
this
is
a
record
address
For
dynamic
tables
this
is
a
byte
address
Keyfile
pointer
The
size
of
the
index
file
pointer
in
bytes
It
is
usually
1
2
or
3
bytes
Most
tables
manage
with
2
bytes
but
this
is
calculated
automatically
by
MySQL
It
is
always
a
block
address
Max
datafile
length
How
long
the
table
s
data
file
ISD
file
can
become
in
bytes
Max
keyfile
length
How
long
the
table
s
key
file
ISM
file
can
become
in
bytes
Recordlength
How
much
space
each
record
takes
in
bytes
Record
format
The
format
used
to
store
table
rows
The
examples
shown
above
use
Fixed
length
Other
possible
values
are
Compressed
and
Packed
table
description
A
list
of
all
keys
in
the
table
For
each
key
some
low
level
information
is
presented
Key
This
key
s
number
Start
Where
in
the
record
this
index
part
starts
Len
How
long
this
index
part
is
For
packed
numbers
this
should
always
be
the
full
length
of
the
column
For
strings
it
may
be
shorter
than
the
full
length
of
the
indexed
column
because
you
can
index
a
prefix
of
a
string
column
Index
unique
or
multip
multiple
Indicates
whether
or
not
one
value
can
exist
multiple
times
in
this
index
Type
What
data
type
this
index
part
has
This
is
an
NISAM
data
type
with
the
options
packed
stripped
or
empty
Root
Address
of
the
root
index
block
Blocksize
The
size
of
each
index
block
By
default
this
is
1024
but
the
value
may
be
changed
at
compile
time
Rec
key
This
is
a
statistical
value
used
by
the
optimizer
It
tells
how
many
records
there
are
per
value
for
this
key
A
unique
key
always
has
a
value
of
1
This
may
be
updated
after
a
table
is
loaded
or
greatly
changed
with
isamchk
a
If
this
is
not
updated
at
all
a
default
value
of
30
is
given
In
the
first
example
above
the
9th
key
is
a
multi
part
key
with
two
parts
Keyblocks
used
What
percentage
of
the
keyblocks
are
used
Since
the
table
used
in
the
examples
had
just
been
reorganized
with
isamchk
the
values
are
very
high
very
near
the
theoretical
maximum
Packed
MySQL
tries
to
pack
keys
with
a
common
suffix
This
can
only
be
used
for
CHAR
VARCHAR
DECIMAL
keys
For
long
strings
like
names
this
can
significantly
reduce
the
space
used
In
the
third
example
above
the
4th
key
is
10
characters
long
and
a
60
reduction
in
space
is
achieved
Max
levels
How
deep
the
B
tree
for
this
key
is
Large
tables
with
long
keys
get
high
values
Records
How
many
rows
are
in
the
table
M
recordlength
The
average
record
length
For
tables
with
fixed
length
records
this
is
the
exact
record
length
Packed
MySQL
strips
spaces
from
the
end
of
strings
The
Packed
value
indicates
the
percentage
savings
achieved
by
doing
this
Recordspace
used
What
percentage
of
the
data
file
is
used
Empty
space
What
percentage
of
the
data
file
is
unused
Blocks
Record
Average
number
of
blocks
per
record
i
e
how
many
links
a
fragmented
record
is
composed
of
This
is
always
1
for
fixed
format
tables
This
value
should
stay
as
close
to
1
0
as
possible
If
it
gets
too
big
you
can
reorganize
the
table
with
isamchk
See
section
736
13
4
3
Table
optimization
Recordblocks
How
many
blocks
links
are
used
For
fixed
format
this
is
the
same
as
the
number
of
records
Deleteblocks
How
many
blocks
links
are
deleted
Recorddata
How
many
bytes
in
the
data
file
are
used
Deleted
data
How
many
bytes
in
the
data
file
are
deleted
unused
Lost
space
If
a
record
is
updated
to
a
shorter
length
some
space
is
lost
This
is
the
sum
of
all
such
losses
in
bytes
Linkdata
When
the
dynamic
table
format
is
used
record
fragments
are
linked
with
pointers
4
to
7
bytes
each
Linkdata
is
the
sum
of
the
amount
of
storage
used
by
all
such
pointers
If
a
table
has
been
compressed
with
pack
isam
isamchk
d
prints
additional
information
about
each
table
column
See
section
737
12
5
The
MySQL
compressed
read
only
table
generator
for
an
example
of
this
information
and
a
description
of
what
it
means
738
13
4
Using
isamchk
for
crash
recovery
The
file
format
that
MySQL
uses
to
store
data
has
been
extensively
tested
but
there
are
always
external
circumstances
that
may
cause
database
tables
to
become
corrupted
The
mysqld
process
being
killed
in
the
middle
of
a
write
Unexpected
shutdown
of
the
computer
for
example
if
the
computer
is
turned
off
A
hardware
error
This
chapter
describes
how
to
check
for
and
deal
with
data
corruption
in
MySQL
databases
If
your
tables
get
corrupted
a
lot
you
should
try
to
find
the
reason
for
this
See
section
739
G
1
Debugging
a
MySQL
server
When
performing
crash
recovery
it
is
important
to
understand
that
each
table
tbl
name
in
a
database
corresponds
to
three
files
in
the
database
directory
File
Purpose
tbl
name
frm
Table
definition
form
file
tbl
name
ISD
Data
file
tbl
name
ISM
Index
file
Each
of
these
three
file
types
is
subject
to
corruption
in
various
ways
but
problems
occur
most
often
in
data
files
and
index
files
isamchk
works
by
creating
a
copy
of
the
ISD
data
file
row
by
row
It
ends
the
repair
stage
by
removing
the
old
ISD
file
and
renaming
the
new
file
to
the
original
file
name
If
you
use
quick
isamchk
does
not
create
a
temporary
ISD
file
but
instead
assumes
that
the
ISD
file
is
correct
and
only
generates
a
new
index
file
without
touching
the
ISD
file
This
is
safe
because
isamchk
automatically
detects
if
the
ISD
file
is
corrupt
and
aborts
the
repair
in
this
case
You
can
also
give
two
quick
options
to
isamchk
In
this
case
isamchk
does
not
abort
on
some
errors
like
duplicate
key
but
instead
tries
to
resolve
them
by
modifying
the
ISD
file
Normally
the
use
of
two
quick
options
is
useful
only
if
you
have
too
little
free
disk
space
to
perform
a
normal
repair
In
this
case
you
should
at
least
make
a
backup
before
running
isamchk
740
13
4
1
How
to
check
tables
for
errors
To
check
a
table
use
the
following
commands
isamchk
tbl
name
This
finds
99
99
of
all
errors
What
it
can
t
find
is
corruption
that
involves
ONLY
the
data
file
which
is
very
unusual
If
you
want
to
check
a
table
you
should
normally
run
isamchk
without
options
or
with
either
the
s
or
silent
option
isamchk
e
tbl
name
This
does
a
complete
and
thorough
check
of
all
data
e
means
extended
check
It
does
a
check
read
of
every
key
for
each
row
to
verify
that
they
indeed
point
to
the
correct
row
This
may
take
a
LONG
time
on
a
big
table
with
many
keys
isamchk
will
normally
stop
after
the
first
error
it
finds
If
you
want
to
obtain
more
information
you
can
add
the
verbose
v
option
This
causes
isamchk
to
keep
going
up
through
a
maximum
of
20
errors
In
normal
usage
a
simple
isamchk
with
no
arguments
other
than
the
table
name
is
sufficient
isamchk
e
i
tbl
name
Like
the
previous
command
but
the
i
option
tells
isamchk
to
print
some
informational
statistics
too
741
13
4
2
How
to
repair
tables
The
symptoms
of
a
corrupted
table
are
usually
that
queries
abort
unexpectedly
and
that
you
observe
errors
such
as
these
tbl
name
frm
is
locked
against
change
Can
t
find
file
tbl
name
ISM
Errcode
Got
error
from
table
handler
Error
135
is
an
exception
in
this
case
Unexpected
end
of
file
Record
file
is
crashed
In
these
cases
you
must
repair
your
tables
isamchk
can
usually
detect
and
fix
most
things
that
go
wrong
The
repair
process
involves
up
to
four
stages
described
below
Before
you
begin
you
should
cd
to
the
database
directory
and
check
the
permissions
of
the
table
files
Make
sure
they
are
readable
by
the
Unix
user
that
mysqld
runs
as
and
to
you
since
you
need
to
access
the
files
you
are
checking
If
it
turns
out
you
need
to
modify
files
they
must
also
be
writable
by
you
Stage
1
Checking
your
tables
Run
isamchk
ISM
or
isamchk
e
ISM
if
you
have
more
time
Use
the
s
silent
option
to
suppress
unnecessary
information
You
have
to
repair
only
those
tables
for
which
isamchk
announces
an
error
For
such
tables
proceed
to
Stage
2
If
you
get
weird
errors
when
checking
such
as
out
of
memory
errors
or
if
isamchk
crashes
go
to
Stage
3
Stage
2
Easy
safe
repair
First
try
isamchk
r
q
tbl
name
r
q
means
quick
recovery
mode
This
will
attempt
to
repair
the
index
file
without
touching
the
data
file
If
the
data
file
contains
everything
that
it
should
and
the
delete
links
point
at
the
correct
locations
within
the
data
file
this
should
work
and
the
table
is
fixed
Start
repairing
the
next
table
Otherwise
use
the
following
procedure
1
Make
a
backup
of
the
data
file
before
continuing
2
Use
isamchk
r
tbl
name
r
means
recovery
mode
This
will
remove
incorrect
records
and
deleted
records
from
the
data
file
and
reconstruct
the
index
file
3
If
the
preceding
step
fails
use
isamchk
safe
recover
tbl
name
Safe
recovery
mode
uses
an
old
recovery
method
that
handles
a
few
cases
that
regular
recovery
mode
doesn
t
but
is
slower
If
you
get
weird
errors
when
repairing
such
as
out
of
memory
errors
or
if
isamchk
crashes
go
to
Stage
3
Stage
3
Difficult
repair
You
should
only
reach
this
stage
if
the
first
16K
block
in
the
index
file
is
destroyed
or
contains
incorrect
information
or
if
the
index
file
is
missing
In
this
case
it
s
necessary
to
create
a
new
index
file
Do
so
as
follows
1
Move
the
data
file
to
some
safe
place
2
Use
the
table
description
file
to
create
new
empty
data
and
index
files
shell
mysql
db
name
mysql
DELETE
FROM
tbl
name
mysql
quit
3
Copy
the
old
data
file
back
onto
the
newly
created
data
file
Don
t
just
move
the
old
file
back
onto
the
new
file
you
want
to
retain
a
copy
in
case
something
goes
wrong
Go
back
to
Stage
2
isamchk
r
q
should
work
now
This
shouldn
t
be
an
endless
loop
Stage
4
Very
difficult
repair
You
should
reach
this
stage
only
if
the
description
file
has
also
crashed
That
should
never
happen
because
the
description
file
isn
t
changed
after
the
table
is
created
1
Restore
the
description
file
from
a
backup
and
go
back
to
Stage
3
You
can
also
restore
the
index
file
and
go
back
to
Stage
2
In
the
latter
case
you
should
start
with
isamchk
r
2
If
you
don
t
have
a
backup
but
know
exactly
how
the
table
was
created
create
a
copy
of
the
table
in
another
database
Remove
the
new
data
file
then
move
the
description
and
index
files
from
the
other
database
to
your
crashed
database
This
gives
you
new
description
and
index
files
but
leaves
the
data
file
alone
Go
back
to
Stage
2
and
attempt
to
reconstruct
the
index
file
742
13
4
3
Table
optimization
To
coalesce
fragmented
records
and
eliminate
wasted
space
resulting
from
deleting
or
updating
records
run
isamchk
in
recovery
mode
shell
isamchk
r
tbl
name
You
can
optimize
a
table
in
the
same
way
using
the
SQL
OPTIMIZE
TABLE
statement
OPTIMIZE
TABLE
is
easier
but
isamchk
is
faster
isamchk
also
has
a
number
of
other
options
you
can
use
to
improve
the
performance
of
a
table
S
sort
index
R
index
num
sort
records
index
num
a
analyze
For
a
full
description
of
the
option
see
section
743
13
1
1
isamchk
invocation
syntax
744
13
5
Log
file
maintenance
When
using
MySQL
with
log
files
you
will
from
time
to
time
want
to
remove
backup
old
log
files
and
tell
MySQL
to
start
logging
on
new
files
See
section
745
9
2
The
update
log
One
a
Linux
Redhat
installation
you
can
use
the
mysql
log
rotate
script
for
this
If
you
installed
MySQL
from
an
RPM
distribution
the
script
should
have
been
installed
automatically
On
other
systems
you
must
install
a
short
script
yourself
that
you
start
from
cron
to
handle
log
files
You
can
force
MySQL
to
start
using
new
log
files
by
using
mysqladmin
flush
logs
or
by
using
the
SQL
command
FLUSH
LOGS
If
you
are
using
MySQL
3
21
you
must
use
mysqladmin
refresh
The
above
command
does
the
following
If
standard
logging
log
is
used
closes
and
reopens
the
log
file
mysql
log
as
default
If
update
logging
log
update
is
used
closes
the
update
log
and
opens
a
new
log
file
with
a
higher
sequence
number
If
you
are
using
only
an
update
log
you
only
have
to
flush
the
logs
and
then
move
away
the
old
update
log
files
to
a
backup
If
you
are
using
the
normal
logging
you
can
do
something
like
shell
cd
mysql
data
directory
shell
mv
mysql
log
mysql
old
shell
mysqladmin
flush
tables
and
then
take
a
backup
and
remove
mysql
old
746
14
Adding
new
functions
to
MySQL
There
are
two
ways
to
add
new
functions
to
MySQL
You
can
add
the
function
through
the
user
definable
function
UDF
interface
User
definable
functions
are
added
and
removed
dynamically
using
the
CREATE
FUNCTION
and
DROP
FUNCTION
statements
See
section
747
7
29
CREATE
FUNCTION
DROP
FUNCTION
syntax
You
can
add
the
function
as
a
native
built
in
MySQL
function
Native
functions
are
compiled
into
the
mysqld
server
and
become
available
on
a
permanent
basis
Each
method
has
advantages
and
disadvantages
If
you
write
a
user
definable
function
you
must
install
the
object
file
in
addition
to
the
server
itself
If
you
compile
your
function
into
the
server
you
don
t
need
to
do
that
You
can
add
UDFs
to
a
binary
MySQL
distribution
Native
functions
require
you
to
modify
a
source
distribution
If
you
upgrade
your
MySQL
distribution
you
can
continue
to
use
your
previously
installed
UDFs
For
native
functions
you
must
repeat
your
modifications
each
time
you
upgrade
Whichever
method
you
use
to
add
new
functions
they
may
be
used
just
like
native
functions
such
as
ABS
or
SOUNDEX
748
14
1
Adding
a
new
user
definable
function
For
the
UDF
mechanism
to
work
functions
must
be
written
in
C
or
C
and
your
operating
system
must
support
dynamic
loading
The
MySQL
source
distribution
includes
a
file
sql
udf
example
cc
that
defines
5
new
functions
Consult
this
file
to
see
how
UDF
calling
conventions
work
For
each
function
that
you
want
to
use
in
SQL
statements
you
should
define
corresponding
C
or
C
functions
In
the
discussion
below
the
name
xxx
is
used
for
an
example
function
name
To
distinquish
between
SQL
and
C
C
usage
XXX
uppercase
indicates
a
SQL
function
call
and
xxx
lowercase
indicates
a
C
C
function
call
The
C
C
functions
that
you
write
to
implement
the
inferface
for
XXX
are
xxx
required
The
main
function
This
is
where
the
function
result
is
computed
The
correspondence
between
the
SQL
type
and
return
type
of
your
C
C
function
is
shown
below
SQL
type
C
C
type
STRING
char
INTEGER
long
long
REAL
double
xxx
init
optional
The
initialization
function
for
xxx
It
can
be
used
to
Check
the
number
of
arguments
to
XXX
Check
that
the
arguments
are
of
a
required
type
or
alternatively
tell
MySQL
to
coerce
arguments
to
the
types
you
want
when
the
main
function
is
called
Allocate
any
memory
required
by
the
main
function
Specify
the
maximum
length
of
the
result
Specify
for
REAL
functions
the
maximum
number
of
decimals
Specify
whether
or
not
the
result
can
be
NULL
xxx
deinit
optional
The
deinitialization
function
for
xxx
It
should
deallocate
any
memory
allocated
by
the
initialization
function
When
a
SQL
statement
invokes
XXX
MySQL
calls
the
initialization
function
xxx
init
to
let
it
perform
any
required
setup
such
as
argument
checking
or
memory
allocation
If
xxx
init
returns
an
error
the
SQL
statement
is
aborted
with
an
error
message
and
the
main
and
deinitialization
functions
are
not
called
Otherwise
the
main
function
xxx
is
called
once
for
each
row
After
all
rows
have
been
processed
the
deinitialization
function
xxx
deinit
is
called
so
it
can
perform
any
required
cleanup
All
functions
must
be
thread
safe
not
just
the
main
function
but
the
initialization
and
deinitialization
functions
as
well
This
means
that
you
are
not
allowed
to
allocate
any
global
or
static
variables
that
change
If
you
need
memory
you
should
allocate
it
in
xxx
init
and
free
it
in
xxx
deinit
749
14
1
1
UDF
calling
sequences
The
main
function
should
be
declared
as
shown
below
Note
that
the
return
type
and
parameters
differ
depending
on
whether
you
will
declare
the
SQL
function
XXX
to
return
STRING
INTEGER
or
REAL
in
the
CREATE
FUNCTION
statement
For
STRING
functions
char
xxx
UDF
INIT
initid
UDF
ARGS
args
char
result
unsigned
long
length
char
is
null
char
error
For
INTEGER
functions
long
long
xxx
UDF
INIT
initid
UDF
ARGS
args
char
is
null
char
error
For
REAL
functions
double
xxx
UDF
INIT
initid
UDF
ARGS
args
char
is
null
char
error
The
initialization
and
deinitialization
functions
are
declared
like
this
my
bool
xxx
init
UDF
INIT
initid
UDF
ARGS
args
char
message
void
xxx
deinit
UDF
INIT
initid
The
initid
parameter
is
passed
to
all
three
functions
It
points
to
a
UDF
INIT
structure
that
is
used
to
communicate
information
between
functions
The
UDF
INIT
structure
members
are
listed
below
The
initialization
function
should
fill
in
any
members
that
it
wishes
to
change
To
use
the
default
for
a
member
leave
it
unchanged
my
bool
maybe
null
xxx
init
should
set
maybe
null
to
1
if
xxx
can
return
NULL
The
default
value
is
1
if
any
of
the
arguments
are
declared
maybe
null
unsigned
int
decimals
Number
of
decimals
The
default
value
is
the
maximum
number
of
decimals
in
the
arguments
passed
to
the
main
function
For
example
if
the
function
is
passed
1
34
1
345
and
1
3
the
default
would
be
3
since
1
345
has
3
decimals
unsigned
int
max
length
The
maximum
length
of
the
string
result
The
default
value
differs
depending
on
the
result
type
of
the
function
For
string
functions
the
default
is
the
length
of
the
longest
argument
For
integer
functions
the
default
is
21
digits
For
real
functions
the
default
is
13
plus
the
number
of
decimals
indicated
by
initid
decimals
For
numeric
functions
the
length
includes
any
sign
or
decimal
point
characters
char
ptr
A
pointer
that
the
function
can
use
for
its
own
purposes
For
example
functions
can
use
initid
ptr
to
communicate
allocated
memory
between
functions
In
xxx
init
allocate
the
memory
and
assign
it
to
this
pointer
initid
ptr
allocated
memory
In
xxx
and
xxx
deinit
refer
to
initid
ptr
to
use
or
deallocate
the
memory
750
14
1
2
Argument
processing
The
args
parameter
points
to
a
UDF
ARGS
structure
which
has
the
members
listed
below
unsigned
int
arg
count
The
number
of
arguments
Check
this
value
in
the
initialization
function
if
you
want
your
function
to
be
called
with
a
particular
number
of
arguments
For
example
if
args
arg
count
2
strcpy
message
XXX
requires
two
arguments
return
1
enum
Item
result
arg
type
The
types
for
each
argument
The
possible
type
values
are
STRING
RESULT
INT
RESULT
and
REAL
RESULT
To
make
sure
that
arguments
are
of
a
given
type
and
return
an
error
if
they
are
not
check
the
arg
type
array
in
the
initialization
function
For
example
if
args
arg
type
0
STRING
RESULT
args
arg
type
1
INT
RESULT
strcpy
message
XXX
requires
a
string
and
an
integer
return
1
As
an
alternative
to
requiring
your
function
s
arguments
to
be
of
particular
types
you
can
use
the
initialization
function
to
set
the
arg
type
elements
to
the
types
you
want
This
causes
MySQL
to
coerce
arguments
to
those
types
for
each
call
to
xxx
For
example
to
specify
coercion
of
the
first
two
arguments
to
string
and
integer
do
this
in
xxx
init
args
arg
type
0
STRING
RESULT
args
arg
type
1
INT
RESULT
char
args
args
args
communicates
information
to
the
initialization
function
about
the
general
nature
of
the
arguments
your
function
was
called
with
For
a
constant
argument
i
args
args
i
points
to
the
argument
value
See
below
for
instructions
on
how
to
access
the
value
properly
For
a
non
constant
argument
args
args
i
is
0
A
constant
argument
is
an
expression
that
uses
only
constants
such
as
3
or
4
7
2
or
SIN
3
14
A
non
constant
argument
is
an
expression
that
refers
to
values
that
may
change
from
row
to
row
such
as
column
names
or
functions
that
are
called
with
non
constant
arguments
For
each
invocation
of
the
main
function
args
args
contains
the
actual
arguments
that
are
passed
for
the
row
currently
being
processed
Functions
can
refer
to
an
argument
i
as
follows
An
argument
of
type
STRING
RESULT
is
given
as
a
string
pointer
plus
a
length
to
allow
handling
of
binary
data
or
data
of
arbitrary
length
The
string
contents
are
available
as
args
args
i
and
the
string
length
is
args
lengths
i
You
should
not
assume
that
strings
are
null
terminated
For
an
argument
of
type
INT
RESULT
you
must
cast
args
args
i
to
a
long
long
value
long
long
int
val
int
val
long
long
args
args
i
For
an
argument
of
type
REAL
RESULT
you
must
cast
args
args
i
to
a
double
value
double
real
val
real
val
double
args
args
i
unsigned
long
lengths
For
the
initialization
function
the
lengths
array
indicates
the
maximum
string
length
for
each
argument
For
each
invocation
of
the
main
function
lengths
contains
the
actual
lengths
of
any
string
arguments
that
are
passed
for
the
row
currently
being
processed
For
arguments
of
types
INT
RESULT
or
REAL
RESULT
lengths
still
contains
the
maximum
length
of
the
argument
as
for
the
initialization
function
751
14
1
3
Return
values
and
error
handling
The
initialization
function
should
return
0
if
no
error
occurred
and
1
otherwise
If
an
error
occurs
xxx
init
should
store
a
null
terminated
error
message
in
the
message
parameter
The
message
will
be
returned
to
the
client
The
message
buffer
is
MYSQL
ERRMSG
SIZE
characters
long
but
you
should
try
to
keep
the
message
to
less
than
80
characters
so
that
it
fits
the
width
of
a
standard
terminal
screen
The
return
value
of
the
main
function
xxx
is
the
function
value
for
long
long
and
double
functions
For
string
functions
the
string
is
returned
in
the
result
and
length
arguments
result
is
a
buffer
at
least
255
bytes
long
Set
these
to
the
contents
and
length
of
the
return
value
For
example
memcpy
result
result
string
13
length
13
The
string
function
return
value
normally
also
points
to
the
result
To
indicate
a
return
value
of
NULL
in
the
main
function
set
is
null
to
1
is
null
1
To
indicate
an
error
return
in
the
main
function
set
the
error
parameter
to
1
error
1
If
xxx
sets
error
to
1
for
any
row
the
function
value
is
NULL
for
the
current
row
and
for
any
subsequent
rows
processed
by
the
statement
in
which
XXX
was
invoked
xxx
will
not
even
be
called
for
subsequent
rows
Note
In
MySQL
versions
prior
to
3
22
10
you
should
set
both
error
and
is
null
error
1
is
null
1
752
14
1
4
Compiling
and
installing
user
definable
functions
Files
implementing
UDFs
must
be
compiled
and
installed
on
the
host
where
the
server
runs
This
process
is
described
below
for
the
example
UDF
file
udf
example
cc
that
is
included
in
the
MySQL
source
distribution
This
file
contains
the
following
functions
metaphon
returns
a
metaphon
string
of
the
string
argument
This
is
something
like
a
soundex
string
but
it
s
more
tuned
for
English
myfunc
double
returns
the
sum
of
the
ASCII
values
of
the
characters
in
its
arguments
divided
by
the
sum
of
the
length
of
its
arguments
myfunc
int
returns
the
sum
of
the
length
of
its
arguments
lookup
returns
the
IP
number
for
a
hostname
reverse
lookup
returns
the
hostname
for
an
IP
number
The
function
may
be
called
with
a
string
xxx
xxx
xxx
xxx
or
four
numbers
A
dynamically
loadable
file
should
be
compiled
as
a
sharable
object
file
using
a
command
something
like
this
shell
gcc
shared
o
udf
example
so
myfunc
cc
You
can
easily
find
out
the
correct
compiler
options
for
your
system
by
running
this
command
in
the
sql
directory
of
your
MySQL
source
tree
shell
make
udf
example
o
You
should
run
a
compile
command
similar
to
the
one
that
make
displays
except
that
you
should
remove
the
c
option
near
the
end
of
the
line
and
add
o
udf
example
so
to
the
end
of
the
line
On
some
systems
you
may
need
to
leave
the
c
on
the
command
Once
you
compile
a
shared
object
containing
UDFs
you
must
install
it
and
tell
MySQL
about
it
Compiling
a
shared
object
from
udf
example
cc
produces
a
file
named
something
like
udf
example
so
the
exact
name
may
vary
from
platform
to
platform
Copy
this
file
to
some
directory
searched
by
ld
such
as
usr
lib
On
many
systems
you
can
set
the
LD
LIBRARY
or
LD
LIBRARY
PATH
environment
variable
to
point
at
the
directory
where
you
have
your
UDF
function
files
The
dopen
manual
page
tells
you
which
variable
you
should
use
on
your
system
You
should
set
this
in
mysql
server
or
safe
mysqld
and
restart
mysqld
After
the
library
is
installed
notify
mysqld
about
the
new
functions
with
these
commands
mysql
CREATE
FUNCTION
metaphon
RETURNS
STRING
SONAME
udf
example
so
mysql
CREATE
FUNCTION
myfunc
double
RETURNS
REAL
SONAME
udf
example
so
mysql
CREATE
FUNCTION
myfunc
int
RETURNS
INTEGER
SONAME
udf
example
so
mysql
CREATE
FUNCTION
lookup
RETURNS
STRING
SONAME
udf
example
so
mysql
CREATE
FUNCTION
reverse
lookup
RETURNS
STRING
SONAME
udf
example
so
Functions
can
be
deleted
using
DROP
FUNCTION
mysql
DROP
FUNCTION
metaphon
mysql
DROP
FUNCTION
myfunc
double
mysql
DROP
FUNCTION
myfunc
int
mysql
DROP
FUNCTION
lookup
mysql
DROP
FUNCTION
reverse
lookup
The
CREATE
FUNCTION
and
DROP
FUNCTION
statements
update
the
system
table
func
in
the
mysql
database
The
function
s
name
type
and
shared
library
name
are
saved
in
the
table
You
must
have
the
insert
and
delete
privileges
for
the
mysql
database
to
create
and
drop
functions
You
should
not
use
CREATE
FUNCTION
to
add
a
function
that
has
already
been
created
If
you
need
to
reinstall
a
function
you
should
remove
it
with
DROP
FUNCTION
and
then
reinstall
it
with
CREATE
FUNCTION
You
would
need
to
do
this
for
example
if
you
recompile
a
new
version
of
your
function
so
that
mysqld
gets
the
new
version
Otherwise
the
server
will
continue
to
use
the
old
version
Active
functions
are
reloaded
each
time
the
server
starts
unless
you
start
mysqld
with
the
skip
grant
tables
option
In
this
case
UDF
initialization
is
skipped
and
UDFs
are
unavailable
An
active
function
is
one
that
has
been
loaded
with
CREATE
FUNCTION
and
not
removed
with
DROP
FUNCTION
753
14
2
Adding
a
new
native
function
The
procedure
for
adding
a
new
native
function
is
described
below
Note
that
you
cannot
add
native
functions
to
a
binary
distribution
since
the
procedure
involves
modifying
MySQL
source
code
You
must
compile
MySQL
yourself
from
a
source
distribution
Also
note
that
if
you
migrate
to
another
version
of
MySQL
e
g
when
a
new
version
is
released
you
will
need
to
repeat
the
procedure
with
the
new
version
To
add
a
new
native
MySQL
function
follow
these
steps
1
Add
one
line
to
lex
h
that
defines
the
function
name
in
the
sql
functions
array
2
Add
two
lines
to
sql
yacc
yy
One
indicates
the
preprocessor
symbol
that
yacc
should
define
this
should
be
added
at
the
beginning
of
the
file
Then
define
the
function
parameters
and
add
an
item
with
these
parameters
to
the
simple
expr
parsing
rule
For
an
example
check
all
occurrences
of
SOUNDEX
in
sql
yacc
yy
to
see
how
this
is
done
3
In
item
func
h
declare
a
class
inheriting
from
Item
num
func
or
Item
str
func
depending
on
whether
your
function
returns
a
number
or
a
string
4
In
item
func
cc
add
one
of
the
following
declarations
depending
on
whether
you
are
defining
a
numeric
or
string
function
double
Item
func
newname
val
longlong
Item
func
newname
val
int
String
Item
func
newname
Str
String
str
5
You
should
probably
also
define
the
following
function
void
Item
func
newname
fix
length
and
dec
This
function
should
at
least
calculate
max
length
based
on
the
given
arguments
max
length
is
the
maximum
number
of
characters
the
function
may
return
This
function
should
also
set
maybe
null
0
if
the
main
function
can
t
return
a
NULL
value
The
function
can
check
if
any
of
the
function
arguments
can
return
NULL
by
checking
the
arguments
maybe
null
variable
All
functions
must
be
thread
safe
For
string
functions
there
are
some
additional
considerations
to
be
aware
of
The
String
str
argument
provides
a
string
buffer
that
may
be
used
to
hold
the
result
The
function
should
return
the
string
that
holds
the
result
All
current
string
functions
try
to
avoid
allocating
any
memory
unless
absolutely
necessary
754
15
Adding
new
procedures
to
MySQL
In
MySQL
you
can
define
a
procedure
in
C
that
can
access
and
modify
the
data
in
a
query
before
sending
it
to
a
client
The
modification
can
be
done
on
row
by
row
or
GROUP
BY
level
We
have
in
MySQL
3
23
created
an
example
procedure
to
show
you
what
can
be
done
755
15
1
Procedure
analyse
analyse
max
elements
max
memory
This
procedure
is
defined
in
the
sql
sql
analyse
cc
This
examines
the
result
from
your
query
and
returns
an
analysis
of
the
results
max
elements
default
256
is
the
maximum
number
of
distinct
values
analyse
will
notice
per
column
This
is
used
by
analyse
to
check
if
the
optimal
column
type
should
be
of
type
ENUM
max
memory
default
8192
is
the
maximum
memory
analyse
should
allocate
per
column
while
trying
to
find
all
distinct
values
SELECT
FROM
WHERE
PROCEDURE
ANALYSE
max
elements
max
memory
756
15
2
Writing
a
procedure
For
the
moment
the
only
documentation
for
this
is
the
source
You
can
find
all
information
about
procedures
by
examining
the
following
files
sql
sql
analyse
cc
sql
procedure
h
sql
procedure
cc
sql
sql
select
cc
757
16
MySQL
ODBC
Support
MySQL
provides
support
for
ODBC
by
means
of
the
MyODBC
program
758
16
1
Operating
systems
supported
by
MyODBC
MyODBC
is
a
32
bit
ODBC
2
50
level
0
driver
for
Windows95
and
Windows
NT
We
hope
somebody
will
port
it
to
Windows
3
x
759
16
2
How
to
report
problems
with
MyODBC
MyODBC
has
been
tested
with
Access
Admndemo
exe
C
Builder
Centura
Team
Developer
formerly
Gupta
SQL
Windows
ColdFusion
on
Solaris
Crystal
Reports
DataJunction
Delphi
Excel
iHTML
FileMaker
Pro
FoxPro
Notes
4
5
4
6
SBSS
Perl
DBD
ODBC
Paradox
Powerbuilder
VC
and
Visual
Basic
If
you
know
of
any
other
application
that
works
with
MyODBC
please
mail
760
myodbc
lists
mysql
com
about
this
If
you
encounter
difficulties
we
would
like
to
have
the
log
file
from
the
ODBC
manager
the
log
you
get
when
requesting
logs
from
ODBCADMIN
and
a
MyODBC
log
This
will
help
shed
some
light
on
any
problems
To
get
a
MyODBC
log
please
tag
the
Trace
MyODBC
option
flag
in
the
MyODBC
connect
configure
screen
The
log
will
be
written
to
file
C
myodbc
log
Note
that
you
must
use
MYSQL
DLL
and
not
MYSQL2
DLL
for
this
option
to
work
761
16
3
Programs
known
to
work
with
MyODBC
Most
programs
should
work
with
MyODBC
but
for
each
of
those
listed
below
we
have
tested
it
ourselves
or
gotten
confirmation
from
some
user
that
it
works
Program
Comment
Access
To
make
Access
work
You
should
have
a
primary
key
in
the
table
You
should
have
a
timestamp
in
all
tables
you
want
to
be
able
to
update
Only
use
double
float
fields
Access
fails
when
comparing
with
single
floats
Set
the
Return
matching
rows
option
field
when
connecting
to
MySQL
Access
on
NT
will
report
BLOB
columns
as
OLE
OBJECTS
If
you
want
to
have
MEMO
columns
instead
you
should
change
the
column
to
TEXT
with
ALTER
TABLE
Access
can
t
always
handle
DATE
columns
properly
If
you
have
a
problem
with
these
change
the
columns
to
DATETIME
In
some
cases
Access
may
generate
illegal
SQL
queries
that
MySQL
can
t
understand
You
can
fix
this
by
selecting
Query
SQLSpecific
Pass
Through
from
the
Access
menu
DataJunction
You
have
to
change
it
to
output
VARCHAR
rather
than
ENUM
as
it
exports
the
latter
in
a
manner
that
causes
MySQL
grief
Excel
Works
Some
tips
If
you
have
problems
with
dates
try
to
select
them
as
strings
using
the
CONCAT
function
For
example
select
CONCAT
rise
time
CONCAT
set
time
from
sunrise
sunset
Values
retrieved
as
strings
this
way
should
be
correctly
recognized
as
time
values
by
Excel97
The
purpose
of
CONCAT
in
this
example
is
to
fool
ODBC
into
thinking
the
column
is
of
string
type
Without
the
CONCAT
ODBC
knows
the
column
is
of
time
type
and
Excel
does
not
understand
that
Note
that
this
is
a
bug
in
Excel
because
it
automatically
converts
a
string
to
a
time
This
would
be
great
if
the
source
was
a
text
file
but
is
plain
stupid
when
the
source
is
an
ODBC
connection
that
reports
exact
types
for
each
column
odbcadmin
Test
program
for
ODBC
Delphi
You
must
use
DBE
3
2
or
newer
Set
the
Don
t
optimize
column
width
option
field
when
connecting
to
MySQL
Also
here
is
some
potentially
useful
delphi
code
that
sets
up
both
an
ODBC
entry
and
a
BDE
entry
for
MyODBC
the
BDE
entry
requires
a
BDE
Alias
Editor
which
may
be
had
for
free
at
a
Delphi
Super
Page
near
you
Thanks
to
Bryan
Brunton
762
bryan
flesherfab
com
for
this
fReg
TRegistry
Create
fReg
OpenKey
Software
ODBC
ODBC
INI
DocumentsFab
True
fReg
WriteString
Database
Documents
fReg
WriteString
Description
fReg
WriteString
Driver
C
WINNT
System32
myodbc
dll
fReg
WriteString
Flag
1
fReg
WriteString
Password
fReg
WriteString
Port
fReg
WriteString
Server
xmark
fReg
WriteString
User
winuser
fReg
OpenKey
Software
ODBC
ODBC
INI
ODBC
Data
Sources
True
fReg
WriteString
DocumentsFab
MySQL
fReg
CloseKey
fReg
Free
Memo1
Lines
Add
DATABASE
NAME
Memo1
Lines
Add
USER
NAME
Memo1
Lines
Add
ODBC
DSN
DocumentsFab
Memo1
Lines
Add
OPEN
MODE
READ
WRITE
Memo1
Lines
Add
BATCH
COUNT
200
Memo1
Lines
Add
LANGDRIVER
Memo1
Lines
Add
MAX
ROWS
1
Memo1
Lines
Add
SCHEMA
CACHE
DIR
Memo1
Lines
Add
SCHEMA
CACHE
SIZE
8
Memo1
Lines
Add
SCHEMA
CACHE
TIME
1
Memo1
Lines
Add
SQLPASSTHRU
MODE
SHARED
AUTOCOMMIT
Memo1
Lines
Add
SQLQRYMODE
Memo1
Lines
Add
ENABLE
SCHEMA
CACHE
FALSE
Memo1
Lines
Add
ENABLE
BCD
FALSE
Memo1
Lines
Add
ROWSET
SIZE
20
Memo1
Lines
Add
BLOBS
TO
CACHE
64
Memo1
Lines
Add
BLOB
SIZE
32
AliasEditor
Add
DocumentsFab
MySQL
Memo1
Lines
C
Builder
Tested
with
BDE
3
0
The
only
known
problem
is
that
when
the
table
schema
changes
query
fields
are
not
updated
BDE
however
does
not
seem
to
recognize
primary
keys
only
the
index
PRIMARY
though
this
has
not
been
a
problem
Visual
basic
To
be
able
to
update
a
table
you
must
define
a
primary
key
for
the
table
763
16
4
How
to
fill
in
the
various
fields
in
the
ODBC
administrator
program
There
are
three
possibilities
for
specifying
the
server
name
on
Windows95
Use
the
IP
address
of
the
server
Add
a
file
lmhosts
with
the
following
info
ip
hostname
For
example
194
216
84
21
my
Configure
the
PC
to
use
DNS
Example
of
how
to
fill
in
the
ODBC
setup
Windows
DSN
name
test
Description
This
is
my
test
database
MySql
Database
test
Server
194
216
84
21
User
monty
Password
my
password
Port
The
value
for
the
Windows
DSN
name
field
is
any
name
that
is
unique
in
your
windows
ODBC
setup
You
don
t
have
to
specify
values
for
the
Server
User
Password
or
Port
fields
in
the
ODBC
setup
screen
However
if
you
do
the
values
will
be
used
as
the
defaults
later
when
you
attempt
to
make
a
connection
You
have
the
option
of
changing
the
values
at
that
time
If
the
port
number
is
not
given
the
default
port
3306
is
used
If
you
specify
the
option
Read
options
from
C
my
cnf
the
groups
client
and
odbc
will
be
read
from
the
C
my
cnf
file
You
can
use
all
options
that
are
usable
by
mysql
options
See
section
764
19
4
36
mysql
options
765
16
5
How
to
get
the
value
of
an
AUTO
INCREMENT
column
in
ODBC
A
common
problem
is
how
to
get
the
value
of
an
automatically
generated
ID
from
an
INSERT
With
ODBC
you
can
do
something
like
this
assuming
that
auto
is
an
AUTO
INCREMENT
field
INSERT
INTO
foo
auto
text
VALUES
NULL
text
SELECT
LAST
INSERT
ID
Or
if
you
are
just
going
to
insert
the
ID
into
another
table
you
can
do
this
INSERT
INTO
foo
auto
text
VALUES
NULL
text
INSERT
INTO
foo2
id
text
VALUES
LAST
INSERT
ID
text
For
the
benefit
of
some
ODBC
applications
at
least
Delphi
and
Access
the
following
query
can
be
used
to
find
a
newly
inserted
row
SELECT
FROM
tbl
name
WHERE
auto
IS
NULL
766
17
Problems
and
common
errors
767
17
1
What
to
do
if
MySQL
keeps
crashing
All
MySQL
versions
are
tested
on
many
platforms
before
they
are
released
This
doesn
t
mean
that
there
isn
t
any
bugs
in
MySQL
but
that
if
there
are
bugs
they
are
very
few
and
can
be
hard
to
find
If
you
have
a
problem
it
will
always
help
if
you
try
to
find
out
exactly
what
crashes
your
system
as
you
will
have
a
much
better
chance
of
getting
this
fixed
quickly
First
you
should
try
to
find
out
whether
the
problem
is
that
the
mysqld
daemon
dies
or
whether
your
problem
has
to
do
with
your
client
You
can
check
how
long
your
mysqld
server
has
been
up
by
executing
mysqladmin
version
If
mysqld
has
died
you
may
find
the
reason
for
this
in
the
file
mysql
data
directory
hostname
err
Since
it
is
very
difficult
to
know
why
something
is
crashing
first
try
to
check
whether
or
not
things
that
work
for
others
crash
for
you
Please
try
the
following
things
Take
down
the
mysqld
daemon
with
mysqladmin
shutdown
run
isamchk
silent
force
ISM
on
all
tables
and
restart
the
mysqld
daemon
This
will
ensure
that
you
are
running
from
a
clean
state
See
section
768
13
Maintaining
a
MySQL
installation
Use
mysqld
log
and
try
to
determine
from
the
information
in
the
log
whether
or
not
some
specific
query
kills
the
server
95
of
all
bugs
are
related
to
a
particular
query
Normally
this
is
one
of
the
last
queries
in
the
log
file
just
before
MySQL
restarted
You
may
be
able
to
verify
this
using
the
following
procedure
Take
down
the
MySQL
daemon
with
mysqladmin
shutdown
Make
a
backup
of
files
in
the
MySQL
database
directory
Check
the
tables
with
isamchk
s
ISM
to
verify
that
all
tables
are
correct
If
any
table
is
corrupted
repair
it
with
isamchk
r
path
to
table
ISM
Remove
or
move
away
any
old
log
files
from
the
MySQL
data
directory
Start
the
server
with
safe
mysql
log
If
mysqld
now
dies
you
can
test
if
the
problem
is
a
specific
query
by
restoring
the
backup
and
executing
mysql
mysql
log
file
You
can
of
course
do
the
last
test
in
some
other
directory
than
the
standard
MySQL
database
directory
by
starting
another
MySQL
server
with
safe
mysqld
data
path
to
backup
directory
Have
you
tried
the
benchmarks
They
should
test
MySQL
rather
well
You
can
also
add
code
that
simulates
your
application
The
benchmarks
can
be
found
in
the
bench
directory
in
the
source
distribution
or
for
a
binary
distribution
in
the
sql
bench
directory
under
your
MySQL
installation
directory
Try
fork
test
pl
and
fork2
test
pl
Check
the
file
mysql
data
directory
hostname
err
for
any
errors
If
you
configure
MySQL
for
debugging
it
will
be
much
easier
to
gather
information
about
possible
errors
if
something
goes
wrong
Reconfigure
MySQL
with
the
with
debug
option
to
configure
and
then
recompile
See
section
769
G
1
Debugging
a
MySQL
server
Configuring
MySQL
for
debugging
causes
a
safe
memory
allocator
to
be
included
that
can
find
some
errors
It
also
provides
a
lot
of
output
about
what
is
happening
Have
you
applied
the
latest
patches
for
your
operating
system
Use
the
skip
locking
option
to
mysqld
On
some
systems
the
lockd
lock
manager
does
not
work
properly
the
skip
locking
option
tells
mysqld
not
to
use
external
locking
This
means
that
you
cannot
run
2
mysqld
servers
on
the
same
data
and
that
you
must
be
careful
if
you
use
isamchk
but
it
may
be
instructive
to
try
the
option
as
a
test
Have
you
tried
mysqladmin
u
root
processlist
when
mysqld
appears
to
be
running
but
not
responding
Sometimes
mysqld
is
not
comatose
even
though
you
might
think
so
The
problem
may
be
that
all
connections
are
in
use
or
there
may
be
some
internal
lock
problem
mysqladmin
processlist
will
usually
be
able
to
make
a
connection
even
in
these
cases
and
can
provide
useful
information
about
the
current
number
of
connections
and
their
status
Run
the
command
mysqladmin
i
5
status
in
a
separate
window
to
produce
statistics
while
you
run
your
other
queries
Try
the
following
1
Start
mysqld
from
gdb
or
another
debugger
2
Run
your
test
scripts
3
Do
back
or
the
backtrace
command
in
your
debugger
when
mysqld
core
dumps
Try
to
simulate
your
application
with
a
Perl
script
to
force
MySQL
to
crash
or
misbehave
Or
send
a
normal
bug
report
See
section
770
2
3
How
to
report
bugs
or
problems
But
be
even
more
detailed
than
usual
Since
MySQL
works
for
many
people
it
may
be
that
the
crash
results
from
something
that
exists
only
on
your
computer
for
example
an
error
that
is
related
to
your
particular
system
libraries
If
you
have
a
problem
with
table
with
dynamic
length
rows
and
you
are
not
using
BLOB
TEXT
columns
but
only
VARCHAR
columns
you
can
try
to
change
all
VARCHAR
to
CHAR
with
ALTER
TABLE
This
will
force
MySQL
to
use
fixed
size
rows
Fixed
size
rows
take
a
little
extra
place
but
are
much
more
tolerant
for
corruption
The
current
dynamic
row
code
has
been
in
use
at
TCX
for
at
least
3
years
without
any
problems
but
by
nature
dynamic
length
rows
are
more
prone
to
errors
so
it
may
be
a
good
idea
to
try
if
the
above
helps
771
17
2
Some
common
errors
when
using
MySQL
772
17
2
1
MySQL
server
has
gone
away
error
The
most
common
reason
for
the
MySQL
server
has
gone
away
error
is
that
the
server
timed
out
and
closed
the
connection
By
default
the
server
closes
the
connection
after
8
hours
if
nothing
has
happened
You
can
check
that
the
MySQL
hasn
t
died
by
executing
mysqladmin
version
and
examining
the
uptime
If
you
have
a
script
you
just
have
to
issue
the
query
again
for
the
client
to
do
an
automatic
reconnection
You
normally
can
get
the
following
error
codes
in
this
case
which
one
you
get
is
OS
dependent
CR
SERVER
GONE
ERROR
The
client
couldn
t
send
a
question
to
the
server
CR
SERVER
LOST
The
client
didn
t
get
an
error
when
writing
to
the
server
but
it
didn
t
get
a
full
answer
or
any
answer
to
the
question
You
can
also
get
these
errors
if
you
send
a
query
to
the
server
that
is
incorrect
or
too
large
If
mysqld
gets
a
packet
that
is
too
large
or
out
of
order
it
assumes
that
something
has
gone
wrong
with
the
client
and
closes
the
connection
If
you
need
big
queries
for
example
if
you
are
working
with
big
BLOB
columns
you
can
increase
the
query
limit
by
starting
mysqld
with
the
O
max
allowed
packet
option
default
1M
The
extra
memory
is
allocated
on
demand
so
mysqld
will
use
more
memory
only
when
you
issue
a
big
query
or
when
mysqld
must
return
a
big
result
row
773
17
2
2
Can
t
connect
to
local
MySQL
server
error
A
MySQL
client
can
connect
to
the
mysqld
server
in
two
different
ways
Unix
sockets
which
connect
through
a
file
in
the
file
system
default
tmp
mysqld
sock
or
TCP
IP
which
connects
through
a
port
number
Unix
sockets
are
faster
than
TCP
IP
but
can
only
be
used
when
connecting
to
a
server
on
the
same
computer
Unix
sockets
are
used
if
you
don
t
specify
a
hostname
or
if
you
specify
the
special
hostname
localhost
The
error
Can
t
connect
to
normally
means
that
there
isn
t
a
MySQL
server
running
on
the
system
or
that
you
are
using
a
wrong
socket
file
or
TCP
IP
port
when
trying
to
connect
to
the
mysqld
server
Start
by
check
using
ps
that
there
is
a
process
running
named
mysqld
on
your
server
If
there
isn
t
any
mysqld
process
you
should
start
one
See
section
774
4
15
2
Problems
starting
the
MySQL
server
If
a
mysqld
process
is
running
you
can
check
the
server
by
trying
these
different
connections
the
port
number
and
socket
pathname
might
be
different
in
your
setup
of
course
shell
mysqladmin
version
shell
mysqladmin
h
hostname
version
shell
mysqladmin
h
hostname
port
3306
version
shell
mysqladmin
h
ip
for
your
host
version
shell
mysqladmin
socket
tmp
mysql
sock
version
Note
the
use
of
backquotes
rather
than
forward
quotes
with
the
hostname
command
these
cause
the
output
of
hostname
i
e
the
current
hostname
to
be
substituted
into
the
mysqladmin
command
Here
are
some
reasons
the
Can
t
connect
to
local
MySQL
server
error
might
occur
mysqld
is
not
running
You
are
running
on
a
system
that
uses
MIT
pthreads
If
you
are
running
on
a
system
that
doesn
t
have
native
threads
mysqld
uses
the
MIT
pthreads
package
See
section
775
4
2
Operating
systems
supported
by
MySQL
However
MIT
pthreads
doesn
t
support
Unix
sockets
so
on
such
a
system
you
must
always
specify
the
hostname
explicitly
when
connecting
to
the
server
Try
using
this
command
to
check
the
connection
to
the
server
shell
mysqladmin
h
hostname
version
Someone
has
removed
the
Unix
socket
that
mysqld
uses
default
tmp
mysqld
sock
You
might
have
a
cron
job
that
removes
the
MySQL
socket
e
g
a
job
that
removes
old
files
from
the
tmp
directory
You
can
always
run
mysqladmin
version
and
check
that
the
socket
mysqladmin
is
trying
to
use
really
exists
The
fix
in
this
case
is
to
change
the
cron
job
to
not
remove
mysqld
sock
or
to
place
the
socket
somewhere
else
You
can
specify
a
different
socket
location
at
MySQL
configuration
time
with
this
command
shell
configure
with
unix
socket
path
path
to
socket
You
can
also
start
safe
mysqld
with
the
socket
path
to
socket
option
and
set
the
environment
variable
MYSQL
UNIX
PORT
to
the
socket
pathname
before
starting
your
MySQL
clients
item
You
have
started
the
mysqld
server
with
the
socket
path
to
socket
option
If
you
change
the
socket
pathname
for
the
server
you
must
also
notify
the
MySQL
clients
about
the
new
path
You
can
do
this
by
setting
the
environment
variable
MYSQL
UNIX
PORT
to
the
socket
pathname
or
by
providing
the
socket
path
as
an
argument
to
the
clients
You
can
test
the
socket
with
this
command
shell
mysqladmin
socket
path
to
socket
version
You
are
using
Linux
and
one
thread
has
died
core
dumped
In
this
case
you
must
kill
the
other
mysqld
threads
for
example
with
the
mysql
zap
script
before
you
can
start
a
new
MySQL
server
See
section
776
17
1
What
to
do
if
MySQL
keeps
crashing
If
you
get
the
error
message
Can
t
connect
to
MySQL
server
on
some
hostname
you
can
try
the
following
things
to
find
out
what
is
the
problem
Check
if
the
server
up
by
doing
telnet
your
host
name
tcp
ip
port
number
and
press
RETURN
a
couple
of
times
If
there
is
a
MySQL
server
running
on
this
port
you
should
get
a
responses
that
includes
the
version
number
of
the
running
MySQL
server
If
you
get
an
error
like
telnet
Unable
to
connect
to
remote
host
Connection
refused
then
there
is
no
server
running
on
the
used
port
Try
connecting
to
the
mysqld
daemon
on
the
local
machine
and
check
the
TCP
IP
port
that
mysqld
it
s
configured
to
use
variable
port
with
mysqladmin
variables
Check
that
your
mysqld
server
is
not
started
with
the
skip
networking
option
777
17
2
3
Host
is
blocked
error
If
you
get
a
error
like
this
Host
hostname
is
blocked
because
of
many
connection
errors
Unblock
with
mysqladmin
flush
hosts
This
means
that
mysqld
has
gotten
a
lot
max
connect
errors
of
connect
requests
from
the
host
hostname
that
have
been
interrupted
in
the
middle
After
max
connect
errors
failed
requests
mysqld
assumes
that
something
is
wrong
like
a
attack
from
a
cracker
and
blocks
the
site
from
further
connections
until
someone
executes
the
command
mysqladmin
flush
hosts
By
default
mysqld
blocks
a
host
after
10
connection
errors
You
can
easily
adjust
this
by
starting
the
server
like
this
shell
safe
mysqld
O
max
connect
errors
10000
Note
that
if
you
get
this
error
message
for
a
given
host
you
should
first
check
that
there
isn
t
anything
wrong
with
TCP
IP
connections
from
that
host
If
your
TCP
IP
connections
aren
t
working
it
won
t
do
you
any
good
to
increase
the
value
of
the
max
connect
errors
variable
778
17
2
4
Out
of
memory
error
If
you
issue
a
query
and
get
something
like
the
following
error
mysql
Out
of
memory
at
line
42
malloc
c
mysql
needed
8136
byte
8k
memory
in
use
12481367
bytes
12189k
ERROR
2008
MySQL
client
ran
out
of
memory
Note
that
the
error
refers
to
the
MySQL
client
mysql
The
reason
for
this
error
is
simply
that
the
client
does
not
have
enough
memory
to
store
the
whole
result
To
remedy
the
problem
first
check
that
your
query
is
correct
Is
it
reasonable
that
it
should
return
so
many
rows
If
so
you
can
use
mysql
quick
which
uses
mysql
use
result
to
retrieve
the
result
set
This
places
less
of
a
load
on
the
client
but
more
on
the
server
779
17
2
5
Packet
too
large
error
When
a
MySQL
client
or
the
mysqld
server
gets
a
packet
bigger
than
max
allowed
packet
bytes
it
issues
a
Packet
too
large
error
and
closes
the
connection
If
you
are
using
the
mysql
client
you
may
specify
a
bigger
buffer
by
starting
the
client
with
mysql
set
variable
max
allowed
packet
8M
If
you
are
using
other
clients
that
do
not
allow
you
to
specify
the
maximum
packet
size
such
as
DBI
you
need
to
set
the
packet
size
when
you
start
the
server
You
cau
use
a
command
line
option
to
mysqld
to
set
max
allowed
packet
to
a
larger
size
For
example
if
you
are
expecting
to
store
the
full
length
of
a
BLOB
into
a
table
you
ll
need
to
start
the
server
with
the
set
variable
max
allowed
packet
24M
option
780
17
2
6
The
table
is
full
error
This
error
occurs
when
an
in
memory
temporary
table
becomes
larger
than
tmp
table
size
bytes
To
avoid
this
problem
you
can
use
the
O
tmp
table
size
option
to
mysqld
to
increase
the
temporary
table
size
or
use
the
SQL
option
SQL
BIG
TABLES
before
you
issue
the
problematic
query
See
section
781
7
24
SET
OPTION
syntax
You
can
also
start
mysqld
with
the
big
tables
option
This
is
exactly
the
same
as
using
SQL
BIG
TABLES
for
all
queries
782
17
2
7
Commands
out
of
sync
error
in
client
If
you
get
Commands
out
of
sync
You
can
t
run
this
command
now
in
your
client
code
you
are
calling
client
functions
in
the
wrong
order
This
can
happen
for
example
if
you
are
using
mysql
use
result
and
try
to
execute
a
new
query
before
you
have
called
mysql
free
result
It
can
also
happen
if
you
try
to
execute
two
queries
that
return
data
without
a
mysql
use
result
or
mysql
store
result
in
between
783
17
2
8
Ignoring
user
error
If
you
get
the
following
error
Found
wrong
password
for
user
some
user
some
host
Ignoring
user
This
means
that
when
mysqld
was
started
or
when
it
reloaded
the
permissions
tables
it
found
an
entry
in
the
user
table
with
an
invalid
password
As
a
result
the
entry
is
simply
ignored
by
the
permission
system
Possible
causes
of
and
fixes
for
this
problem
You
may
be
running
a
new
version
of
mysqld
with
an
old
user
table
You
can
check
this
by
executing
mysqlshow
mysql
user
to
see
if
the
password
field
is
shorter
than
16
characters
If
so
you
can
correct
this
condition
by
running
the
scripts
add
long
password
script
The
user
has
an
old
password
8
chararacters
long
and
you
didn
t
start
mysqld
with
the
old
protocol
option
Update
the
user
in
the
user
table
with
a
new
password
or
restart
mysqld
with
old
protocol
You
have
specified
a
password
in
the
user
table
without
using
the
PASSWORD
function
Use
mysql
to
update
the
user
in
the
user
table
with
a
new
password
Make
sure
to
use
the
PASSWORD
function
mysql
update
user
set
password
PASSWORD
your
password
where
user
XXX
784
17
2
9
Table
xxx
doesn
t
exist
error
If
you
get
the
error
Table
xxx
doesn
t
exist
or
Can
t
find
file
xxx
errno
2
this
means
that
no
table
exists
in
the
current
database
with
the
name
xxx
Note
that
as
MySQL
uses
directories
and
files
to
store
databases
and
tables
the
database
and
table
names
are
case
sensitive
On
Win32
the
databases
and
tables
names
are
not
case
sensitive
but
all
references
to
a
given
table
within
a
query
must
use
the
same
case
You
can
check
which
tables
you
have
in
the
current
database
with
SHOW
TABLES
See
section
785
7
20
SHOW
syntax
Get
information
about
tables
columns
786
17
3
How
MySQL
handles
a
full
disk
When
a
disk
full
condition
occurs
MySQL
does
the
following
It
checks
once
every
minute
to
see
whether
or
not
there
is
enough
space
to
write
the
current
row
If
there
is
enough
space
it
continues
as
if
nothing
had
happened
Every
6
minutes
it
writes
an
entry
to
the
log
file
warning
about
the
disk
full
condition
To
alleviate
the
problem
you
can
take
the
following
actions
To
continue
you
only
have
to
free
enough
disk
space
to
insert
all
records
To
abort
the
thread
you
must
send
a
mysqladmin
kill
to
the
thread
The
thread
will
be
aborted
the
next
time
it
checks
the
disk
in
1
minute
Note
that
other
threads
may
be
waiting
for
the
table
that
caused
the
disk
full
condition
If
you
have
several
locked
threads
killing
the
one
thread
that
is
waiting
on
the
disk
full
condition
will
allow
the
other
threads
to
continue
787
17
4
How
to
run
SQL
commands
from
a
text
file
The
mysql
client
typically
is
used
interactively
like
this
shell
mysql
database
However
it
s
also
possible
to
put
your
SQL
commands
in
a
file
and
tell
mysql
to
read
its
input
from
that
file
To
do
so
create
a
text
file
text
file
that
contains
the
commands
you
wish
to
execute
Then
invoke
mysql
as
shown
below
shell
mysql
database
text
file
You
can
also
start
your
text
file
with
a
USE
db
name
statement
In
this
case
it
is
unnecessary
to
specify
the
database
name
on
the
command
line
shell
mysql
text
file
See
section
788
12
1
Overview
of
the
different
MySQL
programs
789
17
5
Where
MySQL
stores
temporary
files
MySQL
uses
the
value
of
the
TMPDIR
environment
variable
as
the
pathname
of
the
directory
in
which
to
store
temporary
files
If
you
don
t
have
TMPDIR
set
MySQL
uses
the
system
default
which
is
normally
tmp
or
usr
tmp
If
the
file
system
containing
your
temporary
file
directory
is
too
small
you
should
edit
safe
mysqld
to
set
TMPDIR
to
point
to
a
directory
in
a
file
system
where
you
have
enough
space
You
can
also
set
the
temporary
directory
using
the
tmpdir
option
to
mysqld
MySQL
creates
all
temporary
files
as
hidden
files
This
ensures
that
the
temporary
files
will
be
removed
if
mysqld
is
terminated
The
disadvantage
of
using
hidden
files
is
that
you
will
not
see
a
big
temporary
file
that
fills
up
the
file
system
in
which
the
temporary
file
directory
is
located
When
sorting
ORDER
BY
or
GROUP
BY
MySQL
normally
uses
one
or
two
temporary
files
The
maximum
disk
space
needed
is
length
of
what
is
sorted
sizeof
database
pointer
number
of
matched
rows
2
sizeof
database
pointer
is
usually
4
but
may
grow
in
the
future
for
really
big
tables
For
some
SELECT
queries
MySQL
also
creates
temporary
SQL
tables
These
are
not
hidden
and
have
names
of
the
form
SQL
ALTER
TABLE
and
OPTIMIZE
TABLE
create
a
temporary
table
in
the
same
directory
as
the
original
table
790
17
6
How
to
protect
tmp
mysql
sock
from
being
deleted
If
you
have
problems
with
the
fact
that
anyone
can
delete
the
MySQL
communication
socket
tmp
mysql
sock
you
can
on
most
versions
of
Unix
protect
your
tmp
file
system
by
setting
the
sticky
bit
on
it
Log
in
as
root
and
do
the
following
shell
chmod
s
tmp
This
will
protect
your
tmp
file
system
so
that
files
can
be
deleted
only
by
their
owners
or
the
superuser
root
You
can
check
if
the
sticky
bit
is
set
by
executing
ls
ld
tmp
If
the
last
permission
bit
is
t
the
bit
is
set
791
17
7
Access
denied
error
See
section
792
6
6
How
the
privilege
system
works
And
especially
see
section
793
6
13
Causes
of
Access
denied
errors
794
17
8
How
to
run
MySQL
as
a
normal
user
The
MySQL
server
mysqld
can
be
started
and
run
by
any
user
In
order
to
change
mysqld
to
run
as
Unix
user
user
name
you
must
do
the
following
1
Stop
the
server
if
it
s
running
use
mysqladmin
shutdown
2
Change
the
database
directories
and
files
so
that
user
name
has
privileges
to
read
and
write
files
in
them
you
may
need
to
do
this
as
the
Unix
root
user
shell
chown
R
user
name
path
to
mysql
datadir
If
directories
or
files
within
the
MySQL
data
directory
are
symlinks
you
ll
also
need
to
follow
those
links
and
change
the
directories
and
files
they
point
to
chown
R
may
not
follow
symlinks
for
you
3
Start
the
server
as
user
user
name
or
if
you
are
using
MySQL
3
22
or
later
start
mysqld
as
the
Unix
root
user
and
use
the
user
user
name
option
mysqld
will
switch
to
run
as
Unix
user
user
name
before
accepting
any
connections
4
If
you
are
using
the
mysql
server
script
to
start
mysqld
when
the
system
is
rebooted
you
should
edit
mysql
server
to
use
su
to
run
mysqld
as
user
user
name
or
to
invoke
mysqld
with
the
user
option
No
changes
to
safe
mysqld
are
necessary
At
this
point
your
mysqld
process
should
be
running
fine
and
dandy
as
the
Unix
user
user
name
One
thing
hasn
t
changed
though
the
contents
of
the
permissions
tables
By
default
right
after
running
the
permissions
table
install
script
mysql
install
db
the
MySQL
user
root
is
the
only
user
with
permission
to
access
the
mysql
database
or
to
create
or
drop
databases
Unless
you
have
changed
those
permissions
they
still
hold
This
shouldn
t
stop
you
from
accessing
MySQL
as
the
MySQL
root
user
when
you
re
logged
in
as
a
Unix
user
other
than
root
just
specify
the
u
root
option
to
the
client
program
Note
that
accessing
MySQL
as
root
by
supplying
u
root
on
the
command
line
has
nothing
to
do
with
MySQL
running
as
the
Unix
root
user
or
indeed
as
other
Unix
user
The
access
permissions
and
user
names
of
MySQL
are
completely
separate
from
Unix
user
names
The
only
connection
with
Unix
user
names
is
that
if
you
don
t
provide
a
u
option
when
you
invoke
a
client
program
the
client
will
try
to
connect
using
your
Unix
login
name
as
your
MySQL
user
name
If
your
Unix
box
itself
isn
t
secured
you
should
probably
at
least
put
a
password
on
the
MySQL
root
users
in
the
access
tables
Otherwise
any
user
with
an
account
on
that
machine
can
run
mysql
u
root
db
name
and
do
whatever
he
likes
795
17
9
Problems
with
file
permissions
If
you
have
problems
with
file
permissions
for
example
if
mysql
issues
the
following
error
message
when
you
create
a
table
ERROR
Can
t
find
file
path
with
filename
frm
Errcode
13
Then
the
environment
variable
UMASK
might
be
set
incorrectly
when
mysqld
starts
up
The
default
umask
value
is
0660
You
can
change
this
behavior
by
starting
safe
mysqld
as
follows
shell
UMASK
384
600
in
octal
shell
export
UMASK
shell
path
to
safe
mysqld
796
17
10
File
not
found
If
you
get
ERROR
not
found
errno
23
Can
t
open
file
errno
24
or
any
other
error
with
errno
23
or
errno
24
from
MySQL
it
means
that
you
haven
t
allocated
enough
file
descriptors
for
MySQL
You
can
use
the
perror
utility
to
get
a
description
of
what
the
error
number
means
shell
perror
23
File
table
overflow
shell
perror
24
Too
many
open
files
The
problem
here
is
that
mysqld
is
trying
to
keep
open
too
many
files
simultaneously
You
can
either
tell
mysqld
not
to
open
so
many
files
at
once
or
increase
the
number
of
file
descriptors
available
to
mysqld
To
tell
mysqld
to
keep
open
fewer
files
at
a
time
you
can
make
the
table
cache
smaller
by
using
the
O
table
cache
32
option
to
safe
mysqld
the
default
value
is
64
Reducing
the
value
of
max
connections
will
also
reduce
the
number
of
open
files
the
default
value
is
90
To
change
the
number
of
file
descriptors
available
to
mysqld
modify
the
safe
mysqld
script
There
is
a
commented
out
line
ulimit
n
256
in
the
script
You
can
remove
the
character
to
uncomment
this
line
and
change
the
number
256
to
change
the
number
of
file
descriptors
available
to
mysqld
ulimit
can
increase
the
number
of
file
descriptors
but
only
up
to
the
limit
imposed
by
the
operating
system
If
you
need
to
increase
the
OS
limit
on
the
number
of
file
descriptors
available
to
each
process
consult
the
documentation
for
your
operating
system
Note
that
if
you
run
the
tcsh
shell
ulimit
will
not
work
tcsh
will
also
report
incorrect
values
when
you
ask
for
the
current
limits
In
this
case
you
should
start
safe
mysqld
with
sh
797
17
11
Problems
using
DATE
columns
The
format
of
a
DATE
value
is
YYYY
MM
DD
According
to
ANSI
SQL
no
other
format
is
allowed
You
should
use
this
format
in
UPDATE
expressions
and
in
the
WHERE
clause
of
SELECT
statements
For
example
mysql
SELECT
FROM
tbl
name
WHERE
date
1997
05
05
As
a
convenience
MySQL
automatically
converts
a
date
to
a
number
if
the
date
is
used
in
a
numeric
context
and
vice
versa
It
is
also
smart
enough
to
allow
a
relaxed
string
form
when
updating
and
in
a
WHERE
clause
that
compares
a
date
to
a
TIMESTAMP
DATE
or
a
DATETIME
column
Relaxed
form
means
that
any
non
numeric
character
may
be
used
as
the
separator
between
parts
For
example
1998
08
15
and
1998
08
15
are
equivalent
MySQL
can
also
convert
a
string
containing
no
separators
such
as
19980815
provided
it
makes
sense
as
a
date
The
special
date
0000
00
00
can
be
stored
and
retrieved
as
0000
00
00
When
using
a
0000
00
00
date
through
MyODBC
it
will
automatically
be
converted
to
NULL
in
MyODBC
2
50
12
and
above
because
ODBC
can
t
handle
this
kind
of
date
Since
MySQL
performs
the
conversions
described
above
the
following
statements
work
mysql
INSERT
INTO
tbl
name
idate
VALUES
19970505
mysql
INSERT
INTO
tbl
name
idate
VALUES
19970505
mysql
INSERT
INTO
tbl
name
idate
VALUES
97
05
05
mysql
INSERT
INTO
tbl
name
idate
VALUES
1997
05
05
mysql
INSERT
INTO
tbl
name
idate
VALUES
1997
05
05
mysql
INSERT
INTO
tbl
name
idate
VALUES
0000
00
00
mysql
SELECT
idate
FROM
tbl
name
WHERE
idate
1997
05
05
mysql
SELECT
idate
FROM
tbl
name
WHERE
idate
19970505
mysql
SELECT
mod
idate
100
FROM
tbl
name
WHERE
idate
19970505
mysql
SELECT
idate
FROM
tbl
name
WHERE
idate
19970505
However
the
following
will
not
work
mysql
SELECT
idate
FROM
tbl
name
WHERE
STRCMP
idate
19970505
0
STRCMP
is
a
string
function
so
it
converts
idate
to
a
string
and
performs
a
string
comparison
It
does
not
convert
19970505
to
a
date
and
perform
a
date
comparison
Note
that
MySQL
does
no
checking
whether
or
not
the
date
is
correct
If
you
store
an
incorrect
date
such
as
1998
2
31
the
wrong
date
will
be
stored
If
the
date
cannot
be
converted
to
any
reasonable
value
a
0
is
stored
in
the
DATE
field
This
is
mainly
a
speed
issue
and
we
think
it
is
up
to
the
application
to
check
the
dates
and
not
the
server
798
17
12
Timezone
problems
If
you
have
a
problem
with
SELECT
NOW
returning
values
in
GMT
and
not
your
local
time
you
have
to
set
the
TZ
environment
variable
to
your
current
timezone
This
should
be
done
for
the
environment
in
which
the
server
runs
for
example
in
safe
mysqld
or
mysql
server
799
17
13
Case
sensitivity
in
searches
By
default
MySQL
searches
are
case
insensitive
although
there
are
some
character
sets
that
are
never
case
insensitive
such
as
czech
That
means
that
if
you
search
with
col
name
LIKE
a
you
will
get
all
column
values
that
start
with
A
or
a
If
you
want
to
make
this
search
case
sensitive
use
something
like
INDEX
col
name
A
0
to
check
a
prefix
Or
use
STRCMP
col
name
A
0
if
the
column
value
must
be
exactly
A
Simple
comparison
operations
sorting
and
grouping
are
based
on
each
character
s
sort
value
Characters
with
the
same
sort
value
like
E
e
and
e
are
treated
as
the
same
character
LIKE
comparisons
are
done
on
the
uppercase
value
of
each
character
E
e
but
E
e
If
you
want
a
column
always
to
be
treated
in
case
sensitive
fashion
declare
it
as
BINARY
See
section
800
7
6
CREATE
TABLE
syntax
If
you
are
using
Chinese
data
in
the
so
called
big5
encoding
you
want
to
make
all
character
columns
BINARY
This
works
because
the
sorting
order
of
big5
encoding
characters
is
based
on
the
order
of
ASCII
codes
801
17
14
Problems
with
NULL
values
The
concept
of
the
NULL
value
is
a
common
source
of
confusion
for
newcomers
to
SQL
who
often
think
that
NULL
is
the
same
thing
as
an
empty
string
This
is
not
the
case
For
example
the
following
statements
are
completely
different
mysql
INSERT
INTO
my
table
phone
VALUES
NULL
mysql
INSERT
INTO
my
table
phone
VALUES
Both
statements
insert
a
value
into
the
phone
column
but
the
first
inserts
a
NULL
value
and
the
second
inserts
an
empty
string
The
meaning
of
the
first
can
be
regarded
as
phone
number
is
not
known
and
the
meaning
of
the
second
can
be
regarded
as
she
has
no
phone
In
SQL
the
NULL
value
is
always
false
in
comparison
to
any
other
value
even
NULL
An
expression
that
contains
NULL
always
produces
a
NULL
value
unless
otherwise
indicated
in
the
documentation
for
the
operators
and
functions
involved
in
the
expression
All
columns
in
the
following
example
return
NULL
mysql
SELECT
NULL
1
NULL
CONCAT
Invisible
NULL
If
you
want
to
search
for
column
values
that
are
NULL
you
cannot
use
the
NULL
test
The
following
statement
returns
no
rows
because
expr
NULL
is
FALSE
for
any
expression
mysql
SELECT
FROM
my
table
WHERE
phone
NULL
To
look
for
NULL
values
you
must
use
the
IS
NULL
test
The
following
shows
how
to
find
the
NULL
phone
number
and
the
empty
phone
number
mysql
SELECT
FROM
my
table
WHERE
phone
IS
NULL
mysql
SELECT
FROM
my
table
WHERE
phone
In
MySQL
as
in
many
other
SQL
servers
you
can
t
index
columns
that
can
have
NULL
values
You
must
declare
such
columns
NOT
NULL
Conversely
you
cannot
insert
NULL
into
an
indexed
column
When
reading
data
with
LOAD
DATA
INFILE
empty
columns
are
updated
with
If
you
want
a
NULL
value
in
a
column
you
should
use
N
in
the
text
file
The
literal
word
NULL
may
also
be
used
under
some
circumstances
See
section
802
7
15
LOAD
DATA
INFILE
syntax
When
using
ORDER
BY
NULL
values
are
presented
first
If
you
sort
in
descending
order
using
DESC
NULL
values
are
presented
last
When
using
GROUP
BY
all
NULL
values
are
regarded
as
equal
To
help
with
NULL
handling
you
can
use
the
IS
NULL
and
IS
NOT
NULL
operators
and
the
IFNULL
function
For
some
column
types
NULL
values
are
handled
specially
If
you
insert
NULL
into
the
first
TIMESTAMP
column
of
a
table
the
current
date
and
time
is
inserted
If
you
insert
NULL
into
an
AUTO
INCREMENT
column
the
next
number
in
the
sequence
is
inserted
803
17
15
Problems
with
alias
You
can
use
alias
to
refer
to
a
column
in
the
GROUP
BY
ORDER
BY
or
in
the
HAVING
part
Aliases
can
also
be
used
to
give
columns
more
better
names
SELECT
SQRT
a
b
as
rt
FROM
table
name
GROUP
BY
rt
HAVING
rt
0
SELECT
id
COUNT
AS
cnt
FROM
table
name
GROUP
BY
id
HAVING
cnt
0
SELECT
id
AS
Customer
identity
FROM
table
name
Note
that
you
ANSI
SQL
doesn
t
allow
you
to
refer
to
an
alias
in
a
WHERE
clause
This
is
because
that
when
the
WHERE
code
is
executed
the
column
value
may
not
yet
be
determinated
For
example
the
following
query
is
illegal
SELECT
id
COUNT
AS
cnt
FROM
table
name
WHERE
cnt
0
GROUP
BY
id
The
WHERE
statement
is
executed
to
determinate
which
rows
should
be
included
in
the
GROUP
BY
part
while
HAVING
is
used
to
decide
which
rows
from
the
result
set
should
be
used
804
17
16
Deleting
rows
from
related
tables
As
MySQL
doesn
t
support
sub
selects
or
use
of
more
than
one
table
in
the
DELETE
statement
you
should
use
the
following
approach
to
delete
rows
from
2
related
tables
1
SELECT
the
rows
based
on
some
WHERE
condition
in
the
main
table
2
DELETE
the
rows
in
the
main
table
based
on
the
same
condition
3
DELETE
FROM
related
table
WHERE
related
column
IN
selected
rows
If
the
total
number
of
characters
in
the
query
with
related
column
is
more
than
1
048
576
the
default
value
of
max
allowed
packet
you
should
split
it
into
smaller
parts
and
execute
multiple
DELETE
statements
You
will
probably
get
the
fastest
DELETE
by
only
deleting
100
1000
related
column
id
s
per
time
if
the
related
column
is
an
index
If
the
related
column
isn
t
an
index
the
speed
is
independent
of
the
number
of
arguments
in
the
IN
clause
805
17
17
Solving
problems
with
no
matching
rows
If
you
have
a
complicated
query
with
many
tables
that
doesn
t
return
any
rows
you
should
use
the
following
procedure
to
find
out
what
is
wrong
with
your
query
1
Test
the
query
with
EXPLAIN
and
check
if
you
can
find
something
that
is
obviously
wrong
See
section
806
7
21
EXPLAIN
syntax
Get
information
about
a
SELECT
2
Select
only
those
fields
that
are
used
in
the
WHERE
clause
3
Remove
one
table
at
a
time
from
the
query
until
it
returns
some
rows
If
the
tables
are
big
it
s
a
good
idea
to
use
LIMIT
10
with
the
query
4
Do
a
SELECT
for
the
column
that
should
have
matched
a
row
against
the
table
that
was
last
removed
from
the
query
5
If
you
are
comparing
FLOAT
or
DOUBLE
columns
with
numbers
that
have
decimals
you
can
t
use
This
problem
is
common
in
most
computer
languages
because
floating
point
values
are
not
exact
values
mysql
SELECT
FROM
table
name
WHERE
float
column
3
5
mysql
SELECT
FROM
table
name
WHERE
float
column
between
3
45
and
3
55
In
most
cases
changing
the
FLOAT
to
a
DOUBLE
will
fix
this
6
If
you
still
can
t
find
out
what
s
wrong
create
a
minimal
test
that
can
be
run
with
mysql
test
query
sql
that
shows
your
problems
You
can
create
a
test
file
with
mysqldump
quick
database
tables
query
sql
Take
the
file
up
in
a
editor
remove
some
insert
lines
if
there
are
too
many
of
these
and
add
your
select
statement
last
in
the
file
Test
that
you
still
have
your
problem
by
doing
shell
mysqladmin
create
test2
shell
mysql
test2
query
sql
Post
the
test
file
using
mysqlbug
to
807
mysql
lists
mysql
com
808
17
18
Problems
with
ALTER
TABLE
If
ALTER
TABLE
dies
with
an
error
like
this
Error
on
rename
of
database
name
frm
to
database
B
a
frm
Errcode
17
The
problem
may
be
that
MySQL
has
crashed
in
a
previous
ALTER
TABLE
and
there
is
an
old
table
named
A
something
or
B
something
lying
around
In
this
case
go
to
the
MySQL
data
directory
and
delete
all
files
that
have
names
starting
with
A
or
B
You
may
want
to
move
them
elsewhere
instead
of
deleting
them
ALTER
TABLE
works
the
following
way
Create
a
new
table
named
A
xxx
with
the
requested
changes
All
rows
from
the
old
table
are
copied
to
A
xxx
The
old
table
is
renamed
B
xxx
A
xxx
is
renamed
to
your
old
table
name
B
xxx
is
deleted
If
something
goes
wrong
with
the
renaming
operation
MySQL
tries
to
undo
the
changes
If
something
goes
seriously
wrong
this
shouldn
t
happen
of
course
MySQL
may
leave
the
old
table
as
B
xxx
but
a
simple
rename
should
get
your
data
back
809
17
19
How
to
change
the
order
of
columns
in
a
table
The
whole
point
of
SQL
is
to
abstract
the
application
from
the
data
storage
format
You
should
always
specify
the
order
in
wish
you
wish
to
retrieve
your
data
For
example
SELECT
col
name1
col
name2
col
name3
FROM
tbl
name
will
return
columns
in
the
order
col
name1
col
name2
col
name3
whereas
SELECT
col
name1
col
name3
col
name2
FROM
tbl
name
will
return
columns
in
the
order
col
name1
col
name3
col
name2
You
should
NEVER
in
an
application
use
SELECT
and
retrieve
the
columns
based
on
their
position
because
the
order
in
which
columns
are
returned
CANNOT
be
guaranteed
over
time
A
simple
change
to
your
database
may
cause
your
application
to
fail
rather
dramatically
If
you
want
to
change
the
order
of
columns
anyway
you
can
do
it
as
follows
1
Create
a
new
table
with
the
columns
in
the
right
order
2
Execute
INSERT
INTO
new
table
SELECT
fields
in
new
table
order
FROM
old
table
3
Drop
or
rename
old
table
4
ALTER
TABLE
new
table
RENAME
old
table
810
18
Solving
some
common
problems
with
MySQL
811
18
1
Database
replication
The
most
general
way
to
replicate
a
database
is
to
use
the
update
log
See
section
812
9
2
The
update
log
This
requires
one
database
that
acts
as
a
master
to
which
data
changes
are
made
and
one
or
more
other
databases
that
act
as
slaves
To
update
a
slave
just
run
mysql
update
log
Supply
host
user
and
password
options
that
are
appropriate
for
the
slave
database
and
use
the
update
log
from
the
master
database
as
input
If
you
never
delete
anything
from
a
table
you
can
use
a
TIMESTAMP
column
to
find
out
which
rows
have
been
inserted
or
changed
in
the
table
since
the
last
replication
by
comparing
to
the
time
when
you
did
the
replication
last
time
and
only
copy
these
rows
to
the
mirror
It
is
possible
to
make
a
two
way
updating
system
using
both
the
update
log
for
deletes
and
timestamps
on
both
sides
But
in
that
case
you
must
be
able
to
handle
conflicts
when
the
same
data
have
been
changed
in
both
ends
You
probably
want
to
keep
the
old
version
to
help
with
deciding
what
has
been
updated
Because
replication
in
this
case
is
done
with
SQL
statements
you
should
not
use
the
following
functions
in
statements
that
update
the
database
they
may
not
return
the
same
value
as
in
the
original
database
DATABASE
GET
LOCK
and
RELEASE
LOCK
RAND
USER
SYSTEM
USER
or
SESSION
USER
VERSION
All
time
functions
are
safe
to
use
as
the
timestamp
is
sent
to
the
mirror
if
needed
LAST
INSERT
ID
is
also
safe
to
use
813
18
2
Database
backups
Since
MySQL
tables
are
stored
as
files
it
is
easy
to
do
a
backup
To
get
a
consistent
backup
do
a
LOCK
TABLES
on
the
relevant
tables
See
section
814
7
23
LOCK
TABLES
UNLOCK
TABLES
syntax
You
only
need
a
read
lock
this
allows
other
threads
to
continue
to
query
the
tables
while
you
are
making
a
copy
of
the
files
in
the
database
directory
If
you
want
to
make
a
SQL
level
backup
you
can
use
SELECT
INTO
OUTFILE
Another
way
to
backup
a
database
is
to
use
the
mysqldump
program
1
Do
a
full
backup
of
your
databases
shell
mysqldump
tab
path
to
some
dir
lock
tables
opt
You
can
also
simply
copy
all
table
files
frm
ISD
and
ISM
files
as
long
as
the
server
isn
t
updating
anything
2
Stop
mysqld
if
it
s
running
then
start
it
with
the
log
update
option
You
will
get
log
files
with
names
of
the
form
hostname
n
where
n
is
a
number
that
is
incremented
each
time
you
execute
mysqladmin
refresh
or
mysqladmin
flush
logs
the
FLUSH
LOGS
statement
or
restart
the
server
These
log
files
provide
you
with
the
information
you
need
to
replicate
changes
to
the
database
that
are
made
subsequent
to
the
point
at
which
you
executed
mysqldump
If
you
have
to
restore
something
try
to
recover
your
tables
using
isamchk
r
first
That
should
work
in
99
9
of
all
cases
If
isamchk
fails
try
the
following
procedure
1
Restore
the
original
mysqldump
backup
2
Execute
the
following
command
to
re
run
the
updates
in
the
update
logs
shell
ls
1
t
r
hostname
0
9
xargs
cat
mysql
ls
is
used
to
get
all
the
log
files
in
the
right
order
You
can
also
do
selective
backups
with
SELECT
INTO
OUTFILE
file
name
FROM
tbl
name
and
restore
with
LOAD
DATA
INFILE
file
name
REPLACE
To
avoid
duplicate
records
you
need
a
PRIMARY
KEY
or
a
UNIQUE
key
in
the
table
The
REPLACE
keyword
causes
old
records
to
be
replaced
with
new
ones
when
a
new
record
duplicates
an
old
record
on
a
unique
key
value
815
18
3
Running
multiple
MySQL
servers
on
the
same
machine
There
are
circumstances
when
you
might
want
to
run
multiple
servers
on
the
same
machine
For
example
you
might
want
to
test
a
new
MySQL
release
while
leaving
your
existing
production
setup
undisturbed
Or
you
might
be
an
Internet
service
provider
that
wants
to
provide
independent
MySQL
installations
for
different
customers
If
you
want
to
run
multiple
servers
the
easiest
way
is
to
compile
the
servers
with
different
TCP
IP
ports
and
socket
files
so
they
are
not
both
listening
to
the
same
TCP
IP
port
or
socket
file
Assume
an
existing
server
is
configured
for
the
default
port
number
and
socket
file
Then
configure
the
new
server
with
a
configure
command
something
like
this
shell
configure
with
tcp
port
port
number
with
unix
socket
file
name
prefix
usr
local
mysql
3
22
9
Here
port
number
and
file
name
should
be
different
than
the
default
port
number
and
socket
file
pathname
and
the
prefix
value
should
specify
an
installation
directory
different
than
the
one
under
which
the
existing
MySQL
installation
is
located
You
can
check
the
socket
and
port
used
by
any
currently
executing
MySQL
server
with
this
command
shell
mysqladmin
h
hostname
port
port
number
variables
If
you
have
a
MySQL
server
running
on
the
port
you
used
you
will
get
a
list
of
some
of
the
most
important
configurable
variables
in
MySQL
including
the
socket
name
You
should
also
edit
the
initialization
script
for
your
machine
probably
mysql
server
to
start
and
kill
multiple
mysqld
servers
You
don
t
have
to
recompile
a
new
MySQL
server
just
to
start
with
a
different
port
and
socket
You
can
change
the
port
and
socket
to
be
used
by
specifying
them
at
runtime
as
options
to
safe
mysqld
shell
path
to
safe
mysqld
socket
file
name
port
port
number
If
you
run
the
new
server
on
the
same
database
directory
as
another
server
with
logging
enabled
you
should
also
specify
the
name
of
the
log
files
to
safe
mysqld
with
log
and
log
update
Otherwise
both
servers
may
be
trying
to
write
to
the
same
log
file
Warning
Normally
you
should
never
have
two
servers
that
update
data
in
the
same
database
If
your
OS
doesn
t
support
fault
free
system
locking
this
may
lead
to
unpleasant
surprises
If
you
want
to
use
another
database
directory
for
the
second
server
you
can
use
the
datadir
path
option
to
safe
mysqld
When
you
want
to
connect
to
a
MySQL
server
that
is
running
with
a
different
port
than
the
port
that
is
compiled
into
your
client
you
can
use
one
of
the
following
methods
Start
the
client
with
host
hostname
port
port
numer
or
host
localhost
socket
file
name
In
your
C
or
Perl
programs
you
can
give
the
port
and
socket
arguments
when
connecting
to
the
MySQL
server
Set
the
MYSQL
UNIX
PORT
and
MYSQL
TCP
PORT
environment
variables
to
point
to
the
Unix
socket
and
TCP
IP
port
before
you
start
your
clients
If
you
normally
use
a
specific
socket
or
port
you
should
place
commands
to
set
these
environment
variables
in
your
login
file
See
section
816
12
1
Overview
of
the
different
MySQL
programs
Specify
the
default
socket
and
TCP
IP
port
in
the
my
cnf
file
in
your
home
directory
See
section
817
4
15
4
Option
files
818
19
MySQL
client
tools
and
APIs
819
19
1
MySQL
C
API
The
C
API
code
is
distributed
with
MySQL
It
is
included
in
the
mysqlclient
library
and
allows
C
programs
to
access
a
database
Many
of
the
clients
in
the
MySQL
source
distribution
are
written
in
C
If
you
are
looking
for
examples
that
demonstrate
how
to
use
the
C
API
take
a
look
at
these
clients
Most
of
the
other
client
APIs
all
except
Java
use
the
mysqlclient
library
to
communicate
with
the
MySQL
server
This
means
that
for
example
you
can
take
advantage
of
many
of
the
same
environment
variables
that
are
used
by
other
client
programs
because
they
are
referenced
from
the
library
See
section
820
12
1
Overview
of
the
different
MySQL
programs
for
a
list
of
these
variables
The
client
has
a
maximum
communication
buffer
size
The
size
of
the
buffer
that
is
allocated
initially
16K
bytes
is
automatically
increased
up
to
the
maximum
size
the
default
maximum
is
24M
Since
buffer
sizes
are
increased
only
as
demand
warrants
simply
increasing
the
default
maximum
limit
does
not
in
inself
cause
more
resources
to
be
used
This
size
check
is
mostly
a
check
for
erroneous
queries
and
communication
packets
The
communication
buffer
must
be
large
enough
to
contain
a
single
SQL
statement
for
client
to
server
traffic
and
one
row
of
returned
data
for
server
to
client
traffic
Each
thread
s
communication
buffer
is
dynamically
enlarged
to
handle
any
query
or
row
up
to
the
maximum
limit
For
example
if
you
have
BLOB
values
that
contain
up
to
16M
of
data
you
must
have
a
communication
buffer
limit
of
at
least
16M
in
both
server
and
client
The
client
s
default
maximum
is
24M
but
the
default
maximum
in
the
server
is
1M
You
can
increase
this
by
changing
the
value
of
the
max
allowed
packet
parameter
when
the
server
is
started
See
section
821
10
1
Tuning
server
parameters
The
MySQL
server
shrinks
each
communication
buffer
to
net
buffer
length
bytes
after
each
query
For
clients
the
size
of
the
buffer
associated
with
a
connection
is
not
decreased
until
the
connection
is
closed
at
which
time
client
memory
is
reclaimed
822
19
2
C
API
datatypes
MYSQL
This
structure
represents
a
handle
to
one
database
connection
It
is
used
for
almost
all
MySQL
functions
MYSQL
RES
This
structure
represents
the
result
of
a
query
that
returns
rows
SELECT
SHOW
DESCRIBE
EXPLAIN
The
information
returned
from
a
query
is
called
the
result
set
in
the
remainder
of
this
section
MYSQL
ROW
This
is
a
type
safe
representation
of
one
row
of
data
It
is
currently
implemented
as
an
array
of
counted
byte
strings
You
cannot
treat
these
as
null
terminated
strings
if
field
values
may
contain
binary
data
because
such
values
may
contain
null
bytes
internally
Rows
are
obtained
by
calling
mysql
fetch
row
MYSQL
FIELD
This
structure
contains
information
about
a
field
such
as
the
field
s
name
type
and
size
Its
members
are
described
in
more
detail
below
You
may
obtain
the
MYSQL
FIELD
structures
for
each
field
by
calling
mysql
fetch
field
repeatedly
Field
values
are
not
part
of
this
structure
they
are
contained
in
a
MYSQL
ROW
structure
MYSQL
FIELD
OFFSET
This
is
a
type
safe
representation
of
an
offset
into
a
MySQL
field
list
Used
by
mysql
field
seek
Offsets
are
field
numbers
within
a
row
beginning
at
zero
my
ulonglong
The
type
used
for
the
number
of
rows
and
for
mysql
affected
rows
mysql
num
rows
and
mysql
insert
id
This
type
provides
a
range
of
0
to
1
84e19
On
some
systems
attempting
to
print
a
value
of
type
my
ulonglong
will
not
work
To
print
such
a
value
convert
it
to
unsigned
long
and
use
a
lu
print
format
Example
printf
Number
of
rows
lu
n
unsigned
long
mysql
num
rows
result
The
MYSQL
FIELD
structure
contains
the
members
listed
below
char
name
The
name
of
the
field
char
table
The
name
of
the
table
containing
this
field
if
it
isn
t
a
calculated
field
For
calculated
fields
the
table
value
is
a
NULL
pointer
char
def
The
default
value
of
this
field
set
only
if
you
use
mysql
list
fields
enum
enum
field
types
type
The
type
of
the
field
The
type
value
may
be
one
of
the
following
Type
value
Type
meaning
FIELD
TYPE
TINY
TINYINT
field
FIELD
TYPE
SHORT
SMALLINT
field
FIELD
TYPE
LONG
INTEGER
field
FIELD
TYPE
INT24
MEDIUMINT
field
FIELD
TYPE
LONGLONG
BIGINT
field
FIELD
TYPE
DECIMAL
DECIMAL
or
NUMERIC
field
FIELD
TYPE
FLOAT
FLOAT
field
FIELD
TYPE
DOUBLE
DOUBLE
or
REAL
field
FIELD
TYPE
TIMESTAMP
TIMESTAMP
field
FIELD
TYPE
DATE
DATE
field
FIELD
TYPE
TIME
TIME
field
FIELD
TYPE
DATETIME
DATETIME
field
FIELD
TYPE
YEAR
YEAR
field
FIELD
TYPE
STRING
String
CHAR
or
VARCHAR
field
FIELD
TYPE
BLOB
BLOB
or
TEXT
field
use
max
length
to
determine
the
maximum
length
FIELD
TYPE
SET
SET
field
FIELD
TYPE
ENUM
ENUM
field
FIELD
TYPE
NULL
NULL
type
field
FIELD
TYPE
CHAR
Deprecated
use
FIELD
TYPE
TINY
instead
You
can
use
the
IS
NUM
macro
to
test
whether
or
not
a
field
has
a
numeric
type
Pass
the
type
value
to
IS
NUM
and
it
will
evaluate
to
TRUE
if
the
field
is
numeric
if
IS
NUM
field
type
printf
Field
is
numeric
n
unsigned
int
length
The
width
of
the
field
unsigned
int
max
length
The
maximum
width
of
the
field
for
the
result
set
If
you
used
mysql
list
fields
this
contains
the
maximum
length
for
the
field
unsigned
int
flags
Different
bit
flags
for
the
field
The
flags
value
may
have
zero
or
more
of
the
following
bits
set
Flag
value
Flag
meaning
NOT
NULL
FLAG
Field
can
t
be
NULL
PRI
KEY
FLAG
Field
is
part
of
a
primary
key
UNIQUE
KEY
FLAG
Field
is
part
of
a
unique
key
MULTIPLE
KEY
FLAG
Field
is
part
of
a
key
UNSIGNED
FLAG
Field
has
the
UNSIGNED
attribute
ZEROFILL
FLAG
Field
has
the
ZEROFILL
attribute
BINARY
FLAG
Field
has
the
BINARY
attribute
AUTO
INCREMENT
FLAG
Field
has
the
AUTO
INCREMENT
attribute
ENUM
FLAG
Field
is
an
ENUM
deprecated
BLOB
FLAG
Field
is
a
BLOB
or
TEXT
deprecated
TIMESTAMP
FLAG
Field
is
a
TIMESTAMP
deprecated
Use
of
the
BLOB
FLAG
ENUM
FLAG
and
TIMESTAMP
FLAG
flags
is
deprecated
because
they
indicate
the
type
of
a
field
rather
than
an
attribute
of
its
type
It
is
preferable
to
test
field
type
against
FIELD
TYPE
BLOB
FIELD
TYPE
ENUM
or
FIELD
TYPE
TIMESTAMP
instead
The
example
below
illustrates
a
typical
use
of
the
flags
value
if
field
flags
NOT
NULL
FLAG
printf
Field
can
t
be
null
n
You
may
use
the
following
convenience
macros
to
determine
the
boolean
status
of
the
flags
value
IS
NOT
NULL
flags
True
if
this
field
is
defined
as
NOT
NULL
IS
PRI
KEY
flags
True
if
this
field
is
a
primary
key
IS
BLOB
flags
True
if
this
field
is
a
BLOB
or
TEXT
deprecated
test
field
type
instead
unsigned
int
decimals
The
number
of
decimals
for
numeric
fields
823
19
3
C
API
function
overview
The
functions
available
in
the
C
API
are
listed
below
and
are
described
in
greater
detail
in
the
next
section
See
section
824
19
4
C
API
function
descriptions
mysql
affected
rows
Returns
the
number
of
rows
affected
by
the
last
UPDATE
DELETE
or
INSERT
query
mysql
close
Closes
a
server
connection
mysql
connect
Connects
to
a
MySQL
server
This
function
is
deprecated
use
mysql
real
connect
instead
mysql
create
db
Creates
a
database
This
function
is
deprecated
use
the
SQL
command
CREATE
DATABASE
instead
mysql
data
seek
Seeks
to
an
arbitrary
row
in
a
query
result
set
mysql
debug
Does
a
DBUG
PUSH
with
the
given
string
mysql
drop
db
Drops
a
database
This
function
is
deprecated
use
the
SQL
command
DROP
DATABASE
instead
mysql
dump
debug
info
Makes
the
server
write
debug
information
to
the
log
mysql
eof
Determines
whether
or
not
the
last
row
of
a
result
set
has
been
read
This
function
is
deprecated
mysql
errno
or
mysql
error
may
be
used
instead
mysql
errno
Returns
the
error
number
for
the
most
recently
invoked
MySQL
function
mysql
error
Returns
the
error
message
for
the
most
recently
invoked
MySQL
function
mysql
escape
string
Escapes
special
characters
in
a
string
for
use
in
a
SQL
statement
mysql
fetch
field
Returns
the
type
of
the
next
table
field
mysql
fetch
field
direct
Returns
the
type
of
a
table
field
given
a
field
number
mysql
fetch
fields
Returns
an
array
of
all
field
structures
mysql
fetch
lengths
Returns
the
lengths
of
all
columns
in
the
current
row
mysql
fetch
row
Fetches
the
next
row
from
the
result
set
mysql
field
seek
Puts
the
column
cursor
on
a
specified
column
mysql
field
count
Returns
the
number
of
result
columns
for
the
most
recent
query
mysql
field
tell
Returns
the
position
of
the
field
cursor
used
for
the
last
mysql
fetch
field
mysql
free
result
Frees
memory
used
by
a
result
set
mysql
get
client
info
Returns
client
version
information
mysql
get
host
info
Returns
a
string
describing
the
connection
mysql
get
proto
info
Returns
the
protocol
version
used
by
the
connection
mysql
get
server
info
Returns
the
server
version
number
mysql
info
Returns
information
about
the
most
recently
executed
query
mysql
init
Gets
or
initializes
a
MYSQL
structure
mysql
insert
id
Returns
the
ID
generated
for
an
AUTO
INCREMENT
column
by
the
previous
query
mysql
kill
Kill
a
given
thread
mysql
list
dbs
Returns
database
names
matching
a
simple
regular
expression
mysql
list
fields
Returns
field
names
matching
a
simple
regular
expression
mysql
list
processes
Returns
a
list
of
the
current
server
threads
mysql
list
tables
Returns
table
names
matching
a
simple
regular
expression
mysql
num
fields
Returns
the
number
of
columns
in
a
result
set
mysql
num
rows
Returns
the
number
of
rows
in
a
result
set
mysql
options
Set
connect
options
for
mysql
connect
mysql
ping
Checks
whether
or
not
the
connection
to
the
server
is
working
reconnecting
as
necessary
mysql
query
Executes
a
SQL
query
specified
as
a
null
terminated
string
mysql
real
connect
Connects
to
a
MySQL
server
mysql
real
query
Executes
a
SQL
query
specified
as
a
counted
string
mysql
reload
Tells
the
server
to
reload
the
grant
tables
mysql
row
seek
Seeks
to
a
row
in
a
result
set
using
value
returned
from
mysql
row
tell
mysql
row
tell
Returns
the
row
cursor
position
mysql
select
db
Connects
to
a
database
mysql
shutdown
Shuts
down
the
database
server
mysql
stat
Returns
the
server
status
as
a
string
mysql
store
result
Retrieves
a
complete
result
set
to
the
client
mysql
thread
id
Returns
the
current
thread
ID
mysql
use
result
Initiates
a
row
by
row
result
set
retrieval
To
connect
to
the
server
call
mysql
init
to
initialize
a
connection
handler
then
call
mysql
real
connect
with
that
handler
along
with
other
information
such
as
the
hostname
user
name
and
password
When
you
are
done
with
the
connection
call
mysql
close
to
terminate
it
While
a
connection
is
active
the
client
may
send
SQL
queries
to
the
server
using
mysql
query
or
mysql
real
query
The
difference
between
the
two
is
that
mysql
query
expects
the
query
to
be
specified
as
a
null
terminated
string
whereas
mysql
real
query
expects
a
counted
string
If
the
string
contains
binary
data
which
may
include
null
bytes
you
must
use
mysql
real
query
For
each
non
SELECT
query
e
g
INSERT
UPDATE
DELETE
you
can
found
out
how
many
rows
were
affected
changed
by
calling
mysql
affected
rows
For
SELECT
queries
you
retrieve
the
selected
rows
as
a
result
set
Note
that
some
statements
are
SELECT
like
in
that
they
return
rows
These
include
SHOW
DESCRIBE
and
EXPLAIN
They
should
be
treated
the
same
way
as
SELECT
statements
There
are
two
ways
for
a
client
to
process
result
sets
One
way
is
to
retrieve
the
entire
result
set
all
at
once
by
calling
mysql
store
result
This
function
acquires
from
the
server
all
the
rows
returned
by
the
query
and
stores
them
in
the
client
The
second
way
is
for
the
client
to
initiate
a
row
by
row
result
set
retrieval
by
calling
mysql
use
result
This
function
initializes
the
retrieval
but
does
not
actually
get
any
rows
from
the
server
In
both
cases
you
access
rows
by
calling
mysql
fetch
row
With
mysql
store
result
mysql
fetch
row
accesses
rows
that
have
already
been
fetched
from
the
server
With
mysql
use
result
mysql
fetch
row
actually
retrieves
the
row
from
the
server
Information
about
as
the
size
of
the
data
values
in
each
row
is
available
by
calling
mysql
fetch
lengths
After
you
are
done
with
a
result
set
call
mysql
free
result
to
free
the
memory
used
for
it
The
two
retrieval
mechanisms
are
complementary
Client
programs
should
choose
the
approach
that
is
most
appropriate
for
their
requirements
In
practice
clients
tend
to
use
mysql
store
result
more
commonly
An
advantage
of
mysql
store
result
is
that
since
the
rows
have
all
been
fetched
to
the
client
you
not
only
can
access
rows
sequentially
you
can
move
back
and
forth
in
the
result
set
using
mysql
data
seek
or
mysql
row
seek
to
change
the
current
row
position
within
the
result
set
You
can
also
find
out
how
many
rows
there
are
by
calling
mysql
num
rows
On
the
other
hand
the
memory
requirements
for
mysql
store
result
may
be
very
high
for
large
result
sets
and
you
are
more
likely
to
encounter
out
of
memory
conditions
An
advantage
of
mysql
use
result
is
that
the
client
requires
less
memory
for
the
result
set
since
it
maintains
only
one
row
at
a
time
and
since
there
is
less
allocation
overhead
mysql
use
result
can
be
faster
Disadvantages
are
that
you
must
process
each
row
quickly
to
avoid
tying
up
the
server
you
don
t
have
random
access
to
rows
within
the
result
set
you
can
only
access
rows
sequentially
and
you
don
t
know
how
many
rows
are
in
the
result
set
until
you
have
retrieved
them
all
Furthermore
you
must
retrieve
all
the
rows
even
if
you
determine
in
mid
retrieval
that
you
ve
found
the
information
you
were
looking
for
The
API
makes
it
possible
for
clients
to
respond
appropriately
to
queries
retrieving
rows
only
as
necessary
without
knowing
whether
or
not
the
query
is
a
SELECT
You
can
do
this
by
calling
mysql
store
result
after
each
mysql
query
or
mysql
real
query
If
the
result
set
call
succeeds
the
query
was
a
SELECT
and
you
can
read
the
rows
If
the
result
set
call
fails
call
mysql
field
count
to
determine
whether
or
not
a
result
was
actually
to
be
expected
If
mysql
field
count
returns
zero
the
query
returned
no
data
indicating
that
it
was
an
INSERT
UPDATE
DELETE
etc
and
thus
not
expected
to
return
rows
If
mysql
field
count
is
non
zero
the
query
should
have
returned
rows
but
didn
t
This
indicates
that
the
query
was
a
SELECT
that
failed
See
the
description
for
mysql
field
count
for
an
example
of
how
this
can
be
done
Both
mysql
store
result
and
mysql
use
result
allow
you
to
obtain
information
about
the
fields
that
make
up
the
result
set
the
number
of
fields
their
names
and
types
etc
You
can
access
field
information
sequentially
within
the
row
by
calling
mysql
fetch
field
repeatedly
or
by
field
number
within
the
row
by
calling
mysql
fetch
field
direct
The
current
field
cursor
position
may
be
changed
by
calling
mysql
field
seek
Setting
the
field
cursor
affects
subsequent
calls
to
mysql
fetch
field
You
can
also
get
information
for
fields
all
at
once
by
calling
mysql
fetch
fields
For
detecting
and
reporting
errors
MySQL
provides
access
to
error
information
by
means
of
the
mysql
errno
and
mysql
error
functions
These
return
the
error
code
or
error
message
for
the
most
recently
invoked
function
that
can
succeed
or
fail
allowing
you
to
determine
when
an
error
occurred
and
what
it
was
825
19
4
C
API
function
descriptions
In
the
descriptions
below
a
parameter
or
return
value
of
NULL
means
NULL
in
the
sense
of
the
C
programming
language
not
a
MySQL
NULL
value
Functions
that
return
a
value
generally
return
a
pointer
or
an
integer
Unless
specified
otherwise
functions
returning
a
pointer
return
a
non
NULL
value
to
indicate
success
or
a
NULL
value
to
indicate
an
error
and
functions
returning
an
integer
return
zero
to
indicate
success
or
non
zero
to
indicate
an
error
Note
that
non
zero
means
just
that
Unless
the
function
description
says
otherwise
do
not
test
against
a
value
other
than
zero
if
result
correct
error
if
result
0
incorrect
error
if
result
1
incorrect
error
When
a
function
returns
an
error
the
Errors
subsection
of
the
function
description
lists
the
possible
types
of
errors
You
can
find
out
which
of
these
occurred
by
calling
mysql
errno
A
string
representation
of
the
error
may
be
obtained
by
calling
mysql
error
826
19
4
1
mysql
affected
rows
my
ulonglong
mysql
affected
rows
MYSQL
mysql
19
4
1
1
Description
Returns
the
number
of
rows
affected
changed
by
the
last
UPDATE
DELETE
or
INSERT
query
May
be
called
immediately
after
mysql
query
for
UPDATE
DELETE
or
INSERT
statements
For
SELECT
statements
mysql
affected
rows
works
like
mysql
num
rows
mysql
affected
rows
is
currently
implemented
as
a
macro
19
4
1
2
Return
values
An
integer
greater
than
zero
indicates
the
number
of
rows
affected
or
retrieved
Zero
indicates
that
no
records
matched
the
WHERE
clause
in
the
query
or
that
no
query
has
yet
been
executed
1
indicates
that
the
query
returned
an
error
or
that
for
a
SELECT
query
mysql
affected
rows
was
called
prior
to
calling
mysql
store
result
19
4
1
3
Errors
None
19
4
1
4
Example
mysql
query
mysql
UPDATE
products
SET
cost
cost
1
25
WHERE
group
10
printf
d
products
updated
mysql
affected
rows
mysql
827
19
4
2
mysql
close
void
mysql
close
MYSQL
mysql
19
4
2
1
Description
Closes
a
previously
opened
connection
mysql
close
also
deallocates
the
connection
handle
pointed
to
by
mysql
if
the
handle
was
allocated
automatically
by
mysql
init
or
mysql
real
connect
19
4
2
2
Return
values
None
19
4
2
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
828
19
4
3
mysql
connect
MYSQL
mysql
connect
MYSQL
mysql
const
char
host
const
char
user
const
char
passwd
19
4
3
1
Description
This
function
is
deprecated
It
is
preferable
to
use
mysql
real
connect
instead
mysql
connect
attempts
to
establish
a
connection
to
a
MySQL
database
engine
running
on
host
mysql
connect
must
complete
successfully
before
you
can
execute
any
of
the
other
API
functions
with
the
exception
of
mysql
get
client
info
The
meanings
of
the
parameters
are
the
same
as
for
the
corresponding
parameters
for
mysql
real
connect
See
the
description
of
that
function
for
more
information
19
4
3
2
Return
values
Same
as
for
mysql
real
connect
19
4
3
3
Errors
Same
as
for
mysql
real
connect
829
19
4
4
mysql
create
db
int
mysql
create
db
MYSQL
mysql
const
char
db
19
4
4
1
Description
Creates
the
database
named
by
the
db
parameter
This
function
is
deprecated
It
is
preferable
to
use
mysql
query
to
issue
a
SQL
CREATE
DATABASE
statement
instead
19
4
4
2
Return
values
Zero
if
the
database
was
created
successfully
Non
zero
if
an
error
occurred
19
4
4
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
19
4
4
4
Example
if
mysql
create
db
mysql
my
database
fprintf
stderr
Failed
to
create
new
database
Error
s
n
mysql
error
mysql
830
19
4
5
mysql
data
seek
void
mysql
data
seek
MYSQL
RES
result
unsigned
int
offset
19
4
5
1
Description
Seeks
to
an
arbitrary
row
in
a
query
result
set
This
requires
that
the
result
set
structure
contains
the
entire
result
of
the
query
so
mysql
data
seek
may
be
used
in
conjunction
only
with
mysql
store
result
not
with
mysql
use
result
The
offset
should
be
a
value
in
the
range
from
0
to
mysql
num
rows
result
1
19
4
5
2
Return
values
None
19
4
5
3
Errors
None
831
19
4
6
mysql
debug
void
mysql
debug
char
debug
19
4
6
1
Description
Does
a
DBUG
PUSH
with
the
given
string
mysql
debug
uses
the
Fred
Fish
debug
library
To
use
this
function
you
must
compile
the
client
library
to
support
debugging
See
section
832
G
1
Debugging
a
MySQL
server
See
section
833
G
2
Debugging
a
MySQL
client
19
4
6
2
Return
values
None
19
4
6
3
Errors
None
19
4
6
4
Example
The
call
shown
below
causes
the
client
library
to
generate
a
trace
file
in
tmp
client
trace
on
the
client
machine
mysql
debug
d
t
O
tmp
client
trace
834
19
4
7
mysql
drop
db
int
mysql
drop
db
MYSQL
mysql
const
char
db
19
4
7
1
Description
Drops
the
database
named
by
the
db
parameter
This
function
is
deprecated
It
is
preferable
to
use
mysql
query
to
issue
a
SQL
DROP
DATABASE
statement
instead
19
4
7
2
Return
values
Zero
if
the
database
was
dropped
successfully
Non
zero
if
an
error
occurred
19
4
7
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
19
4
7
4
Example
if
mysql
drop
db
mysql
my
database
fprintf
stderr
Failed
to
drop
the
database
Error
s
n
mysql
error
mysql
835
19
4
8
mysql
dump
debug
info
int
mysql
dump
debug
info
MYSQL
mysql
19
4
8
1
Description
Instructs
the
server
to
write
some
debug
information
to
the
log
The
connected
user
must
have
the
process
privilege
for
this
to
work
19
4
8
2
Return
values
Zero
if
the
command
was
successful
Non
zero
if
an
error
occurred
19
4
8
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
836
19
4
9
mysql
eof
my
bool
mysql
eof
MYSQL
RES
result
19
4
9
1
Description
This
function
is
deprecated
mysql
errno
or
mysql
error
may
be
used
instead
mysql
eof
determines
whether
or
not
the
last
row
of
a
result
set
has
been
read
If
you
acquire
a
result
set
from
a
successful
call
to
mysql
store
result
the
client
receives
the
entire
set
in
one
operation
In
this
case
a
NULL
return
from
mysql
fetch
row
always
means
the
end
of
the
result
set
has
been
reached
and
it
is
unnecessary
to
call
mysql
eof
On
the
other
hand
if
you
use
mysql
use
result
to
initiate
a
result
set
retrieval
the
rows
of
the
set
are
obtained
from
the
server
one
by
one
as
you
call
mysql
fetch
row
repeatedly
Because
an
error
may
occur
on
the
connection
during
this
process
a
NULL
return
value
from
mysql
fetch
row
does
not
necessarily
mean
the
end
of
the
result
set
was
reached
normally
In
this
case
you
can
use
mysql
eof
to
determine
what
happened
mysql
eof
returns
a
non
zero
value
if
the
end
of
the
result
set
was
reached
and
zero
if
an
error
occurred
Historically
mysql
eof
predates
the
standard
MySQL
error
functions
mysql
errno
and
mysql
error
Since
those
error
functions
provide
the
same
information
their
use
is
preferred
over
mysql
eof
which
is
now
deprecated
In
fact
they
provide
more
information
since
mysql
eof
returns
only
a
boolean
value
whereas
the
error
functions
indicate
a
reason
for
the
error
when
one
occurs
19
4
9
2
Return
values
Zero
if
an
error
occurred
Non
zero
if
the
end
of
the
result
set
has
been
reached
19
4
9
3
Errors
None
19
4
9
4
Example
The
following
example
shows
how
you
might
use
mysql
eof
mysql
query
mysql
SELECT
FROM
some
table
result
mysql
use
result
mysql
while
row
mysql
fetch
row
result
do
something
with
data
if
mysql
eof
result
mysql
fetch
row
failed
due
to
an
error
fprintf
stderr
Error
s
n
mysql
error
mysql
However
you
can
achieve
the
same
effect
with
the
standard
MySQL
error
functions
mysql
query
mysql
SELECT
FROM
some
table
result
mysql
use
result
mysql
while
row
mysql
fetch
row
result
do
something
with
data
if
mysql
errno
mysql
mysql
fetch
row
failed
due
to
an
error
fprintf
stderr
Error
s
n
mysql
error
mysql
837
19
4
10
mysql
errno
unsigned
int
mysql
errno
MYSQL
mysql
19
4
10
1
Description
For
the
connection
specified
by
mysql
mysql
errno
returns
the
error
code
for
the
most
recently
invoked
API
function
that
can
succeed
or
fail
A
return
value
of
zero
means
that
no
error
occurred
Client
error
message
numbers
are
listed
in
the
MySQL
errmsg
h
header
file
Server
error
message
numbers
are
listed
in
mysqld
error
h
19
4
10
2
Return
values
An
error
code
value
Zero
if
no
error
occurred
19
4
10
3
Errors
None
838
19
4
11
mysql
error
char
mysql
error
MYSQL
mysql
19
4
11
1
Description
For
the
connection
specified
by
mysql
mysql
error
returns
the
error
message
for
the
most
recently
invoked
API
function
that
can
succeed
or
fail
An
empty
string
is
returned
if
no
error
occurred
This
means
the
following
two
tests
are
equivalent
if
mysql
errno
mysql
an
error
occurred
if
mysql
error
mysql
0
0
an
error
occurred
The
language
of
the
client
error
messages
may
be
changed
by
recompiling
the
MySQL
client
library
Currently
you
can
choose
error
messages
in
several
different
languages
See
section
839
9
1
What
languages
are
supported
by
MySQL
19
4
11
2
Return
values
A
character
string
that
describes
the
error
An
empty
string
if
no
error
occurred
19
4
11
3
Errors
None
840
19
4
12
mysql
escape
string
unsigned
int
mysql
escape
string
char
to
const
char
from
unsigned
int
length
19
4
12
1
Description
Encodes
the
string
in
from
to
an
escaped
SQL
string
that
can
be
sent
to
the
server
in
a
SQL
statement
and
places
the
result
in
to
Characters
encoded
are
NUL
ASCII
0
n
r
and
see
section
841
7
1
Literals
how
to
write
strings
and
numbers
The
string
pointed
to
by
from
must
be
length
bytes
long
not
including
the
terminating
null
byte
You
must
allocate
the
to
buffer
to
be
at
least
length
2
1
bytes
long
When
mysql
escape
string
returns
the
contents
of
to
will
be
a
null
terminated
string
The
return
value
is
the
length
of
the
encoded
string
not
including
the
terminating
null
character
19
4
12
2
Example
char
query
1000
end
end
strmov
query
INSERT
INTO
test
table
values
end
end
mysql
escape
string
end
What
s
this
11
end
end
end
end
mysql
escape
string
end
binary
data
0
r
n
16
end
end
if
mysql
real
query
mysql
query
unsigned
int
end
query
fprintf
stderr
Failed
to
insert
row
Error
s
n
mysql
error
mysql
The
strmov
function
used
in
the
example
is
included
in
the
mysqlclient
library
and
works
like
strcpy
but
returns
a
pointer
to
the
terminating
null
of
the
first
parameter
19
4
12
3
Return
values
The
length
of
the
value
placed
into
to
not
including
the
terminating
null
character
19
4
12
4
Errors
None
842
19
4
13
mysql
fetch
field
MYSQL
FIELD
mysql
fetch
field
MYSQL
RES
result
19
4
13
1
Description
Returns
the
definition
of
one
column
of
a
result
set
as
a
MYSQL
FIELD
structure
Call
this
function
repeatedly
to
retrieve
information
about
all
columns
in
the
result
set
mysql
fetch
field
returns
NULL
when
no
more
fields
are
left
mysql
fetch
field
is
reset
to
return
information
about
the
first
field
each
time
you
execute
a
new
SELECT
query
The
field
returned
by
mysql
fetch
field
is
also
affected
by
calls
to
mysql
field
seek
If
you
ve
called
mysql
query
to
perform
a
SELECT
on
a
table
but
have
not
called
mysql
store
result
MySQL
returns
the
default
blob
length
8K
bytes
if
you
call
mysql
fetch
field
to
ask
for
the
length
of
a
BLOB
field
The
8K
size
is
chosen
because
MySQL
doesn
t
know
the
maximum
length
for
the
BLOB
This
should
be
made
configurable
sometime
Once
you
ve
retrieved
the
result
set
field
max
length
contains
the
length
of
the
largest
value
for
this
column
in
the
specific
query
19
4
13
2
Return
values
The
MYSQL
FIELD
structure
for
the
current
column
NULL
if
no
columns
are
left
19
4
13
3
Errors
None
19
4
13
4
Example
MYSQL
FIELD
field
while
field
mysql
fetch
field
result
printf
field
name
s
n
field
name
843
19
4
14
mysql
fetch
fields
MYSQL
FIELD
mysql
fetch
fields
MYSQL
RES
result
19
4
14
1
Description
Returns
an
array
of
all
MYSQL
FIELD
structures
for
a
result
set
Each
structure
provides
the
field
definition
for
one
column
of
the
result
set
19
4
14
2
Return
values
An
array
of
MYSQL
FIELD
structures
for
all
columns
of
a
result
set
19
4
14
3
Errors
None
19
4
14
4
Example
unsigned
int
num
fields
unsigned
int
i
MYSQL
FIELD
fields
num
fields
mysql
num
fields
result
fields
mysql
fetch
fields
result
for
i
0
i
num
fields
i
printf
Field
u
is
s
n
i
fields
i
name
844
19
4
15
mysql
fetch
field
direct
MYSQL
FIELD
mysql
fetch
field
direct
MYSQL
RES
result
unsigned
int
fieldnr
19
4
15
1
Description
Given
a
field
number
fieldnr
for
a
column
within
a
result
set
returns
that
column
s
field
definition
as
a
MYSQL
FIELD
structure
You
may
use
this
function
to
retrieve
the
definition
for
an
arbitrary
column
The
value
of
fieldnr
should
be
in
the
range
from
0
to
mysql
num
fields
result
1
19
4
15
2
Return
values
The
MYSQL
FIELD
structure
for
the
specified
column
19
4
15
3
Errors
None
19
4
15
4
Example
unsigned
int
num
fields
unsigned
int
i
MYSQL
FIELD
field
num
fields
mysql
num
fields
result
for
i
0
i
num
fields
i
field
mysql
fetch
field
direct
result
i
printf
Field
u
is
s
n
i
field
name
845
19
4
16
mysql
fetch
lengths
unsigned
long
mysql
fetch
lengths
MYSQL
RES
result
19
4
16
1
Description
Returns
the
lengths
of
the
columns
of
the
current
row
within
a
result
set
If
you
plan
to
copy
field
values
this
length
information
is
also
useful
for
optimization
because
you
can
avoid
calling
strlen
In
addition
if
the
result
set
contains
binary
data
you
must
use
this
function
to
determine
the
size
of
the
data
because
strlen
returns
incorrect
results
for
any
field
containing
null
characters
The
length
for
empty
columns
and
for
columns
containing
NULL
values
is
zero
To
see
how
to
distinguish
these
two
cases
see
the
description
for
mysql
fetch
row
19
4
16
2
Return
values
An
array
of
unsigned
long
integers
representing
the
size
of
each
column
not
including
any
terminating
null
characters
NULL
if
an
error
occurred
19
4
16
3
Errors
mysql
fetch
lengths
is
valid
only
for
the
current
row
of
the
result
set
It
returns
NULL
if
you
call
it
before
calling
mysql
fetch
row
or
after
retrieving
all
rows
in
the
result
19
4
16
4
Example
MYSQL
ROW
row
unsigned
long
lengths
unsigned
int
num
fields
unsigned
int
i
row
mysql
fetch
row
result
if
row
num
fields
mysql
num
fields
result
lengths
mysql
fetch
lengths
result
for
i
0
i
num
fields
i
printf
Column
u
is
lu
bytes
in
length
n
i
lengths
i
846
19
4
17
mysql
fetch
row
MYSQL
ROW
mysql
fetch
row
MYSQL
RES
result
19
4
17
1
Description
Retrieves
the
next
row
of
a
result
set
When
used
after
mysql
store
result
mysql
fetch
row
returns
NULL
when
there
are
no
more
rows
to
retrieve
When
used
after
mysql
use
result
mysql
fetch
row
returns
NULL
when
there
are
no
more
rows
to
retrieve
or
if
an
error
occurred
The
number
of
values
in
the
row
is
given
by
mysql
num
fields
result
If
row
holds
the
return
value
from
a
call
to
mysql
fetch
row
pointers
to
the
values
are
accessed
as
row
0
to
row
mysql
num
fields
result
1
NULL
values
in
the
row
are
indicated
by
NULL
pointers
The
lengths
of
the
field
values
in
the
row
may
be
obtained
by
calling
mysql
fetch
lengths
Empty
fields
and
fields
containing
NULL
both
have
length
0
you
can
distinguish
these
by
checking
the
pointer
for
the
field
value
If
the
pointer
is
NULL
the
field
is
NULL
otherwise
the
field
is
empty
19
4
17
2
Return
values
A
MYSQL
ROW
structure
for
the
next
row
NULL
if
there
are
no
more
rows
to
retrieve
or
if
an
error
occurred
19
4
17
3
Errors
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
19
4
17
4
Example
MYSQL
ROW
row
unsigned
int
num
fields
unsigned
int
i
num
fields
mysql
num
fields
result
while
row
mysql
fetch
row
result
unsigned
long
lengths
lengths
mysql
fetch
lengths
result
for
i
0
i
num
fields
i
printf
s
int
lengths
i
row
i
row
i
NULL
printf
n
847
19
4
18
mysql
field
count
unsigned
int
mysql
field
count
MYSQL
mysql
If
you
are
using
a
version
of
MySQL
earlier
than
3
22
24
you
should
use
unsigned
int
mysql
num
fields
MYSQL
mysql
instead
19
4
18
1
Description
Returns
the
number
of
columns
for
the
most
recent
query
on
the
connection
The
normal
use
of
this
function
is
when
mysql
store
result
returned
NULL
and
thus
you
have
no
result
set
pointer
In
this
case
you
can
call
mysql
field
count
to
determine
whether
or
not
mysql
store
result
should
have
produced
a
non
empty
result
This
allows
the
client
program
to
take
proper
action
without
knowing
whether
or
not
the
query
was
a
SELECT
or
SELECT
like
statement
The
example
shown
below
illustrates
how
this
may
be
done
See
section
848
19
4
50
Why
is
it
that
after
mysql
query
returns
success
mysql
store
result
sometimes
returns
NULL
19
4
18
2
Return
values
An
unsigned
integer
representing
the
number
of
fields
in
a
result
set
19
4
18
3
Errors
None
19
4
18
4
Example
MYSQL
RES
result
unsigned
int
num
fields
unsigned
int
num
rows
if
mysql
query
mysql
query
string
error
else
query
succeeded
process
any
data
returned
by
it
result
mysql
store
result
mysql
if
result
there
are
rows
num
fields
mysql
num
fields
result
retrieve
rows
then
call
mysql
free
result
result
else
mysql
store
result
returned
nothing
should
it
have
if
mysql
field
count
mysql
0
query
does
not
return
data
it
was
not
a
SELECT
num
rows
mysql
affected
rows
mysql
else
mysql
store
result
should
have
returned
data
fprintf
stderr
Error
s
n
mysql
error
mysql
An
alternative
is
to
replace
the
mysql
field
count
mysql
call
with
mysql
errno
mysql
In
this
case
you
are
checking
directly
for
an
error
from
mysql
store
result
rather
than
inferring
from
the
value
of
mysql
field
count
whether
or
not
the
statement
was
a
SELECT
849
19
4
19
mysql
field
seek
MYSQL
FIELD
OFFSET
mysql
field
seek
MYSQL
RES
result
MYSQL
FIELD
OFFSET
offset
19
4
19
1
Description
Sets
the
field
cursor
to
the
given
offset
The
next
call
to
mysql
fetch
field
will
retrieve
the
field
definition
of
the
column
associated
with
that
offset
To
seek
to
the
beginning
of
a
row
pass
an
offset
value
of
zero
19
4
19
2
Return
values
The
previous
value
of
the
field
cursor
19
4
19
3
Errors
None
850
19
4
20
mysql
field
tell
MYSQL
FIELD
OFFSET
mysql
field
tell
MYSQL
RES
result
19
4
20
1
Description
Returns
the
position
of
the
field
cursor
used
for
the
last
mysql
fetch
field
This
value
can
be
used
as
an
argument
to
mysql
field
seek
19
4
20
2
Return
values
The
current
offset
of
the
field
cursor
19
4
20
3
Errors
None
851
19
4
21
mysql
free
result
void
mysql
free
result
MYSQL
RES
result
19
4
21
1
Description
Frees
the
memory
allocated
for
a
result
set
by
mysql
store
result
mysql
use
result
mysql
list
dbs
etc
When
you
are
done
with
a
result
set
you
must
free
the
memory
it
uses
by
calling
mysql
free
result
19
4
21
2
Return
values
None
19
4
21
3
Errors
None
852
19
4
22
mysql
get
client
info
char
mysql
get
client
info
void
19
4
22
1
Description
Returns
a
string
that
represents
the
client
library
version
19
4
22
2
Return
values
A
character
string
that
represents
the
MySQL
client
library
version
19
4
22
3
Errors
None
853
19
4
23
mysql
get
host
info
char
mysql
get
host
info
MYSQL
mysql
19
4
23
1
Description
Returns
a
string
describing
the
type
of
connection
in
use
including
the
server
host
name
19
4
23
2
Return
values
A
character
string
representing
the
server
host
name
and
the
connection
type
19
4
23
3
Errors
None
854
19
4
24
mysql
get
proto
info
unsigned
int
mysql
get
proto
info
MYSQL
mysql
19
4
24
1
Description
Returns
the
protocol
version
used
by
current
connection
19
4
24
2
Return
values
An
unsigned
integer
representing
the
protocol
version
used
by
the
current
connection
19
4
24
3
Errors
None
855
19
4
25
mysql
get
server
info
char
mysql
get
server
info
MYSQL
mysql
19
4
25
1
Description
Returns
a
string
that
represents
the
server
version
number
19
4
25
2
Return
values
A
character
string
that
represents
the
server
version
number
19
4
25
3
Errors
None
856
19
4
26
mysql
info
char
mysql
info
MYSQL
mysql
19
4
26
1
Description
Retrieves
a
string
providing
information
about
the
most
recently
executed
query
but
only
for
the
statements
listed
below
For
other
statements
mysql
info
returns
NULL
The
format
of
the
string
varies
depending
on
the
type
of
query
as
described
below
The
numbers
are
illustrative
only
the
string
will
contain
values
appropriate
for
the
query
INSERT
INTO
SELECT
String
format
Records
100
Duplicates
0
Warnings
0
INSERT
INTO
VALUES
String
format
Records
3
Duplicates
0
Warnings
0
LOAD
DATA
INFILE
String
format
Records
1
Deleted
0
Skipped
0
Warnings
0
ALTER
TABLE
String
format
Records
3
Duplicates
0
Warnings
0
Note
that
mysql
info
returns
a
non
NULL
value
for
the
INSERT
VALUES
statement
only
if
multiple
value
lists
are
specified
in
the
statement
19
4
26
2
Return
values
A
character
string
representing
additional
information
about
the
most
recently
executed
query
NULL
if
no
information
is
available
for
the
query
19
4
26
3
Errors
None
857
19
4
27
mysql
init
MYSQL
mysql
init
MYSQL
mysql
19
4
27
1
Description
Allocates
or
initializes
a
MYSQL
object
suitable
for
mysql
real
connect
If
mysql
is
a
NULL
pointer
the
function
allocates
initializes
and
returns
a
new
object
Otherwise
the
object
is
initialized
and
the
address
of
the
object
is
returned
If
mysql
init
allocates
a
new
object
it
will
be
freed
when
mysql
close
is
called
to
close
the
connection
19
4
27
2
Return
values
An
initialized
MYSQL
handle
NULL
if
there
was
insufficient
memory
to
allocate
a
new
object
19
4
27
3
Errors
In
case
of
insufficient
memory
NULL
is
returned
858
19
4
28
mysql
insert
id
my
ulonglong
mysql
insert
id
MYSQL
mysql
19
4
28
1
Description
Returns
the
ID
generated
for
an
AUTO
INCREMENT
column
by
the
previous
query
Use
this
function
after
you
have
performed
an
INSERT
query
into
a
table
that
contains
an
AUTO
INCREMENT
field
Note
that
mysql
insert
id
returns
0
if
the
previous
query
does
not
generate
an
AUTO
INCREMENT
value
If
you
need
to
save
the
value
for
later
be
sure
to
call
mysql
insert
id
immediately
after
the
query
that
generates
the
value
Also
note
that
the
value
of
the
SQL
LAST
INSERT
ID
function
always
contains
the
most
recently
generated
AUTO
INCREMENT
value
and
is
not
reset
between
queries
since
the
value
of
that
function
is
maintained
in
the
server
19
4
28
2
Return
values
The
value
of
the
AUTO
INCREMENT
field
that
was
updated
by
the
previous
query
Returns
zero
if
there
was
no
previous
query
on
the
connection
or
if
the
query
did
not
update
an
AUTO
INCREMENT
value
19
4
28
3
Errors
None
859
19
4
29
mysql
kill
int
mysql
kill
MYSQL
mysql
unsigned
long
pid
19
4
29
1
Description
Asks
the
server
to
kill
the
thread
specified
by
pid
19
4
29
2
Return
values
Zero
for
success
Non
zero
if
an
error
occurred
19
4
29
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
860
19
4
30
mysql
list
dbs
MYSQL
RES
mysql
list
dbs
MYSQL
mysql
const
char
wild
19
4
30
1
Description
Returns
a
result
set
consisting
of
database
names
on
the
server
that
match
the
simple
regular
expression
specified
by
the
wild
parameter
wild
may
contain
the
wildcard
characters
or
or
may
be
a
NULL
pointer
to
match
all
databases
Calling
mysql
list
dbs
is
similar
to
executing
the
query
SHOW
databases
LIKE
wild
You
must
free
the
result
set
with
mysql
free
result
19
4
30
2
Return
values
A
MYSQL
RES
result
set
for
success
NULL
if
an
error
occurred
19
4
30
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
OUT
OF
MEMORY
Out
of
memory
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
861
19
4
31
mysql
list
fields
MYSQL
RES
mysql
list
fields
MYSQL
mysql
const
char
table
const
char
wild
19
4
31
1
Description
Returns
a
result
set
consisting
of
field
names
in
the
given
table
that
match
the
simple
regular
expression
specified
by
the
wild
parameter
wild
may
contain
the
wildcard
characters
or
or
may
be
a
NULL
pointer
to
match
all
fields
Calling
mysql
list
fields
is
similar
to
executing
the
query
SHOW
COLUMNS
FROM
tbl
name
LIKE
wild
Note
that
it
s
recommended
that
you
use
SHOW
COLUMNS
FROM
tbl
name
instead
of
mysql
list
fields
You
must
free
the
result
set
with
mysql
free
result
19
4
31
2
Return
values
A
MYSQL
RES
result
set
for
success
NULL
if
an
error
occurred
19
4
31
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
862
19
4
32
mysql
list
processes
MYSQL
RES
mysql
list
processes
MYSQL
mysql
19
4
32
1
Description
Returns
a
result
set
describing
the
current
server
threads
This
is
the
same
kind
of
information
as
that
reported
by
mysqladmin
processlist
You
must
free
the
result
set
with
mysql
free
result
19
4
32
2
Return
values
A
MYSQL
RES
result
set
for
success
NULL
if
an
error
occurred
19
4
32
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
863
19
4
33
mysql
list
tables
MYSQL
RES
mysql
list
tables
MYSQL
mysql
const
char
wild
19
4
33
1
Description
Returns
a
result
set
consisting
of
table
names
in
the
current
database
that
match
the
simple
regular
expression
specified
by
the
wild
parameter
wild
may
contain
the
wildcard
characters
or
or
may
be
a
NULL
pointer
to
match
all
tables
Calling
mysql
list
tables
is
similar
to
executing
the
query
SHOW
tables
LIKE
wild
You
must
free
the
result
set
with
mysql
free
result
19
4
33
2
Return
values
A
MYSQL
RES
result
set
for
success
NULL
if
an
error
occurred
19
4
33
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
864
19
4
34
mysql
num
fields
unsigned
int
mysql
num
fields
MYSQL
RES
result
or
unsigned
int
mysql
num
fields
MYSQL
mysql
The
last
function
doesn
t
work
on
MySQL
3
23
or
newer
To
pass
a
MYSQL
argument
you
must
use
unsigned
int
mysql
field
count
MYSQL
mysql
instead
19
4
34
1
Description
Returns
the
number
of
columns
in
a
result
set
Note
that
you
can
call
mysql
num
fields
with
either
a
pointer
to
a
result
set
or
to
a
connection
handle
You
would
use
the
connection
handle
if
mysql
store
result
returned
NULL
and
thus
you
have
no
result
set
pointer
In
this
case
you
can
call
mysql
num
fields
to
determine
whether
or
not
mysql
store
result
should
have
produced
a
non
empty
result
This
allows
the
client
program
to
take
proper
action
without
knowing
whether
or
not
the
query
was
a
SELECT
or
SELECT
like
statement
The
example
shown
below
illustrates
how
this
may
be
done
See
section
865
19
4
50
Why
is
it
that
after
mysql
query
returns
success
mysql
store
result
sometimes
returns
NULL
19
4
34
2
Return
values
An
unsigned
integer
representing
the
number
of
fields
in
a
result
set
19
4
34
3
Errors
None
19
4
34
4
Example
MYSQL
RES
result
unsigned
int
num
fields
unsigned
int
num
rows
if
mysql
query
mysql
query
string
error
else
query
succeeded
process
any
data
returned
by
it
result
mysql
store
result
mysql
if
result
there
are
rows
num
fields
mysql
num
fields
result
retrieve
rows
then
call
mysql
free
result
result
else
mysql
store
result
returned
nothing
should
it
have
if
mysql
num
fields
mysql
0
query
does
not
return
data
it
was
not
a
SELECT
num
rows
mysql
affected
rows
mysql
else
mysql
store
result
should
have
returned
data
fprintf
stderr
Error
s
n
mysql
error
mysql
An
alternative
is
to
replace
the
mysql
num
fields
mysql
call
with
mysql
errno
mysql
In
this
case
you
are
checking
directly
for
an
error
from
mysql
store
result
rather
than
inferring
from
the
value
of
mysql
num
fields
whether
or
not
the
statement
was
a
SELECT
866
19
4
35
mysql
num
rows
my
ulonglong
mysql
num
rows
MYSQL
RES
result
19
4
35
1
Description
Returns
the
number
of
rows
in
the
result
set
The
use
of
mysql
num
rows
depends
on
whether
you
use
mysql
store
result
or
mysql
use
result
to
return
the
result
set
If
you
use
mysql
store
result
mysql
num
rows
may
be
called
immediately
If
you
use
mysql
use
result
mysql
num
rows
will
not
return
the
correct
value
until
all
the
rows
in
the
result
set
have
been
retrieved
19
4
35
2
Return
values
The
number
of
rows
in
the
result
set
19
4
35
3
Errors
None
867
19
4
36
mysql
options
int
mysql
options
MYSQL
mysql
enum
mysql
option
option
const
char
arg
19
4
36
1
Description
Can
be
used
to
set
extra
connect
options
and
affect
behavior
for
a
connection
Should
be
called
after
mysql
init
and
before
mysql
connect
or
mysql
real
connect
The
option
argument
is
the
option
that
you
want
to
set
The
arg
argument
is
the
value
for
the
option
If
the
option
is
an
integer
then
arg
should
point
to
the
value
of
the
integer
Possible
options
values
Option
Argument
type
Function
MYSQL
OPT
CONNECT
TIMEOUT
unsigned
int
Connect
timeout
in
seconds
MYSQL
OPT
COMPRESS
Not
used
Use
the
compressed
client
server
protocol
MYSQL
OPT
NAMED
PIPE
Not
used
Use
named
pipes
to
connect
to
a
MySQL
server
on
NT
MYSQL
INIT
COMMAND
char
Command
to
execute
when
connecting
to
MySQL
server
Will
automatically
be
re
executed
when
reconnecting
MYSQL
READ
DEFAULT
FILE
char
Read
options
from
the
named
option
file
instead
of
from
my
cnf
MYSQL
READ
DEFAULT
GROUP
char
Read
options
from
the
named
group
from
my
cnf
or
the
file
specified
with
MYSQL
READ
DEFAULT
FILE
Note
that
the
group
client
is
always
read
if
you
use
MYSQL
READ
DEFAULT
FILE
or
MYSQL
READ
DEFAULT
GROUP
The
specified
group
in
the
option
file
may
contain
the
following
options
compress
Use
the
compressed
client
server
protocol
database
Connect
to
this
database
if
there
was
no
database
in
the
connect
command
debug
Debug
options
host
Default
host
name
init
command
Command
to
execute
when
connecting
to
MySQL
server
Will
automatically
be
re
executed
when
reconnecting
password
Default
password
pipe
Use
named
pipes
to
connect
to
a
MySQL
server
on
NT
port
Default
port
number
return
found
rows
Tell
mysql
info
to
return
found
rows
instead
of
updated
rows
when
using
UPDATE
socket
Default
socket
number
timeout
Connect
timeout
in
seconds
user
Default
user
For
more
information
about
option
files
see
section
868
4
15
4
Option
files
19
4
36
2
Return
values
Zero
for
success
Non
zero
if
you
used
an
unknown
option
19
4
36
3
Example
MYSQL
mysql
mysql
init
mysql
mysql
options
mysql
MYSQL
OPT
COMPRESS
0
mysql
options
mysql
MYSQL
READ
DEFAULT
GROUP
odbc
if
mysql
real
connect
mysql
host
user
passwd
database
0
NULL
0
fprintf
stderr
Failed
to
connect
to
database
Error
s
n
mysql
error
mysql
The
above
requests
the
client
to
use
the
compressed
client
server
protocol
and
read
the
additional
options
from
the
odbc
section
in
the
my
cnf
file
869
19
4
37
mysql
ping
int
mysql
ping
MYSQL
mysql
19
4
37
1
Description
Checks
whether
or
not
the
connection
to
the
server
is
working
If
it
has
gone
down
an
automatic
reconnection
is
attempted
This
function
can
be
used
by
clients
that
remain
idle
for
a
long
while
to
check
whether
or
not
the
server
has
closed
the
connection
and
reconnect
if
necessary
19
4
37
2
Return
values
Zero
if
the
server
is
alive
Non
zero
if
an
error
occurred
19
4
37
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
UNKNOWN
ERROR
An
unknown
error
occurred
870
19
4
38
mysql
query
int
mysql
query
MYSQL
mysql
const
char
query
19
4
38
1
Description
Executes
the
SQL
query
pointed
to
by
the
null
terminated
string
query
The
query
must
consist
of
a
single
SQL
statement
You
should
not
add
a
terminating
semicolon
or
g
to
the
statement
mysql
query
cannot
be
used
for
queries
that
contain
binary
data
you
should
use
mysql
real
query
instead
Binary
data
may
contain
the
0
character
which
mysql
query
interprets
as
the
end
of
the
query
string
19
4
38
2
Return
values
Zero
if
the
query
was
successful
Non
zero
if
an
error
occurred
19
4
38
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
871
19
4
39
mysql
real
connect
MYSQL
mysql
real
connect
MYSQL
mysql
const
char
host
const
char
user
const
char
passwd
const
char
db
unsigned
int
port
const
char
unix
socket
unsigned
int
client
flag
19
4
39
1
Description
mysql
real
connect
attempts
to
establish
a
connection
to
a
MySQL
database
engine
running
on
host
mysql
real
connect
must
complete
successfully
before
you
can
execute
any
of
the
other
API
functions
with
the
exception
of
mysql
get
client
info
The
parameters
are
specified
as
follows
mysql
is
a
pointer
to
a
MYSQL
connection
structure
or
NULL
If
mysql
is
NULL
the
C
API
allocates
memory
for
the
connection
structure
automatically
and
frees
it
when
you
call
mysql
close
The
disadvantage
of
this
approach
is
that
you
can
t
retrieve
an
error
message
if
the
connection
fails
To
get
error
information
from
mysql
errno
or
mysql
error
you
must
provide
a
valid
MYSQL
pointer
If
the
first
parameter
is
not
NULL
it
should
be
the
address
of
an
existing
MYSQL
structure
In
this
case
before
calling
mysql
real
connect
you
must
call
mysql
init
to
initialize
the
MYSQL
structure
See
the
example
below
The
value
of
host
may
be
either
a
hostname
or
an
IP
address
If
host
is
NULL
or
the
string
localhost
a
connection
to
the
local
host
is
assumed
If
the
OS
supports
sockets
Unix
or
named
pipes
Win32
they
are
used
instead
of
TCP
IP
to
connect
to
the
server
The
user
parameter
contains
the
user
s
MySQL
login
ID
If
user
is
NULL
the
current
user
is
assumed
Under
Unix
this
is
the
current
login
name
Under
Windows
ODBC
the
current
user
name
must
be
specified
explicitly
See
section
872
16
4
How
to
fill
in
the
various
fields
in
the
ODBC
administrator
program
The
passwd
parameter
contains
the
password
for
user
If
passwd
is
NULL
only
entries
in
the
user
table
for
the
user
that
have
a
blank
password
field
will
be
checked
for
a
match
This
allows
the
database
administrator
to
set
up
the
MySQL
privilege
system
in
such
a
way
that
users
get
different
privileges
depending
on
whether
or
not
they
have
specified
a
password
Note
Do
not
attempt
to
encrypt
the
password
before
calling
mysql
real
connect
password
encryption
is
handled
automatically
by
the
client
API
db
is
the
database
name
If
db
is
not
NULL
the
connection
will
set
the
default
database
to
this
value
If
port
is
not
0
the
value
will
be
used
as
the
port
number
for
the
TCP
IP
connection
Note
that
the
host
parameter
determines
the
type
of
the
connection
If
unix
socket
is
not
NULL
the
string
specifies
the
socket
or
named
pipe
that
should
be
used
Note
that
the
host
parameter
determines
the
type
of
the
connection
The
value
of
client
flag
is
usually
0
but
can
be
set
to
a
combination
of
the
following
flags
in
very
special
circumstances
Flag
name
Flag
meaning
CLIENT
FOUND
ROWS
Return
the
number
of
found
rows
not
the
number
of
affected
rows
CLIENT
NO
SCHEMA
Don
t
allow
the
db
name
tbl
name
col
name
syntax
This
is
for
ODBC
it
causes
the
parser
to
generate
an
error
if
you
use
that
syntax
which
is
is
useful
for
trapping
bugs
in
some
ODBC
programs
CLIENT
COMPRESS
Use
compression
protocol
CLIENT
ODBC
The
client
is
an
ODBC
client
This
changes
mysqld
to
be
more
ODBC
friendly
19
4
39
2
Return
values
A
MYSQL
connection
handle
if
the
connection
was
successful
NULL
if
the
connection
was
unsuccessful
For
a
successful
connection
the
return
value
is
the
same
as
the
value
of
the
first
parameter
unless
you
pass
NULL
for
that
parameter
19
4
39
3
Errors
CR
CONN
HOST
ERROR
Failed
to
connect
to
the
MySQL
server
CR
CONNECTION
ERROR
Failed
to
connect
to
the
local
MySQL
server
CR
IPSOCK
ERROR
Failed
to
create
an
IP
socket
CR
OUT
OF
MEMORY
Out
of
memory
CR
SOCKET
CREATE
ERROR
Failed
to
create
a
Unix
socket
CR
UNKNOWN
HOST
Failed
to
find
the
IP
address
for
the
hostname
CR
VERSION
ERROR
A
protocol
mismatch
resulted
from
attempting
to
connect
to
a
server
with
a
client
library
that
uses
a
different
protocol
version
This
can
happen
if
you
use
a
very
old
client
library
to
connect
to
a
new
server
that
wasn
t
started
with
the
old
protocol
option
CR
NAMEDPIPEOPEN
ERROR
Failed
to
create
a
named
pipe
on
Win32
CR
NAMEDPIPEWAIT
ERROR
Failed
to
wait
for
a
named
pipe
on
Win32
CR
NAMEDPIPESETSTATE
ERROR
Failed
to
get
a
pipe
handler
on
Win32
19
4
39
4
Example
MYSQL
mysql
mysql
init
mysql
if
mysql
real
connect
mysql
host
user
passwd
database
0
NULL
0
fprintf
stderr
Failed
to
connect
to
database
Error
s
n
mysql
error
mysql
873
19
4
40
mysql
real
query
int
mysql
real
query
MYSQL
mysql
const
char
query
unsigned
int
length
19
4
40
1
Description
Executes
the
SQL
query
pointed
to
by
query
which
should
be
a
string
length
bytes
long
The
query
must
consist
of
a
single
SQL
statement
You
should
not
add
a
terminating
semicolon
or
g
to
the
statement
You
must
use
mysql
real
query
rather
than
mysql
query
for
queries
that
contain
binary
data
since
binary
data
may
contain
the
0
character
In
addition
mysql
real
query
is
faster
than
mysql
query
since
it
does
not
call
strlen
on
the
query
string
19
4
40
2
Return
values
Zero
if
the
query
was
successful
Non
zero
if
an
error
occurred
19
4
40
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
874
19
4
41
mysql
reload
int
mysql
reload
MYSQL
mysql
19
4
41
1
Description
Asks
the
MySQL
server
to
reload
the
grant
tables
The
connected
user
must
have
the
reload
privilege
This
function
is
deprecated
It
is
preferable
to
use
mysql
query
to
issue
a
SQL
FLUSH
PRIVILEGES
statement
instead
19
4
41
2
Return
values
Zero
for
success
Non
zero
if
an
error
occurred
19
4
41
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
875
19
4
42
mysql
row
seek
MYSQL
ROW
OFFSET
mysql
row
seek
MYSQL
RES
result
MYSQL
ROW
OFFSET
offset
19
4
42
1
Description
Sets
the
row
cursor
to
an
arbitrary
row
in
a
query
result
set
This
requires
that
the
result
set
structure
contains
the
entire
result
of
the
query
so
mysql
row
seek
may
be
used
in
conjunction
only
with
mysql
store
result
not
with
mysql
use
result
The
offset
should
be
a
value
returned
from
a
call
to
mysql
row
tell
or
to
mysql
row
seek
This
value
is
not
simply
a
row
number
if
you
want
to
seek
to
a
row
within
a
result
set
using
a
row
number
use
mysql
data
seek
instead
19
4
42
2
Return
values
The
previous
value
of
the
row
cursor
This
value
may
be
passed
to
a
subsequent
call
to
mysql
row
seek
19
4
42
3
Errors
None
876
19
4
43
mysql
row
tell
MYSQL
ROW
OFFSET
mysql
row
tell
MYSQL
RES
result
19
4
43
1
Description
Returns
the
current
position
of
the
row
cursor
for
the
last
mysql
fetch
row
This
value
can
be
used
as
an
argument
to
mysql
row
seek
You
should
use
mysql
row
tell
only
after
mysql
store
result
not
after
mysql
use
result
19
4
43
2
Return
values
The
current
offset
of
the
row
cursor
19
4
43
3
Errors
None
877
19
4
44
mysql
select
db
int
mysql
select
db
MYSQL
mysql
const
char
db
19
4
44
1
Description
Causes
the
database
specified
by
db
to
become
the
default
current
database
on
the
connection
specified
by
mysql
In
subsequent
queries
this
database
is
the
default
for
table
references
that
do
not
include
an
explicit
database
specifier
mysql
select
db
fails
unless
the
connected
user
can
be
authenticated
as
having
permission
to
use
the
database
19
4
44
2
Return
values
Zero
for
success
Non
zero
if
an
error
occurred
19
4
44
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
878
19
4
45
mysql
shutdown
int
mysql
shutdown
MYSQL
mysql
19
4
45
1
Description
Asks
the
database
server
to
shutdown
The
connected
user
must
have
shutdown
privileges
19
4
45
2
Return
values
Zero
for
success
Non
zero
if
an
error
occurred
19
4
45
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
879
19
4
46
mysql
stat
char
mysql
stat
MYSQL
mysql
19
4
46
1
Description
Returns
a
character
string
containing
information
similar
to
that
provided
by
the
mysqladmin
status
command
This
includes
uptime
in
seconds
and
the
number
of
running
threads
questions
reloads
and
open
tables
19
4
46
2
Return
values
A
character
string
describing
the
server
status
NULL
if
an
error
occurred
19
4
46
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
880
19
4
47
mysql
store
result
MYSQL
RES
mysql
store
result
MYSQL
mysql
19
4
47
1
Description
You
must
call
mysql
store
result
or
mysql
use
result
for
every
query
which
successfully
retrieves
data
SELECT
SHOW
DESCRIBE
EXPLAIN
mysql
store
result
reads
the
entire
result
of
a
query
to
the
client
allocates
a
MYSQL
RES
structure
and
places
the
result
into
this
structure
An
empty
result
set
is
returned
if
there
are
no
rows
returned
An
empty
result
set
differs
from
a
NULL
return
value
Once
you
have
called
mysql
store
result
you
may
call
mysql
num
rows
to
find
out
how
many
rows
are
in
the
result
set
You
can
call
mysql
fetch
row
to
fetch
rows
from
the
result
set
or
mysql
row
seek
and
mysql
row
tell
to
obtain
or
set
the
current
row
position
within
the
result
set
You
must
call
mysql
free
result
once
you
are
done
with
the
result
set
See
section
881
19
4
50
Why
is
it
that
after
mysql
query
returns
success
mysql
store
result
sometimes
returns
NULL
19
4
47
2
Return
values
A
MYSQL
RES
result
structure
with
the
results
NULL
if
an
error
occurred
19
4
47
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
OUT
OF
MEMORY
Out
of
memory
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
882
19
4
48
mysql
thread
id
unsigned
long
mysql
thread
id
MYSQL
mysql
19
4
48
1
Description
Returns
the
thread
ID
of
the
current
connection
This
value
can
be
used
as
an
argument
to
mysql
kill
to
kill
the
thread
If
the
connection
is
lost
and
you
reconnect
with
mysql
ping
the
thread
ID
will
change
This
means
you
should
not
get
the
thread
ID
and
store
it
for
later
you
should
get
it
when
you
need
it
19
4
48
2
Return
values
The
thread
ID
of
the
current
connection
19
4
48
3
Errors
None
883
19
4
49
mysql
use
result
MYSQL
RES
mysql
use
result
MYSQL
mysql
19
4
49
1
Description
You
must
call
mysql
store
result
or
mysql
use
result
for
every
query
which
successfully
retrieves
data
SELECT
SHOW
DESCRIBE
EXPLAIN
mysql
use
result
initiates
a
result
set
retrieval
but
does
not
actually
read
the
result
set
into
the
client
like
mysql
store
result
does
Instead
each
row
must
be
retrieved
individually
by
making
calls
to
mysql
fetch
row
This
reads
the
result
of
a
query
directly
from
the
server
without
storing
it
in
a
temporary
table
or
local
buffer
which
is
somewhat
faster
and
uses
much
less
memory
than
mysql
store
result
The
client
will
only
allocate
memory
for
the
current
row
and
a
communication
buffer
that
may
grow
up
to
max
allowed
packet
bytes
On
the
other
hand
you
shouldn
t
use
mysql
use
result
if
you
are
doing
a
lot
of
processing
for
each
row
on
the
client
side
or
if
the
output
is
sent
to
a
screen
on
which
the
user
may
type
a
S
stop
scroll
This
will
tie
up
the
server
and
prevent
other
threads
from
updating
any
tables
from
which
the
data
are
fetched
When
using
mysql
use
result
you
must
execute
mysql
fetch
row
until
a
NULL
value
is
returned
otherwise
the
unfetched
rows
will
be
returned
as
part
of
the
result
set
for
your
next
query
The
C
API
will
give
the
error
Commands
out
of
sync
You
can
t
run
this
command
now
if
you
forget
to
do
this
You
may
not
use
mysql
data
seek
mysql
row
seek
mysql
row
tell
mysql
num
rows
or
mysql
affected
rows
with
a
result
returned
from
mysql
use
result
nor
may
you
issue
other
queries
until
the
mysql
use
result
has
finished
However
after
you
have
fetched
all
the
rows
mysql
num
rows
will
accurately
return
the
number
of
rows
fetched
You
must
call
mysql
free
result
once
you
are
done
with
the
result
set
19
4
49
2
Return
values
A
MYSQL
RES
result
structure
NULL
if
an
error
occurred
19
4
49
3
Errors
CR
COMMANDS
OUT
OF
SYNC
Commands
were
executed
in
an
improper
order
CR
OUT
OF
MEMORY
Out
of
memory
CR
SERVER
GONE
ERROR
The
MySQL
server
has
gone
away
CR
SERVER
LOST
The
connection
to
the
server
was
lost
during
the
query
CR
UNKNOWN
ERROR
An
unknown
error
occurred
884
19
4
50
Why
is
it
that
after
mysql
query
returns
success
mysql
store
result
sometimes
returns
NULL
It
is
possible
for
mysql
store
result
to
return
NULL
following
a
successful
call
to
mysql
query
When
this
happens
it
means
one
of
the
following
conditions
occurred
There
was
a
malloc
failure
for
example
if
the
result
set
was
too
large
The
data
couldn
t
be
read
an
error
occurred
on
the
connection
The
query
returned
no
data
e
g
it
was
an
INSERT
UPDATE
or
DELETE
You
can
always
check
whether
or
not
the
statement
should
have
produced
a
non
empty
result
by
calling
mysql
num
fields
If
mysql
num
fields
returns
zero
the
result
is
empty
and
the
last
query
was
a
statement
that
does
not
return
values
for
example
an
INSERT
or
a
DELETE
If
mysql
num
fields
returns
a
non
zero
value
the
statement
should
have
produced
a
non
empty
result
See
the
description
of
the
mysql
num
fields
function
for
an
example
You
can
also
test
for
an
error
by
calling
mysql
error
or
mysql
errno
885
19
4
51
What
results
can
I
get
from
a
query
In
addition
to
the
result
set
returned
by
a
query
you
can
also
get
the
following
information
mysql
affected
rows
returns
the
number
of
rows
affected
by
the
last
query
when
doing
an
INSERT
UPDATE
or
DELETE
An
exception
is
that
if
DELETE
is
used
without
a
WHERE
clause
the
table
is
truncated
which
is
much
faster
In
this
case
mysql
affected
rows
returns
zero
for
the
number
of
records
affected
mysql
num
rows
returns
the
number
of
rows
in
a
result
set
With
mysql
store
result
mysql
num
rows
may
be
called
as
soon
as
mysql
store
result
returns
With
mysql
use
result
mysql
num
rows
may
be
called
only
after
you
have
fetched
all
the
rows
with
mysql
fetch
row
mysql
insert
id
returns
the
ID
generated
by
the
last
query
that
inserted
a
row
into
a
table
with
an
AUTO
INCREMENT
index
See
section
886
19
4
28
mysql
insert
id
Some
queries
LOAD
DATA
INFILE
INSERT
INTO
SELECT
UPDATE
return
additional
info
The
result
is
returned
by
mysql
info
See
the
description
for
mysql
info
for
the
format
of
the
string
that
it
returns
mysql
info
returns
a
NULL
pointer
if
there
is
no
additional
information
887
19
4
52
How
can
I
get
the
unique
ID
for
the
last
inserted
row
If
you
insert
a
record
in
a
table
containing
a
column
that
has
the
AUTO
INCREMENT
attribute
you
can
get
the
most
recently
generated
ID
by
calling
the
mysql
insert
id
function
You
can
also
retrieve
the
ID
by
using
the
LAST
INSERT
ID
function
in
a
query
string
that
you
pass
to
mysql
query
You
can
check
if
an
AUTO
INCREMENT
index
is
used
by
executing
the
following
code
This
also
checks
if
the
query
was
an
INSERT
with
an
AUTO
INCREMENT
index
if
mysql
error
mysql
0
0
mysql
num
fields
result
0
mysql
insert
id
mysql
0
used
id
mysql
insert
id
mysql
The
most
recently
generated
ID
is
maintained
in
the
server
on
a
per
connection
basis
It
will
not
be
changed
by
another
client
It
will
not
even
be
changed
if
you
update
another
AUTO
INCREMENT
column
with
a
non
magic
value
that
is
a
value
that
is
not
NULL
and
not
0
If
you
want
to
use
the
ID
that
was
generated
for
one
table
and
insert
it
into
a
second
table
you
can
use
SQL
statements
like
this
INSERT
INTO
foo
auto
text
VALUES
NULL
text
generate
ID
by
inserting
NULL
INSERT
INTO
foo2
id
text
VALUES
LAST
INSERT
ID
text
use
ID
in
second
table
888
19
4
53
Problems
linking
with
the
C
API
When
linking
with
the
C
API
the
following
errors
may
occur
on
some
systems
gcc
g
o
client
test
o
L
usr
local
lib
mysql
lmysqlclient
lsocket
lnsl
Undefined
first
referenced
symbol
in
file
floor
usr
local
lib
mysql
libmysqlclient
a
password
o
ld
fatal
Symbol
referencing
errors
No
output
written
to
client
If
this
happens
on
your
system
you
must
include
the
math
library
by
adding
lm
to
the
end
of
the
compile
link
line
889
19
4
54
How
to
make
a
thread
safe
client
The
client
is
almost
thread
safe
The
biggest
problem
is
that
the
subroutines
in
net
c
that
read
from
sockets
are
not
interrupt
safe
This
was
done
with
the
thought
that
you
might
want
to
have
your
own
alarm
that
can
break
a
long
read
to
a
server
The
standard
client
libraries
are
not
compiled
with
the
thread
options
To
get
a
thread
safe
client
use
the
lmysys
lstring
and
ldbug
libraries
and
net
serv
o
that
the
server
uses
When
using
a
threaded
client
you
can
make
great
use
of
the
routines
in
the
thr
alarm
c
file
If
you
are
using
routines
from
the
mysys
library
the
only
thing
you
must
remember
is
to
call
my
init
first
All
functions
except
mysql
real
connect
are
currently
thread
safe
The
following
notes
describe
how
to
compile
a
thread
safe
client
library
and
use
it
in
a
thread
safe
manner
The
notes
below
for
mysql
real
connect
actually
apply
to
mysql
connect
as
well
but
since
mysql
connect
is
deprecated
you
should
be
using
mysql
real
connect
anyway
To
make
mysql
real
connect
thread
safe
you
must
recompile
the
client
library
with
this
command
shell
CPPFLAGS
DTHREAD
SAFE
CLIENT
configure
You
may
get
some
errors
because
of
undefined
symbols
when
linking
the
standard
client
because
the
pthread
libraries
are
not
included
by
default
The
resulting
libmysqlclient
a
library
is
now
thread
safe
What
this
means
is
that
client
code
is
thread
safe
as
long
as
two
threads
don
t
query
the
same
connection
handle
returned
by
mysql
real
connect
at
the
same
time
the
client
server
protocol
allows
only
one
request
at
a
time
on
a
given
connection
If
you
want
to
use
multiple
threads
on
the
same
connection
you
must
have
a
mutex
lock
around
your
mysql
query
and
mysql
store
result
call
combination
Once
mysql
store
result
is
ready
the
lock
can
be
released
and
other
threads
may
query
the
same
connection
In
other
words
different
threads
can
use
different
MYSQL
RES
pointers
that
were
created
with
mysql
store
result
as
long
as
they
use
the
proper
locking
protocol
If
you
program
with
POSIX
threads
you
can
use
pthread
mutex
lock
and
pthread
mutex
unlock
to
establish
and
release
a
mutex
lock
If
you
used
mysql
use
result
rather
than
mysql
store
result
the
lock
would
need
to
surround
mysql
use
result
and
the
calls
to
mysql
fetch
row
However
it
really
is
best
for
threaded
clients
not
to
use
mysql
use
result
890
19
5
MySQL
Perl
API
This
section
documents
the
Perl
DBI
interface
The
former
interface
was
called
mysqlperl
Since
DBI
DBD
now
is
the
recommended
Perl
interface
mysqlperl
is
obsolete
and
is
not
documented
here
891
19
5
1
DBI
with
DBD
mysql
DBI
is
a
generic
interface
for
many
databases
That
means
that
you
can
write
a
script
that
works
with
many
different
database
engines
without
change
You
need
a
DataBase
Driver
DBD
defined
for
each
database
type
For
MySQL
this
driver
is
called
DBD
mysql
For
more
information
on
the
Perl5
DBI
please
visit
the
DBI
web
page
and
read
the
documentation
892
http
www
symbolstone
org
technology
perl
DBI
index
html
For
more
information
on
Object
Oriented
Programming
OOP
as
defined
in
Perl5
see
the
Perl
OOP
page
893
http
language
perl
com
info
documentation
html
Installation
instructions
for
MySQL
Perl
support
are
given
in
section
894
4
10
Perl
installation
comments
895
19
5
2
The
DBI
interface
Portable
DBI
methods
connect
Establishes
a
connection
to
a
database
server
disconnect
Disconnects
from
the
database
server
prepare
Prepares
a
SQL
statement
for
execution
execute
Executes
prepared
statements
do
Prepares
and
executes
a
SQL
statement
quote
Quotes
string
or
BLOB
values
to
be
inserted
fetchrow
array
Fetches
the
next
row
as
an
array
of
fields
fetchrow
arrayref
Fetches
next
row
as
a
reference
array
of
fields
fetchrow
hashref
Fetches
next
row
as
a
reference
to
a
hashtable
fetchall
arrayref
Fetches
all
data
as
an
array
of
arrays
finish
Finishes
a
statement
and
let
the
system
free
resources
rows
Returns
the
number
of
rows
affected
data
sources
Returns
an
array
of
databases
available
on
localhost
ChopBlanks
Controls
whether
fetchrow
methods
trim
spaces
NUM
OF
PARAMS
The
number
of
placeholders
in
the
prepared
statement
NULLABLE
Which
columns
can
be
NULL
trace
Perform
tracing
for
debugging
MySQL
specific
methods
insertid
The
latest
AUTO
INCREMENT
value
is
blob
Which
column
are
BLOB
values
is
key
Which
columns
are
keys
is
num
Which
columns
are
numeric
is
pri
key
Which
columns
are
primary
keys
is
not
null
Which
columns
CANNOT
be
NULL
See
NULLABLE
length
Maximum
possible
column
sizes
max
length
Maximum
column
sizes
actually
present
in
result
NAME
Column
names
NUM
OF
FIELDS
Number
of
fields
returned
table
Table
names
in
returned
set
type
All
column
types
The
Perl
methods
are
described
in
more
detail
in
the
following
sections
Variables
used
for
method
return
values
have
these
meanings
dbh
Database
handle
sth
Statement
handle
rc
Return
code
often
a
status
rv
Return
value
often
a
row
count
Portable
DBI
methods
connect
data
source
username
password
Use
the
connect
method
to
make
a
database
connection
to
the
data
source
The
data
source
value
should
begin
with
DBI
driver
name
Example
uses
of
connect
with
the
DBD
mysql
driver
dbh
DBI
connect
DBI
mysql
database
user
password
dbh
DBI
connect
DBI
mysql
database
hostname
user
password
dbh
DBI
connect
DBI
mysql
database
hostname
port
user
password
If
the
user
name
and
or
password
are
undefined
DBI
uses
the
values
of
the
DBI
USER
and
DBI
PASS
environment
variables
respectively
If
you
don
t
specify
a
hostname
it
defaults
to
localhost
If
you
don
t
specify
a
port
number
it
defaults
to
the
default
MySQL
port
3306
As
of
Msql
Mysql
modules
version
1
2009
the
data
source
value
allows
certain
modifiers
mysql
read
default
file
file
name
Read
filename
as
an
option
file
For
information
on
option
files
see
section
896
4
15
4
Option
files
mysql
read
default
group
group
name
The
default
group
when
reading
an
option
file
is
normally
the
client
group
By
specifying
the
mysql
read
default
group
option
the
default
group
becomes
the
group
name
group
mysql
compression
1
Use
compressed
communication
between
the
client
and
server
MySQL
3
22
3
or
later
mysql
socket
path
to
socket
Specify
the
pathname
of
the
Unix
socket
that
is
used
to
connect
to
the
server
MySQL
3
21
15
or
later
Multiple
modifiers
may
be
given
each
must
be
preceded
by
a
semicolon
For
example
if
you
want
to
avoid
hardcoding
the
user
name
and
password
into
a
DBI
script
you
can
take
them
from
the
user
s
my
cnf
option
file
instead
by
writing
your
connect
call
like
this
dbh
DBI
connect
DBI
mysql
database
mysql
read
default
file
ENV
HOME
my
cnf
user
password
This
call
will
read
options
defined
for
the
client
group
in
the
option
file
If
you
wanted
to
do
the
same
thing
but
use
options
specified
for
the
perl
group
instead
you
could
use
this
dbh
DBI
connect
DBI
mysql
database
mysql
read
default
file
ENV
HOME
my
cnf
mysql
read
default
group
perl
user
password
disconnect
The
disconnect
method
disconnects
the
database
handle
from
the
database
This
is
typically
called
right
before
you
exit
from
the
program
Example
rc
dbh
disconnect
prepare
statement
Prepares
a
SQL
statement
for
execution
by
the
database
engine
and
returns
a
statement
handle
sth
which
you
can
use
to
invoke
the
execute
method
Typically
you
handle
SELECT
statements
and
SELECT
like
statements
such
as
SHOW
DESCRIBE
and
EXPLAIN
by
means
of
prepare
and
execute
Example
sth
dbh
prepare
statement
or
die
Can
t
prepare
statement
dbh
errstr
n
execute
The
execute
method
executes
a
prepared
statement
For
non
SELECT
statements
execute
returns
the
number
of
rows
affected
If
no
rows
are
affected
execute
returns
0E0
which
Perl
treats
as
zero
but
regards
as
true
For
SELECT
statements
execute
only
starts
the
SQL
query
in
the
database
you
need
to
use
one
of
the
fetch
methods
described
below
to
retrieve
the
data
Example
rv
sth
execute
or
die
can
t
execute
the
query
sth
errstr
do
statement
The
do
method
prepares
and
executes
a
SQL
statement
and
returns
the
number
of
rows
affected
If
no
rows
are
affected
do
returns
0E0
which
Perl
treats
as
zero
but
regards
as
true
This
method
is
generally
used
for
non
SELECT
statements
which
cannot
be
prepared
in
advance
due
to
driver
limitations
or
which
do
not
need
to
executed
more
than
once
inserts
deletes
etc
Example
rv
dbh
do
statement
or
die
Can
t
execute
statement
dbh
errstr
n
quote
string
The
quote
method
is
used
to
escape
any
special
characters
contained
in
the
string
and
to
add
the
required
outer
quotation
marks
Example
sql
dbh
quote
string
fetchrow
array
This
method
fetches
the
next
row
of
data
and
returns
it
as
an
array
of
field
values
Example
while
row
sth
fetchrow
array
print
qw
row
0
t
row
1
t
row
2
n
fetchrow
arrayref
This
method
fetches
the
next
row
of
data
and
returns
it
as
a
reference
to
an
array
of
field
values
Example
while
row
ref
sth
fetchrow
arrayref
print
qw
row
ref
0
t
row
ref
1
t
row
ref
2
n
fetchrow
hashref
This
method
fetches
a
row
of
data
and
returns
a
reference
to
a
hash
table
containing
field
name
value
pairs
This
method
is
not
nearly
as
efficient
as
using
array
references
as
demonstrated
above
Example
while
hash
ref
sth
fetchrow
hashref
print
qw
hash
ref
firstname
t
hash
ref
lastname
t
hash
ref
title
n
fetchall
arrayref
This
method
is
used
to
get
all
the
data
rows
to
be
returned
from
the
SQL
statement
It
returns
a
reference
to
an
array
of
arrays
of
references
to
each
row
You
access
or
print
the
data
by
using
a
nested
loop
Example
my
table
sth
fetchall
arrayref
or
die
sth
errstr
n
my
i
j
for
i
0
table
for
j
0
table
i
print
table
i
j
t
print
n
finish
Indicates
that
no
more
data
will
be
fetched
from
this
statement
handle
You
call
this
method
to
free
up
the
statement
handle
and
any
system
resources
it
may
be
holding
Example
rc
sth
finish
rows
Returns
the
number
of
rows
changed
updated
deleted
etc
by
the
last
command
This
is
usually
used
after
a
non
SELECT
execute
statement
Example
rv
sth
rows
NULLABLE
Returns
a
reference
to
an
array
of
boolean
values
for
each
element
of
the
array
a
value
of
TRUE
indicates
that
this
column
may
contain
NULL
values
Example
null
possible
sth
NULLABLE
NUM
OF
FIELDS
This
attribute
indicates
the
number
of
fields
returned
by
a
SELECT
or
SHOW
FIELDS
statement
You
may
use
this
for
checking
whether
a
statement
returned
a
result
A
zero
value
indicates
a
non
SELECT
statement
like
INSERT
DELETE
or
UPDATE
Example
nr
of
fields
sth
NUM
OF
FIELDS
data
sources
driver
name
This
method
returns
an
array
containing
names
of
databases
available
to
the
MySQL
server
on
the
host
localhost
Example
dbs
DBI
data
sources
mysql
ChopBlanks
This
attribute
determines
whether
the
fetchrow
methods
will
chop
leading
and
trailing
blanks
from
the
returned
values
Example
sth
ChopBlanks
1
trace
trace
level
trace
trace
level
trace
filename
The
trace
method
enables
or
disables
tracing
When
invoked
as
a
DBI
class
method
it
affects
tracing
for
all
handles
When
invoked
as
a
database
or
statement
handle
method
it
affects
tracing
for
the
given
handle
and
any
future
children
of
the
handle
Setting
trace
level
to
2
provides
detailed
trace
information
Setting
trace
level
to
0
disables
tracing
Trace
output
goes
to
the
standard
error
output
by
default
If
trace
filename
is
specified
the
file
is
opened
in
append
mode
and
output
for
all
traced
handles
is
written
to
that
file
Example
DBI
trace
2
trace
everything
DBI
trace
2
tmp
dbi
out
trace
everything
to
tmp
dbi
out
dth
trace
2
trace
this
database
handle
sth
trace
2
trace
this
statement
handle
You
can
also
enable
DBI
tracing
by
setting
the
DBI
TRACE
environment
variable
Setting
it
to
a
numeric
value
is
equivalent
to
calling
DBI
value
Setting
it
to
a
pathname
is
equivalent
to
calling
DBI
2
value
MySQL
specific
methods
The
methods
shown
below
are
MySQL
specific
and
not
part
of
the
DBI
standard
Several
of
them
are
now
deprecated
is
blob
is
key
is
num
is
pri
key
is
not
null
length
max
length
and
table
Where
DBI
standard
alternatives
exist
they
are
noted
below
insertid
If
you
use
the
AUTO
INCREMENT
feature
of
MySQL
the
new
auto
incremented
values
will
be
stored
here
Example
new
id
sth
insertid
As
an
alternative
you
can
use
dbh
mysql
insertid
is
blob
Returns
a
reference
to
an
array
of
boolean
values
for
each
element
of
the
array
a
value
of
TRUE
indicates
that
the
respective
column
is
a
BLOB
Example
keys
sth
is
blob
is
key
Returns
a
reference
to
an
array
of
boolean
values
for
each
element
of
the
array
a
value
of
TRUE
indicates
that
the
respective
column
is
a
key
Example
keys
sth
is
key
is
num
Returns
a
reference
to
an
array
of
boolean
values
for
each
element
of
the
array
a
value
of
TRUE
indicates
that
the
respective
column
contains
numeric
values
Example
nums
sth
is
num
is
pri
key
Returns
a
reference
to
an
array
of
boolean
values
for
each
element
of
the
array
a
value
of
TRUE
indicates
that
the
respective
column
is
a
primary
key
Example
pri
keys
sth
is
pri
key
is
not
null
Returns
a
reference
to
an
array
of
boolean
values
for
each
element
of
the
array
a
value
of
FALSE
indicates
that
this
column
may
contain
NULL
values
Example
not
nulls
sth
is
not
null
is
not
null
is
deprecated
it
is
preferable
to
use
the
NULLABLE
attribute
described
above
since
that
is
a
DBI
standard
length
max
length
Each
of
these
methods
returns
a
reference
to
an
array
of
column
sizes
The
length
array
indicates
the
maximum
possible
sizes
that
each
column
may
be
as
declared
in
the
table
description
The
max
length
array
indicates
the
maximum
sizes
actually
present
in
the
result
table
Example
lengths
sth
length
max
lengths
sth
max
length
NAME
Returns
a
reference
to
an
array
of
column
names
Example
names
sth
NAME
table
Returns
a
reference
to
an
array
of
table
names
Example
tables
sth
table
type
Returns
a
reference
to
an
array
of
column
types
Example
types
sth
type
897
19
5
3
More
DBI
DBD
information
You
can
use
the
perldoc
command
to
get
more
information
about
DBI
perldoc
DBI
perldoc
DBI
FAQ
perldoc
DBD
mysql
You
can
also
use
the
pod2man
pod2html
etc
tools
to
translate
to
other
formats
And
of
course
you
can
find
the
latest
DBI
information
at
the
DBI
web
page
898
http
www
symbolstone
org
technology
perl
DBI
index
html
899
19
6
MySQL
Eiffel
wrapper
The
MySQL
900
Contrib
directory
contains
a
Eiffel
wrapper
written
by
Michael
Ravits
You
can
also
find
this
at
http
www
netpedia
net
hosting
newplayer
901
19
7
MySQL
Java
connectivity
JDBC
There
are
2
supported
JDBC
drivers
for
MySQL
the
twz
and
mm
driver
You
can
find
a
copy
of
these
at
902
http
www
mysql
com
Contrib
For
documentation
consult
any
JDBC
documentation
and
the
drivers
own
documentation
for
MySQL
specific
features
903
19
8
MySQL
PHP
API
PHP
is
a
server
side
HTML
embedded
scripting
language
that
may
be
used
to
create
dynamic
web
pages
It
contains
support
for
accessing
several
databases
including
MySQL
PHP
may
be
run
as
a
separate
program
or
compiled
as
a
module
for
use
with
the
Apache
web
server
The
distribution
and
documentation
are
available
at
the
904
PHP
website
905
19
9
MySQL
C
APIs
Two
API
s
are
available
in
the
MySQL
906
Contrib
directory
907
19
10
MySQL
Python
APIs
The
MySQL
908
Contrib
directory
contains
a
Python
interface
written
by
Joseph
Skinner
You
can
also
use
the
Python
interface
to
iODBC
to
access
a
MySQL
server
909
mxODBC
910
19
11
MySQL
TCL
APIs
911
TCL
at
binevolve
The
912
Contrib
directory
contains
a
TCL
interface
that
is
based
on
msqltcl
1
50
913
20
How
MySQL
compares
to
other
databases
914
20
1
How
MySQL
compares
to
mSQL
This
section
has
been
written
by
the
MySQL
developers
so
it
should
be
read
with
that
in
mind
But
there
are
NO
factual
errors
that
we
know
of
For
a
list
of
all
supported
limits
functions
and
types
see
the
915
crash
me
web
page
Performance
For
a
true
comparison
of
speed
consult
the
growing
MySQL
benchmark
suite
See
section
916
11
The
MySQL
benchmark
suite
Because
there
is
no
thread
creation
overhead
a
small
parser
few
features
and
simple
security
mSQL
should
be
quicker
at
Tests
that
perform
repeated
connects
and
disconnects
running
a
very
simple
query
during
each
connection
INSERT
operations
into
very
simple
tables
with
few
columns
and
keys
CREATE
TABLE
and
DROP
TABLE
SELECT
on
something
that
isn
t
an
index
A
table
scan
is
very
easy
Since
these
operations
are
so
simple
it
is
hard
to
be
better
at
them
when
you
have
a
higher
startup
overhead
After
the
connection
is
established
MySQL
should
perform
much
better
On
the
other
hand
MySQL
is
much
faster
than
mSQL
and
most
other
SQL
implementions
on
the
following
Complex
SELECT
operations
Retrieving
large
results
MySQL
has
a
better
faster
and
safer
protocol
Tables
with
variable
length
strings
since
MySQL
has
more
efficent
handling
and
can
have
indexes
on
VARCHAR
columns
Handling
tables
with
many
columns
Handling
tables
with
large
record
lengths
SELECT
with
many
expressions
SELECT
on
large
tables
Handling
many
connections
at
the
same
time
MySQL
is
fully
multi
threaded
Each
connection
has
its
own
thread
which
means
that
no
thread
has
to
wait
for
another
unless
a
thread
is
modifying
a
table
another
thread
wants
to
access
In
mSQL
once
one
connection
is
established
all
others
must
wait
until
the
first
has
finished
regardless
of
whether
the
connection
is
running
a
query
that
is
short
or
long
When
the
first
connection
terminates
the
next
can
be
served
while
all
the
others
wait
again
etc
Joins
mSQL
can
become
pathologically
slow
if
you
change
the
order
of
tables
in
a
SELECT
In
the
benchmark
suite
a
time
more
than
15000
times
slower
than
MySQL
was
seen
This
is
due
to
mSQL
s
lack
of
a
join
optimizer
to
order
tables
in
the
optimal
order
However
if
you
put
the
tables
in
exactly
the
right
order
in
mSQL2
and
the
WHERE
is
simple
and
uses
index
columns
the
join
will
be
relatively
fast
See
section
917
11
The
MySQL
benchmark
suite
ORDER
BY
and
GROUP
BY
DISTINCT
Using
TEXT
or
BLOB
columns
SQL
Features
GROUP
BY
and
HAVING
mSQL
does
not
support
GROUP
BY
at
all
MySQL
supports
a
full
GROUP
BY
with
both
HAVING
and
the
following
functions
COUNT
AVG
MIN
MAX
SUM
and
STD
COUNT
is
optimized
to
return
very
quickly
if
the
SELECT
retrieves
from
one
table
no
other
columns
are
retrieved
and
there
is
no
WHERE
clause
MIN
and
MAX
may
take
string
arguments
INSERT
and
UPDATE
with
calculations
MySQL
can
do
calculations
in
an
INSERT
or
UPDATE
For
example
mysql
UPDATE
SET
x
x
10
y
WHERE
x
20
Aliasing
MySQL
has
column
aliasing
Qualifying
column
names
In
MySQL
if
a
column
name
is
unique
among
the
tables
used
in
a
query
you
do
not
have
to
use
the
full
qualifier
SELECT
with
functions
MySQL
has
many
functions
too
many
to
list
here
see
section
918
7
3
Functions
for
use
in
SELECT
and
WHERE
clauses
Disk
space
efficiency
That
is
how
small
can
you
make
your
tables
MySQL
has
very
precise
types
so
you
can
create
tables
that
take
very
little
space
An
example
of
a
useful
MySQL
datatype
is
the
MEDIUMINT
that
is
3
bytes
long
If
you
have
100
000
000
records
saving
even
one
byte
per
record
is
very
important
mSQL2
has
a
more
limited
set
of
column
types
so
it
is
more
difficult
to
get
small
tables
Stability
This
is
harder
to
judge
objectively
For
a
discussion
of
MySQL
stability
see
section
919
1
5
How
stable
is
MySQL
We
have
no
experience
with
mSQL
stability
so
we
cannot
say
anything
about
that
Price
Another
important
issue
is
the
license
MySQL
has
a
more
flexible
license
than
mSQL
and
is
also
less
expensive
than
mSQL
Whichever
product
you
choose
to
use
remember
to
at
least
consider
paying
for
a
license
or
email
support
You
are
required
to
get
a
license
if
you
include
MySQL
with
a
product
that
you
sell
of
course
Perl
interfaces
MySQL
has
basically
the
same
interfaces
to
Perl
as
mSQL
with
some
added
features
JDBC
Java
MySQL
currently
has
4
JDBC
drivers
The
gwe
driver
A
Java
interface
by
GWE
technologies
not
supported
anymore
The
jms
driver
An
improved
gwe
driver
by
Xiaokun
Kelvin
ZHU
The
twz
driver
A
type
4
JDBC
driver
by
Terrence
W
Zellers
and
educational
use
The
mm
driver
A
type
4
JDBC
driver
by
Mark
Matthews
The
recommended
drivers
are
the
twz
or
mm
driver
Both
are
reported
to
work
excellently
We
know
that
mSQL
has
a
JDBC
driver
but
we
have
too
little
experience
with
it
to
compare
Rate
of
development
MySQL
has
a
very
small
team
of
developers
but
we
are
quite
used
to
coding
C
and
C
very
rapidly
Since
threads
functions
GROUP
BY
and
so
on
are
still
not
implemented
in
mSQL
it
has
a
lot
of
catching
up
to
do
To
get
some
perspective
on
this
you
can
view
the
mSQL
HISTORY
file
for
the
last
year
and
compare
it
with
the
News
section
of
the
MySQL
Reference
Manual
see
section
920
D
MySQL
change
history
It
should
be
pretty
obvious
which
one
has
developed
most
rapidly
Utility
programs
Both
mSQL
and
MySQL
have
many
interesting
third
party
tools
Since
it
is
very
easy
to
port
upward
from
mSQL
to
MySQL
almost
all
the
interesting
applications
that
are
available
for
mSQL
are
also
available
for
MySQL
MySQL
comes
with
a
simple
msql2mysql
program
that
fixes
differences
in
spelling
between
mSQL
and
MySQL
for
the
most
used
C
API
functions
For
example
it
changes
instances
of
msqlConnect
to
mysql
connect
Converting
a
client
program
from
mSQL
to
MySQL
usually
takes
a
couple
of
minutes
921
20
1
1
How
to
convert
mSQL
tools
for
MySQL
According
to
our
experience
it
would
just
take
a
few
hours
to
convert
tools
such
as
msql
tcl
and
msqljava
that
use
the
mSQL
C
API
so
that
they
work
with
the
MySQL
C
API
The
conversion
procedure
is
1
Run
the
shell
script
msql2mysql
on
the
source
This
requires
the
replace
program
which
is
distributed
with
MySQL
2
Compile
3
Fix
all
compiler
errors
Differences
between
the
mSQL
C
API
and
the
MySQL
C
API
are
MySQL
uses
a
MYSQL
structure
as
a
connection
type
mSQL
uses
an
int
mysql
connect
takes
a
pointer
to
a
MYSQL
structure
as
a
parameter
It
is
easy
to
define
one
globally
or
to
use
malloc
to
get
one
mysql
connect
also
takes
2
parameters
for
specifying
the
user
and
password
You
may
set
these
to
NULL
NULL
for
default
use
mysql
error
takes
the
MYSQL
structure
as
a
parameter
Just
add
the
parameter
to
your
old
msql
error
code
if
you
are
porting
old
code
MySQL
returns
an
error
number
and
a
text
error
message
for
all
errors
mSQL
returns
only
a
text
error
message
Some
incompatibilities
exist
as
a
result
of
MySQL
supporting
multiple
connections
to
the
server
from
the
same
process
922
20
1
2
How
mSQL
and
MySQL
client
server
communications
protocols
differ
There
are
enough
differences
that
it
is
impossible
or
at
least
not
easy
to
support
both
The
most
significant
ways
in
which
the
MySQL
protocol
differs
from
the
mSQL
protocol
are
listed
below
A
message
buffer
may
contain
many
result
rows
The
message
buffers
are
dynamically
enlarged
if
the
query
or
the
result
is
bigger
than
the
current
buffer
up
to
a
configurable
server
and
client
limit
All
packets
are
numbered
to
catch
duplicated
or
missing
packets
All
column
values
are
sent
in
ASCII
The
lengths
of
columns
and
rows
are
sent
in
packed
binary
coding
1
2
or
3
bytes
MySQL
can
read
in
the
result
unbuffered
without
having
to
store
the
full
set
in
the
client
If
a
single
write
read
takes
more
than
30
seconds
the
server
closes
the
connection
If
a
connection
is
idle
for
8
hours
the
server
closes
the
connection
923
20
1
3
How
mSQL
2
0
SQL
syntax
differs
from
MySQL
Column
types
MySQL
Has
the
following
additional
types
among
others
see
see
section
924
7
6
CREATE
TABLE
syntax
ENUM
type
for
one
of
a
set
of
strings
SET
type
for
many
of
a
set
of
strings
BIGINT
type
for
64
bit
integers
MySQL
also
supports
the
following
additional
type
attributes
UNSIGNED
option
for
integer
columns
ZEROFILL
option
for
integer
columns
AUTO
INCREMENT
option
for
integer
columns
that
are
a
PRIMARY
KEY
See
section
925
19
4
28
mysql
insert
id
DEFAULT
value
for
all
columns
mSQL2
mSQL
column
types
correspond
to
the
MySQL
types
shown
below
mSQL
type
Corresponding
MySQL
type
CHAR
len
CHAR
len
TEXT
len
TEXT
len
len
is
the
maximal
length
And
LIKE
works
INT
INT
With
many
more
options
REAL
REAL
Or
FLOAT
Both
4
and
8
byte
versions
are
available
UINT
INT
UNSIGNED
DATE
DATE
Uses
ANSI
SQL
format
rather
than
mSQL
s
own
TIME
TIME
MONEY
DECIMAL
12
2
A
fixed
point
value
with
two
decimals
Index
creation
MySQL
Indexes
may
be
specified
at
table
creation
time
with
the
CREATE
TABLE
statement
mSQL
Indexes
must
be
created
after
the
table
has
been
created
with
separate
CREATE
INDEX
statements
To
insert
a
unique
identifier
into
a
table
MySQL
Use
AUTO
INCREMENT
as
a
column
type
specifier
See
section
926
19
4
28
mysql
insert
id
mSQL
Create
a
SEQUENCE
on
a
table
and
select
the
seq
column
To
obtain
a
unique
identifier
for
a
row
MySQL
Add
a
PRIMARY
KEY
or
UNIQUE
key
to
the
table
mSQL
Use
the
rowid
column
Observe
that
rowid
may
change
over
time
depending
on
many
factors
To
get
the
time
a
column
was
last
modified
MySQL
Add
a
TIMESTAMP
column
to
the
table
This
column
is
automatically
set
to
the
current
date
and
time
for
INSERT
or
UPDATE
statements
if
you
don
t
give
the
column
a
value
or
if
you
give
it
a
NULL
value
mSQL
Use
the
timestamp
column
NULL
value
comparisons
MySQL
MySQL
follows
ANSI
SQL
and
a
comparison
with
NULL
is
always
NULL
mSQL
In
mSQL
NULL
NULL
is
TRUE
You
must
change
NULL
to
IS
NULL
and
NULL
to
IS
NOT
NULL
when
porting
old
code
from
mSQL
to
MySQL
String
comparisons
MySQL
Normally
string
comparisons
are
performed
in
case
independent
fashion
with
the
sort
order
determined
by
the
current
character
set
ISO
8859
1
Latin1
by
default
If
you
don
t
like
this
declare
your
columns
with
the
BINARY
attribute
which
causes
comparisons
to
be
done
according
to
the
ASCII
order
used
on
the
MySQL
server
host
mSQL
All
string
comparisons
are
performed
in
case
sensitive
fashion
with
sorting
in
ASCII
order
Case
insensitive
searching
MySQL
LIKE
is
a
case
insensitive
or
case
sensitive
operator
depending
on
the
columns
involved
If
possible
MySQL
uses
indexes
if
the
LIKE
argument
doesn
t
start
with
a
wildcard
character
mSQL
Use
CLIKE
Handling
of
trailing
spaces
MySQL
Strips
all
spaces
at
the
end
of
CHAR
and
VARCHAR
columns
Use
a
TEXT
column
if
this
behavior
is
not
desired
mSQL
Retains
trailing
space
WHERE
clauses
MySQL
MySQL
correctly
prioritizes
everything
AND
is
evaluated
before
OR
To
get
mSQL
behavior
in
MySQL
use
parentheses
as
shown
below
mSQL
Evaluates
everything
from
left
to
right
This
means
that
some
logical
calculations
with
more
than
three
arguments
cannot
be
expressed
in
any
way
It
also
means
you
must
change
some
queries
when
you
upgrade
to
MySQL
You
do
this
easily
by
adding
parentheses
Suppose
you
have
the
following
mSQL
query
mysql
SELECT
FROM
table
WHERE
a
1
AND
b
2
OR
a
3
AND
b
4
To
make
MySQL
evaluate
this
the
way
that
mSQL
would
you
must
add
parentheses
mysql
SELECT
FROM
table
WHERE
a
1
AND
b
2
OR
a
3
AND
b
4
Access
control
MySQL
Has
tables
to
store
grant
permission
options
per
user
host
and
database
See
section
927
6
6
How
the
privilege
system
works
mSQL
Has
a
file
mSQL
acl
in
which
you
can
grant
read
write
privileges
for
users
928
20
2
How
MySQL
compares
to
PostgreSQL
PostgreSQL
has
some
more
advanced
features
like
user
defined
types
triggers
rules
and
some
transaction
support
However
PostgreSQL
lacks
many
of
the
standard
types
and
functions
from
ANSI
SQL
and
ODBC
See
the
929
crash
me
web
page
for
a
complete
list
of
limits
and
which
types
and
functions
are
supported
or
unsupported
Normally
PostgreSQL
is
a
magnitude
slower
than
MySQL
See
section
930
11
The
MySQL
benchmark
suite
This
is
due
largely
to
their
transactions
system
If
you
really
need
transactions
or
the
rich
type
system
PostgreSQL
offers
and
you
can
afford
the
speed
penalty
you
should
take
a
look
at
PostgreSQL
931
A
Some
MySQL
users
932
A
1
Some
Web
search
engines
933
AAA
Matilda
Web
Search
934
What
s
New
935
Aladin
936
Columbus
Finder
937
Spider
938
Blitzsuche
939
Indoseek
Indonesia
940
Yaboo
Yet
Another
BOOkmarker
941
Yahoosuck
942
A
2
Some
Information
search
engines
concentrated
on
some
area
943
Jobvertise
Post
and
search
for
jobs
944
The
Music
Database
945
Fotball
Soccer
search
page
946
TAKEDOWN
wrestling
947
The
International
Lyrics
Network
948
Musicians
looking
for
other
musicians
Free
Service
949
AddALL
books
searching
and
price
comparison
950
Harvard
s
Gray
Herbarium
Index
of
Plant
Names
951
Research
Publications
at
Monash
University
in
Australia
952
The
Game
Development
Search
Engine
953
My
Recipe
com
Cookbook
at
i
run
com
954
A
3
Some
Domain
Internet
Web
and
related
services
955
Registry
of
Web
providers
that
support
MySQL
956
Dynamic
DNS
Services
957
dynamic
domain
name
service
958
Free
3rd
level
domains
959
Online
Database
960
BigBiz
Internet
Services
961
The
Virt
Gazette
962
Global
InfoNet
Inc
963
WebHosters
A
Guide
to
WWW
Providers
964
Internet
information
server
965
A
pro
Linux
tech
news
and
comment
discussion
site
966
A
technology
news
site
967
WorldNet
Communications
An
Internet
Services
Provider
968
Netizen
Australian
based
web
consultancy
969
Search
site
for
training
courses
in
the
UK
970
Gannon
Chat
GPL
Written
in
Perl
and
Javascript
971
A
general
links
directory
972
A
web
based
bookmark
management
service
973
Walnut
Creek
CDROM
974
WWWThreads
Interactive
discussion
Forums
975
In
Italian
Storage
data
from
meteo
station
976
Online
Person
To
Person
Auction
977
Tips
on
web
development
978
Mailfriends
com
is
a
FREE
service
for
everybody
who
wants
to
find
friends
over
the
internet
979
A
4
Web
sites
that
use
PHP
and
MySQL
980
Jgaa
s
Internet
Official
Support
Site
running
via
apache
981
Ionline
online
publication
MySQL
PHP
Java
Web
programming
DB
development
982
BaBoo
Browse
and
bookmark
Free
web
based
bookmark
manager
and
Calendar
983
Course
Schedule
System
at
Pensacola
Junior
College
984
A
beginners
tutoral
of
how
to
start
using
MySQL
985
32bit
com
An
extensive
shareware
freeware
archive
986
Jokes
2000
987
Burken
NU
Burken
is
a
webhotel
that
provides
scripts
among
other
things
for
remote
users
like
counters
guestbooks
etc
988
tips
pair
com
Contains
tips
on
html
javascript
2d
3d
graphics
and
PHP3
MySQL
All
pages
are
generated
from
a
database
989
A
5
Uncategorized
pages
990
AZC
COM
s
Feature
Showcase
991
Course
Search
992
Northerbys
Online
Auctions
993
Amsterdam
Airport
Schiphol
994
CD
database
995
Used
Audio
Gear
Database
996
Musical
note
sheets
997
Bagism
A
John
Lennon
fan
page
998
US
Folk
art
broker
999
Mail
reading
on
the
web
1000
Free
home
pages
on
www
somecoolname
mypage
org
1001
Der
Server
f
ur
Schulen
im
Web
In
German
1002
Auldhaefen
Online
Services
1003
CaryNET
Information
Center
1004
Dataden
Computer
Systems
1005
Andr
emuseet
In
Swedish
1006
HOMESITE
Internet
Marketing
1007
Jade
V
Network
Services
1008
Weather
World
2010
Technical
Credits
1009
About
The
Gimp
plugin
registry
1010
Java
tool
Archiver
technical
detail
Slightly
optimistic
about
MySQL
ANSI
92
compliance
1011
Games
Domain
Cheats
Database
1012
The
Powered
By
Page
Kcilink
1013
Netcasting
1014
NBL
Australian
National
Basketball
League
tipping
1015
CGI
shop
1016
Whirlycott
Website
Design
1017
Museum
Tusculanum
Press
1018
Centro
Siciliano
di
Documentazione
1019
Quake
statistics
database
1020
Astroforum
Astrologie
and
related
things
in
German
1021
OpenDebate
Interactive
Polls
Open
Discussion
1022
Online
chemical
dissertation
server
1023
FreSch
The
Free
Scholarship
Search
Service
1024
Stockholm
Pinball
Locator
1025
HEK
A
construction
company
1026
Elsevier
Bussines
Information
1027
Medical
Links
Using
Coldfusion
and
MySQL
1028
Search
for
jobs
people
at
JobLink
USA
1029
Daily
news
about
Linux
in
German
language
1030
Competition
Formation
Skydiving
1031
E
commerce
and
internal
accounting
1032
Denmark
s
leading
business
daily
newspaper
B
o
rsen
1033
The
Internet
NES
Database
1034
Travel
agency
in
Prague
in
3
languages
1035
Linkstation
1036
Searchable
online
database
at
Peoplestaff
1037
A
searchable
database
system
for
horse
classified
ads
for
sale
and
at
stud
1038
The
Poot
site
1039
Playin
in
the
LAN
a
network
monitoring
suite
1040
U
S
Army
Publishing
Agency
1041
Realestate
handling
in
Yugoslavia
1042
PIMS
a
Patient
Information
Management
System
1043
Pilkington
Software
Inc
1044
Betazine
The
Ultimate
Online
Beta
Tester
s
Magazine
1045
A
Vietnam
Veteran
s
Memorial
The
Wall
database
1046
Gamer
s
Union
specializes
inauctions
of
used
out
of
print
gaming
material
1047
A
daily
bulletin
at
Monterey
High
school
1048
Computer
Currents
Magazine
1049
Community
owned
site
serving
Lake
Washington
s
Eastside
residents
and
businesses
1050
French
bowling
site
1051
A
6
Some
MySQL
consultants
1052
Ayni
AG
1053
Online
Database
1054
DataGuard
Uses
MySQL
and
PHP
1055
WWITS
Uses
MySQL
and
PHP
1056
WCN
The
World
Community
Network
1057
Chip
Castle
Dot
Com
Inc
1058
Cybersource
Pty
Ltd
1059
A
7
Programming
1060
The
Perl
CPAN
Testers
results
page
Send
any
additions
to
this
list
to
1061
webmaster
mysql
com
1062
B
Contributed
programs
Many
users
of
MySQL
have
contributed
very
useful
support
tools
and
addons
A
list
of
what
is
available
at
1063
http
www
mysql
com
Contrib
or
any
mirror
is
shown
below
If
you
want
to
build
MySQL
support
for
the
Perl
DBI
DBD
interface
you
should
fetch
the
Data
Dumper
DBI
and
Msql
Mysql
modules
files
and
install
them
See
section
1064
4
10
Perl
installation
comments
1065
00
README
This
listing
1066
B
1
API
s
Perl
modules
1067
Data
Dumper
2
09
tar
gz
Perl
Data
Dumper
module
Useful
with
DBI
DBD
support
1068
DBI
1
08
tar
gz
Perl
DBI
module
1069
KAMXbase1
0
tar
gz
Convert
between
dbf
files
and
MySQL
tables
Perl
module
written
by
Pratap
Pereira
1070
pereira
ee
eng
ohio
state
edu
extened
by
Kevin
A
McGrail
1071
kmcgrail
digital1
peregrinehw
com
This
converter
can
handle
MEMO
fields
1072
Msql
Mysql
modules
1
2018
tar
gz
Perl
DBD
module
to
access
mSQL
and
MySQL
databases
1073
Data
ShowTable
3
3
tar
gz
Perl
Data
ShowTable
module
Useful
with
DBI
DBD
support
JDBC
1074
mm
mysql
jdbc
1
0
t
ar
gz
New
java
JDBC
driver
for
MySQL
This
is
a
production
release
and
is
actively
developed
By
Mark
Matthews
1075
mmatthew
ecn
purdue
edu
This
driver
has
a
LGPL
license
You
can
always
find
the
newest
driver
at
1076
http
www
worldserver
com
mmatthew
mysql
1077
twz1jdbcForMysql
1
0
4
GA
tar
gz
The
twz
driver
A
type
4
JDBC
driver
by
Terrence
W
Zellers
and
educational
use
You
can
always
find
the
latest
driver
at
1078
http
www
voicenet
com
zellert
tjFM
1079
mysql
c
0
02
tar
gz
MySQL
C
wrapper
library
By
Roland
Haenel
1080
mysql
64
1
1
b
tar
gz
MySQL
C
API
More
than
just
a
wrapper
library
Originally
by
1081
delphi
interface
g
z
Delphi
interface
to
libmysql
dll
by
Blestan
Tabakov
1082
DelphiMySQL2
zip
Delphi
interface
to
libmysql
dll
by
1083
bsilva
umesd
k12
or
us
1084
JdmMysqlDriver
0
1
0
tar
gz
A
VisualWorks
3
0
Smalltalk
driver
for
MySQL
By
1085
Db
py
Python
module
with
caching
By
1086
gandalf
rosmail
com
1087
MySQLmodule
1
4
tar
gz
Python
interface
for
the
MySQL
By
Joseph
Skinner
1088
joe
earthlight
co
nz
Modified
by
Joerg
Senekowitsch
1089
senekow
ibm
net
1090
mysql
mex
tar
gz
An
interface
program
for
the
Matlab
program
by
MathWorks
1091
mysqltcl
1
53
tar
gz
Tcl
interface
for
MySQL
Based
on
msqltcl
1
50
tar
gz
Updated
by
Tobias
Ritzau
1092
tobri
ida
liu
se
1093
MyC
zip
A
Visual
Basic
like
API
by
Ed
Carp
1094
sqlscreens
1
0
1
tar
gz
TCL
TK
code
to
generate
database
screens
By
Jean
Francois
Dockes
1095
Vdb
dflts
2
1
tar
gz
This
is
a
new
version
of
a
set
of
library
utilities
intended
to
provide
a
generic
interface
to
SQL
database
engines
such
that
your
application
becomes
a
3
tiered
application
The
advantage
is
that
you
can
easily
switch
between
and
move
to
other
database
engines
by
implementing
one
file
for
the
new
backend
without
needing
to
make
any
changes
to
your
applications
By
1096
damian
cablenet
net
1097
DbFramework
1
10
tar
gz
DbFramework
is
a
collection
of
classes
for
manipulating
MySQL
databases
The
classes
are
loosely
based
on
the
CDIF
Data
Model
Subject
Area
By
Paul
Sharpe
1098
paul
miraclefish
com
1099
pike
mysql
1
4
tar
gz
MySQL
module
for
pike
For
use
with
the
Roxen
web
server
1100
squile
tar
gz
Module
for
guile
that
allows
guile
to
interact
with
SQL
databases
By
Hal
Roberts
1101
stk
mysql
tar
gz
Interface
for
Stk
Stk
is
the
Tk
widgets
with
Scheme
underneath
instead
of
Tcl
By
Terry
Jones
1102
eiffel
wrapper
1
0
tar
gz
Eiffel
wrapper
by
Michael
Ravits
1103
B
2
Clients
Graphical
clients
1104
kmysqladmin
0
1
tar
gz
An
administration
tool
for
the
MySQL
server
using
QT
KDE
Tested
only
on
Linux
1105
Java
client
with
Swing
By
Fredy
Fischer
1106
se
afs
dial
eunet
ch
1107
mysqlwinadmn
zip
Win32
GUI
binary
only
to
administrate
a
database
by
David
B
Mansel
1108
xmysqladmin
1
0
tar
gz
A
front
end
to
the
MySQL
database
engine
It
allows
reloads
status
check
process
control
isamchk
grant
revoke
privileges
creating
databases
dropping
databases
create
alter
browse
and
drop
tables
Originally
by
Gilbert
Therrien
1109
gilbert
ican
net
but
now
in
public
domain
and
supported
by
TcX
1110
xmysql
1
9
tar
gz
1111
xmysql
home
page
A
front
end
to
the
MySQL
database
engine
It
allows
for
simple
queries
and
table
maintenance
as
well
as
batch
queries
By
Rick
Mehalick
1112
dblhack
wt
net
Requires
1113
xforms
0
88
to
work
Web
clients
1114
mysqladmin
atif
1
0
tar
gz
WWW
MySQL
administrator
for
the
user
db
and
host
tables
By
Tim
Sailer
modified
by
Atif
Ghaffar
1115
mysql
webadmin
1
0a8
rz
tar
gz
A
tool
written
in
PHP
FI
to
administrate
MySQL
databases
remotely
over
the
web
within
a
Web
Browser
By
Peter
Kuppelwieser
Not
maintained
anymore
1116
mysqladm
tar
gz
MySQL
Web
Database
Administration
written
in
Perl
By
Tim
Sailer
1117
mysqladm
2
tar
gz
Updated
version
of
mysqladm
tar
gz
by
High
Tide
1118
myadmin
0
4
tar
gz
1119
MyAdmin
home
page
A
web
based
mysql
administrator
by
Mike
Machado
1120
phpMyAdmin
2
0
1
tar
gz
A
set
of
PHP3
scripts
to
adminstrate
MySQL
over
the
WWW
1121
phpMyAdmin
home
page
A
PHP3
tool
in
the
spirit
of
mysql
webadmin
by
Tobias
Ratschiller
tobias
dnet
it
1122
useradm
tar
gz
MySQL
administrator
in
PHP
By
Ofni
Thomas
1123
B
3
Web
tools
1124
http
www
odbsoft
com
cook
sources
htm
This
package
has
various
functions
for
generating
html
code
from
an
SQL
table
structure
and
for
generating
SQL
statements
Select
Insert
Update
Delete
from
an
html
form
You
can
build
a
complete
forms
interface
to
an
SQL
database
query
add
update
delete
without
any
programming
By
Marc
Beneteau
1125
marc
odbsoft
com
1126
sqlhtml
tar
gz
SQL
HTML
is
an
HTML
database
manager
for
MySQL
using
DBI
1
06
1127
UdmSearch
2
0
tar
gz
1128
UdmSearch
2
1
tar
gz
A
MySQL
and
PHP
based
search
engine
over
http
By
Alexander
I
Barkov
1129
bar
izhcom
ru
1130
wmtcl
doc
1131
wmtcl
lex
With
this
you
can
write
HTML
files
with
inclusions
of
TCL
code
By
1132
www
sql
0
5
7
lsm
1133
www
sql
0
5
3
md5
1134
www
sql
0
5
7
tar
gz
A
CGI
program
that
parses
an
HTML
file
containing
special
tags
parses
them
and
inserts
data
from
a
MySQL
database
1135
genquery
zip
Perl
SQL
database
interface
package
for
html
1136
cgi
0
2
tar
gz
A
CGI
wrapper
by
Sasha
Pachev
1137
WebBoard
1
0
EU
Industries
Internet
Message
Board
1138
B
4
Authentication
tools
1139
ascend
radius
mysql
0
4
3
patch
gz
This
is
authentication
and
logging
patch
using
MySQL
for
Ascend
Radius
By
1140
takeshi
SoftAgency
co
jp
1141
checkpassword
0
76
mysql
0
3
2
patch
gz
MySQL
authentication
patch
for
QMAIL
and
checkpassword
These
are
useful
for
management
user
mail
pop
account
by
MySQL
By
1142
takeshi
SoftAgency
co
jp
1143
jradius
diff
gz
MySQL
support
for
Livingston
s
Radius
2
01
Authentication
and
Accounting
By
Jose
de
Leon
1144
jdl
thevision
net
1145
mod
auth
mysql
2
20
tar
gz
Apache
authentication
module
for
MySQL
By
Zeev
Suraski
Please
register
this
module
at
http
bourbon
netvision
net
il
mysql
mod
auth
mysql
register
html
The
registering
information
is
only
used
for
statistical
purposes
and
will
encourage
further
development
of
this
module
1146
mod
log
mysql
1
05
tar
gz
MySQL
logging
module
for
Apache
By
Zeev
Suraski
1147
mypasswd
2
0
tar
gz
Extra
for
mod
auth
mysql
This
is
a
little
tool
that
allows
you
to
add
change
user
records
storing
group
and
or
password
entries
in
MySQL
tables
By
Harry
Brueckner
1148
brueckner
respublica
de
1149
mysql
passwd
README
1150
mysql
passwd
1
2
tar
gz
Extra
for
mod
auth
mysql
This
is
a
two
part
system
for
use
with
mod
auth
mysql
1151
pam
mysql
tar
gz
This
module
authenticates
users
via
pam
using
MySQL
1152
nsapi
auth
mysql
tar
Netscape
Web
Server
API
NSAPI
functions
to
authenticate
BASIC
users
against
MySQL
tables
By
Yuan
John
Jiang
1153
qmail
1
03
mysql
0
3
2
patch
gz
Patch
for
qmail
to
authenticate
users
from
a
MySQL
table
1154
pwcheck
mysql
0
1
tar
gz
An
authentication
module
for
the
Cyrus
IMAP
server
By
Aaron
Newsome
1155
B
5
Converters
1156
dbf2mysql
1
10d
tar
gz
Convert
between
dbf
files
and
MySQL
tables
By
Maarten
Boekhold
1157
boekhold
cindy
et
tudelft
nl
and
Michael
Widenius
This
converter
can
t
handle
MEMO
fields
1158
dbf2mysql
zip
Convert
between
FoxPro
dbf
files
and
MySQL
tables
on
Win32
By
Alexander
Eltsyn
1159
ae
nica
ru
or
1160
ae
usa
net
1161
dump2h
1
20
gz
Convert
from
mysqldump
output
to
a
C
header
file
By
Harry
Brueckner
1162
exportsql
txt
A
script
that
is
similar
to
access
to
mysql
txt
except
that
this
one
is
fully
configurable
has
better
type
conversion
including
detection
of
TIMESTAMP
fields
provides
warnings
and
suggestions
while
converting
quotes
all
special
characters
in
text
and
binary
data
and
so
on
It
will
also
convert
to
mSQL
v1
and
v2
and
is
free
of
charge
for
anyone
See
1163
http
www
cynergi
net
prod
exportsql
for
latest
version
By
Pedro
Freire
1164
support
cynergi
net
Note
Doesn
t
work
with
Access2
1165
access
to
mysql
txt
Paste
this
function
into
an
Access
module
of
a
database
which
has
the
tables
you
want
to
export
See
also
exportsql
By
Brian
Andrews
Note
Doesn
t
work
with
Access2
1166
importsql
txt
A
script
that
does
the
exact
reverse
of
exportsql
txt
That
is
it
imports
data
from
MySQL
into
an
Access
database
via
ODBC
This
is
very
handy
when
combined
with
exportSQL
since
it
lets
you
use
Access
for
all
DB
design
and
administration
and
synchronize
with
your
actual
MySQL
server
either
way
Free
of
charge
See
1167
http
www
netdive
com
freebies
importsql
for
any
updates
Created
by
Laurent
Bossavit
of
NetDIVE
Note
Doesn
t
work
with
Access2
1168
msql2mysqlWrapper
1
0
A
C
wrapper
from
mSQL
to
MySQL
By
1169
alfred
sb
net
1170
sqlconv
pl
A
simple
script
that
can
be
used
to
copy
fields
from
one
MySQL
table
to
another
in
bulk
Basically
you
can
run
mysqldump
and
pipe
it
to
the
sqlconv
pl
script
and
the
script
will
parse
through
the
mysqldump
output
and
will
rearrange
the
fields
so
they
can
be
inserted
into
a
new
table
An
example
is
when
you
want
to
create
a
new
table
for
a
different
site
you
are
working
on
but
the
table
is
just
a
bit
different
ie
fields
in
different
order
etc
By
Steve
Shreeve
1171
B
6
Using
MySQL
with
other
products
1172
emacs
sql
mode
tar
gz
Raw
port
of
a
SQL
mode
for
XEmacs
Supports
completion
Original
by
Peter
D
Pezaris
1173
pez
atlantic2
sbi
com
and
partial
MySQL
port
by
David
Axmark
1174
MyAccess
mda
MyAccess
is
an
AddIn
for
Access
97
and
handles
a
lot
of
maintanance
work
for
MySQL
databases
1175
MyAccess
readme
By
Hubertus
Hiden
1176
radius
0
3
tar
gz
Patches
for
radiusd
to
make
it
support
MySQL
By
Wim
Bonis
1177
B
7
Useful
tools
1178
mysql
watchdog
pl
Monitor
the
MySQL
daemon
for
possible
lockups
By
Yermo
Lamers
1179
mysqltop
tar
gz
Shows
and
updates
the
process
list
in
a
fixed
time
interleave
By
Thomas
Wana
1180
mysqlsync
A
perl
script
to
keep
remote
copies
of
a
MySQL
database
in
sync
with
a
central
master
copy
By
Mark
Jeftovic
1181
markjr
easydns
com
1182
MySQLTutor
MySQLTutor
A
tutor
of
MySQL
for
beginners
1183
B
8
Uncategorized
1184
findres
pl
Find
reserved
words
in
tables
By
Nem
W
Schlecht
1185
handicap
tar
gz
Performance
handicapping
system
for
yachts
Uses
PHP
By
1186
hylalog
1
0
tar
gz
Store
hylafax
outgoing
faxes
in
a
MySQL
database
By
Sinisa
Milivojevic
1187
sinisa
coresinc
com
1188
mrtg
mysql
1
0
tar
gz
MySQL
status
plotting
with
MRTG
by
Luuk
de
Boer
1189
luuk
wxs
nl
1190
wuftpd
2
4
2
18
mysql
support
2
tar
gz
Patches
to
add
logging
to
MySQL
for
WU
ftpd
By
Zeev
Suraski
1191
Old
Versions
Previous
versions
of
things
found
here
that
you
probably
won
t
be
interested
in
1192
C
Contributors
to
MySQL
Contributors
to
the
MySQL
distribution
are
listed
below
in
somewhat
random
order
Michael
Monty
Widenius
Has
written
the
following
parts
of
MySQL
All
the
main
code
in
mysqld
New
functions
for
the
string
library
Most
of
the
mysys
library
The
NISAM
and
MyISAM
libraries
B
tree
index
file
handlers
with
index
compression
and
different
record
formats
The
heap
library
A
memory
table
system
with
our
superior
full
dynamic
hashing
In
use
since
1981
and
published
around
1984
The
replace
program
look
into
it
it
s
COOL
MyODBC
the
ODBC
driver
for
Windows95
Fixing
bugs
in
MIT
pthreads
to
get
it
to
work
for
MySQL
And
also
Unireg
a
curses
based
application
tool
with
many
utilities
Porting
of
mSQL
tools
like
msqlperl
DBD
DBI
and
DB2mysql
Most
parts
of
crash
me
and
the
MySQL
benchmarks
David
Axmark
Coordinator
and
main
writer
for
the
Reference
Manual
including
enhancements
to
texi2html
Also
automatic
website
updating
from
this
manual
Autoconf
Automake
and
libtool
support
The
licensing
stuff
Parts
of
all
the
text
files
Nowadays
only
the
README
is
left
The
rest
ended
up
in
the
manual
Our
Mail
master
Lots
of
testing
of
new
features
Our
in
house
free
software
lawyer
Mailing
list
maintainer
who
never
has
the
time
to
do
it
right
Our
original
portability
code
more
than
10
years
old
now
Nowadays
only
some
parts
of
mysys
are
left
Someone
for
Monty
to
call
in
the
middle
of
the
night
when
he
just
got
that
new
feature
to
work
Paul
DuBois
Help
with
making
the
Reference
Manual
correct
and
understandable
Gianmassimo
Vigazzola
1193
qwerg
mbox
vol
it
or
1194
qwerg
tin
it
The
initial
port
to
Win32
NT
Kim
Aldale
Rewriting
Monty
s
and
David
s
attempts
at
English
into
English
Allan
Larsson
The
BOSS
at
TcX
For
all
the
time
he
has
allowed
Monty
to
spend
on
this
maybe
useful
tool
MySQL
Dedicated
user
and
bug
finder
of
Unireg
MySQL
Per
Eric
Olsson
For
more
or
less
constructive
criticism
and
real
testing
of
the
dynamic
record
format
Irena
Pancirov
1195
irena
mail
yacc
it
Win32
port
with
Borland
compiler
David
J
Hughes
For
the
effort
to
make
a
shareware
SQL
database
We
at
TcX
started
with
mSQL
but
found
that
it
couldn
t
satisfy
our
purposes
so
instead
we
wrote
a
SQL
interface
to
our
application
builder
Unireg
mysqladmin
and
mysql
are
programs
that
were
largely
influenced
by
their
mSQL
counterparts
We
have
put
a
lot
of
effort
into
making
the
MySQL
syntax
a
superset
of
mSQL
Many
of
the
APIs
ideas
are
borrowed
from
mSQL
to
make
it
easy
to
port
free
mSQL
programs
to
MySQL
MySQL
doesn
t
contain
any
code
from
mSQL
Two
files
in
the
distribution
client
insert
test
c
and
client
select
test
c
are
based
on
the
corresponding
non
copyrighted
files
in
the
mSQL
distribution
but
are
modified
as
examples
showing
the
changes
necessary
to
convert
code
from
mSQL
to
MySQL
mSQL
is
copyrighted
David
J
Hughes
Fred
Fish
For
his
excellent
C
debugging
and
trace
library
Monty
has
made
a
number
of
smaller
improvements
to
the
library
speed
and
additional
options
Richard
A
O
Keefe
For
his
public
domain
string
library
Henry
Spencer
For
his
regex
library
used
in
WHERE
column
REGEXP
regexp
Free
Software
Foundation
From
whom
we
got
an
excellent
compiler
gcc
the
libc
library
from
which
we
have
borrowed
strto
c
to
get
some
code
working
in
Linux
and
the
readline
library
for
the
mysql
client
Free
Software
Foundation
The
XEmacs
development
team
For
a
really
great
editor
environment
used
by
almost
everybody
at
TcX
detron
Igor
Romanenko
1196
igor
frog
kiev
ua
mysqldump
previously
msqldump
but
ported
and
enhanced
by
Monty
Tim
Bunce
Alligator
Descartes
For
the
DBD
Perl
interface
Andreas
Koenig
1197
a
koenig
mind
de
For
the
Perl
interface
to
MySQL
Eugene
Chan
1198
eugene
acenet
com
sg
For
porting
PHP
to
MySQL
Michael
J
Miller
Jr
1199
mke
terrapin
turbolift
com
For
the
growing
MySQL
user
manual
And
a
lot
of
spelling
language
fixes
for
the
FAQ
Giovanni
Maruzzelli
1200
maruzz
matrice
it
For
porting
iODBC
Unix
ODBC
Chris
Provenzano
Portable
user
level
pthreads
From
the
copyright
This
product
includes
software
developed
by
Chris
Provenzano
the
University
of
California
Berkeley
and
contributors
We
are
currently
using
version
1
60
beta6
patched
by
Monty
see
mit
pthreads
Changes
mysql
Xavier
Leroy
1201
Xavier
Leroy
inria
fr
The
author
of
LinuxThreads
used
by
MySQL
on
Linux
Zarko
Mocnik
1202
zarko
mocnik
dem
si
Sorting
for
Slovenian
language
and
the
cset
tar
gz
module
that
makes
it
easier
to
add
other
character
sets
TAMITO
1203
tommy
valley
ne
jp
The
MB
character
set
macros
and
the
ujis
and
sjis
character
sets
Yves
Carlier
1204
Yves
Carlier
rug
ac
be
mysqlaccess
a
program
to
show
the
access
rights
for
a
user
Rhys
Jones
1205
rhys
wales
com
And
GWE
Technologies
Limited
For
the
JDBC
a
module
to
extract
data
from
MySQL
with
a
Java
client
Dr
Xiaokun
Kelvin
ZHU
1206
X
Zhu
brad
ac
uk
Further
development
of
the
JDBC
driver
and
other
MySQL
related
Java
tools
James
Cooper
1207
pixel
organic
com
For
setting
up
a
searchable
mailing
list
archive
at
his
site
Rick
Mehalick
1208
Rick
Mehalick
i
o
com
For
xmysql
a
graphical
X
client
for
MySQL
Doug
Sisk
1209
sisk
wix
com
For
providing
RPM
packages
of
MySQL
for
RedHat
Linux
Diemand
Alexander
V
1210
axeld
vial
ethz
ch
For
providing
RPM
packages
of
MySQL
for
RedHat
Linux
Alpha
Antoni
Pamies
Olive
1211
toni
readysoft
es
For
providing
RPM
versions
of
a
lot
of
MySQL
clients
for
Intel
and
SPARC
Jay
Bloodworth
1212
jay
pathways
sde
state
sc
us
For
providing
RPM
versions
for
MySQL
3
21
versions
Jochen
Wiedmann
1213
wiedmann
neckar
alb
de
For
maintaining
the
Perl
DBD
mysql
module
Therrien
Gilbert
1214
gilbert
ican
net
Jean
Marc
Pouyot
1215
jmp
scalaire
fr
French
error
messages
Petr
snajdr
1216
snajdr
pvt
net
Czech
error
messages
Jaroslaw
Lewandowski
1217
jotel
itnet
com
pl
Polish
error
messages
Miguel
Angel
Fernandez
Roiz
Spanish
error
messages
Roy
Magne
Mo
1218
rmo
www
hivolda
no
Norwegian
error
messages
and
testing
of
3
21
Timur
I
Bakeyev
1219
root
timur
tatarstan
ru
Russian
error
messages
brenno
dewinter
com
Italian
error
messages
Dirk
Munzinger
1220
dirk
trinity
saar
de
German
error
messages
Billik
Stefan
1221
billik
sun
uniag
sk
Slovak
error
messages
David
Sacerdote
1222
davids
secnet
com
Ideas
for
secure
checking
of
DNS
hostnames
Wei
Jou
Chen
1223
jou
nematic
ieo
nctu
edu
tw
Some
support
for
Chinese
BIG5
characters
Zeev
Suraski
1224
bourbon
netvision
net
il
FROM
UNIXTIME
time
formatting
ENCRYPT
functions
and
bison
adviser
Active
mailing
list
member
Luuk
de
Boer
1225
luuk
wxs
nl
Ported
and
extended
the
benchmark
suite
to
DBI
DBD
Have
been
of
great
help
with
crash
me
and
running
benchmarks
Some
new
date
functions
The
mysql
setpermissions
script
Jay
Flaherty
1226
fty
utk
edu
Big
parts
of
the
Perl
DBI
DBD
section
in
the
manual
Paul
Southworth
1227
pauls
etext
org
Ray
Loyzaga
1228
yar
cs
su
oz
au
Proof
reading
of
the
Reference
Manual
Alexis
Mikhailov
1229
root
medinf
chuvashia
su
User
definable
functions
UDFs
CREATE
FUNCTION
and
DROP
FUNCTION
Andreas
F
Bobak
1230
bobak
relog
ch
The
AGGREGATE
extension
to
UDF
functions
Ross
Wakelin
1231
R
Wakelin
march
co
uk
Help
to
set
up
InstallShield
for
MySQL
Win32
Jethro
Wright
III
1232
jetman
li
net
The
libmysql
dll
library
James
Pereria
1233
jpereira
iafrica
com
Mysqlmanager
a
Win32
GUI
tool
for
administrating
MySQL
Curt
Sampson
1234
cjs
portal
ca
Porting
of
MIT
pthreads
to
NetBSD
Alpha
and
NetBSD
1
3
i386
Sinisa
Milivojevic
1235
sinisa
coresinc
com
Compression
with
zlib
to
the
client
server
protocol
Perfect
hashing
for
the
lexical
analyzer
phase
Antony
T
Curtis
1236
antony
curtis
olcs
net
Porting
of
MySQL
to
OS
2
Other
contributors
bugfinders
and
testers
James
H
Thompson
Maurizio
Menghini
Wojciech
Tryc
Luca
Berra
Zarko
Mocnik
Wim
Bonis
Elmar
Haneke
1237
jehamby
lightside
1238
psmith
BayNetworks
COM
Mike
Simons
Jaakko
Hyv
atti
And
lots
of
bug
report
patches
from
the
folks
on
the
mailing
list
And
a
big
tribute
to
those
that
help
us
answer
questions
on
the
mysql
lists
mysql
com
mailing
list
Daniel
Koch
1239
dkoch
amcity
com
Irix
setup
Luuk
de
Boer
1240
luuk
wxs
nl
Benchmark
questions
Tim
Sailer
1241
tps
users
buoy
com
DBD
mysql
questions
Boyd
Lynn
Gerber
1242
gerberb
zenez
com
SCO
related
questions
Richard
Mehalick
1243
RM186061
shellus
com
xmysql
releated
questions
and
basic
installation
questions
Zeev
Suraski
1244
bourbon
netvision
net
il
Apache
module
configuration
questions
log
auth
PHP
related
questions
SQL
syntax
related
questions
and
other
general
questions
Francesc
Guasch
1245
frankie
citel
upc
es
General
questions
Jonathan
J
Smith
1246
jsmith
wtp
net
Questions
pertaining
to
OS
specifics
with
Linux
SQL
syntax
and
other
things
that
might
be
needing
some
work
David
Sklar
1247
sklar
student
net
Using
MySQL
from
PHP
and
Perl
Alistair
MacDonald
1248
A
MacDonald
uel
ac
uk
Not
yet
specified
but
is
flexible
and
can
handle
Linux
and
maybe
HP
UX
Will
try
to
get
user
to
use
mysqlbug
John
Lyon
1249
jlyon
imag
net
Questions
about
installing
MySQL
on
Linux
systems
using
either
rpm
files
or
compiling
from
source
Lorvid
Ltd
1250
lorvid
WOLFENET
com
Simple
billing
license
support
copyright
issues
Patrick
Sherrill
1251
patrick
coconet
com
ODBC
and
VisualC
interface
questions
Randy
Harmon
1252
rjharmon
uptimecomputers
com
DBD
Linux
some
SQL
syntax
questions
1253
D
MySQL
change
history
Note
that
we
tend
to
update
the
manual
at
the
same
time
we
implement
new
things
to
MySQL
If
you
find
a
version
listed
below
that
you
can
t
find
on
the
1254
MySQL
download
page
this
means
that
the
version
has
not
yet
been
released
1255
D
1
Changes
in
release
3
23
x
Not
released
yet
The
major
difference
between
release
3
23
and
releases
3
22
and
3
21
is
that
3
23
contains
a
new
ISAM
library
MyISAM
which
is
more
tuned
for
SQL
than
the
old
ISAM
was
The
3
23
release
is
under
development
and
things
will
be
added
at
a
fast
pace
to
it
For
the
moment
we
recommend
this
version
only
for
users
that
desperately
need
a
new
feature
that
is
found
only
in
this
release
like
big
file
support
and
machine
independent
tables
Note
that
all
new
functionality
in
MySQL
3
23
is
extensively
tested
but
as
this
release
involves
much
new
code
it
s
difficult
to
test
everything
This
version
should
start
to
stabilise
as
soon
as
we
get
subselects
included
in
it
1256
D
1
1
Changes
in
release
3
23
0
A
new
table
handler
library
MyISAM
with
a
lot
of
new
features
See
section
1257
10
17
MySQL
table
types
You
can
create
in
memory
HEAP
tables
which
are
extremely
fast
for
lookups
Support
for
big
files
63
bit
on
OSes
that
support
big
files
New
function
LOAD
FILE
filename
to
get
the
contents
of
a
file
as
a
string
value
New
operator
which
will
act
as
but
will
return
TRUE
if
both
arguments
are
NULL
This
is
useful
for
comparing
changes
between
tables
Added
the
ODBC
3
0
EXTRACT
interval
FROM
datetime
function
Columns
defined
as
FLOAT
4
or
FLOAT
8
are
not
rounded
on
storage
and
may
be
in
scientific
notation
1
0
E
10
when
retrieved
REPLACE
is
now
faster
than
before
Changed
LIKE
character
comparison
to
behave
as
This
means
that
e
LIKE
is
now
true
SHOW
TABLE
STATUS
returns
a
lot
of
information
about
the
tables
Added
LIKE
to
the
SHOW
STATUS
command
Added
privilege
column
to
SHOW
COLUMNS
Added
columns
packed
and
comment
to
SHOW
INDEX
Added
comments
to
tables
with
CREATE
TABLE
COMMENT
xxx
Added
UNIQUE
as
in
CREATE
TABLE
table
name
col
int
not
null
UNIQUE
New
create
syntax
CREATE
TABLE
SELECT
New
create
syntax
CREATE
TABLE
IF
NOT
EXISTS
Allow
creation
of
CHAR
0
columns
DATE
FORMAT
now
requires
before
any
format
character
DELAYED
is
now
a
reserved
word
sorry
about
that
An
example
procedure
is
added
analyse
file
sql
analyse
c
This
will
describe
the
data
in
your
query
Try
the
following
SELECT
FROM
WHERE
PROCEDURE
ANALYSE
max
elements
max
memory
This
procedure
is
extremely
useful
when
you
want
to
check
the
data
in
your
table
BINARY
cast
to
force
a
string
to
be
compared
case
sensitively
Added
option
skip
show
databases
to
mysqld
Check
if
a
row
has
changed
in
an
UPDATE
now
also
works
with
BLOB
TEXT
columns
Added
the
INNER
join
syntax
NOTE
This
made
INNER
an
reserved
word
Added
support
for
netmasks
to
the
hostname
in
the
MySQL
tables
You
can
specify
a
netmask
using
the
IP
NETMASK
syntax
If
you
compare
a
NOT
NULL
DATE
DATETIME
column
with
IS
NULL
this
is
changed
to
a
compare
against
0
to
satisfy
some
ODBC
applications
By
1258
shreeve
uci
edu
NULL
IN
now
returns
NULL
instead
of
0
This
will
ensure
that
null
column
NOT
IN
doesn
t
match
NULL
values
Fix
storage
of
floating
point
values
in
TIME
columns
Changed
parsing
of
TIME
strings
to
be
more
strict
Now
the
fractional
second
part
is
detected
and
currently
skipped
The
following
formats
are
supported
DAYS
H
H
MM
SS
fraction
H
H
H
H
MM
SS
fraction
Detect
and
ignore
second
fraction
part
from
DATETIME
Added
the
LOW
PRIORITY
attribute
to
LOAD
DATA
INFILE
The
default
index
name
now
uses
the
same
case
as
the
used
column
name
Changed
default
number
of
connections
to
100
Use
bigger
buffers
when
using
LOAD
DATA
INFILE
DECIMAL
x
y
now
works
according
to
ANSI
SQL
Added
aggregate
UDF
functions
Thanks
to
Andreas
F
Bobak
LAST
INSERT
ID
is
now
updated
for
INSERT
INTO
SELECT
Some
small
changes
to
the
join
table
optimizer
to
make
some
joins
faster
SELECT
DISTINCT
is
much
faster
It
uses
the
new
UNIQUE
functionality
in
MyISAM
One
difference
compared
to
MySQL
3
22
is
that
the
output
of
DISTINCT
is
not
sorted
anymore
Temporary
in
memory
HEAP
tables
are
automatically
converted
to
MyISAM
disk
based
tables
when
needed
This
means
that
you
should
no
longer
get
the
TABLE
is
FULL
error
All
C
client
API
macros
are
now
functions
to
make
shared
libraries
more
reliable
Because
of
this
you
can
no
longer
call
mysql
num
fields
on
a
MYSQL
object
you
must
use
mysql
field
count
instead
Added
use
of
LIBEWRAP
Patch
by
Henning
P
Schmiedehausen
Don
t
allow
AUTO
INCREMENT
for
other
than
numerical
columns
Using
AUTO
INCREMENT
will
now
automatically
make
the
column
NOT
NULL
Show
NULL
as
the
default
value
for
AUTO
INCREMENT
columns
Added
SQL
BIG
RESULT
SQL
SMALL
RESULT
is
now
default
Added
a
shared
library
RPM
This
enchancement
was
contributed
by
David
Fox
dsfox
cogsci
ucsd
edu
Added
a
enable
large
files
disable
large
files
switch
to
configure
See
configure
in
for
some
systems
where
this
is
automatically
turned
off
because
of
broken
implementations
Upgraded
readline
to
4
0
New
CREATE
TABLE
options
PACK
KEYS
and
CHECKSUM
Added
mysqld
option
default
table
type
1259
D
2
Changes
in
release
3
22
x
The
3
22
version
has
faster
and
safer
connect
code
and
a
lot
of
new
nice
enhancements
The
reason
for
not
including
these
changes
in
the
3
21
version
is
mainly
that
we
are
trying
to
avoid
big
changes
to
3
21
to
keep
it
as
stable
as
possible
As
there
aren
t
really
any
MAJOR
changes
upgrading
to
3
22
should
be
very
easy
and
painless
See
section
1260
4
16
2
Upgrading
from
a
3
21
version
to
3
22
3
22
should
also
be
used
with
the
new
DBD
mysql
1
20xx
driver
that
can
use
the
new
connect
protocol
1261
D
2
1
Changes
in
release
3
22
25
Fixed
some
small
problems
with
the
installation
1262
D
2
2
Changes
in
release
3
22
24
DATA
is
not
a
reserved
word
anymore
Fixed
optimizer
bug
with
tables
with
only
one
row
Fixed
bug
when
using
LOCK
TABLES
table
name
READ
FLUSH
TABLES
Applied
some
patches
for
HPUX
isamchk
should
now
work
on
Win32
Changed
configure
to
not
use
big
file
handling
on
Linux
as
this
crashes
some
RedHat
6
0
systems
1263
D
2
3
Changes
in
release
3
22
23
Upgraded
to
use
Autoconf
2
13
Automake
1
4
and
libtool
1
3
2
Better
support
for
SCO
in
configure
Added
option
defaults
file
to
option
file
handling
to
force
use
of
only
one
specific
option
file
Extended
CREATE
syntax
to
ignore
MySQL
3
23
keywords
Fixed
deadlock
problem
when
using
INSERT
DELAYED
on
a
table
locked
with
LOCK
TABLES
Fixed
deadlock
problem
when
using
DROP
TABLE
on
a
table
that
was
locked
by
another
thread
Add
logging
of
GRANT
REVOKE
commands
in
the
update
log
Fixed
isamchk
to
detect
a
new
error
condition
Fixed
bug
in
NATURAL
LEFT
JOIN
1264
D
2
4
Changes
in
release
3
22
22
Fixed
problem
in
the
C
API
when
you
called
mysql
close
directly
after
mysql
init
Better
client
error
message
when
you
can
t
open
socket
Fixed
delayed
insert
thread
counting
when
you
couldn
t
create
a
new
delayed
insert
thread
Fixed
bug
in
CONCAT
with
many
arguments
Added
patches
for
DEC
3
2
and
SCO
Fixed
path
bug
when
installing
MySQL
as
a
service
on
NT
The
MySQL
win32
version
is
now
compiled
with
VC
6
0
instead
of
with
VC
5
0
New
installation
setup
for
MySQL
Win32
1265
D
2
5
Changes
in
release
3
22
21
Fixed
problem
with
DELETE
FROM
TABLE
when
table
was
locked
by
another
thread
Fixed
bug
in
LEFT
JOIN
involving
empty
tables
Changed
the
mysql
db
column
from
char
32
to
char
60
MODIFY
and
DELAYED
are
not
reserved
words
anymore
Fixed
a
bug
when
storing
days
in
a
TIME
column
Fixed
a
problem
with
Host
is
not
allowed
to
connect
to
this
MySQL
server
after
one
had
inserted
a
new
MySQL
user
with
a
GRANT
command
Changed
to
use
TCP
NODELAY
also
on
Linux
Should
give
faster
TCP
IP
connections
1266
D
2
6
Changes
in
release
3
22
20
Fixed
STD
for
big
tables
when
result
should
be
0
The
update
log
didn
t
have
newlines
on
some
operating
systems
INSERT
DELAYED
had
some
garbage
at
end
in
the
update
log
1267
D
2
7
Changes
in
release
3
22
19
Fixed
bug
in
mysql
install
db
from
3
22
17
Changed
default
key
cache
size
to
8M
Fixed
problem
with
queries
that
needed
temporary
tables
with
BLOB
columns
1268
D
2
8
Changes
in
release
3
22
18
Fixes
a
fatal
problem
in
3
22
17
on
Linux
After
shutdown
all
threads
didn
t
die
properly
Added
option
O
flush
time
to
mysqld
This
is
mostly
useful
on
Win32
and
tells
how
often
MySQL
should
close
all
unused
tables
and
flush
all
updated
tables
to
disk
Fixed
problem
that
a
VARCHAR
column
compared
with
CHAR
column
didn
t
use
keys
efficiently
1269
D
2
9
Changes
in
release
3
22
17
Fixed
a
core
dump
problem
when
using
log
update
and
connecting
without
a
default
database
Fixed
some
configure
and
portability
problems
Using
LEFT
JOIN
on
tables
that
had
circular
dependencies
caused
mysqld
to
hang
forever
1270
D
2
10
Changes
in
release
3
22
16
mysqladmin
processlist
could
kill
the
server
if
a
new
user
logged
in
DELETE
FROM
tbl
name
WHERE
key
column
col
name
didn
t
find
any
matching
rows
Fixed
DATE
ADD
column
didn
t
work
INSERT
DELAYED
could
deadlock
with
status
upgrading
lock
Extended
ENCRYPT
to
take
longer
salt
strings
than
2
characters
longlong2str
is
now
much
faster
than
before
For
Intel
x86
platforms
this
function
is
written
in
optimized
assembler
Added
the
MODIFY
keyword
to
ALTER
TABLE
1271
D
2
11
Changes
in
release
3
22
15
GRANT
used
with
IDENTIFIED
BY
didn
t
take
effect
until
privileges
were
flushed
Name
change
of
some
variables
in
SHOW
STATUS
Fixed
problem
with
ORDER
BY
with
only
index
optimzation
when
there
were
multiple
key
definitions
for
a
used
column
DATE
and
DATETIME
columns
are
now
up
to
5
times
faster
than
before
INSERT
DELAYED
can
be
used
to
let
the
client
do
other
things
while
the
server
inserts
rows
into
a
table
LEFT
JOIN
USING
col1
col2
didn
t
work
if
one
used
it
with
tables
from
2
different
databases
LOAD
DATA
LOCAL
INFILE
didn
t
work
in
the
Unix
version
because
of
a
missing
file
Fixed
problems
with
VARCHAR
BLOB
on
very
short
rows
4
bytes
error
127
could
occur
when
deleting
rows
Updating
BLOB
TEXT
through
formulas
didn
t
work
for
short
256
char
strings
When
you
did
a
GRANT
on
a
new
host
mysqld
could
die
on
the
first
connect
from
this
host
Fixed
bug
when
one
used
ORDER
BY
on
column
name
that
was
the
same
name
as
an
alias
Added
BENCHMARK
loop
count
expression
function
to
time
expressions
1272
D
2
12
Changes
in
release
3
22
14
Allow
empty
arguments
to
mysqld
to
make
it
easier
to
start
from
shell
scripts
Setting
a
TIMESTAMP
column
to
NULL
didn
t
record
the
timestamp
value
in
the
update
log
Fixed
lock
handler
bug
when
one
did
INSERT
INTO
TABLE
SELECT
GROUP
BY
Added
a
patch
for
localtime
r
on
Win32
so
that
it
will
not
crash
anymore
if
your
date
is
2039
but
instead
will
return
a
time
of
all
zero
Names
for
user
defined
functions
are
no
longer
case
sensitive
Added
escape
of
Z
ASCII
26
to
Z
as
Z
doesn
t
work
with
pipes
on
Win32
mysql
fix
privileges
adds
a
new
column
to
the
mysql
func
to
support
aggregate
UDF
functions
in
future
MySQL
releases
1273
D
2
13
Changes
in
release
3
22
13
Saving
NOW
CURDATE
or
CURTIME
directly
in
a
column
didn
t
work
SELECT
COUNT
LEFT
JOIN
didn
t
work
with
no
WHERE
part
Updated
config
guess
to
allow
MySQL
to
configure
on
UnixWare
7
0
x
Changed
the
implementation
of
pthread
cond
on
the
Win32
version
get
lock
now
correctly
times
out
on
Win32
1274
D
2
14
Changes
in
release
3
22
12
Fixed
problem
when
using
DATE
ADD
and
DATE
SUB
in
a
WHERE
clause
You
can
now
set
the
password
for
a
user
with
the
GRANT
TO
user
IDENTIFIED
BY
password
syntax
Fixed
bug
in
GRANT
checking
with
SELECT
on
many
tables
Added
missing
file
mysql
fix
privilege
tables
to
the
RPM
distribution
This
is
not
run
by
default
since
it
relies
on
the
client
package
Added
option
SQL
SMALL
RESULT
to
SELECT
to
force
use
of
fast
temporary
tables
when
you
know
that
the
result
set
will
be
small
Allow
use
of
negative
real
numbers
without
a
decimal
point
Day
number
is
now
adjusted
to
max
days
in
month
if
the
resulting
month
after
DATE
ADD
DATE
SUB
doesn
t
have
enough
days
Fix
that
GRANT
compares
columns
in
case
insensitive
fashion
Fixed
a
bug
in
sql
list
h
that
made
ALTER
TABLE
dump
core
in
some
contexts
The
hostname
in
user
hostname
can
now
include
and
without
quotes
in
the
context
of
the
GRANT
REVOKE
and
SET
PASSWORD
FOR
statements
Fix
for
isamchk
for
tables
which
need
big
temporary
files
1275
D
2
15
Changes
in
release
3
22
11
IMPORTANT
You
must
run
the
mysql
fix
privilege
tables
script
when
you
upgrade
to
this
version
This
is
needed
because
of
the
new
GRANT
system
If
you
don
t
do
this
you
will
get
Access
denied
when
you
try
to
use
ALTER
TABLE
CREATE
INDEX
or
DROP
INDEX
GRANT
to
allow
deny
users
table
and
column
access
Changed
USER
to
return
user
host
Changed
the
syntax
for
how
to
set
PASSWORD
for
another
user
New
command
FLUSH
STATUS
that
sets
most
status
variables
to
zero
New
status
variables
aborted
threads
aborted
connects
New
option
variable
connection
timeout
Added
support
for
Thai
sorting
by
Pruet
Boonma
Slovak
and
japanese
error
messages
Configuration
and
portability
fixes
Added
option
SET
SQL
WARNINGS
1
to
get
a
warning
count
also
for
simple
inserts
MySQL
now
uses
SIGTERM
instead
of
SIGQUIT
with
shutdown
to
work
better
on
FreeBSD
Added
option
G
print
vertically
to
mysql
SELECT
HIGH
PRIORITY
killed
mysqld
IS
NULL
on
a
AUTO
INCREMENT
column
in
a
LEFT
JOIN
didn
t
work
as
expected
New
function
MAKE
SET
1276
D
2
16
Changes
in
release
3
22
10
mysql
install
db
no
longer
starts
the
MySQL
server
You
should
start
mysqld
with
safe
mysqld
after
installing
it
The
MySQL
RPM
will
however
start
the
server
as
before
Added
bootstrap
option
to
mysqld
and
recoded
mysql
install
db
to
use
it
This
will
make
it
easier
to
install
MySQL
with
RPMs
Changed
sign
and
minus
ABS
and
MOD
to
be
BIGINT
aware
64
bit
safe
Fixed
a
bug
in
ALTER
TABLE
that
caused
mysqld
to
crash
MySQL
now
always
reports
the
conflicting
key
values
when
a
duplicate
key
entry
occurs
Before
this
was
only
reported
for
INSERT
New
syntax
INSERT
INTO
tbl
name
SET
col
name
value
col
name
value
Most
errors
in
the
err
log
are
now
prefixed
with
a
time
stamp
Added
option
MYSQL
INIT
COMMAND
to
mysql
options
to
make
a
query
on
connect
or
reconnect
Added
option
MYSQL
READ
DEFAULT
FILE
and
MYSQL
READ
DEFAULT
GROUP
to
mysql
options
to
read
the
following
parameters
from
the
MySQL
option
files
port
socket
compress
password
pipe
timeout
user
init
command
host
and
database
Added
maybe
null
to
the
UDF
structure
Added
option
IGNORE
to
INSERT
statemants
with
many
rows
Fixed
some
problems
with
sorting
of
the
koi8
character
sets
Users
of
koi8
MUST
run
isamchk
rq
on
each
table
that
has
an
index
on
a
CHAR
or
VARCHAR
column
New
script
mysql
setpermission
by
Luuk
de
Boer
allows
one
to
easily
create
new
users
with
permissions
for
specific
databases
Allow
use
of
hexadecimal
strings
0x
when
specifying
a
constant
string
like
in
the
column
separators
with
LOAD
DATA
INFILE
Ported
to
OS
2
thanks
to
Antony
T
Curtis
1277
antony
curtis
olcs
net
Added
more
variables
to
SHOW
STATUS
and
changed
format
of
output
to
be
like
SHOW
VARIABLES
Added
extended
status
command
to
mysqladmin
which
will
show
the
new
status
variables
1278
D
2
17
Changes
in
release
3
22
9
SET
SQL
LOG
UPDATE
0
caused
a
lockup
of
the
server
New
SQL
command
FLUSH
TABLES
HOSTS
LOGS
PRIVILEGES
New
SQL
command
KILL
thread
id
Added
casts
and
changed
include
files
to
make
MySQL
easier
to
compile
on
AIX
and
DEC
OSF1
4
x
Fixed
conversion
problem
when
using
ALTER
TABLE
from
a
INT
to
a
short
CHAR
column
Added
SELECT
HIGH
PRIORITY
This
will
get
a
lock
for
the
SELECT
even
if
there
is
a
thread
waiting
for
another
SELECT
to
get
a
WRITE
LOCK
Moved
wild
compare
to
string
class
to
be
able
to
use
LIKE
on
BLOB
TEXT
columns
with
0
Added
ESCAPE
option
to
LIKE
Added
a
lot
more
output
to
mysqladmin
debug
You
can
now
start
mysqld
on
Win32
with
the
flush
option
This
will
flush
all
tables
to
disk
after
each
update
This
makes
things
much
safer
on
NT
Win98
but
also
MUCH
slower
1279
D
2
18
Changes
in
release
3
22
8
Czech
character
sets
should
now
work
much
better
You
must
also
install
1280
ftp
www
mysql
com
pub
mysql
Downloads
Patches
czech
3
22
8
patch
This
patch
should
also
be
installed
if
you
are
using
a
character
set
with
uses
my
strcoll
The
patch
should
always
be
safe
to
install
for
any
system
but
as
this
patch
changes
ISAM
internals
it
s
not
yet
in
the
default
distribution
DATE
ADD
and
DATE
SUB
didn
t
work
with
group
functions
mysql
will
now
also
try
to
reconnect
on
USE
DATABASE
commands
Fix
problem
with
ORDER
BY
and
LEFT
JOIN
and
const
tables
Fixed
problem
with
ORDER
BY
if
the
first
ORDER
BY
column
was
a
key
and
the
rest
of
the
ORDER
BY
columns
wasn
t
part
of
the
key
Fixed
a
big
problem
with
OPTIMIZE
TABLE
MySQL
clients
on
NT
will
now
by
default
first
try
to
connect
with
named
pipes
and
after
this
with
TCP
IP
Fixed
a
problem
with
DROP
TABLE
and
mysqladmin
shutdown
on
Win32
a
fatal
bug
from
3
22
6
Fixed
problems
with
TIME
columns
and
negative
strings
Added
an
extra
thread
signal
loop
on
shutdown
to
avoid
some
error
messages
from
the
client
MySQL
now
uses
the
next
available
number
as
extension
for
the
update
log
file
Added
patches
for
UNIXWARE
7
1281
D
2
19
Changes
in
release
3
22
7
Added
LIMIT
clause
for
the
DELETE
statement
You
can
now
use
the
syntax
to
hide
MySQL
specific
keywords
when
you
write
portable
code
MySQL
will
parse
the
code
inside
the
comments
as
if
the
surrounding
and
comment
characters
didn
t
exist
OPTIMIZE
TABLE
tbl
name
can
now
be
used
to
reclaim
disk
space
after
many
deletes
Currently
this
uses
ALTER
TABLE
to
re
generate
the
table
but
in
the
future
it
will
use
an
integrated
isamchk
for
more
speed
Upgraded
libtool
to
get
the
configure
more
portable
Fixed
slow
UPDATE
and
DELETE
operations
when
using
DATETIME
or
DATE
keys
Changed
optimizer
to
make
it
better
at
deciding
when
to
do
a
full
join
and
when
using
keys
You
can
now
use
mysqladmin
proc
to
display
information
about
your
own
threads
Only
users
with
the
Process
priv
privilege
can
get
information
about
all
threads
Added
handling
of
formats
YYMMDD
YYYYMMDD
YYMMDDHHMMSS
for
numbers
when
using
DATETIME
and
TIMESTAMP
types
Formerly
these
formats
only
worked
with
strings
Added
connect
option
CLIENT
IGNORE
SPACE
to
allow
use
of
spaces
after
function
names
and
before
Powerbuilder
requires
this
This
will
make
all
function
names
reserved
words
Added
the
log
long
format
option
to
mysqld
to
enable
timestamps
and
INSERT
ID
s
in
the
update
log
Added
where
option
to
mysqldump
patch
by
Jim
Faucette
The
lexical
analyzer
now
uses
perfect
hashing
for
faster
parsing
of
SQL
statements
1282
D
2
20
Changes
in
release
3
22
6
Faster
mysqldump
For
the
LOAD
DATA
INFILE
statement
you
can
now
use
the
new
LOCAL
keyword
to
read
the
file
from
the
client
mysqlimport
will
automatically
use
LOCAL
when
importing
with
the
TCP
IP
protocol
Fixed
small
optimize
problem
when
updating
keys
Changed
makefiles
to
support
shared
libraries
MySQL
NT
can
now
use
named
pipes
which
means
that
you
can
now
use
MySQL
NT
without
having
to
install
TCP
IP
1283
D
2
21
Changes
in
release
3
22
5
All
table
lock
handing
is
changed
to
avoid
some
very
subtle
deadlocks
when
using
DROP
TABLE
ALTER
TABLE
DELETE
FROM
TABLE
and
mysqladmin
flush
tables
under
heavy
usage
Changed
locking
code
to
get
better
handling
of
locks
of
different
types
Updated
DBI
to
1
00
and
DBD
to
1
2
0
Added
a
check
that
the
error
message
file
contains
error
messages
suitable
for
the
current
version
of
mysqld
To
avoid
errors
if
you
accidentally
try
to
use
an
old
error
message
file
All
count
structures
in
the
client
affected
rows
insert
id
are
now
of
type
BIGINT
to
allow
64
bit
values
to
be
used
This
required
a
minor
change
in
the
MySQL
protocol
which
should
affect
only
old
clients
when
using
tables
with
AUTO
INCREMENT
values
24M
The
return
type
of
mysql
fetch
lengths
has
changed
from
uint
to
ulong
This
may
give
a
warning
for
old
clients
but
should
work
on
most
machines
Change
mysys
and
dbug
libraries
to
allocate
all
thread
variables
in
one
struct
This
makes
it
easier
to
make
a
threaded
libmysql
dll
library
Use
the
result
from
gethostname
instead
of
uname
when
constructing
pid
file
names
New
better
compressed
server
client
protocol
COUNT
STD
and
AVG
are
extended
to
handle
more
than
4G
rows
You
can
now
store
values
in
the
range
838
59
59
x
838
59
59
in
a
TIME
column
WARNING
INCOMPATIBLE
CHANGE
If
you
set
a
TIME
column
to
too
short
a
value
MySQL
now
assumes
the
value
is
given
as
D
HH
MM
SS
instead
of
HH
MM
SS
TIME
TO
SEC
and
SEC
TO
TIME
can
now
handle
negative
times
and
hours
up
to
32767
Added
new
option
SET
OPTION
SQL
LOG
UPDATE
0
1
to
allow
users
with
the
process
privilege
to
bypass
the
update
log
Modified
patch
from
Sergey
A
Mukhin
1284
violet
rosnet
net
Fixed
fatal
bug
in
LPAD
Initialize
line
buffer
in
mysql
cc
to
make
BLOB
reading
from
pipes
safer
Added
O
max
connect
errors
option
to
mysqld
Connect
errors
are
now
reset
for
each
correct
connection
Increased
the
default
value
of
max
allowed
packet
to
1M
in
mysqld
Added
low
priority
updates
option
to
mysqld
to
give
UPDATE
operations
lower
priority
than
retrievals
You
can
now
use
INSERT
REPLACE
UPDATE
DELETE
LOW
PRIORITY
You
can
also
use
SET
OPTION
LOW
PRIORITY
UPDATES
0
1
to
change
the
priority
for
one
thread
One
side
effect
is
that
LOW
PRIORITY
is
now
a
reserved
word
Add
support
for
INSERT
INTO
table
VALUES
to
allow
inserting
multiple
rows
with
a
single
statement
INSERT
INTO
tbl
name
is
now
also
cached
when
used
with
LOCK
TABLES
Previously
only
INSERT
SELECT
and
LOAD
DATA
INFILE
were
cached
Allow
GROUP
BY
functions
with
HAVING
mysql
SELECT
col
FROM
table
GROUP
BY
col
HAVING
COUNT
0
mysqld
will
now
ignore
trailing
characters
in
queries
This
is
to
make
it
easier
to
migrate
from
some
other
SQL
servers
that
require
the
trailing
Fix
for
corrupted
fixed
format
output
generated
by
SELECT
INTO
OUTFILE
WARNING
INCOMPATIBLE
CHANGE
Added
Oracle
GREATEST
and
LEAST
functions
You
must
now
use
these
instead
of
the
MAX
and
MIN
functions
to
get
the
largest
smallest
value
from
a
list
of
values
These
can
now
handle
REAL
BIGINT
and
string
CHAR
or
VARCHAR
values
WARNING
INCOMPATIBLE
CHANGE
DAYOFWEEK
had
offset
0
for
Sunday
Changed
the
offset
to
1
Give
an
error
for
queries
that
mix
GROUP
BY
columns
and
fields
when
there
is
no
GROUP
BY
specification
Added
vertical
option
to
mysql
for
printing
results
in
vertical
mode
Index
only
optimization
some
queries
are
now
resolved
using
only
indexes
Until
MySQL
4
0
this
works
only
for
numeric
columns
See
section
1285
10
4
How
MySQL
uses
indexes
Lots
of
new
benchmarks
A
new
C
API
chapter
and
lots
of
other
improvements
in
the
manual
1286
D
2
22
Changes
in
release
3
22
4
Added
tmpdir
option
to
mysqld
for
specifying
the
location
of
the
temporary
file
directory
MySQL
now
automatically
changes
a
query
from
an
ODBC
client
SELECT
FROM
table
WHERE
auto
increment
column
IS
NULL
to
SELECT
FROM
table
WHERE
auto
increment
column
LAST
INSERT
ID
This
allows
some
ODBC
programs
Delphi
Access
to
retrieve
the
newly
inserted
row
to
fetch
the
AUTO
INCREMENT
id
DROP
TABLE
now
waits
for
all
users
to
free
a
table
before
deleting
it
Fixed
small
memory
leak
in
the
new
connect
protocol
New
functions
BIN
HEX
and
CONV
for
converting
between
different
number
bases
Added
function
SUBSTRING
with
2
arguments
If
you
created
a
table
with
a
record
length
smaller
than
5
you
couldn
t
delete
rows
from
the
table
Added
optimization
to
remove
const
reference
tables
from
ORDER
BY
and
GROUP
BY
mysqld
now
automatically
disables
system
locking
on
Linux
and
Win32
and
for
systems
that
use
MIT
pthreads
You
can
force
the
use
of
locking
with
the
enable
locking
option
Added
console
option
to
mysqld
to
force
a
console
window
for
error
messages
when
using
Win32
Fixed
table
locks
for
Win32
Allow
in
identifiers
Changed
name
of
user
specific
configuration
file
from
my
cnf
to
my
cnf
Unix
only
Added
DATE
ADD
and
DATE
SUB
functions
1287
D
2
23
Changes
in
release
3
22
3
Fixed
a
lock
problem
bug
in
MySQL
3
22
1
when
closing
temporary
tables
Added
missing
mysql
ping
to
the
client
library
Added
compress
option
to
all
MySQL
clients
Changed
byte
to
char
in
mysql
h
and
mysql
com
h
1288
D
2
24
Changes
in
release
3
22
2
Searching
on
multiple
constant
keys
that
matched
more
than
30
of
the
rows
didn
t
always
use
the
best
possible
key
New
functions
RPAD
and
LPAD
You
can
now
save
default
options
like
passwords
in
a
configuration
file
my
cnf
Lots
of
small
changes
to
get
ORDER
BY
to
work
when
no
records
are
found
when
using
fields
that
are
not
in
GROUP
BY
MySQL
extension
Added
chroot
option
to
mysqld
to
start
mysqld
in
a
chroot
environment
by
Nikki
Chumakov
1289
nikkic
cityline
ru
Trailing
spaces
are
now
ignored
when
comparing
case
sensitive
strings
this
should
fix
some
problems
with
ODBC
and
flag
512
Fixed
a
core
dump
bug
in
the
range
optimizer
Added
one
thread
option
to
mysqld
for
debugging
with
LinuxThreads
or
glibc
This
replaces
the
T32
flag
Added
DROP
TABLE
IF
EXISTS
to
prevent
an
error
from
occurring
if
the
table
doesn
t
exist
IF
and
EXISTS
are
now
reserved
words
they
would
have
to
be
sooner
or
later
Added
lots
of
new
options
to
mysqldump
Server
error
messages
are
now
in
mysqld
error
h
The
server
client
protocol
now
supports
compression
All
bug
fixes
from
MySQL
3
21
32
1290
D
2
25
Changes
in
release
3
22
1
Added
new
C
API
function
mysql
ping
Added
new
API
functions
mysql
init
and
mysql
options
You
now
MUST
call
mysql
init
before
you
call
mysql
real
connect
You
don
t
have
to
call
mysql
init
if
you
only
use
mysql
connect
Added
mysql
options
MYSQL
OPT
CONNECT
TIMEOUT
so
you
can
set
a
timeout
for
connecting
to
a
server
Added
timeout
option
to
mysqladmin
as
a
test
of
mysql
options
Added
AFTER
column
and
FIRST
options
to
ALTER
TABLE
ADD
columns
This
makes
it
possible
to
add
a
new
column
at
some
specific
location
within
a
row
in
an
existing
table
WEEK
now
takes
an
optional
argument
to
allow
handling
of
weeks
when
the
week
starts
on
Monday
some
European
countries
By
default
WEEK
assumes
the
week
starts
on
Sunday
TIME
columns
weren
t
stored
properly
bug
in
MySQL
3
22
0
UPDATE
now
returns
information
about
how
many
rows
were
matched
and
updated
and
how
many
warnings
occurred
when
doing
the
update
Fixed
incorrect
result
from
FORMAT
100
2
ENUM
and
SET
columns
were
compared
in
binary
case
sensitive
fashion
changed
to
be
case
insensitive
1291
D
2
26
Changes
in
release
3
22
0
New
backward
compatible
connect
protocol
that
allows
you
to
specify
the
database
to
use
when
connecting
to
get
much
faster
connections
to
a
specific
database
The
mysql
real
connect
call
is
changed
to
mysql
real
connect
MYSQL
mysql
const
char
host
const
char
user
const
char
passwd
const
char
db
uint
port
const
char
unix
socket
uint
client
flag
Each
connection
is
handled
by
its
own
thread
rather
than
by
the
master
accept
thread
This
fixes
permanently
the
telnet
bug
that
was
a
topic
on
the
mail
list
some
time
ago
All
TCP
IP
connections
are
now
checked
with
backward
resolution
of
the
hostname
to
get
better
security
mysqld
now
has
a
local
hostname
resolver
cache
so
connections
should
actually
be
faster
than
before
even
with
this
feature
A
site
automatically
will
be
blocked
from
future
connections
if
someone
repeatedly
connects
with
an
improper
header
like
when
one
uses
telnet
You
can
now
refer
to
tables
in
different
databases
with
references
of
the
form
tbl
name
db
name
or
db
name
tbl
name
This
makes
it
possible
to
give
a
user
read
access
to
some
tables
and
write
access
to
others
simply
by
keeping
them
in
different
databases
Added
user
option
to
mysqld
to
allow
it
to
run
as
another
Unix
user
if
it
is
started
as
the
Unix
root
user
Added
caching
of
users
and
access
rights
for
faster
access
rights
checking
Normal
users
not
anonymous
ones
can
change
their
password
with
mysqladmin
password
new
password
This
uses
encrypted
passwords
that
are
not
logged
in
the
normal
MySQL
log
All
important
string
functions
are
now
coded
in
assembler
for
x86
Linux
machines
This
gives
a
speedup
of
10
in
many
cases
For
tables
that
have
many
columns
the
column
names
are
now
hashed
for
much
faster
column
name
lookup
this
will
speed
up
some
benchmark
tests
a
lot
Some
benchmarks
are
changed
to
get
better
individual
timing
Some
loops
were
so
short
that
a
specific
test
took
2
seconds
The
loops
have
been
changed
to
take
about
20
seconds
to
make
it
easier
to
compare
different
databases
A
test
that
took
1
2
seconds
before
now
takes
11
24
seconds
which
is
much
better
Re
arranged
SELECT
code
to
handle
some
very
specific
queries
involving
group
functions
like
COUNT
without
a
GROUP
BY
but
with
HAVING
The
following
now
works
mysql
SELECT
count
as
C
FROM
table
HAVING
C
1
Changed
the
protocol
for
field
functions
to
be
faster
and
avoid
some
calls
to
malloc
Added
T32
option
to
mysqld
for
running
all
queries
under
the
main
thread
This
makes
it
possible
to
debug
mysqld
under
Linux
with
gdb
Added
optimization
of
not
null
column
IS
NULL
needed
for
some
Access
queries
Allow
STRAIGHT
JOIN
to
be
used
between
two
tables
to
force
the
optimizer
to
join
them
in
a
specific
order
String
functions
now
return
VARCHAR
rather
than
CHAR
and
the
column
type
is
now
VARCHAR
for
fields
saved
as
VARCHAR
This
should
make
the
MyODBC
driver
better
but
may
break
some
old
MySQL
clients
that
don
t
handle
FIELD
TYPE
VARCHAR
the
same
way
as
FIELD
TYPE
CHAR
CREATE
INDEX
and
DROP
INDEX
are
now
implemented
through
ALTER
TABLE
CREATE
TABLE
is
still
the
recommended
fast
way
to
create
indexes
Added
set
variable
option
wait
timeout
to
mysqld
Added
time
column
to
mysqladmin
processlist
to
show
how
long
a
query
has
taken
or
how
long
a
thread
has
slept
Added
lots
of
new
variables
to
show
variables
and
some
new
to
show
status
Added
new
type
YEAR
YEAR
is
stored
in
1
byte
with
allowable
values
of
0
and
1901
to
2155
Added
new
DATE
type
that
is
stored
in
3
bytes
rather
than
4
bytes
All
new
tables
are
created
with
the
new
date
type
if
you
don
t
use
the
old
protocol
option
to
mysqld
Fixed
bug
in
record
caches
for
some
queries
you
could
get
Error
from
table
handler
on
some
operating
systems
Added
enable
assembler
option
to
configure
for
x86
machines
tested
on
Linux
gcc
This
will
enable
assembler
functions
for
the
most
important
string
functions
for
more
speed
1292
D
3
Changes
in
release
3
21
x
1293
D
3
1
Changes
in
release
3
21
33
Fixed
problem
when
sending
SIGHUP
to
mysqld
mysqld
core
dumped
when
starting
from
boot
on
some
systems
Fixed
problem
with
losing
a
little
memory
for
some
connections
DELETE
FROM
tbl
name
without
a
WHERE
condition
is
now
done
the
long
way
when
you
use
LOCK
TABLES
or
if
the
table
is
in
use
to
avoid
race
conditions
INSERT
INTO
TABLE
timestamp
column
VALUES
NULL
didn
t
set
timestamp
1294
D
3
2
Changes
in
release
3
21
32
Fixed
some
possible
race
conditions
when
doing
many
reopen
close
on
the
same
tables
under
heavy
load
This
can
happen
if
you
execute
mysqladmin
refresh
often
This
could
in
some
very
rare
cases
corrupt
the
header
of
the
index
file
and
cause
error
126
or
138
Fixed
fatal
bug
in
refresh
when
running
with
the
skip
locking
option
There
was
a
very
small
time
gap
after
a
mysqladmin
refresh
when
a
table
could
be
corrupted
if
one
thread
updated
a
table
while
another
thread
did
mysqladmin
refresh
and
another
thread
started
a
new
update
ont
the
same
table
before
the
first
thread
had
finished
A
refresh
or
flush
tables
will
now
not
return
until
all
used
tables
are
closed
SELECT
DISTINCT
with
a
WHERE
clause
that
didn
t
match
any
rows
returned
a
row
in
some
contexts
bug
only
in
3
21
31
GROUP
BY
ORDER
BY
returned
one
empty
row
when
no
rows
where
found
Fixed
a
bug
in
the
range
optimizer
that
wrote
Use
count
Wrong
count
for
in
the
error
log
file
1295
D
3
3
Changes
in
release
3
21
31
Fixed
a
sign
extension
problem
for
the
TINYINT
type
on
Irix
Fixed
problem
with
LEFT
constant
string
function
Fixed
problem
with
FIND
IN
SET
LEFT
JOIN
core
dumped
if
the
second
table
is
used
with
a
constant
WHERE
ON
expression
that
uniquely
identifies
one
record
Fixed
problems
with
DATE
FORMAT
and
incorrect
dates
DATE
FORMAT
now
ignores
to
make
it
possible
to
extend
it
more
easily
in
the
future
1296
D
3
4
Changes
in
release
3
21
30
mysql
now
returns
an
exit
code
0
if
the
query
returned
an
error
Saving
of
command
line
history
to
file
in
mysql
client
By
Tommy
Larsen
1297
tommy
mix
hive
no
Fixed
problem
with
empty
lines
that
were
ignored
in
mysql
cc
Save
the
pid
of
the
signal
handler
thread
in
the
pid
file
instead
of
the
pid
of
the
main
thread
Added
patch
by
1298
tommy
valley
ne
jp
to
support
Japanese
characters
SJIS
and
UJIS
Changed
safe
mysqld
to
redirect
startup
messages
to
hostname
err
instead
of
hostname
log
to
reclaim
file
space
on
mysqladmin
refresh
ENUM
always
had
the
first
entry
as
default
value
ALTER
TABLE
wrote
two
entries
to
the
update
log
sql
acc
now
closes
the
mysql
grant
tables
after
a
reload
to
save
table
space
and
memory
Changed
LOAD
DATA
to
use
less
memory
with
tables
and
BLOB
columns
Sorting
on
a
function
which
made
a
division
0
produced
a
wrong
set
in
some
cases
Fixed
SELECT
problem
with
LEFT
when
using
the
czech
character
set
Fixed
problem
in
isamchk
it
couldn
t
repair
a
packed
table
in
a
very
unusual
case
SELECT
statements
with
or
bit
functions
failed
on
columns
with
NULL
values
When
comparing
a
field
field
where
one
of
the
fields
was
a
part
key
only
the
length
of
the
part
key
was
compared
1299
D
3
5
Changes
in
release
3
21
29
LOCK
TABLES
DELETE
from
tbl
name
never
removed
locks
properly
Fixed
problem
when
grouping
on
an
OR
function
Fixed
permission
problem
with
umask
and
creating
new
databases
Fixed
permission
problem
on
result
file
with
SELECT
INTO
OUTFILE
Fixed
problem
in
range
optimizer
core
dump
for
a
very
complex
query
Fixed
problem
when
using
MIN
integer
or
MAX
integer
in
GROUP
BY
Fixed
bug
on
Alpha
when
using
integer
keys
Other
keys
worked
on
Alpha
Fixed
bug
in
WEEK
XXXX
xx
01
1300
D
3
6
Changes
in
release
3
21
28
Fixed
socket
permission
clients
couldn
t
connect
to
Unix
socket
on
Linux
Fixed
bug
in
record
caches
for
some
queries
you
could
get
Error
from
table
handler
on
some
operating
systems
1301
D
3
7
Changes
in
release
3
21
27
Added
user
level
lock
functions
GET
LOCK
string
timeout
RELEASE
LOCK
string
Added
opened
tables
to
show
status
Changed
connect
timeout
to
3
seconds
to
make
it
somewhat
harder
for
crackers
to
kill
mysqld
through
telnet
TCP
IP
Fixed
bug
in
range
optimizer
when
using
WHERE
key
part
1
something
AND
key
part
2
something
else
Changed
configure
for
detection
of
FreeBSD
3
0
9803xx
and
above
WHERE
with
string
column
key
constant
string
didn
t
always
find
all
rows
if
the
column
had
many
values
differing
only
with
characters
of
the
same
sort
value
like
e
and
e
Strings
keys
looked
up
with
ref
were
not
compared
in
case
sensitive
fashion
Added
umask
to
make
log
files
non
readable
for
normal
users
Ignore
users
with
old
8
byte
password
on
startup
if
not
using
old
protocol
option
to
mysqld
SELECT
which
matched
all
key
fields
returned
the
values
in
the
case
of
the
matched
values
not
of
the
found
values
Minor
problem
1302
D
3
8
Changes
in
release
3
21
26
FROM
DAYS
0
now
returns
0000
00
00
In
DATE
FORMAT
PM
and
AM
were
swapped
for
hours
00
and
12
Extended
the
default
maximum
key
size
to
256
Fixed
bug
when
using
BLOB
TEXT
in
GROUP
BY
with
many
tables
An
ENUM
field
that
is
not
declared
NOT
NULL
has
NULL
as
the
default
value
Previously
the
default
value
was
the
first
enumeration
value
Fixed
bug
in
the
join
optimizer
code
when
using
many
part
keys
on
the
same
key
INDEX
Organization
Surname
35
Initials
35
Added
some
tests
to
the
table
order
optimizer
to
get
some
cases
with
SELECT
FROM
many
tables
much
faster
Added
a
retry
loop
around
accept
to
possibly
fix
some
problems
on
some
Linux
machines
1303
D
3
9
Changes
in
release
3
21
25
Changed
typedef
string
to
typedef
my
string
for
better
portability
You
can
now
kill
threads
that
are
waiting
on
a
disk
full
condition
Fixed
some
problems
with
UDF
functions
Added
long
options
to
isamchk
Try
isamchk
help
Fixed
a
bug
when
using
8
bytes
long
alpha
filesort
didn
t
work
Affects
DISTINCT
ORDER
BY
and
GROUP
BY
on
64
bit
processors
1304
D
3
10
Changes
in
release
3
21
24
Dynamic
loadable
functions
Based
on
source
from
Alexis
Mikhailov
You
couldn
t
delete
from
a
table
if
no
one
had
done
a
SELECT
on
the
table
Fixed
problem
with
range
optimizer
with
many
OR
operators
on
key
parts
inside
each
other
Recoded
MIN
and
MAX
to
work
properly
with
strings
and
HAVING
Changed
default
umask
value
for
new
files
from
0664
to
0660
Fixed
problem
with
LEFT
JOIN
and
constant
expressions
in
the
ON
part
Added
Italian
error
messages
from
1305
brenno
3cord
philips
nl
configure
now
works
better
on
OSF1
tested
on
4
0D
Added
hooks
to
allow
LIKE
optimization
with
international
character
support
Upgraded
DBI
to
0
93
1306
D
3
11
Changes
in
release
3
21
23
The
following
symbols
are
now
reserved
words
TIME
DATE
TIMESTAMP
TEXT
BIT
ENUM
NO
ACTION
CHECK
YEAR
MONTH
DAY
HOUR
MINUTE
SECOND
STATUS
VARIABLES
Setting
a
TIMESTAMP
to
NULL
in
LOAD
DATA
INFILE
didn
t
set
the
current
time
for
the
TIMESTAMP
Fix
BETWEEN
to
recognize
binary
strings
Now
BETWEEN
is
case
sensitive
Added
skip
thread
priority
option
to
mysqld
for
systems
where
mysqld
s
thread
scheduling
doesn
t
work
properly
BSDI
3
1
Added
ODBC
functions
DAYNAME
and
MONTHNAME
Added
function
TIME
FORMAT
This
works
like
DATE
FORMAT
but
takes
a
time
string
HH
MM
DD
as
argument
Fixed
unlikely
key
optimizer
bug
when
using
ORs
of
key
parts
inside
ANDs
Added
command
variables
to
mysqladmin
A
lot
of
small
changes
to
the
binary
releases
Fixed
a
bug
in
the
new
protocol
from
MySQL
3
21
20
Changed
ALTER
TABLE
to
work
with
Win32
Win32
can
t
rename
open
files
Also
fixed
a
couple
of
small
bugs
in
the
Win32
version
All
standard
MySQL
clients
are
now
ported
to
MySQL
Win32
MySQL
can
now
be
started
as
a
service
on
NT
1307
D
3
12
Changes
in
release
3
21
22
Starting
with
this
version
all
MySQL
distributions
will
be
configured
compiled
and
tested
with
crash
me
and
the
benchmarks
on
the
following
platforms
SunOS
5
6
sun4u
SunOS
5
5
1
sun4u
SunOS
4
14
sun4c
SunOS
5
6
i86pc
Irix
6
3
mips5k
HP
UX
10
20
hppa
AIX
4
2
1
ppc
OSF1
V4
0
alpha
FreeBSD
2
2
2
i86pc
and
BSDI
3
1
i386
Fix
COUNT
problems
when
the
WHERE
clause
didn
t
match
any
records
Bug
from
3
21
17
Removed
that
NULL
NULL
is
true
Now
you
must
use
IS
NULL
or
IS
NOT
NULL
to
test
whether
or
not
a
value
is
NULL
This
is
according
to
ANSI
SQL
but
may
break
old
applications
that
are
ported
from
mSQL
You
can
get
the
old
behavior
by
compiling
with
DmSQL
COMPLIANT
Fixed
bug
that
core
dumped
when
using
many
LEFT
OUTER
JOIN
clauses
Fixed
bug
in
ORDER
BY
on
string
formula
with
possible
NULL
values
Fixed
problem
in
range
optimizer
when
using
on
sub
index
Added
functions
DAYOFYEAR
DAYOFMONTH
MONTH
YEAR
WEEK
QUARTER
HOUR
MINUTE
SECOND
and
FIND
IN
SET
Added
command
SHOW
VARIABLES
Added
support
of
long
constant
strings
from
ANSI
SQL
mysql
SELECT
first
second
first
second
Upgraded
mSQL
Mysql
modules
to
1
1825
Upgraded
mysqlaccess
to
2
02
Fixed
problem
with
Russian
character
set
and
LIKE
Ported
to
OpenBSD
2
1
New
Dutch
error
messages
1308
D
3
13
Changes
in
release
3
21
21a
Configure
changes
for
some
operating
systems
1309
D
3
14
Changes
in
release
3
21
21
Fixed
optimizer
bug
when
using
WHERE
data
field
date
field2
AND
date
field2
constant
Added
command
SHOW
STATUS
Removed
manual
ps
from
the
source
distribution
to
make
it
smaller
1310
D
3
15
Changes
in
release
3
21
20
Changed
the
maximum
table
name
and
column
name
lengths
from
32
to
64
Aliases
can
now
be
of
any
length
Fixed
mysqladmin
stat
to
return
the
right
number
of
queries
Changed
protocol
downward
compatible
to
mark
if
a
column
has
the
AUTO
INCREMENT
attribute
or
is
a
TIMESTAMP
This
is
needed
for
the
new
Java
driver
Added
Hebrew
sorting
order
by
Zeev
Suraski
Solaris
2
6
Fixed
configure
bugs
and
increased
maximum
table
size
from
2G
to
4G
1311
D
3
16
Changes
in
release
3
21
19
Upgraded
DBD
to
1823
This
version
implements
mysql
use
result
in
DBD
Mysql
Benchmarks
updated
for
empress
by
Luuk
Fixed
a
case
of
slow
range
searching
Configure
fixes
Docs
directory
Added
function
REVERSE
by
Zeev
Suraski
1312
D
3
17
Changes
in
release
3
21
18
Issue
error
message
if
client
C
functions
are
called
in
wrong
order
Added
automatic
reconnect
to
the
libmysql
c
library
If
a
write
command
fails
an
automatic
reconnect
is
done
Small
sort
sets
no
longer
use
temporary
files
Upgraded
DBI
to
0
91
Fixed
a
couple
of
problems
with
LEFT
OUTER
JOIN
Added
CROSS
JOIN
syntax
CROSS
is
now
a
reserved
word
Recoded
yacc
bison
stack
allocation
to
be
even
safer
and
to
allow
MySQL
to
handle
even
bigger
expressions
Fixed
a
couple
of
problems
with
the
update
log
ORDER
BY
was
slow
when
used
with
key
ranges
1313
D
3
18
Changes
in
release
3
21
17
Changed
documentation
string
of
with
unix
socket
path
to
avoid
confusion
Added
ODBC
and
ANSI
SQL
style
LEFT
OUTER
JOIN
The
following
are
new
reserved
words
LEFT
NATURAL
USING
The
client
library
now
uses
the
value
of
the
environment
variable
MYSQL
HOST
as
the
default
host
if
it
s
defined
SELECT
column
SUM
expr
now
returns
NULL
for
column
when
there
are
matching
rows
Fixed
problem
with
comparing
binary
strings
and
BLOBs
with
ASCII
characters
over
127
Fixed
lock
problem
when
freeing
a
read
lock
on
a
table
with
multiple
read
locks
a
thread
waiting
for
a
write
lock
would
have
been
given
the
lock
This
shouldn
t
affect
data
integrity
but
could
possibly
make
mysqld
restart
if
one
thread
was
reading
data
that
another
thread
modified
LIMIT
offset
count
didn
t
work
in
INSERT
SELECT
Optimized
key
block
caching
This
will
be
quicker
than
the
old
algorithm
when
using
bigger
key
caches
1314
D
3
19
Changes
in
release
3
21
16
Added
ODBC
2
0
3
0
functions
POWER
SPACE
COT
DEGREES
RADIANS
ROUND
2
arg
and
TRUNCATE
WARNING
INCOMPATIBLE
CHANGE
LOCATE
parameters
were
swapped
according
to
ODBC
standard
Fixed
Added
function
TIME
TO
SEC
In
some
cases
default
values
were
not
used
for
NOT
NULL
fields
Timestamp
wasn
t
always
updated
properly
in
UPDATE
SET
statements
Allow
empty
strings
as
default
values
for
BLOB
and
TEXT
to
be
compatible
with
mysqldump
1315
D
3
20
Changes
in
release
3
21
15
WARNING
INCOMPATIBLE
CHANGE
mysqlperl
is
now
from
Msql
Mysql
modules
This
means
that
connect
now
takes
host
database
user
password
arguments
The
old
version
took
host
database
password
user
Allow
DATE
1997
01
01
TIME
12
10
10
and
TIMESTAMP
1997
01
01
12
10
10
formats
required
by
ANSI
SQL
WARNING
INCOMPATIBLE
CHANGE
This
has
the
unfortunate
side
effect
that
you
no
longer
can
have
columns
named
DATE
TIME
or
TIMESTAMP
Old
columns
can
still
be
accessed
through
tablename
columnname
Changed
Makefiles
to
hopefully
work
better
with
BSD
systems
Also
manual
dvi
is
now
included
in
the
distribution
to
avoid
having
stupid
make
programs
trying
to
rebuild
it
readline
library
upgraded
to
version
2
1
A
new
sortorder
german
1
That
is
a
normal
ISO
Latin1
with
a
german
sort
order
Perl
DBI
DBD
is
now
included
in
the
distribution
DBI
is
now
the
recommended
way
to
connect
to
MySQL
from
Perl
New
portable
benchmark
suite
with
DBD
with
test
results
from
mSQL
2
0
3
MySQL
PostgreSQL
6
2
1
and
Solid
server
2
2
crash
me
is
now
included
with
the
benchmarks
This
is
a
Perl
program
designed
to
find
as
many
limits
as
possible
in
a
SQL
server
Tested
with
mSQL
PostgreSQL
Solid
and
MySQL
Fixed
bug
in
range
optimizer
that
crashed
MySQL
on
some
queries
Table
and
column
name
completion
for
mysql
command
line
tool
by
Zeev
Suraski
and
Andi
Gutmans
Added
new
command
REPLACE
that
works
like
INSERT
but
replaces
conflicting
records
with
the
new
record
REPLACE
INTO
TABLE
SELECT
works
also
Added
new
commands
CREATE
DATABASE
db
name
and
DROP
DATABASE
db
name
Added
RENAME
option
to
ALTER
TABLE
ALTER
TABLE
name
RENAME
AS
new
name
make
binary
distribution
now
includes
libgcc
a
in
libmysqlclient
a
This
should
make
linking
work
for
people
who
don
t
have
gcc
Changed
net
write
to
my
net
write
because
of
a
name
conflict
with
Sybase
New
function
DAYOFWEEK
compatible
with
ODBC
Stack
checking
and
bison
memory
overrun
checking
to
make
MySQL
safer
with
weird
queries
1316
D
3
21
Changes
in
release
3
21
14b
Fixed
a
couple
of
small
configure
problems
on
some
platforms
1317
D
3
22
Changes
in
release
3
21
14a
Ported
to
SCO
Openserver
5
0
4
with
FSU
Pthreads
HP
UX
10
20
should
work
Added
new
function
DATE
FORMAT
Added
NOT
IN
Added
automatic
removal
of
ODBC
function
conversions
fn
now
Handle
ODBC
2
50
3
option
flags
Fixed
comparison
of
DATE
and
TIME
values
with
NULL
Changed
language
name
from
germany
to
german
to
be
consistent
with
the
other
language
names
Fixed
sorting
problem
on
functions
returning
a
FLOAT
Previously
the
values
were
converted
to
INTs
before
sorting
Fixed
slow
sorting
when
sorting
on
key
field
when
using
key
column
constant
Sorting
on
calculated
DOUBLE
values
sorted
on
integer
results
instead
mysql
no
longer
needs
a
database
argument
Changed
the
place
where
HAVING
should
be
According
to
ANSI
it
should
be
after
GROUP
BY
but
before
ORDER
BY
MySQL
3
20
incorrectly
had
it
last
Added
Sybase
command
USE
DATABASE
to
start
using
another
database
Added
automatic
adjusting
of
number
of
connections
and
table
cache
size
if
the
maximum
number
of
files
that
can
be
opened
is
less
than
needed
This
should
fix
that
mysqld
doesn
t
crash
even
if
you
haven
t
done
a
ulimit
n
256
before
starting
mysqld
Added
lots
of
limit
checks
to
make
it
safer
when
running
with
too
little
memory
or
when
doing
weird
queries
1318
D
3
23
Changes
in
release
3
21
13
Added
retry
of
interrupted
reads
and
clearing
of
errno
This
makes
Linux
systems
much
safer
Fixed
locking
bug
when
using
many
aliases
on
the
same
table
in
the
same
SELECT
Fixed
bug
with
LIKE
on
number
key
New
error
message
so
you
can
check
whether
the
connection
was
lost
while
the
command
was
running
or
whether
the
connection
was
down
from
the
start
Added
table
option
to
mysql
to
print
in
table
format
Moved
time
and
row
information
after
query
result
Added
automatic
reconnect
of
lost
connections
Added
as
a
synonym
for
Added
function
VERSION
to
make
easier
logs
New
multi
user
test
tests
fork
test
pl
to
put
some
strain
on
the
thread
library
1319
D
3
24
Changes
in
release
3
21
12
Fixed
ftruncate
call
in
MIT
pthreads
This
made
isamchk
destroy
the
ISM
files
on
Free
BSD
2
x
systems
Fixed
broken
P
patch
in
MIT
pthreads
Many
memory
overrun
checks
All
string
functions
now
return
NULL
if
the
returned
string
should
be
longer
than
max
allowed
packet
bytes
Changed
the
name
of
the
INTERVAL
type
to
ENUM
because
INTERVAL
is
used
in
ANSI
SQL
In
some
cases
doing
a
JOIN
GROUP
INTO
OUTFILE
the
result
wasn
t
grouped
LIKE
with
as
last
character
didn
t
work
Fixed
Added
extended
ANSI
SQL
TRIM
function
Added
CURTIME
Added
ENCRYPT
function
by
Zeev
Suraski
Fixed
better
FOREIGN
KEY
syntax
skipping
New
reserved
words
MATCH
FULL
PARTIAL
mysqld
now
allows
IP
number
and
hostname
to
the
bind
address
option
Added
SET
OPTION
CHARACTER
SET
cp1251
koi8
to
enable
conversions
of
data
to
from
cp1251
koi8
Lots
of
changes
for
Win95
port
In
theory
this
version
should
now
be
easily
portable
to
Win95
Changed
the
CREATE
COLUMN
syntax
of
NOT
NULL
columns
to
be
after
the
DEFAULT
value
as
specified
in
the
ANSI
SQL
standard
This
will
make
mysqldump
with
NOT
NULL
and
default
values
incompatible
with
MySQL
3
20
Added
many
function
name
aliases
so
the
functions
can
be
used
with
ODBC
or
ANSI
SQL92
syntax
Fixed
syntax
of
ALTER
TABLE
tbl
name
ALTER
COLUMN
col
name
SET
DEFAULT
NULL
Added
CHAR
and
BIT
as
synonyms
for
CHAR
1
Fixed
core
dump
when
updating
as
a
user
who
has
only
select
privilege
INSERT
SELECT
GROUP
BY
didn
t
work
in
some
cases
An
Invalid
use
of
group
function
error
occurred
When
using
LIMIT
SELECT
now
always
uses
keys
instead
of
record
scan
This
will
give
better
performance
on
SELECT
and
a
WHERE
that
matches
many
rows
Added
Russian
error
messages
1320
D
3
25
Changes
in
release
3
21
11
Configure
changes
MySQL
now
works
with
the
new
thread
library
on
BSD
OS
3
0
Added
new
group
functions
BIT
OR
and
BIT
AND
Added
compatibility
functions
CHECK
and
REFERENCES
CHECK
is
now
a
reserved
word
Added
ALL
option
to
GRANT
for
better
compatibility
GRANT
is
still
a
dummy
function
Added
partly
translated
dutch
messages
Fixed
bug
in
ORDER
BY
and
GROUP
BY
with
NULL
columns
Added
function
last
insert
id
to
retrieve
last
AUTO
INCREMENT
value
This
is
intended
for
clients
to
ODBC
that
can
t
use
the
mysql
insert
id
API
function
but
can
be
used
by
any
client
Added
flush
logs
option
to
mysqladmin
Added
command
STATUS
to
mysql
Fixed
problem
with
ORDER
BY
GROUP
BY
because
of
bug
in
gcc
Fixed
problem
with
INSERT
SELECT
GROUP
BY
1321
D
3
26
Changes
in
release
3
21
10
New
mysqlaccess
CREATE
now
supports
all
ODBC
types
and
the
mSQL
TEXT
type
All
ODBC
2
5
functions
are
also
supported
added
REPEAT
This
provides
better
portability
Added
text
types
TINYTEXT
TEXT
MEDIUMTEXT
and
LONGTEXT
These
are
actually
BLOBtypes
but
all
searching
is
done
in
case
insensitive
fashion
All
old
BLOB
fields
are
now
TEXT
fields
This
only
changes
that
all
searching
on
strings
is
done
in
case
sensitive
fashion
You
must
do
an
ALTER
TABLE
and
change
the
field
type
to
BLOB
if
you
want
to
have
tests
done
in
case
sensitive
fashion
Fixed
some
configure
issues
Made
the
locking
code
a
bit
safer
Fixed
very
unlikely
deadlock
situation
Fixed
a
couple
of
bugs
in
the
range
optimizer
Now
the
new
range
benchmark
test
select
works
1322
D
3
27
Changes
in
release
3
21
9
Added
enable
unix
socket
pathname
option
to
configure
Fixed
a
couple
of
portability
problems
with
include
files
Fixed
bug
in
range
calculation
that
could
return
empty
set
when
searching
on
multiple
key
with
only
one
entry
very
rare
Most
things
ported
to
FSU
Pthreads
which
should
allow
MySQL
to
run
on
SCO
See
section
1323
4
11
11
SCO
notes
1324
D
3
28
Changes
in
release
3
21
8
Works
now
in
Solaris
2
6
Added
handling
of
calculation
of
SUM
functions
For
example
you
can
now
use
SUM
column
COUNT
column
Added
handling
of
trigometric
functions
PI
ACOS
ASIN
ATAN
COS
SIN
and
TAN
New
languages
norwegian
norwegian
ny
and
portuguese
Fixed
parameter
bug
in
net
print
in
procedure
cc
Fixed
a
couple
of
memory
leaks
Now
allow
also
the
old
SELECT
INTO
OUTFILE
syntax
Fixed
bug
with
GROUP
BY
and
SELECT
on
key
with
many
values
mysql
fetch
lengths
sometimes
returned
incorrect
lengths
when
you
used
mysql
use
result
This
affected
at
least
some
cases
of
mysqldump
quick
Fixed
bug
in
optimization
of
WHERE
const
op
field
Fixed
problem
when
sorting
on
NULL
fields
Fixed
a
couple
of
64
bit
Alpha
problems
Added
pid
file
option
to
mysqld
Added
date
formatting
to
FROM
UNIXTIME
originally
by
Zeev
Suraski
Fixed
bug
in
BETWEEN
in
range
optimizer
Did
only
test
of
the
first
argument
Added
machine
dependent
files
for
MIT
pthreads
i386
SCO
There
is
probably
more
to
do
to
get
this
to
work
on
SCO
3
5
1325
D
3
29
Changes
in
release
3
21
7
Changed
Makefile
am
to
take
advantage
of
Automake
1
2
Added
the
beginnings
of
a
benchmark
suite
Added
more
secure
password
handling
Added
new
client
function
mysql
errno
to
get
the
error
number
of
the
error
message
This
makes
error
checking
in
the
client
much
easier
This
makes
the
new
server
incompatible
with
the
3
20
x
server
when
running
without
old
protocol
The
client
code
is
backward
compatible
More
information
can
be
found
in
the
README
file
Fixed
some
problems
when
using
very
long
illegal
names
1326
D
3
30
Changes
in
release
3
21
6
Fixed
more
portability
issues
incorrect
sigwait
and
sigset
defines
configure
should
now
be
able
to
detect
the
last
argument
to
accept
1327
D
3
31
Changes
in
release
3
21
5
Should
now
work
with
FreeBSD
3
0
if
used
with
FreeBSD
3
0
libc
r
1
0
diff
which
can
be
found
at
1328
http
www
mysql
com
Download
Patches
Added
new
option
O
tmp
table
size
to
mysqld
New
function
FROM
UNIXTIME
timestamp
which
returns
a
date
string
in
YYYY
MM
DD
HH
MM
DD
format
New
function
SEC
TO
TIME
seconds
which
returns
a
string
in
HH
MM
SS
format
New
function
SUBSTRING
INDEX
originally
by
Zeev
Suraski
1329
D
3
32
Changes
in
release
3
21
4
Should
now
configure
and
compile
on
OSF1
4
0
with
the
DEC
compiler
Configuration
and
compilation
on
BSD
OS
3
0
works
but
due
to
some
bugs
in
BSD
OS
3
0
mysqld
doesn
t
work
on
it
yet
Configuration
and
compilation
on
FreeBSD
3
0
works
but
I
couldn
t
get
pthread
create
to
work
1330
D
3
33
Changes
in
release
3
21
3
Added
reverse
check
lookup
of
hostnames
to
get
better
security
Fixed
some
possible
buffer
overflows
if
filenames
that
are
too
long
are
used
mysqld
doesn
t
accept
hostnames
that
start
with
digits
followed
by
a
because
the
hostname
may
look
like
an
IP
number
Added
skip
networking
option
to
mysqld
to
only
allow
socket
connections
This
will
not
work
with
MIT
pthreads
Added
check
of
too
long
table
names
for
alias
Added
check
if
database
name
is
okay
Added
check
if
too
long
table
names
Removed
incorrect
free
that
killed
the
server
on
CREATE
DATABASE
or
DROP
DATABASE
Changed
some
mysqld
O
options
to
better
names
Added
O
join
cache
size
option
to
mysqld
Added
O
max
join
size
option
to
mysqld
to
be
able
to
set
a
limit
how
big
queries
in
this
case
big
slow
one
should
be
able
to
handle
without
specifying
SET
OPTION
SQL
BIG
SELECTS
1
A
is
about
10
examined
records
The
default
is
unlimited
When
comparing
a
TIME
DATE
DATETIME
or
TIMESTAMP
column
to
a
constant
the
constant
is
converted
to
a
time
value
before
performing
the
comparison
This
will
make
it
easier
to
get
ODBC
particularly
Access97
to
work
with
the
above
types
It
should
also
make
dates
easier
to
use
and
the
comparisons
should
be
quicker
than
before
Applied
patch
from
Jochen
Wiedmann
that
allows
query
in
mysqlperl
to
take
a
query
with
0
in
it
Storing
a
timestamp
with
a
2
digit
year
YYMMDD
didn
t
work
Fix
that
timestamp
wasn
t
automatically
updated
if
set
in
an
UPDATE
clause
Now
the
automatic
timestamp
field
is
the
FIRST
timestamp
field
SELECT
INTO
OUTFILE
which
didn
t
correctly
if
the
outfile
already
existed
mysql
now
shows
the
thread
ID
when
starting
or
doing
a
reconnect
Changed
the
default
sort
buffer
size
from
2M
to
1M
1331
D
3
34
Changes
in
release
3
21
2
The
range
optimizer
is
coded
but
only
85
tested
It
can
be
enabled
with
new
but
it
crashes
core
a
lot
yet
More
portable
Should
compile
on
AIX
and
alpha
digital
At
least
the
isam
library
should
be
relatively
64
bit
clean
New
isamchk
which
can
detect
and
fix
more
problems
New
options
for
isamlog
Using
new
version
of
Automake
Many
small
portability
changes
from
the
AIX
and
alpha
digital
port
Better
checking
of
pthread
s
library
czech
error
messages
by
1332
snajdr
pvt
net
Decreased
size
of
some
buffers
to
get
fewer
problems
on
systems
with
little
memory
Also
added
more
checks
to
handle
out
of
memory
problems
mysqladmin
you
can
now
do
mysqladmin
kill
5
6
7
8
to
kill
multiple
threads
When
the
maximum
connection
limit
is
reached
one
extra
connection
by
a
user
with
the
PROCESS
ACL
privilege
is
granted
Added
O
backlog
option
to
mysqld
Increased
maximum
packet
size
from
512K
to
1024K
for
client
Almost
all
of
the
function
code
is
now
tested
in
the
internal
test
suite
ALTER
TABLE
now
returns
warnings
from
field
conversions
Port
changed
to
3306
got
it
reserved
from
ISI
Added
a
fix
for
Visual
FoxBase
so
that
any
schema
name
from
a
table
specification
is
automatically
removed
New
function
ASCII
Removed
function
BETWEEN
a
b
c
Use
the
standard
ANSI
synax
instead
expr
BETWEEN
expr
AND
expr
MySQL
no
longer
has
to
use
an
extra
temporary
table
when
sorting
on
functions
or
SUM
functions
Fixed
bug
that
you
couldn
t
use
tbl
name
field
name
in
UPDATE
Fixed
SELECT
DISTINCT
when
using
hidden
group
For
example
mysql
SELECT
DISTINCT
MOD
some
field
10
FROM
test
GROUP
BY
some
field
Note
some
field
is
normally
in
the
SELECT
part
ANSI
SQL
should
require
it
1333
D
3
35
Changes
in
release
3
21
0
New
keywords
used
INTERVAL
EXPLAIN
READ
WRITE
BINARY
Added
ODBC
function
CHAR
num
New
operator
IN
This
uses
a
binary
search
to
find
a
match
New
command
LOCK
TABLES
tbl
name
AS
alias
READ
WRITE
Added
log
update
option
to
mysqld
to
get
a
log
suitable
for
incremental
updates
New
command
EXPLAIN
SELECT
to
get
information
about
how
the
optimizer
will
do
the
join
For
easier
client
code
the
client
should
no
longer
use
FIELD
TYPE
TINY
BLOB
FIELD
TYPE
MEDIUM
BLOB
FIELD
TYPE
LONG
BLOB
or
FIELD
TYPE
VAR
STRING
as
previously
returned
by
mysql
list
fields
You
should
instead
only
use
FIELD
TYPE
BLOB
or
FIELD
TYPE
STRING
If
you
want
exact
types
you
should
use
the
command
SHOW
FIELDS
Added
varbinary
syntax
0x
which
can
be
used
as
a
string
default
or
a
number
FIELD
TYPE
CHAR
is
renamed
to
FIELD
TYPE
TINY
Changed
all
fields
to
C
classes
Removed
FORM
struct
Fields
with
DEFAULT
values
no
longer
need
to
be
NOT
NULL
New
field
types
ENUM
A
string
which
can
take
only
a
couple
of
defined
values
The
value
is
stored
as
a
1
3
byte
number
that
is
mapped
automatically
to
a
string
This
is
sorted
according
to
string
positions
SET
A
string
which
may
have
one
or
many
string
values
separated
with
The
string
is
stored
as
a
1
2
3
4
or
8
byte
number
where
each
bit
stands
for
a
specific
set
member
This
is
sorted
according
to
the
unsigned
value
of
the
stored
packed
number
Now
all
function
calculation
is
done
with
double
or
long
long
This
will
provide
the
full
64
bit
range
with
bit
functions
and
fix
some
conversions
that
previously
could
result
in
precision
losses
One
should
avoid
using
unsigned
long
long
columns
with
full
64
bit
range
numbers
bigger
than
9223372036854775807
because
calculations
are
done
with
signed
long
long
ORDER
BY
will
now
put
NULL
field
values
first
GROUP
BY
will
also
work
with
NULL
values
Full
WHERE
with
expressions
New
range
optimizer
that
can
resolve
ranges
when
some
keypart
prefix
is
constant
Example
mysql
SELECT
FROM
tbl
name
WHERE
key
part
1
customer
AND
key
part
2
10
AND
key
part
2
10
1334
20
3
Changes
in
release
3
20
x
Changes
from
3
20
18
to
3
20
32b
are
not
documented
here
since
the
3
21
release
branched
here
And
the
relevant
changes
are
also
documented
as
changes
to
the
3
21
version
1335
D
3
36
Changes
in
release
3
20
18
Added
p
remove
directories
from
path
to
isamlog
All
files
are
written
with
a
relative
path
from
the
database
directory
Now
mysqld
shouldn
t
crash
on
shutdown
when
using
the
log
isam
option
New
mysqlperl
version
It
is
now
compatible
with
msqlperl
0
63
New
DBD
module
available
at
1336
http
www
mysql
com
Contrib
site
Added
group
function
STD
standard
deviation
The
mysqld
server
is
now
compiled
by
default
without
debugging
information
This
will
make
the
daemon
smaller
and
faster
Now
one
usually
only
has
to
specify
the
basedir
option
to
mysqld
All
other
paths
are
relative
in
a
normal
installation
BLOB
columns
sometimes
contained
garbage
when
used
with
a
SELECT
on
more
than
one
table
and
ORDER
BY
Fixed
that
calculations
that
are
not
in
GROUP
BY
work
as
expected
ANSI
SQL
extension
Example
mysql
SELECT
id
id
1
FROM
table
GROUP
BY
id
The
test
of
using
MYSQL
PWD
was
reversed
Now
MYSQL
PWD
is
enabled
as
default
in
the
default
release
Fixed
conversion
bug
which
caused
mysqld
to
core
dump
with
Arithmetic
error
on
Sparc
386
Added
unbuffered
option
to
mysql
for
new
mysqlaccess
When
using
overlapping
unnecessary
keys
and
join
over
many
tables
the
optimizer
could
get
confused
and
return
0
records
1337
D
3
37
Changes
in
release
3
20
17
You
can
now
use
BLOB
columns
and
the
functions
IS
NULL
and
IS
NOT
NULL
in
the
WHERE
clause
All
communication
packets
and
row
buffers
are
now
allocated
dynamically
on
demand
The
default
value
of
max
allowed
packet
is
now
64K
for
the
server
and
512K
for
the
client
This
is
mainly
used
to
catch
incorrect
packets
that
could
trash
all
memory
The
server
limit
may
be
changed
when
it
is
started
Changed
stack
usage
to
use
less
memory
Changed
safe
mysqld
to
check
for
running
daemon
The
ELT
function
is
renamed
to
FIELD
The
new
ELT
function
returns
a
value
based
on
an
index
FIELD
is
the
inverse
of
ELT
Example
ELT
2
A
B
C
returns
B
FIELD
B
A
B
C
returns
2
COUNT
field
where
field
could
have
a
NULL
value
now
works
A
couple
of
bugs
fixed
in
SELECT
GROUP
BY
Fixed
memory
overrun
bug
in
WHERE
with
many
unoptimizable
brace
levels
Fixed
some
small
bugs
in
the
grant
code
If
hostname
isn
t
found
by
get
hostname
only
the
IP
is
checked
Previously
you
got
Access
denied
Inserts
of
timestamps
with
values
didn
t
always
work
INSERT
INTO
SELECT
WHERE
could
give
the
error
Duplicated
field
Added
some
tests
to
safe
mysqld
to
make
it
safer
LIKE
was
case
sensitive
in
some
places
and
case
insensitive
in
others
Now
LIKE
is
always
case
insensitive
mysql
cc
Allow
anywhere
on
the
line
New
command
SET
OPTION
SQL
SELECT
LIMIT
See
the
FAQ
for
more
details
New
version
of
the
mysqlaccess
script
Change
FROM
DAYS
and
WEEKDAY
to
also
take
a
full
TIMESTAMP
or
DATETIME
as
argument
Before
they
only
took
a
number
of
type
YYYYMMDD
or
YYMMDD
Added
new
function
UNIX
TIMESTAMP
timestamp
column
1338
D
3
38
Changes
in
release
3
20
16
More
changes
in
MIT
pthreads
to
get
them
safer
Fixed
also
some
link
bugs
at
least
in
SunOS
Changed
mysqld
to
work
around
a
bug
in
MIT
pthreads
This
makes
multiple
small
SELECT
operations
20
times
faster
Now
lock
test
pl
should
work
Added
mysql
FetchHash
handle
to
mysqlperl
The
mysqlbug
script
is
now
distributed
built
to
allow
for
reporting
bugs
that
appear
during
the
build
with
it
Changed
libmysql
c
to
prefer
getpwuid
instead
of
cuserid
Fixed
bug
in
SELECT
optimizer
when
using
many
tables
with
the
same
column
used
as
key
to
different
tables
Added
new
latin2
and
Russian
KOI8
character
tables
Added
support
for
a
dummy
GRANT
command
to
satisfy
Powerbuilder
1339
D
3
39
Changes
in
release
3
20
15
Fixed
fatal
bug
packets
out
of
order
when
using
MIT
pthreads
Removed
possible
loop
when
a
thread
waits
for
command
from
client
and
fcntl
fails
Thanks
to
Mike
Bretz
for
finding
this
bug
Changed
alarm
loop
in
mysqld
cc
because
shutdown
didn
t
always
succeed
in
Linux
Removed
use
of
termbits
from
mysql
cc
This
conflicted
with
glibc
2
0
Fixed
some
syntax
errors
for
at
least
BSD
and
Linux
Fixed
bug
when
doing
a
SELECT
as
superuser
without
a
database
Fixed
bug
when
doing
SELECT
with
group
calculation
to
outfile
1340
D
3
40
Changes
in
release
3
20
14
If
one
gives
p
or
password
option
to
mysql
without
an
argument
the
user
is
solicited
for
the
password
from
the
tty
Added
default
password
from
MYSQL
PWD
by
Elmar
Haneke
Added
command
kill
to
mysqladmin
to
kill
a
specific
MySQL
thread
Sometimes
when
doing
a
reconnect
on
a
down
connection
this
succeeded
first
on
second
try
Fixed
adding
an
AUTO
INCREMENT
key
with
ALTER
TABLE
AVG
gave
too
small
value
on
some
SELECTs
with
GROUP
BY
and
ORDER
BY
Added
new
DATETIME
type
by
Giovanni
Maruzzelli
Fixed
that
define
DONT
USE
DEFAULT
FIELDS
works
Changed
to
use
a
thread
to
handle
alarms
instead
of
signals
on
Solaris
to
avoid
race
conditions
Fixed
default
length
of
signed
numbers
George
Harvey
Allow
anything
for
CREATE
INDEX
Add
prezeros
when
packing
numbers
to
DATE
TIME
and
TIMESTAMP
Fixed
a
bug
in
OR
of
multiple
tables
gave
empty
set
Added
many
patches
to
MIT
pthreads
This
fixes
at
least
one
lookup
bug
1341
D
3
41
Changes
in
release
3
20
13
Added
ANSI
SQL94
DATE
and
TIME
types
Fixed
bug
in
SELECT
with
AND
OR
levels
Added
support
for
Slovenian
characters
The
Contrib
directory
contains
source
and
instructions
for
adding
other
character
sets
Fixed
bug
with
LIMIT
and
ORDER
BY
Allow
ORDER
BY
and
GROUP
BY
on
items
that
aren
t
in
the
SELECT
list
Thanks
to
Wim
Bonis
1342
bonis
kiss
de
for
pointing
this
out
Allow
setting
of
timestamp
values
in
INSERT
Fixed
bug
with
SELECT
WHERE
NULL
Added
changes
for
glibc
2
0
To
get
glibc
to
work
you
should
add
the
gibc
2
0
sigwait
patch
before
compiling
glibc
Fixed
bug
in
ALTER
TABLE
when
changing
a
NOT
NULL
field
to
allow
NULL
values
Added
some
ANSI92
synonyms
as
field
types
to
CREATE
TABLE
CREATE
TABLE
now
allows
FLOAT
4
and
FLOAT
8
to
mean
FLOAT
and
DOUBLE
New
utility
program
mysqlaccess
by
1343
Yves
Carlier
rug
ac
be
This
program
shows
the
access
rights
for
a
specific
user
and
the
grant
rows
that
determine
this
grant
Added
WHERE
const
op
field
by
1344
bonis
kiss
de
1345
D
3
42
Changes
in
release
3
20
11
When
using
SELECT
INTO
OUTFILE
all
temporary
tables
are
ISAM
instead
of
HEAP
to
allow
big
dumps
Changed
date
functions
to
be
string
functions
This
fixed
some
funny
side
effects
when
sorting
on
dates
Extended
ALTER
TABLE
according
to
SQL92
Some
minor
compability
changes
Added
port
and
socket
options
to
all
utility
programs
and
mysqld
Fixed
MIT
pthreads
readdir
r
Now
mysqladmin
create
database
and
mysqladmin
drop
database
should
work
Changed
MIT
pthreads
to
use
our
tempnam
This
should
fix
the
sort
aborted
bug
Added
sync
of
records
count
in
sql
update
This
fixed
slow
updates
on
first
connection
Thanks
to
Vaclav
Bittner
for
the
test
1346
D
3
43
Changes
in
release
3
20
10
New
insert
type
INSERT
INTO
SELECT
MEDIUMBLOB
fixed
Fixed
bug
in
ALTER
TABLE
and
BLOBs
SELECT
INTO
OUTFILE
now
creates
the
file
in
the
current
database
directory
DROP
TABLE
now
can
take
a
list
of
tables
Oracle
synonym
DESCRIBE
DESC
Changes
to
make
binary
distribution
Added
some
comments
to
installation
instructions
about
configure
s
C
link
test
Added
without
perl
option
to
configure
Lots
of
small
portability
changes
1347
D
3
44
Changes
in
release
3
20
9
ALTER
TABLE
didn
t
copy
null
bit
As
a
result
fields
that
were
allowed
to
have
NULL
values
were
always
NULL
CREATE
didn
t
take
numbers
as
DEFAULT
Some
compatibility
changes
for
SunOS
Removed
config
cache
from
old
distribution
1348
D
3
45
Changes
in
release
3
20
8
Fixed
bug
with
ALTER
TABLE
and
multi
part
keys
1349
D
3
46
Changes
in
release
3
20
7
New
commands
ALTER
TABLE
SELECT
INTO
OUTFILE
and
LOAD
DATA
INFILE
New
function
NOW
Added
new
field
file
priv
to
mysql
user
table
New
script
add
file
priv
which
adds
the
new
field
file
priv
to
the
user
table
This
script
must
be
executed
if
you
want
to
use
the
new
SELECT
INTO
and
LOAD
DATA
INFILE
commands
with
a
version
of
MySQL
earlier
than
3
20
7
Fixed
bug
in
locking
code
which
made
lock
test
pl
test
fail
New
files
NEW
and
BUGS
Changed
select
test
c
and
insert
test
c
to
include
config
h
Added
command
status
to
mysqladmin
for
short
logging
Increased
maximum
number
of
keys
to
16
and
maximum
number
of
key
parts
to
15
Use
of
sub
keys
A
key
may
now
be
a
prefix
of
a
string
field
Added
k
option
to
mysqlshow
to
get
key
information
for
a
table
Added
long
options
to
mysqldump
1350
D
3
47
Changes
in
release
3
20
6
Portable
to
more
systems
because
of
MIT
pthreads
which
will
be
used
automatically
if
configure
cannot
find
a
lpthreads
library
Added
GNU
style
long
options
to
almost
all
programs
Test
with
program
help
Some
shared
library
support
for
Linux
The
FAQ
is
now
in
texi
format
and
is
available
in
html
txt
and
ps
formats
Added
new
SQL
function
RAND
init
Changed
sql
lex
to
handle
0
unquoted
but
the
client
can
t
send
the
query
through
the
C
API
because
it
takes
a
str
pointer
You
must
use
mysql
real
query
to
send
the
query
Added
API
function
mysql
get
client
info
mysqld
now
uses
the
N
MAX
KEY
LENGTH
from
nisam
h
as
the
maximum
allowed
key
length
The
following
now
works
mysql
SELECT
filter
nr
filter
nr
FROM
filter
ORDER
BY
filter
nr
Previously
this
resulted
in
the
error
Column
filter
nr
in
order
clause
is
ambiguous
mysql
now
outputs
0
t
n
and
when
encountering
ASCII
0
tab
newline
or
while
writing
tab
separated
output
This
is
to
allow
printing
of
binary
data
in
a
portable
format
To
get
the
old
behavior
use
r
or
raw
Added
german
error
messages
60
of
80
error
messages
translated
Added
new
API
function
mysql
fetch
lengths
MYSQL
RES
which
returns
an
array
of
of
column
lengths
of
type
uint
Fixed
bug
with
IS
NULL
in
WHERE
clause
Changed
the
optimizer
a
little
to
get
better
results
when
searching
on
a
key
part
Added
SELECT
option
STRAIGHT
JOIN
to
tell
the
optimizer
that
it
should
join
tables
in
the
given
order
Added
support
for
comments
starting
with
in
mysql
cc
Postgres
syntax
You
can
have
SELECT
expressions
and
table
columns
in
a
SELECT
which
are
not
used
in
the
group
part
This
makes
it
efficient
to
implement
lookups
The
column
that
is
used
should
be
a
constant
for
each
group
because
the
value
is
calculated
only
once
for
the
first
row
that
is
found
for
a
group
mysql
SELECT
id
lookup
text
sum
FROM
test
lookup
WHERE
test
id
lookup
id
GROUP
BY
id
Fixed
bug
in
SUM
function
could
cause
a
core
dump
Changed
AUTO
INCREMENT
placement
in
the
SQL
query
INSERT
into
table
auto
field
values
0
inserted
0
but
it
should
insert
an
AUTO
INCREMENT
value
mysqlshow
c
Added
number
of
records
in
table
Had
to
change
the
client
code
a
little
to
fix
this
mysql
now
allows
doubled
or
within
strings
for
embedded
or
New
math
functions
EXP
LOG
SQRT
ROUND
CEILING
1351
D
3
48
Changes
in
release
3
20
3
The
configure
source
now
compiles
a
thread
free
client
library
lmysqlclient
This
is
the
only
library
that
needs
to
be
linked
with
client
applications
When
using
the
binary
releases
you
must
link
with
lmysql
lmysys
ldbug
lstrings
as
before
New
readline
library
from
bash
2
0
LOTS
of
small
changes
to
configure
and
makefiles
and
related
source
It
should
now
be
possible
to
compile
in
another
directory
using
VPATH
Tested
with
GNU
Make
3
75
safe
mysqld
and
mysql
server
changed
to
be
more
compatible
between
the
source
and
the
binary
releases
LIMIT
now
takes
one
or
two
numeric
arguments
If
one
argument
is
given
it
indicates
the
maximum
number
of
rows
in
a
result
If
two
arguments
are
given
the
first
argument
indicates
the
offset
of
the
first
row
to
return
the
second
is
the
maximum
number
of
rows
With
this
it
s
easy
to
do
a
poor
man
s
next
page
previous
page
WWW
application
Changed
name
of
SQL
function
FIELDS
to
ELT
Changed
SQL
function
INTERVALL
to
INTERVAL
Made
SHOW
COLUMNS
a
synonym
for
SHOW
FIELDS
Added
compatibility
syntax
FRIEND
KEY
to
CREATE
TABLE
In
MySQL
this
creates
a
non
unique
key
on
the
given
columns
Added
CREATE
INDEX
and
DROP
INDEX
as
compatibility
functions
In
MySQL
CREATE
INDEX
only
checks
if
the
index
exists
and
issues
an
error
if
it
doesn
t
exist
DROP
INDEX
always
succeeds
mysqladmin
c
added
client
version
to
version
information
Fixed
core
dump
bug
in
sql
acl
core
on
new
connection
Removed
host
user
and
db
tables
from
database
test
in
the
distribution
FIELD
TYPE
CHAR
can
now
be
signed
128
127
or
unsigned
0
255
Previously
it
was
always
unsigned
Bug
fixes
in
CONCAT
and
WEEKDAY
Changed
a
lot
of
source
to
get
mysqld
to
be
compiled
with
SunPro
compiler
SQL
functions
must
now
have
a
immediately
after
the
function
name
no
intervening
space
For
example
user
is
regarded
as
beginning
a
function
call
and
user
is
regarded
as
an
identifier
user
followed
by
a
not
as
a
function
call
1352
D
3
49
Changes
in
release
3
20
0
The
source
distribution
is
done
with
configure
and
Automake
It
will
make
porting
much
easier
The
readline
library
is
included
in
the
distribution
Separate
client
compilation
the
client
code
should
be
very
easy
to
compile
on
systems
which
don
t
have
threads
The
old
Perl
interface
code
is
automatically
compiled
and
installed
Automatic
compiling
of
DBD
will
follow
when
the
new
DBD
code
is
ported
Dynamic
language
support
mysqld
can
now
be
started
with
Swedish
or
English
default
error
messages
New
functions
INSERT
RTRIM
LTRIM
and
FORMAT
mysqldump
now
works
correctly
for
all
field
types
even
AUTO
INCREMENT
The
format
for
SHOW
FIELDS
FROM
tbl
name
is
changed
so
the
Type
column
contains
information
suitable
for
CREATE
TABLE
In
previous
releases
some
CREATE
TABLE
information
had
to
be
patched
when
recreating
tables
Some
parser
bugs
from
3
19
5
BLOB
and
TIMESTAMP
are
corrected
TIMESTAMP
now
returns
different
date
information
depending
on
its
create
length
Changed
parser
to
allow
a
database
table
or
field
name
to
start
with
a
number
or
All
old
C
code
from
Unireg
changed
to
C
and
cleaned
up
This
makes
the
daemon
a
little
smaller
and
easier
to
understand
A
lot
of
small
bug
fixes
done
New
INSTALL
files
not
final
version
and
some
info
regarding
porting
1353
D
4
Changes
in
release
3
19
x
1354
D
4
1
Changes
in
release
3
19
5
Some
new
functions
some
more
optimization
on
joins
Should
now
compile
clean
on
Linux
2
0
x
Added
functions
DATABASE
USER
POW
LOG10
needed
for
ODBC
In
a
WHERE
with
an
ORDER
BY
on
fields
from
only
one
table
the
table
is
now
preferred
as
first
table
in
a
multi
join
HAVING
and
IS
NULL
or
IS
NOT
NULL
now
works
A
group
on
one
column
and
a
sort
on
a
group
function
SUM
AVG
didn
t
work
together
Fixed
mysqldump
Didn
t
send
password
to
server
1355
D
4
2
Changes
in
release
3
19
4
Fixed
horrible
locking
bug
when
inserting
in
one
thread
and
reading
in
another
thread
Fixed
one
off
decimal
bug
1
00
was
output
as
1
0
Added
attribute
Locked
to
process
list
as
info
if
a
query
is
locked
by
another
query
Fixed
full
magic
timestamp
Timestamp
length
may
now
be
14
12
10
8
6
4
or
2
bytes
Sort
on
some
numeric
functions
could
sort
incorrectly
on
last
number
IF
arg
syntax
error
syntax
error
crashed
Added
functions
CEILING
ROUND
EXP
LOG
and
SQRT
Enhanced
BETWEEN
to
handle
strings
1356
D
4
3
Changes
in
release
3
19
3
Fixed
SELECT
with
grouping
on
BLOB
columns
not
to
return
incorrect
BLOB
info
Grouping
sorting
and
distinct
on
BLOB
columns
will
not
yet
work
as
expected
probably
it
will
group
sort
by
the
first
7
characters
in
the
BLOB
Grouping
on
formulas
with
a
fixed
string
size
use
MID
on
a
BLOB
should
work
When
doing
a
full
join
no
direct
keys
on
multiple
tables
with
BLOB
fields
the
BLOB
was
garbage
on
output
Fixed
DISTINCT
with
calculated
columns
1357
E
Known
errors
and
design
deficiencies
in
MySQL
You
cannot
build
in
another
directory
when
using
MIT
pthreads
Since
this
requires
changes
to
MIT
pthreads
we
are
not
likely
to
fix
this
BLOB
values
can
t
reliably
be
used
in
GROUP
BY
or
ORDER
BY
or
DISTINCT
Only
the
first
max
sort
length
bytes
default
1024
are
used
when
comparing
BLOBbs
in
these
cases
This
can
be
changed
with
the
O
max
sort
length
option
to
mysqld
A
workaround
for
most
cases
is
to
use
a
substring
SELECT
DISTINCT
LEFT
blob
2048
FROM
tbl
name
Calculation
is
done
with
BIGINT
or
DOUBLE
both
are
normally
64
bits
long
It
depends
on
the
function
which
precision
one
gets
The
general
rule
is
that
bit
functions
are
done
with
BIGINT
precision
IF
and
ELT
with
BIGINT
or
DOUBLE
precision
and
the
rest
with
DOUBLE
precision
One
should
try
to
avoid
using
bigger
unsigned
long
long
values
than
63
bits
9223372036854775807
for
anything
else
than
bit
fields
All
numeric
types
are
treated
as
fixed
point
fields
That
means
you
must
specify
how
many
decimals
a
floating
point
field
shall
have
All
results
will
be
returned
with
the
correct
number
of
decimals
MySQL
3
23
supports
floating
point
columns
All
string
columns
except
BLOB
and
TEXT
columns
automatically
have
all
trailing
spaces
removed
when
retrieved
For
CHAR
types
this
is
okay
and
may
be
regarded
as
a
feature
according
to
ANSI
SQL92
The
bug
is
that
in
MySQL
VARCHAR
columns
are
treated
the
same
way
You
can
only
have
up
to
255
ENUM
and
SET
columns
in
one
table
An
UPDATE
that
updates
a
key
with
a
WHERE
on
the
same
key
may
fail
because
the
key
is
used
to
search
for
records
and
will
be
found
multiple
times
UPDATE
tbl
name
SET
KEY
KEY
1
WHERE
KEY
100
This
will
be
fixed
in
newer
MySQL
versions
by
not
using
keys
that
contain
fields
that
are
going
to
be
updated
Until
this
fixed
you
can
use
the
current
workaround
mysql
UPDATE
tbl
name
SET
KEY
KEY
1
WHERE
KEY
0
100
This
will
work
because
MySQL
will
not
use
index
on
expressions
in
the
WHERE
clause
safe
mysqld
re
directs
all
messages
from
mysqld
to
the
mysqld
log
One
problem
with
this
is
that
if
you
execute
mysqladmin
refresh
to
close
and
reopen
the
log
stdout
and
stderr
are
still
redirected
to
the
old
log
If
you
use
log
extensively
you
should
edit
safe
mysqld
to
log
to
hostname
err
instead
of
hostname
log
so
you
can
easily
reclaim
the
space
for
the
old
log
by
deleting
the
old
one
and
executing
mysqladmin
refresh
In
the
UPDATE
statement
columns
are
updated
from
left
to
right
If
you
refer
to
a
updated
column
you
will
get
the
updated
value
instead
of
the
original
value
For
example
mysql
UPDATE
tbl
name
SET
KEY
KEY
1
KEY
KEY
1
will
update
KEY
with
2
instead
of
with
1
For
platform
specific
bugs
see
the
sections
about
compiling
and
porting
1358
F
List
of
things
we
want
to
add
to
MySQL
in
the
future
The
TODO
Everything
in
this
list
is
in
the
order
it
will
be
done
If
you
want
to
affect
the
priority
order
please
register
a
license
or
support
us
and
tell
us
what
you
want
to
have
done
more
quickly
See
section
1359
3
MySQL
licensing
and
support
1360
F
1
Things
that
must
done
in
the
real
near
future
Binary
compatible
ISAM
tables
Subqueries
select
id
from
t
where
grp
in
select
grp
from
g
where
u
100
If
you
perform
an
ALTER
TABLE
on
a
table
that
is
symlinked
to
another
disk
create
temporary
tables
on
this
disk
FreeBSD
and
MIT
pthreads
Do
sleeping
threads
take
CPU
Allow
join
on
key
parts
optimization
issue
Automatically
convert
temporary
HEAP
tables
to
NISAM
if
they
get
too
big
At
the
moment
you
get
error
135
or
Table
xxx
is
full
if
you
execute
a
query
which
has
to
use
a
big
temporary
table
Binary
portable
data
tables
a
new
version
of
ISAM
Add
DISTINCT
qualifier
to
COUNT
SUM
Change
conv
blob
to
handle
BLOB
as
a
TEXT
field
Entry
for
DECRYPT
Remember
FOREIGN
key
definitions
in
the
frm
file
Server
side
cursors
Allow
users
to
change
startup
options
Add
ansi
option
to
MySQL
to
change
CONCAT
Don
t
add
automatic
DEFAULT
values
to
columns
Give
an
error
when
using
an
INSERT
that
doesn
t
contain
a
column
that
doesn
t
have
a
DEFAULT
Caching
of
queries
and
results
This
should
be
done
as
a
separated
module
that
examines
each
query
and
if
this
is
query
is
in
the
cache
the
cached
result
should
be
returned
When
one
updates
a
table
one
should
remove
as
few
queries
as
possible
from
the
cache
This
should
give
a
big
speed
bost
on
machines
with
much
RAM
where
queries
are
often
repeated
like
WWW
applications
One
idea
would
be
to
only
cache
queries
of
type
SELECT
CACHED
Fix
libmysql
c
to
allow
two
mysql
query
commands
in
a
row
without
reading
results
or
give
a
nice
error
message
when
one
does
this
Optimize
BIT
type
to
take
1
bit
now
BIT
takes
1
char
Check
why
MIT
pthreads
ctime
doesn
t
work
on
some
FreeBSD
systems
Check
if
locked
threads
take
any
CPU
Add
ORDER
BY
to
update
This
would
be
handy
with
functions
like
generate
id
start
step
Add
an
IMAGE
option
to
LOAD
DATA
INFILE
to
not
update
TIMESTAMP
and
AUTO
INCREMENT
fields
Make
LOAD
DATA
INFILE
understand
a
syntax
like
LOAD
DATA
INFILE
file
name
txt
INTO
TABLE
tbl
name
TEXT
FIELDS
text
field1
text
field2
text
field3
SET
table
field1
concatenate
text
field1
text
field2
table
field3
23
IGNORE
text
field3
Allow
strings
with
MIN
MAX
not
group
functions
These
should
be
synonyms
for
LEAST
GREATEST
Demo
procedure
analyze
Automatic
output
from
mysql
to
netscape
LOCK
DATABASES
with
various
options
NATURAL
JOIN
Change
sort
to
allocate
memory
in
hunks
to
get
better
memory
utilization
DECIMAL
and
NUMERIC
types
can
t
read
exponential
numbers
Field
decimal
store
const
char
from
uint
len
must
be
recoded
to
fix
this
Fix
mysql
cc
to
do
fewer
malloc
calls
when
hashing
field
names
Add
functions
EXPORT
SET
set
column
Y
N
separator
number
of
set
values
where
separator
is
by
default
and
number
of
set
values
is
taken
from
the
set
column
or
is
64
if
set
column
is
an
expression
For
example
EXPORT
SET
9
Y
N
5
Y
N
N
Y
N
Functions
ADD
TO
SET
value
set
and
REMOVE
FROM
SET
value
set
Add
use
of
t1
JOIN
t2
ON
and
t1
JOIN
t2
USING
Currently
you
can
only
use
this
syntax
with
LEFT
JOIN
Add
full
support
for
unsigned
long
long
type
Function
CASE
Many
more
variables
for
show
status
Counts
for
INSERT
DELETE
UPDATE
statements
Records
reads
and
updated
Selects
on
1
table
and
selects
with
joins
Mean
number
of
tables
in
select
Key
buffer
read
write
hits
logical
and
real
ORDER
BY
GROUP
BY
temporary
tables
created
If
you
abort
mysql
in
the
middle
of
a
query
you
should
open
another
connection
and
kill
the
old
running
query
Alternatively
an
attempt
should
be
made
to
detect
this
in
the
server
Add
optimization
to
make
LEFT
JOIN
WHERE
not
null
field
IS
NULL
much
faster
This
is
often
used
to
find
rows
that
don
t
match
Add
a
handler
interface
for
table
information
so
you
can
use
it
as
a
system
table
This
would
be
a
bit
slow
if
you
requested
information
about
all
tables
but
very
flexible
SHOW
INFO
FROM
tbl
name
for
basic
table
information
should
be
implemented
Allow
mysqld
to
support
many
character
sets
at
the
same
time
Add
support
for
UNICODE
NATURAL
JOIN
Oracle
like
CONNECT
BY
PRIOR
to
search
hierarchy
structures
RENAME
DATABASE
mysqladmin
copy
database
new
database
Processlist
should
show
number
of
queries
thread
IGNORE
option
to
the
UPDATE
statement
this
will
delete
all
rows
that
gets
a
dupplicate
key
error
while
updating
select
distinct
a
from
foo
order
by
b
should
not
return
duplicate
rows
if
there
are
different
pairs
of
a
b
Change
the
format
of
DATETIME
to
store
fractions
of
seconds
Add
all
missing
ANSI92
and
ODBC
3
0
types
Change
table
names
from
empty
strings
to
NULL
for
calculated
columns
1361
F
2
Things
that
have
to
be
done
sometime
Implement
a
table
optimizer
by
an
analyze
procedure
call
that
returns
a
table
like
show
fields
with
min
and
max
value
and
the
best
MySQL
type
for
that
expression
Implement
function
get
changed
tables
timeout
table1
table2
Implement
function
LAST
UPDATED
tbl
name
Atomic
updates
This
includes
a
language
that
one
can
even
use
for
a
set
of
stored
procedures
update
items
month
set
items
price
month
price
where
items
id
month
id
Change
reading
through
tables
to
use
memmap
when
possible
Now
only
compressed
tables
use
memmap
Make
a
SQL
standard
GRANT
command
with
MySQL
extensions
Add
a
new
privilege
Show
priv
for
SHOW
commands
Make
the
automatic
timestamp
code
nicer
Add
timestamps
to
the
update
log
with
SET
TIMESTAMP
Optimize
the
autoincrement
code
Use
read
write
mutex
in
some
places
to
get
more
speed
Full
foreign
key
support
One
probably
wants
to
implement
a
procedural
language
first
Simple
views
first
on
one
table
later
on
any
expression
Automatically
close
some
tables
if
a
table
temporary
table
or
temporary
files
gets
error
23
not
enough
open
files
When
one
finds
a
field
change
all
occurrences
of
field
to
Now
this
is
only
done
for
some
simple
cases
Change
all
const
expressions
with
calculated
expressions
if
possible
Optimize
key
expression
At
the
moment
only
key
field
or
key
constant
are
optimized
Join
some
of
the
copy
functions
for
nicer
code
Change
sql
yacc
yy
to
an
inline
parser
to
reduce
its
size
and
get
better
error
messages
5
days
Change
the
parser
to
use
only
one
rule
per
different
number
of
arguments
in
function
Use
of
full
calculation
names
in
the
order
part
For
ACCESS97
UNION
MINUS
INTERSECT
and
FULL
OUTER
JOIN
Currently
only
LEFT
OUTER
JOIN
is
supported
Allow
UNIQUE
on
fields
that
can
be
NULL
SQL
OPTION
MAX
SELECT
TIME
to
put
a
time
limit
on
a
query
Make
the
update
log
to
a
database
Negative
LIMIT
to
retrieve
data
from
the
end
Alarm
around
client
connect
read
write
functions
Make
a
mysqld
version
which
isn
t
multithreaded
3
5
days
Please
note
the
changes
to
safe
mysqld
according
to
FSSTND
which
Debian
tries
to
follow
PID
files
should
go
into
var
run
progname
pid
and
log
files
into
var
log
It
would
be
nice
if
you
could
put
the
DATADIR
in
the
first
declaration
of
pidfile
and
log
so
the
placement
of
these
files
can
be
changed
with
a
single
statement
Better
dynamic
record
layout
to
avoid
fragmentation
UPDATE
SET
blob
read
blob
from
file
my
gif
where
id
1
Allow
sorting
on
RAND
SELECT
email
RAND
AS
ran
FROM
info
ORDER
BY
ran
Allow
a
client
to
request
logging
Add
use
of
zlib
for
gzip
ed
files
to
LOAD
DATA
INFILE
Fix
sorting
and
grouping
of
BLOB
columns
partly
solved
now
Stored
procedures
This
is
currently
not
regarded
to
be
very
important
as
stored
procedures
are
not
very
standardized
yet
Another
problem
is
that
true
stored
procedures
make
it
much
harder
for
the
optimizer
and
in
many
cases
the
result
is
slower
than
before
We
will
on
the
other
hand
add
a
simple
atomic
update
language
that
can
be
used
to
write
loops
and
such
in
the
MySQL
server
Change
to
use
semaphores
when
counting
threads
One
should
first
implement
a
semaphore
library
to
MIT
pthreads
Don
t
assign
a
new
AUTO
INCREMENT
value
when
one
sets
a
column
to
0
Use
NULL
instead
Add
full
support
for
JOIN
with
parentheses
Reuse
threads
for
system
with
a
lot
of
connections
Time
is
given
according
to
amount
of
work
not
real
time
TcX
s
main
business
is
the
use
of
MySQL
not
the
development
of
it
But
since
TcX
is
a
very
flexible
company
we
have
put
a
lot
of
resources
into
the
development
of
MySQL
1362
F
3
Some
things
we
don
t
have
any
plans
to
do
Transactions
with
rollback
we
mainly
do
SELECTs
and
because
we
don
t
do
transactions
we
can
be
much
quicker
on
everything
else
We
will
support
some
kind
of
atomic
operations
on
multiple
tables
though
Currently
atomic
operations
can
be
done
with
LOCK
TABLES
UNLOCK
TABLES
but
we
will
make
this
more
automatic
in
the
future
1363
G
Comments
on
porting
to
other
systems
A
working
Posix
thread
library
is
needed
for
the
server
On
Solaris
2
5
we
use
SUN
PThreads
the
native
thread
support
in
2
4
and
earlier
versions
are
not
good
enough
and
on
Linux
we
use
LinuxThreads
by
Xavier
Leroy
1364
Xavier
Leroy
inria
fr
The
hard
part
of
porting
to
a
new
Unix
variant
without
good
native
thread
support
is
probably
to
port
MIT
pthreads
See
mit
pthreads
README
and
1365
Programming
POSIX
Threads
The
MySQL
distribution
includes
a
patched
version
of
Provenzano
s
Pthreads
from
MIT
see
1366
MIT
Pthreads
web
page
This
can
be
used
for
some
operating
systems
that
do
not
have
POSIX
threads
It
is
also
possible
to
use
another
user
level
thread
package
named
FSU
Pthreads
see
1367
FSU
Pthreads
home
page
This
implementation
is
being
used
for
the
SCO
port
See
the
thr
lock
c
and
thr
alarm
c
programs
in
the
mysys
directory
for
some
tests
examples
of
these
problems
Both
the
server
and
the
client
need
a
working
C
compiler
we
use
gcc
and
have
tried
SparcWorks
Another
compiler
that
is
known
to
work
is
the
Irix
cc
To
compile
only
the
client
use
configure
without
server
There
is
currently
no
support
for
only
compiling
the
server
Nor
is
it
likly
to
be
added
unless
someone
has
a
good
reason
for
it
If
you
want
need
to
change
any
Makefile
or
the
configure
script
you
must
get
Automake
and
Autoconf
We
have
used
the
automake
1
2
and
autoconf
2
12
distributions
All
steps
needed
to
remake
everything
from
the
most
basic
files
bin
rm
deps
P
bin
rm
f
config
cache
aclocal
autoheader
aclocal
automake
autoconf
configure
with
debug
prefix
your
installation
directory
The
makefiles
generated
above
need
GNU
make
3
75
or
newer
called
gmake
below
gmake
clean
all
install
init
db
If
you
run
into
problems
with
a
new
port
you
may
have
to
do
some
debugging
of
MySQL
See
section
1368
G
1
Debugging
a
MySQL
server
Note
Before
you
start
debugging
mysqld
first
get
the
test
programs
mysys
thr
alarm
and
mysys
thr
lock
to
work
This
will
ensure
that
your
thread
installation
has
even
a
remote
chance
to
work
1369
G
1
Debugging
a
MySQL
server
If
you
are
using
some
functionality
that
is
very
new
in
MySQL
you
can
try
to
run
mysqld
with
the
skip
new
which
will
disable
all
new
potentially
unsafe
functionality
or
with
safe
mode
which
disables
a
lot
of
optimization
that
may
cause
problems
See
section
1370
17
1
What
to
do
if
MySQL
keeps
crashing
If
mysqld
doesn
t
want
to
start
you
should
check
that
you
don
t
have
any
my
cnf
file
that
interferes
with
your
setup
You
can
check
your
my
cnf
arguments
with
mysqld
print
defaults
and
avoid
using
them
by
starting
with
mysqld
no
defaults
If
you
have
some
very
specific
problem
you
can
always
try
to
debug
MySQL
To
do
this
you
must
configure
MySQL
with
the
option
with
debug
You
can
check
whether
or
not
MySQL
was
compiled
with
debugging
by
doing
mysqld
help
If
the
debug
flag
is
listed
with
the
options
then
you
have
debugging
enabled
mysqladmin
ver
also
lists
the
mysqld
version
as
mysql
debug
in
this
case
If
you
are
using
gcc
or
egcs
the
recommended
configure
line
is
CC
gcc
CFLAGS
O6
CXX
gcc
CXXFLAGS
O6
felide
constructors
fno
exceptions
fno
rtti
configure
prefix
usr
local
mysql
with
debug
This
will
avoid
problems
with
the
libstdc
library
and
with
C
exceptions
If
you
can
cause
the
mysqld
server
to
crash
quickly
you
can
try
to
create
a
trace
file
of
this
Start
the
mysqld
server
with
a
trace
log
in
tmp
mysql
trace
The
log
file
will
get
very
BIG
mysqld
debug
log
or
you
can
start
it
with
mysqld
debug
d
info
error
query
general
where
O
tmp
mysql
trace
which
only
prints
information
with
the
most
interesting
tags
When
you
configure
MySQL
for
debugging
you
automatically
enable
a
lot
of
extra
safety
check
functions
that
monitor
the
health
of
mysqld
If
they
find
something
unexpected
an
entry
will
be
written
to
stderr
which
safe
mysqld
directs
to
the
error
log
This
also
means
that
if
you
are
having
some
unexpected
problems
with
MySQL
and
are
using
a
source
distribution
the
first
thing
you
should
do
is
to
configure
MySQL
for
debugging
The
second
thing
of
course
is
to
send
mail
to
1371
mysql
lists
mysql
com
and
ask
for
help
Please
use
the
mysqlbug
script
for
all
bug
reports
or
questions
regarding
the
MySQL
version
you
are
using
On
most
system
you
can
also
start
mysqld
from
gdb
to
get
more
information
if
mysqld
crashes
With
some
gdb
versions
on
Linux
you
must
use
run
one
thread
if
you
want
to
be
able
to
debug
mysqld
threads
In
this
case
you
can
only
have
one
thread
active
at
a
time
If
you
are
using
gdb
4
17
x
on
Linux
you
should
install
a
gdb
file
with
the
following
information
in
your
current
directory
set
print
sevenbit
off
handle
SIGUSR1
nostop
noprint
handle
SIGUSR2
nostop
noprint
handle
SIGWAITING
nostop
noprint
handle
SIGLWP
nostop
noprint
handle
SIGPIPE
nostop
handle
SIGALRM
nostop
handle
SIGHUP
nostop
handle
SIGTERM
nostop
noprint
Here
follows
an
example
how
to
debug
mysqld
shell
gdb
usr
local
libexec
mysqld
gdb
run
back
Do
this
when
mysqld
crashes
info
locals
up
info
locals
up
until
you
get
some
information
about
local
variables
quit
Include
the
above
output
in
a
mail
generated
with
mysqlbug
and
mail
this
to
mysql
lists
mysql
com
If
mysqld
hangs
you
can
try
to
use
some
system
tools
like
strace
or
usr
proc
bin
pstack
to
examine
where
mysqld
has
hanged
If
mysqld
starts
to
eat
up
CPU
or
memory
or
if
it
hangs
you
can
use
mysqladmin
processlist
status
to
find
out
if
someone
is
executing
some
query
that
takes
a
long
time
It
may
be
a
good
idea
to
run
mysqladmin
i10
processlist
status
in
some
window
if
you
are
experiencing
performance
problems
or
problems
when
new
clients
can
t
connect
If
mysqld
dies
or
hangs
you
should
start
mysqld
with
log
When
mysqld
dies
again
you
can
check
in
the
log
file
for
the
query
that
killed
mysqld
Note
that
before
starting
mysqld
with
log
you
should
check
all
your
tables
with
isamchk
See
section
1372
13
Maintaining
a
MySQL
installation
If
you
are
using
a
log
file
mysqld
log
you
should
check
the
hostname
log
files
that
you
can
find
in
the
database
directory
for
any
queries
that
could
cause
a
problem
Try
the
command
EXPLAIN
on
all
SELECT
statements
that
takes
a
long
time
to
ensure
that
mysqld
are
using
indexes
properly
See
section
1373
7
21
EXPLAIN
syntax
Get
information
about
a
SELECT
You
should
also
test
complicated
queries
that
didn
t
complete
within
the
mysql
command
line
tool
If
you
find
the
text
mysqld
restarted
in
the
error
log
file
normally
named
hostname
err
you
have
probably
found
a
query
that
causes
mysqld
to
fail
If
this
happens
you
should
check
all
your
tables
with
isamchk
see
section
1374
13
Maintaining
a
MySQL
installation
and
test
the
queries
in
the
MySQL
log
files
if
someone
doesn
t
work
If
you
find
such
a
query
try
first
upgrading
to
the
newest
MySQL
version
If
this
doesn
t
help
and
you
can
t
find
anything
in
the
mysql
mail
archive
you
should
report
the
bug
to
1375
mysql
lists
mysql
com
Links
to
mail
archives
are
available
at
the
online
1376
MySQL
documentation
page
If
you
get
corrupted
tables
or
if
mysqld
always
fails
after
some
update
commands
you
can
test
if
this
bug
is
reproducible
by
doing
the
following
Stop
the
mysqld
daemon
with
mysqladmin
shutdown
Check
all
tables
with
isamchk
s
database
ISM
Repair
any
wrong
tables
with
isamchk
r
database
table
ISM
Start
mysqld
with
log
update
When
you
have
got
a
crashed
table
stop
the
mysqld
server
Restore
the
backup
Restart
the
mysqld
server
without
log
update
Re
execute
the
commands
with
mysql
update
log
The
update
log
is
saved
in
the
MySQL
database
directory
with
the
name
your
hostname
If
the
tables
are
now
again
corrupted
you
have
found
reproducible
bug
in
the
ISAM
code
ftp
the
tables
the
update
log
to
1377
ftp
www
mysql
com
pub
mysql
secret
and
we
will
fix
this
as
soon
as
possible
The
command
mysqladmin
debug
will
dump
some
information
about
locks
in
use
used
memory
and
query
usage
to
the
mysql
log
file
This
may
help
solve
some
problems
This
command
also
provides
some
useful
information
even
if
you
haven
t
compiled
MySQL
for
debugging
If
the
problem
is
that
some
tables
are
getting
slower
and
slower
you
should
try
to
repair
the
tables
with
isamchk
to
optimize
the
table
layout
You
should
also
check
the
slow
queries
with
EXPLAIN
See
section
1378
13
Maintaining
a
MySQL
installation
You
should
also
read
the
OS
specific
section
in
this
manual
for
problems
that
may
be
unique
to
your
environment
See
section
1379
4
11
System
specific
issues
If
you
are
using
the
Perl
DBI
interface
you
can
turn
on
debugging
information
by
using
the
trace
method
or
by
setting
the
DBI
TRACE
environment
variable
See
section
1380
19
5
2
The
DBI
interface
1381
G
2
Debugging
a
MySQL
client
To
be
able
to
debug
a
MySQL
client
with
the
integrated
debug
package
you
should
configure
MySQL
with
with
debug
See
section
1382
4
7
3
Typical
configure
options
Before
running
a
client
you
should
set
the
MYSQL
DEBUG
environment
variable
shell
MYSQL
DEBUG
d
t
O
tmp
client
trace
shell
export
MYSQL
DEBUG
This
causes
clients
to
generate
a
trace
file
in
tmp
client
trace
If
you
have
problems
with
your
own
client
code
you
should
attempt
to
connect
to
the
server
and
run
your
query
using
a
client
that
is
known
to
work
Do
this
by
running
mysql
in
debugging
mode
assuming
you
have
compiled
MySQL
with
debugging
on
shell
mysql
debug
d
t
O
tmp
client
trace
This
will
provide
useful
information
in
case
you
mail
a
bug
report
See
section
1383
2
3
How
to
report
bugs
or
problems
If
your
client
crashes
at
some
legal
looking
code
you
should
check
that
your
mysql
h
include
file
matches
your
mysql
library
file
A
very
common
mistake
is
to
use
an
old
mysql
h
file
from
an
old
MySQL
installation
with
new
MySQL
library
1384
G
3
Comments
about
RTS
threads
I
have
tried
to
use
the
RTS
thread
packages
with
MySQL
but
stumbled
on
the
following
problems
They
use
old
version
of
a
lot
of
POSIX
calls
and
it
is
very
tedious
to
make
wrappers
for
all
functions
I
am
inclined
to
think
that
it
would
be
easier
to
change
the
thread
libraries
to
the
newest
POSIX
specification
Some
wrappers
are
already
written
See
mysys
my
pthread
c
for
more
info
At
least
the
following
should
be
changed
pthread
get
specific
should
use
one
argument
sigwait
should
take
two
arguments
A
lot
of
functions
at
least
pthread
cond
wait
pthread
cond
timedwait
should
return
the
error
code
on
error
Now
they
return
1
and
set
errno
Another
problem
is
that
user
level
threads
use
the
ALRM
signal
and
this
aborts
a
lot
of
functions
read
write
open
MySQL
should
do
a
retry
on
interrupt
on
all
of
these
but
it
is
not
that
easy
to
verify
it
The
biggest
unsolved
problem
is
the
following
To
get
thread
level
alarms
I
changed
mysys
thr
alarm
c
to
wait
between
alarms
with
pthread
cond
timedwait
but
this
aborts
with
error
EINTR
I
tried
to
debug
the
thread
library
as
to
why
this
happens
but
couldn
t
find
any
easy
solution
If
someone
wants
to
try
MySQL
with
RTS
threads
I
suggest
the
following
Change
functions
MySQL
uses
from
the
thread
library
to
POSIX
This
shouldn
t
take
that
long
Compile
all
libraries
with
the
DHAVE
rts
threads
Compile
thr
alarm
If
there
are
some
small
differences
in
the
implementation
they
may
be
fixed
by
changing
my
pthread
h
and
my
pthread
c
Run
thr
alarm
If
it
runs
without
any
warning
error
or
aborted
messages
you
are
on
the
right
track
Here
follows
a
successful
run
on
Solaris
Main
thread
1
Tread
0
5
started
Thread
5
Waiting
process
alarm
Tread
1
6
started
Thread
6
Waiting
process
alarm
process
alarm
thread
alarm
Thread
6
Slept
for
1
1
sec
Thread
6
Waiting
process
alarm
process
alarm
thread
alarm
Thread
6
Slept
for
2
2
sec
Thread
6
Simulation
of
no
alarm
needed
Thread
6
Slept
for
0
3
sec
Thread
6
Waiting
process
alarm
process
alarm
thread
alarm
Thread
6
Slept
for
4
4
sec
Thread
6
Waiting
process
alarm
thread
alarm
Thread
5
Slept
for
10
10
sec
Thread
5
Waiting
process
alarm
process
alarm
thread
alarm
Thread
6
Slept
for
5
5
sec
Thread
6
Waiting
process
alarm
process
alarm
thread
alarm
Thread
5
Slept
for
0
1
sec
end
1385
G
4
Differences
between
different
thread
packages
MySQL
is
very
dependent
on
the
thread
package
used
So
when
choosing
a
good
platform
for
MySQL
the
thread
package
is
very
important
There
are
at
least
three
types
of
thread
packages
User
threads
in
a
single
process
Thread
switching
is
managed
with
alarms
and
the
threads
library
manages
all
non
thread
safe
functions
with
locks
Read
write
and
select
operations
are
usually
managed
with
a
thread
specific
select
that
switches
to
another
thread
if
the
running
threads
have
to
wait
for
data
If
the
user
thread
packages
are
integrated
in
the
standard
libs
FreeBSD
and
BSDI
threads
the
thread
package
requires
less
overhead
than
thread
packages
that
have
to
map
all
unsafe
calls
MIT
pthreads
FSU
Pthreads
and
RTS
threads
In
some
environments
for
example
SCO
all
system
calls
are
thread
safe
so
the
mapping
can
be
done
very
easily
FSU
Pthreads
on
SCO
Downside
All
mapped
calls
take
a
little
time
and
it
s
quite
tricky
to
be
able
to
handle
all
situations
There
are
usually
also
some
system
calls
that
are
not
handled
by
the
thread
package
like
MIT
pthreads
and
sockets
Thread
scheduling
isn
t
always
optimal
User
threads
in
separate
processes
Thread
switching
is
done
by
the
kernel
and
all
data
are
shared
between
threads
The
thread
package
manages
the
standard
thread
calls
to
allow
sharing
data
between
threads
LinuxThreads
is
using
this
method
Downside
Lots
of
processes
Thread
creating
is
slow
If
one
thread
dies
the
rest
are
usually
left
hanging
and
you
must
kill
them
all
before
restarting
Thread
switching
is
somewhat
expensive
Kernel
threads
Thread
switching
is
handled
by
the
thread
library
or
the
kernel
and
is
very
fast
Everything
is
done
in
one
process
but
on
some
systems
ps
may
show
the
different
threads
If
one
thread
aborts
the
whole
process
aborts
Most
system
calls
are
thread
safe
and
should
require
very
little
overhead
Solaris
HP
UX
AIX
and
OSF1
have
kernel
threads
In
some
systems
kernel
threads
are
managed
by
integrating
user
level
threads
in
the
system
libraries
In
such
cases
the
thread
switching
can
only
be
done
by
the
thread
library
and
the
kernel
isn
t
really
thread
aware
1386
H
Description
of
MySQL
regular
expression
syntax
A
regular
expression
regex
is
a
powerful
way
of
specifying
a
complex
search
MySQL
uses
regular
Henry
Spencer
s
inplementation
of
regular
expressions
And
that
is
aimed
to
conform
to
POSIX
1003
2
MySQL
uses
the
extended
version
This
is
a
simplistic
reference
that
skips
the
details
To
get
more
exact
information
see
Henry
Spencer
s
regex
7
manual
page
that
is
included
in
the
source
distribution
See
section
1387
C
Contributors
to
MySQL
A
regular
expression
describes
a
set
of
strings
The
simplest
regexp
is
one
that
has
no
special
characters
in
it
For
example
the
regexp
hello
matches
hello
and
nothing
else
Nontrivial
regular
expressions
use
certain
special
constructs
so
that
they
can
match
more
than
one
string
For
example
the
regexp
hello
word
matches
either
the
string
hello
or
the
string
word
As
a
more
complex
example
the
regexp
B
an
s
matches
any
of
the
strings
Bananas
Baaaaas
Bs
and
any
other
string
starting
with
a
B
ending
with
an
s
and
containing
any
number
of
a
or
n
characters
in
between
A
regular
expression
may
use
any
of
the
following
special
characters
constructs
Match
the
beginning
of
a
string
mysql
select
fo
nfo
REGEXP
fo
0
mysql
select
fofo
REGEXP
fo
1
Match
the
end
of
a
string
mysql
select
fo
no
REGEXP
fo
no
1
mysql
select
fo
no
REGEXP
fo
0
Match
any
character
including
newline
mysql
select
fofo
REGEXP
f
1
mysql
select
fo
nfo
REGEXP
f
1
a
Match
any
sequence
of
zero
or
more
a
characters
mysql
select
Ban
REGEXP
Ba
n
1
mysql
select
Baaan
REGEXP
Ba
n
1
mysql
select
Bn
REGEXP
Ba
n
1
a
Match
any
sequence
of
one
or
more
a
characters
mysql
select
Ban
REGEXP
Ba
n
1
mysql
select
Bn
REGEXP
Ba
n
0
a
Match
either
zero
or
one
a
character
mysql
select
Bn
REGEXP
Ba
n
1
mysql
select
Ban
REGEXP
Ba
n
1
mysql
select
Baan
REGEXP
Ba
n
0
de
abc
Match
either
of
the
sequences
de
or
abc
mysql
select
pi
REGEXP
pi
apa
1
mysql
select
axe
REGEXP
pi
apa
0
mysql
select
apa
REGEXP
pi
apa
1
mysql
select
apa
REGEXP
pi
apa
1
mysql
select
pi
REGEXP
pi
apa
1
mysql
select
pix
REGEXP
pi
apa
0
abc
Match
zero
or
more
instances
of
the
sequence
abc
mysql
select
pi
REGEXP
pi
1
mysql
select
pip
REGEXP
pi
0
mysql
select
pipi
REGEXP
pi
1
1
2
3
The
is
a
more
general
way
of
writing
regexps
that
match
many
occurrences
of
the
previous
atom
a
Can
be
written
as
a
0
a
Can
be
written
as
a
1
a
Can
be
written
as
a
0
1
To
be
more
precise
an
atom
followed
by
a
bound
containing
one
integer
i
and
no
comma
matches
a
sequence
of
exactly
i
matches
of
the
atom
An
atom
followed
by
a
bound
containing
one
integer
i
and
a
comma
matches
a
sequence
of
i
or
more
matches
of
the
atom
An
atom
followed
by
a
bound
containing
two
integers
i
and
j
matches
a
sequence
of
i
through
j
inclusive
matches
of
the
atom
Both
arguments
must
0
value
RE
DUP
MAX
default
255
If
there
are
two
arguments
the
second
must
be
greater
than
or
equal
to
the
first
a
dX
a
dX
Matches
any
character
which
is
or
is
not
if
is
used
either
a
b
c
d
or
X
To
include
a
literal
character
it
must
immediately
follow
the
opening
bracket
To
include
a
literal
character
it
must
be
written
first
or
last
So
0
9
matches
any
decimal
digit
Any
character
that
does
not
have
a
defined
meaning
inside
a
pair
has
no
special
meaning
and
matches
only
itself
mysql
select
aXbc
REGEXP
a
dXYZ
1
mysql
select
aXbc
REGEXP
a
dXYZ
0
mysql
select
aXbc
REGEXP
a
dXYZ
1
mysql
select
aXbc
REGEXP
a
dXYZ
0
mysql
select
gheis
REGEXP
a
dXYZ
1
mysql
select
gheisa
REGEXP
a
dXYZ
0
characters
The
sequence
of
characters
of
that
collating
element
The
sequence
is
a
single
element
of
the
bracket
expression
s
list
A
bracket
expression
containing
a
multi
character
collating
element
can
thus
match
more
than
one
character
e
g
if
the
collating
sequence
includes
a
ch
collating
element
then
the
regular
expression
ch
c
matches
the
first
five
characters
of
chchcc
character
class
An
equivalence
class
standing
for
the
sequences
of
characters
of
all
collating
elements
equivalent
to
that
one
including
itself
For
example
if
o
and
are
the
members
of
an
equivalence
class
then
o
and
o
are
all
synonymous
An
equivalence
class
may
not
be
an
endpoint
of
a
range
character
class
Within
a
bracket
expression
the
name
of
a
character
class
enclosed
in
and
stands
for
the
list
of
all
characters
belonging
to
that
class
Standard
character
class
names
are
alnum
digit
punct
alpha
graph
space
blank
lower
upper
cntrl
print
xdigit
These
stand
for
the
character
classes
defined
in
the
ctype
3
manual
page
A
locale
may
provide
others
A
character
class
may
not
be
used
as
an
endpoint
of
a
range
mysql
select
justalnums
REGEXP
alnum
1
mysql
select
REGEXP
alnum
0
These
match
the
null
string
at
the
beginning
and
end
of
a
word
respectively
A
word
is
defined
as
a
sequence
of
word
characters
which
is
neither
preceded
nor
followed
by
word
characters
A
word
character
is
an
alnum
character
as
defined
by
ctype
3
or
an
underscore
mysql
select
a
word
a
REGEXP
word
1
mysql
select
a
xword
a
REGEXP
word
0
mysql
select
weeknights
REGEXP
wee
week
knights
nights
1
1388
I
What
is
Unireg
Unireg
is
our
tty
interface
builder
but
it
uses
a
low
level
connection
to
our
NISAM
which
is
used
by
MySQL
and
because
of
this
it
is
very
quick
It
has
existed
since
1979
on
Unix
in
C
since
1986
Unireg
has
the
following
components
One
table
viewer
with
updates
browsing
Multi
table
viewer
with
one
scrolling
region
Table
creator
With
lots
of
column
tags
you
can
t
create
with
MySQL
This
is
WYSIWYG
for
a
tty
You
design
a
screen
and
Unireg
prompts
for
the
column
specification
Report
generator
A
lot
of
utilities
quick
export
import
of
tables
to
from
text
files
analysis
of
table
contents
Powerful
multi
table
updates
which
we
use
a
lot
with
a
BASIC
like
language
with
LOTS
of
functions
Dynamic
languages
at
present
in
Swedish
and
Finnish
If
somebody
wants
an
English
version
there
are
a
few
files
that
would
have
to
be
translated
The
ability
to
run
updates
interactively
or
in
a
batch
Emacs
like
key
definitions
with
keyboard
macros
All
this
in
a
binary
of
800K
The
convform
utility
Converts
frm
and
text
files
between
different
character
sets
The
pack
isam
utility
Packs
a
NISAM
table
makes
it
50
80
smaller
The
table
can
be
read
by
MySQL
like
an
ordinary
table
Only
one
record
has
to
be
decompressed
per
access
Cannot
handle
BLOB
or
TEXT
columns
or
updates
yet
We
update
most
of
our
production
databases
with
the
Unireg
interface
and
serve
web
pages
through
MySQL
and
in
some
extreme
cases
the
Unireg
report
generator
Unireg
takes
about
3M
of
disk
space
and
works
on
at
least
the
following
platforms
SunOS
4
x
Solaris
Linux
HP
UX
ICL
Unix
DNIX
SCO
and
MS
DOS
Unireg
is
currently
only
available
in
Swedish
and
Finnish
The
price
tag
for
Unireg
is
10
000
Swedish
kr
about
1500
US
but
this
includes
support
Unireg
is
distributed
as
a
binary
But
all
the
ISAM
sources
can
be
found
in
MySQL
Usually
we
compile
the
binary
for
the
customer
at
their
site
All
new
development
is
concentrated
to
MySQL
1389
J
The
MySQL
server
license
for
non
Microsoft
operating
systems
MySQL
FREE
PUBLIC
LICENSE
Version
4
March
5
1995
Copyright
C
1995
1996
TcX
AB
Monty
Program
KB
Detron
HB
Stockholm
SWEDEN
Helsingfors
FINLAND
and
Uppsala
SWEDEN
All
rights
reserved
NOTE
This
license
is
not
the
same
as
any
of
the
GNU
Licenses
published
by
the
Free
Software
Foundation
Its
terms
are
substantially
different
from
those
of
the
GNU
Licenses
If
you
are
familiar
with
the
GNU
Licenses
please
read
this
license
with
extra
care
This
License
applies
to
the
computer
program
known
as
MySQL
The
Program
below
refers
to
such
program
and
a
work
based
on
the
Program
means
either
the
Program
or
any
derivative
work
of
the
Program
as
defined
in
the
United
States
Copyright
Act
of
1976
such
as
a
translation
or
a
modification
The
Program
is
a
copyrighted
work
whose
copyright
is
held
by
TcX
Datakonsult
AB
and
Monty
Program
KB
and
Detron
HB
This
License
does
not
apply
when
running
MySQL
on
any
Microsoft
operating
system
Microsoft
operating
systems
include
all
versions
of
Microsoft
Windows
NT
and
Microsoft
Windows
BY
MODIFYING
OR
DISTRIBUTING
THE
PROGRAM
OR
ANY
WORK
BASED
ON
THE
PROGRAM
YOU
INDICATE
YOUR
ACCEPTANCE
OF
THIS
LICENSE
TO
DO
SO
AND
ALL
ITS
TERMS
AND
CONDITIONS
FOR
COPYING
DISTRIBUTING
OR
MODIFYING
THE
PROGRAM
OR
WORKS
BASED
ON
IT
NOTHING
OTHER
THAN
THIS
LICENSE
GRANTS
YOU
PERMISSION
TO
MODIFY
OR
DISTRIBUTE
THE
PROGRAM
OR
ITS
DERIVATIVE
WORKS
THESE
ACTIONS
ARE
PROHIBITED
BY
LAW
IF
YOU
DO
NOT
ACCEPT
THESE
TERMS
AND
CONDITIONS
DO
NOT
MODIFY
OR
DISTRIBUTE
THE
PROGRAM
1
Licenses
Licensor
hereby
grants
you
the
following
rights
provided
that
you
comply
with
all
of
the
restrictions
set
forth
in
this
License
and
provided
further
that
you
distribute
an
unmodified
copy
of
this
License
with
the
Program
1
You
may
copy
and
distribute
literal
i
e
verbatim
copies
of
the
Program
s
source
code
as
you
receive
it
throughout
the
world
in
any
medium
2
You
may
modify
the
Program
create
works
based
on
the
Program
and
distribute
copies
of
such
throughout
the
world
in
any
medium
2
Restrictions
This
license
is
subject
to
the
following
restrictions
1
Distribution
of
the
Program
or
any
work
based
on
the
Program
by
a
commercial
organization
to
any
third
party
is
prohibited
if
any
payment
is
made
in
connection
with
such
distribution
whether
directly
as
in
payment
for
a
copy
of
the
Program
or
indirectly
as
in
payment
for
some
service
related
to
the
Program
or
payment
for
some
product
or
service
that
includes
a
copy
of
the
Program
without
charge
these
are
only
examples
and
not
an
exhaustive
enumeration
of
prohibited
activities
However
the
following
methods
of
distribution
involving
payment
shall
not
in
and
of
themselves
be
a
violation
of
this
restriction
1
Posting
the
Program
on
a
public
access
information
storage
and
retrieval
service
for
which
a
fee
is
received
for
retrieving
information
such
as
an
on
line
service
provided
that
the
fee
is
not
content
dependent
i
e
the
fee
would
be
the
same
for
retrieving
the
same
volume
of
information
consisting
of
random
data
2
Distributing
the
Program
on
a
CD
ROM
provided
that
the
files
containing
the
Program
are
reproduced
entirely
and
verbatim
on
such
CD
ROM
and
provided
further
that
all
information
on
such
CD
ROM
be
redistributable
for
non
commercial
purposes
without
charge
2
Activities
other
than
copying
distribution
and
modification
of
the
Program
are
not
subject
to
this
License
and
they
are
outside
its
scope
Functional
use
running
of
the
Program
is
not
restricted
and
any
output
produced
through
the
use
of
the
Program
is
subject
to
this
license
only
if
its
contents
constitute
a
work
based
on
the
Program
independent
of
having
been
made
by
running
the
Program
3
You
must
meet
all
of
the
following
conditions
with
respect
to
the
distribution
of
any
work
based
on
the
Program
1
If
you
have
modified
the
Program
you
must
cause
your
work
to
carry
prominent
notices
stating
that
you
have
modified
the
Program
s
files
and
the
date
of
any
change
2
You
must
cause
any
work
that
you
distribute
or
publish
that
in
whole
or
in
part
contains
or
is
derived
from
the
Program
or
any
part
thereof
to
be
licensed
as
a
whole
and
at
no
charge
to
all
third
parties
under
the
terms
of
this
License
3
If
the
modified
program
normally
reads
commands
interactively
when
run
you
must
cause
it
at
each
time
the
modified
program
commences
operation
to
print
or
display
an
announcement
including
an
appropriate
copyright
notice
and
a
notice
that
there
is
no
warranty
or
else
saying
that
you
provide
a
warranty
Such
notice
must
also
state
that
users
may
redistribute
the
Program
only
under
the
conditions
of
this
License
and
tell
the
user
how
to
view
the
copy
of
this
License
included
with
the
Program
Exception
if
the
Program
itself
is
interactive
but
does
not
normally
print
such
an
announcement
your
work
based
on
the
Program
is
not
required
to
print
an
announcement
4
You
must
accompany
any
such
work
based
on
the
Program
with
the
complete
corresponding
machine
readable
source
code
delivered
on
a
medium
customarily
used
for
software
interchange
The
source
code
for
a
work
means
the
preferred
form
of
the
work
for
making
modifications
to
it
For
an
executable
work
complete
source
code
means
all
the
source
code
for
all
modules
it
contains
plus
any
associated
interface
definition
files
plus
the
scripts
used
to
control
compilation
and
installation
of
the
executable
code
However
the
source
code
distributed
need
not
include
anything
that
is
normally
distributed
in
either
source
or
binary
form
with
the
major
components
compiler
kernel
and
so
on
of
the
operating
system
on
which
the
executable
runs
unless
that
component
itself
accompanies
the
executable
code
5
If
you
distribute
any
written
or
printed
material
at
all
with
the
Program
or
any
work
based
on
the
Program
such
material
must
include
either
a
written
copy
of
this
License
or
a
prominent
written
indication
that
the
Program
or
the
work
based
on
the
Program
is
covered
by
this
License
and
written
instructions
for
printing
and
or
displaying
the
copy
of
the
License
on
the
distribution
medium
6
You
may
not
impose
any
further
restrictions
on
the
recipient
s
exercise
of
the
rights
granted
herein
If
distribution
of
executable
or
object
code
is
made
by
offering
the
equivalent
ability
to
copy
from
a
designated
place
then
offering
equivalent
ability
to
copy
the
source
code
from
the
same
place
counts
as
distribution
of
the
source
code
even
though
third
parties
are
not
compelled
to
copy
the
source
code
along
with
the
object
code
3
Reservation
of
Rights
No
rights
are
granted
to
the
Program
except
as
expressly
set
forth
herein
You
may
not
copy
modify
sublicense
or
distribute
the
Program
except
as
expressly
provided
under
this
License
Any
attempt
otherwise
to
copy
modify
sublicense
or
distribute
the
Program
is
void
and
will
automatically
terminate
your
rights
under
this
License
However
parties
who
have
received
copies
or
rights
from
you
under
this
License
will
not
have
their
licenses
terminated
so
long
as
such
parties
remain
in
full
compliance
4
Other
Restrictions
If
the
distribution
and
or
use
of
the
Program
is
restricted
in
certain
countries
for
any
reason
Licensor
may
add
an
explicit
geographical
distribution
limitation
excluding
those
countries
so
that
distribution
is
permitted
only
in
or
among
countries
not
thus
excluded
In
such
case
this
License
incorporates
the
limitation
as
if
written
in
the
body
of
this
License
5
Limitations
THE
PROGRAM
IS
PROVIDED
TO
YOU
AS
IS
WITHOUT
WARRANTY
THERE
IS
NO
WARRANTY
FOR
THE
PROGRAM
EITHER
EXPRESSED
OR
IMPLIED
INCLUDING
BUT
NOT
LIMITED
TO
THE
IMPLIED
WARRANTIES
OF
MERCHANTABILITY
AND
FITNESS
FOR
A
PARTICULAR
PURPOSE
AND
NONINFRINGEMENT
OF
THIRD
PARTY
RIGHTS
THE
ENTIRE
RISK
AS
TO
THE
QUALITY
AND
PERFORMANCE
OF
THE
PROGRAM
IS
WITH
YOU
SHOULD
THE
PROGRAM
PROVE
DEFECTIVE
YOU
ASSUME
THE
COST
OF
ALL
NECESSARY
SERVICING
REPAIR
OR
CORRECTION
IN
NO
EVENT
UNLESS
REQUIRED
BY
APPLICABLE
LAW
OR
AGREED
TO
IN
WRITING
WILL
LICENSOR
OR
ANY
OTHER
PARTY
WHO
MAY
MODIFY
AND
OR
REDISTRIBUTE
THE
PROGRAM
AS
PERMITTED
ABOVE
BE
LIABLE
TO
YOU
FOR
DAMAGES
INCLUDING
ANY
GENERAL
SPECIAL
INCIDENTAL
OR
CONSEQUENTIAL
DAMAGES
ARISING
OUT
OF
THE
USE
OR
INABILITY
TO
USE
THE
PROGRAM
INCLUDING
BUT
NOT
LIMITED
TO
LOSS
OF
DATA
OR
DATA
BEING
RENDERED
INACCURATE
OR
LOSSES
SUSTAINED
BY
YOU
OR
THIRD
PARTIES
OR
A
FAILURE
OF
THE
PROGRAM
TO
OPERATE
WITH
ANY
OTHER
PROGRAMS
EVEN
IF
SUCH
HOLDER
OR
OTHER
PARTY
HAS
BEEN
ADVISED
OF
THE
POSSIBILITY
OF
SUCH
DAMAGES
1390
K
The
MySQL
license
for
Microsoft
operating
systems
MySQL
shareware
license
for
Microsoft
operating
systems
Version
1
September
4
1998
Copyright
C
1998
TcX
AB
Monty
Program
KB
Detron
HB
Stockholm
SWEDEN
Helsingfors
FINLAND
and
Uppsala
SWEDEN
All
rights
reserved
This
License
applies
to
the
computer
program
known
as
MySQL
This
License
applies
when
running
MySQL
on
any
Microsoft
operating
system
Microsoft
operating
systems
include
all
versions
of
Microsoft
Windows
NT
and
Microsoft
Windows
YOU
SHOULD
CAREFULLY
READ
THE
FOLLOWING
TERMS
AND
CONDITIONS
BEFORE
USING
COPYING
OR
DISTRIBUTING
MySQL
BY
USING
COPYING
AND
DISTRIBUTING
MySQL
YOU
INDICATE
YOUR
ACCEPTANCE
OF
THIS
LICENSE
TO
DO
SO
AND
ALL
ITS
TERMS
AND
CONDITIONS
FOR
USING
COPYING
AND
DISTRIBUTING
MySQL
OR
WORKS
BASED
ON
IT
NOTHING
OTHER
THAN
THIS
LICENSE
GRANTS
YOU
PERMISSION
TO
USE
COPY
OR
DISTRIBUTE
MySQL
OR
ITS
DERIVATIVE
WORKS
THESE
ACTIONS
ARE
PROHIBITED
BY
LAW
IF
YOU
DO
NOT
ACCEPT
THESE
TERMS
AND
CONDITIONS
DO
NOT
USE
COPY
OR
DISTRIBUTE
MySQL
1
Evaluation
and
License
Registration
This
is
an
evaluation
version
of
MySQL
for
Win32
Subject
to
the
terms
below
you
are
hereby
licensed
to
use
MySQL
for
evaluation
purposes
without
charge
for
a
period
of
30
days
If
you
use
MySQL
after
the
30
day
evaluation
period
the
registration
and
purchase
of
a
MySQL
license
is
required
The
price
for
a
MySQL
license
is
currently
200
US
dollars
and
email
support
starts
from
200
US
dollars
year
Quantity
discounts
are
available
If
you
pay
by
credit
card
the
currency
is
EURO
The
European
Unions
common
currency
so
the
prices
will
differ
slightly
The
easiest
way
to
register
or
find
options
about
how
to
pay
for
MySQL
is
to
use
the
license
form
at
TcX
s
secure
server
at
1391
https
www
tcx
se
license
htmy
This
can
be
used
also
when
paying
with
credit
card
over
the
Internet
Other
applicable
methods
for
paying
are
SWIFT
payments
cheques
and
credit
cards
Payment
should
be
made
to
Postgirot
Bank
AB
105
06
STOCKHOLM
SWEDEN
TCX
DataKonsult
AB
BOX
6434
11382
STOCKHOLM
SWEDEN
SWIFT
address
PGSI
SESS
Account
number
96
77
06
3
Specify
license
and
or
support
and
your
name
and
email
address
In
Europe
and
Japan
EuroGiro
that
should
be
cheaper
can
be
used
to
the
same
account
If
you
want
to
pay
by
cheque
make
it
payable
to
Monty
Program
KB
and
mail
it
to
the
address
below
TCX
DataKonsult
AB
BOX
6434
11382
STOCKHOLM
SWEDEN
For
more
information
about
commercial
licensing
please
contact
David
Axmark
Kungsgatan
65
B
753
21
UPPSALA
SWEDEN
Voice
Phone
46
18
10
22
80
Swedish
and
English
spoken
Fax
46
8
729
69
05
Email
much
preferred
E
Mail
mysql
licensing
mysql
com
For
more
about
the
license
prices
and
commercial
support
like
email
support
please
refer
to
the
MySQL
manual
See
section
1392
3
5
MySQL
licensing
and
support
costs
See
section
1393
3
6
Types
of
commercial
support
The
use
of
MySQL
or
any
work
based
on
MySQL
after
the
30
day
evaluation
period
is
in
violation
of
international
copyright
laws
2
Registered
version
of
MySQL
After
you
have
purchased
a
MySQL
license
we
will
send
you
a
receipt
by
paper
mail
You
are
allowed
to
use
MySQL
or
any
work
based
on
MySQL
after
the
30
days
evaluation
period
The
use
of
MySQL
is
however
restricted
to
one
physical
computer
but
there
are
no
restrictions
on
concurrent
uses
of
MySQL
or
the
number
of
MySQL
servers
run
on
the
computer
We
will
also
email
you
an
address
and
password
for
a
password
protected
WWW
page
that
always
has
the
newest
MySQL
Win32
version
Our
current
policy
is
that
a
user
with
the
MySQL
license
can
get
free
upgrades
The
best
way
to
ensure
that
you
get
the
best
possible
support
is
to
purchase
commercial
support
3
Registration
for
use
in
education
and
university
or
government
sponsored
research
You
may
obtain
a
MySQL
license
for
the
use
in
education
and
university
or
government
sponsored
research
for
free
In
that
case
send
a
detailed
application
for
licensing
MySQL
for
such
use
to
the
email
address
The
following
information
is
required
in
the
application
the
name
of
the
school
or
institute
a
short
description
of
the
school
or
institute
and
of
the
type
of
education
resarch
or
other
functions
it
provides
a
detailed
report
of
the
use
of
MySQL
in
the
institution
In
this
case
you
will
be
provided
with
a
license
that
entitles
you
to
use
MySQL
in
a
specified
manner
4
Distribution
Provided
that
you
verify
that
you
are
distributing
an
evaluation
or
educational
research
version
of
MySQL
you
are
hereby
licensed
to
make
as
many
literal
i
e
verbatim
copies
of
the
evaluation
version
of
MySQL
and
documentation
as
you
wish
5
Restrictions
The
client
code
of
MySQL
is
in
the
Public
Domain
or
under
the
GPL
for
example
the
code
for
readline
license
You
are
not
allowed
to
modify
recompile
translate
or
create
derivative
works
based
upon
any
part
of
the
server
code
of
MySQL
6
Reservation
of
Rights
No
rights
are
granted
to
MySQL
except
as
expressly
set
forth
herein
You
may
not
copy
or
distribute
MySQL
except
as
expressly
provided
under
this
License
Any
attempt
otherwise
to
copy
or
distribute
MySQL
is
void
and
will
automatically
terminate
your
rights
under
this
License
However
parties
who
have
received
copies
or
rights
from
you
under
this
License
will
not
have
their
licenses
terminated
so
long
as
such
parties
remain
in
full
compliance
7
Other
Restrictions
If
the
distribution
and
or
use
of
MySQL
is
restricted
in
certain
countries
for
any
reason
the
Licensor
may
add
an
explicit
geographical
distribution
limitation
excluding
those
countries
so
that
distribution
is
permitted
only
in
or
among
countries
not
thus
excluded
In
such
case
this
License
incorporates
the
limitation
as
if
written
in
the
body
of
this
License
8
Limitations
MySQL
IS
PROVIDED
TO
YOU
AS
IS
WITHOUT
WARRANTY
THERE
IS
NO
WARRANTY
FOR
MySQL
EITHER
EXPRESSED
OR
IMPLIED
INCLUDING
BUT
NOT
LIMITED
TO
THE
IMPLIED
WARRANTIES
OF
MERCHANTABILITY
AND
FITNESS
FOR
A
PARTICULAR
PURPOSE
AND
NONINFRINGEMENT
OF
THIRD
PARTY
RIGHTS
THE
ENTIRE
RISK
AS
TO
THE
QUALITY
AND
PERFORMANCE
OF
MySQL
IS
WITH
YOU
SHOULD
MySQL
PROVE
DEFECTIVE
YOU
ASSUME
THE
COST
OF
ALL
NECESSARY
SERVICING
REPAIR
OR
CORRECTION
IN
NO
EVENT
UNLESS
REQUIRED
BY
APPLICABLE
LAW
OR
AGREED
TO
IN
WRITING
WILL
THE
LICENSOR
OR
ANY
OTHER
PARTY
WHO
MAY
MODIFY
AND
OR
REDISTRIBUTE
MySQL
AS
PERMITTED
ABOVE
BE
LIABLE
TO
YOU
FOR
DAMAGES
INCLUDING
ANY
GENERAL
SPECIAL
INCIDENTAL
OR
CONSEQUENTIAL
DAMAGES
ARISING
OUT
OF
THE
USE
OR
INABILITY
TO
USE
MySQL
INCLUDING
BUT
NOT
LIMITED
TO
LOSS
OF
DATA
OR
DATA
BEING
RENDERED
INACCURATE
OR
LOSSES
SUSTAINED
BY
YOU
OR
THIRD
PARTIES
OR
A
FAILURE
OF
MySQL
TO
OPERATE
WITH
ANY
OTHER
PROGRAMS
EVEN
IF
SUCH
HOLDER
OR
OTHER
PARTY
HAS
BEEN
ADVISED
OF
THE
POSSIBILITY
OF
SUCH
DAMAGES
1394
SQL
command
type
and
function
index
1395
logical
NOT
1396
not
equal
1397
modulo
1398
wildcard
character
1399
bitwise
AND
1400
logical
AND
1401
parentheses
1402
multiplication
1403
addition
1404
subtraction
1405
unary
minus
1406
my
cnf
file
1407
my
cnf
file
1408
my
cnf
file
1409
my
cnf
file
1410
my
cnf
file
1411
my
cnf
file
1412
my
cnf
file
1413
mysql
history
file
1414
pid
process
ID
file
1415
division
1416
etc
passwd
1417
etc
passwd
1418
less
than
1419
left
shift
1420
less
than
or
equal
1421
Equal
to
1422
not
equal
1423
equal
1424
greater
than
1425
greater
than
or
equal
1426
right
shift
1427
double
quote
1428
single
quote
1429
0
ASCII
0
1430
escape
1431
b
backspace
1432
n
newline
1433
r
carriage
return
1434
t
tab
1435
wildcard
character
A
1436
ABS
1437
ACOS
1438
ADDDATE
1439
addition
1440
alias
1441
ALTER
TABLE
1442
AND
bitwise
1443
AND
logical
1444
Arithmetic
functions
1445
ASCII
1446
ASIN
1447
ATAN
1448
ATAN2
1449
AUTO
INCREMENT
using
with
DBI
1450
AVG
B
1451
backspace
b
1452
BENCHMARK
1453
BETWEEN
AND
1454
BIGINT
1455
BIN
1456
BINARY
1457
Bit
functions
1458
BIT
AND
1459
BIT
COUNT
1460
BIT
OR
1461
BLOB
1462
BLOB
C
1463
carriage
return
r
1464
Casts
1465
CC
environment
variable
1466
CC
environment
variable
1467
CEILING
1468
CFLAGS
environment
variable
1469
CHAR
1470
CHAR
1471
CHAR
1472
CHAR
LENGTH
1473
CHARACTER
LENGTH
1474
ChopBlanks
DBI
method
1475
Comment
syntax
1476
Comparison
operators
1477
CONCAT
1478
connect
DBI
method
1479
Control
flow
functions
1480
CONV
1481
COS
1482
COT
1483
COUNT
1484
CREATE
DATABASE
1485
CREATE
FUNCTION
1486
CREATE
INDEX
1487
CREATE
TABLE
1488
CROSS
JOIN
1489
CURDATE
1490
CURRENT
DATE
1491
CURRENT
TIME
1492
CURRENT
TIMESTAMP
1493
CURTIME
1494
CXX
environment
variable
1495
CXX
environment
variable
1496
CXX
environment
variable
1497
CXX
environment
variable
1498
CXXFLAGS
environment
variable
1499
CXXFLAGS
environment
variable
D
1500
data
sources
DBI
method
1501
DATABASE
1502
DATE
1503
DATE
1504
Date
and
time
functions
1505
DATE
ADD
1506
DATE
FORMAT
1507
DATE
SUB
1508
DATETIME
1509
DATETIME
1510
DAYNAME
1511
DAYOFMONTH
1512
DAYOFWEEK
1513
DAYOFYEAR
1514
DBI
connect
1515
DBI
data
sources
1516
DBI
disconnect
1517
DBI
do
1518
DBI
execute
1519
DBI
fetchall
arrayref
1520
DBI
fetchrow
array
1521
DBI
fetchrow
arrayref
1522
DBI
fetchrow
hashref
1523
DBI
finish
1524
DBI
prepare
1525
DBI
quote
1526
DBI
quote
1527
DBI
rows
1528
DBI
trace
1529
DBI
trace
1530
DBI
ChopBlanks
1531
DBI
insertid
1532
DBI
is
blob
1533
DBI
is
key
1534
DBI
is
not
null
1535
DBI
is
num
1536
DBI
is
pri
key
1537
DBI
length
1538
DBI
max
length
1539
DBI
NAME
1540
DBI
NULLABLE
1541
DBI
NUM
OF
FIELDS
1542
DBI
table
1543
DBI
type
1544
DBI
TRACE
environment
variable
1545
DBI
TRACE
environment
variable
1546
DECIMAL
1547
DECODE
1548
DEGREES
1549
DELAYED
1550
DELETE
1551
DESC
1552
DESCRIBE
1553
disconnect
DBI
method
1554
division
1555
do
DBI
method
1556
DOUBLE
1557
DOUBLE
PRECISION
1558
double
quote
1559
DROP
DATABASE
1560
DROP
FUNCTION
1561
DROP
INDEX
1562
DROP
TABLE
E
1563
ELT
1564
ENCODE
1565
ENCRYPT
1566
ENUM
1567
ENUM
1568
Environment
variable
CC
1569
Environment
variable
CC
1570
Environment
variable
CFLAGS
1571
Environment
variable
CXX
1572
Environment
variable
CXX
1573
Environment
variable
CXX
1574
Environment
variable
CXXFLAGS
1575
Environment
variable
CXXFLAGS
1576
Environment
variable
DBI
TRACE
1577
Environment
variable
DBI
TRACE
1578
Environment
variable
HOME
1579
Environment
variable
LD
RUN
PATH
1580
Environment
variable
LD
RUN
PATH
1581
Environment
variable
LD
RUN
PATH
1582
Environment
variable
LOGIN
1583
Environment
variable
LOGNAME
1584
Environment
variable
MYSQL
DEBUG
1585
Environment
variable
MYSQL
DEBUG
1586
Environment
variable
MYSQL
HISTFILE
1587
Environment
variable
MYSQL
HOST
1588
Environment
variable
MYSQL
PWD
1589
Environment
variable
MYSQL
PWD
1590
Environment
variable
MYSQL
TCP
PORT
1591
Environment
variable
MYSQL
TCP
PORT
1592
Environment
variable
MYSQL
TCP
PORT
1593
Environment
variable
MYSQL
UNIX
PORT
1594
Environment
variable
MYSQL
UNIX
PORT
1595
Environment
variable
MYSQL
UNIX
PORT
1596
Environment
variable
MYSQL
UNIX
PORT
1597
Environment
variable
PATH
1598
Environment
variable
TMPDIR
1599
Environment
variable
TZ
1600
Environment
variable
TZ
1601
Environment
variable
TZ
1602
Environment
variable
UMASK
1603
Environment
variable
USER
1604
Environment
variables
CXX
1605
equal
1606
escape
1607
execute
DBI
method
1608
EXP
1609
EXPLAIN
F
1610
fetchall
arrayref
DBI
method
1611
fetchrow
array
DBI
method
1612
fetchrow
arrayref
DBI
method
1613
fetchrow
hashref
DBI
method
1614
FIELD
1615
FILE
1616
FIND
IN
SET
1617
finish
DBI
method
1618
FLOAT
1619
FLOAT
4
1620
FLOAT
8
1621
FLOAT
M
D
1622
FLOOR
1623
FLUSH
1624
FORMAT
1625
FROM
DAYS
1626
FROM
UNIXTIME
1627
FROM
UNIXTIME
1628
Functions
arithmetic
1629
Functions
bit
1630
Functions
control
flow
1631
Functions
date
and
time
1632
Functions
GROUP
BY
1633
Functions
logical
1634
Functions
mathematical
1635
Functions
miscellaneous
1636
Functions
string
1637
Functions
string
comparison
1638
Functions
user
defined
G
1639
GET
LOCK
1640
GRANT
1641
greater
than
1642
greater
than
or
equal
1643
GREATEST
1644
GROUP
BY
functions
H
1645
HEX
1646
HOME
environment
variable
1647
host
frm
problems
finding
1648
HOUR
I
1649
IF
1650
IFNULL
1651
IN
1652
INSERT
1653
INSERT
DELAYED
1654
INSERT
1655
insertid
DBI
method
1656
INSTR
1657
INT
1658
INTEGER
1659
INTERVAL
1660
is
blob
DBI
method
1661
is
key
DBI
method
1662
is
not
null
DBI
method
1663
is
num
DBI
method
1664
is
pri
key
DBI
method
1665
ISNULL
J
1666
JOIN
K
1667
KILL
L
1668
LAST
INSERT
ID
1669
LAST
INSERT
ID
expr
1670
LCASE
1671
LD
RUN
PATH
environment
variable
1672
LD
RUN
PATH
environment
variable
1673
LD
RUN
PATH
environment
variable
1674
LEAST
1675
LEFT
JOIN
1676
LEFT
OUTER
JOIN
1677
LEFT
1678
length
DBI
method
1679
LENGTH
1680
less
than
1681
less
than
or
equal
1682
LIKE
1683
LIKE
and
indexes
1684
LIKE
and
wildcards
1685
LOAD
DATA
INFILE
1686
LOAD
DATA
INFILE
1687
LOCATE
1688
LOCATE
1689
LOCK
TABLES
1690
LOG
1691
LOG10
1692
Logical
functions
1693
LOGIN
environment
variable
1694
LOGNAME
environment
variable
1695
LONGBLOB
1696
LONGTEXT
1697
LOWER
1698
LPAD
1699
LTRIM
M
1700
MAKE
SET
1701
Mathematical
functions
1702
MAX
1703
max
length
DBI
method
1704
MEDIUMBLOB
1705
MEDIUMINT
1706
MEDIUMTEXT
1707
MID
1708
MIN
1709
minus
unary
1710
MINUTE
1711
Miscellaneous
functions
1712
MOD
1713
modulo
1714
MONTH
1715
MONTHNAME
1716
multiplication
1717
my
ulonglong
C
type
1718
my
ulonglong
values
printing
1719
MYSQL
C
type
1720
mysql
affected
rows
1721
mysql
close
1722
mysql
connect
1723
mysql
create
db
1724
mysql
data
seek
1725
MYSQL
DEBUG
environment
variable
1726
MYSQL
DEBUG
environment
variable
1727
mysql
debug
1728
mysql
drop
db
1729
mysql
dump
debug
info
1730
mysql
eof
1731
mysql
errno
1732
mysql
error
1733
mysql
escape
string
1734
mysql
escape
string
1735
mysql
fetch
field
1736
mysql
fetch
field
direct
1737
mysql
fetch
fields
1738
mysql
fetch
lengths
1739
mysql
fetch
row
1740
MYSQL
FIELD
C
type
1741
mysql
field
count
1742
MYSQL
FIELD
OFFSET
C
type
1743
mysql
field
seek
1744
mysql
field
tell
1745
mysql
free
result
1746
mysql
get
client
info
1747
mysql
get
host
info
1748
mysql
get
proto
info
1749
mysql
get
server
info
1750
MYSQL
HISTFILE
environment
variable
1751
MYSQL
HOST
environment
variable
1752
mysql
info
1753
mysql
info
1754
mysql
info
1755
mysql
info
1756
mysql
info
1757
mysql
init
1758
mysql
insert
id
1759
mysql
insert
id
1760
mysql
kill
1761
mysql
list
dbs
1762
mysql
list
fields
1763
mysql
list
processes
1764
mysql
list
tables
1765
mysql
num
fields
1766
mysql
num
rows
1767
mysql
options
1768
mysql
ping
1769
MYSQL
PWD
environment
variable
1770
MYSQL
PWD
environment
variable
1771
mysql
query
1772
mysql
real
connect
1773
mysql
real
query
1774
mysql
reload
1775
MYSQL
RES
C
type
1776
MYSQL
ROW
C
type
1777
mysql
row
seek
1778
mysql
row
tell
1779
mysql
select
db
1780
mysql
shutdown
1781
mysql
stat
1782
mysql
store
result
1783
MYSQL
TCP
PORT
environment
variable
1784
MYSQL
TCP
PORT
environment
variable
1785
MYSQL
TCP
PORT
environment
variable
1786
mysql
thread
id
1787
MYSQL
UNIX
PORT
environment
variable
1788
MYSQL
UNIX
PORT
environment
variable
1789
MYSQL
UNIX
PORT
environment
variable
1790
MYSQL
UNIX
PORT
environment
variable
1791
mysql
use
result
N
1792
NAME
DBI
method
1793
NATURAL
LEFT
JOIN
1794
NATURAL
LEFT
OUTER
JOIN
1795
newline
n
1796
not
equal
1797
not
equal
1798
NOT
IN
1799
NOT
LIKE
1800
NOT
REGEXP
1801
NOT
logical
1802
NOW
1803
NUL
1804
NULL
1805
NULL
value
1806
NULLABLE
DBI
method
1807
NUM
OF
FIELDS
DBI
method
1808
NUMERIC
O
1809
OCT
1810
OCTET
LENGTH
1811
OPTIMIZE
TABLE
1812
OR
bitwise
1813
OR
logical
P
1814
parentheses
and
1815
PASSWORD
1816
PASSWORD
1817
PASSWORD
1818
PASSWORD
1819
PATH
environment
variable
1820
PERIOD
ADD
1821
PERIOD
DIFF
1822
PI
1823
POSITION
1824
POW
1825
POWER
1826
prepare
DBI
method
1827
PROCESSLIST
Q
1828
QUARTER
1829
quote
DBI
method
R
1830
RADIANS
1831
RAND
1832
REAL
1833
REGEXP
1834
RELEASE
LOCK
1835
REPEAT
1836
REPLACE
1837
REPLACE
1838
return
r
1839
REVERSE
1840
REVOKE
1841
RIGHT
1842
RLIKE
1843
ROUND
1844
ROUND
1845
rows
DBI
method
1846
RPAD
1847
RTRIM
S
1848
SEC
TO
TIME
1849
SECOND
1850
SELECT
1851
SELECT
optimizing
1852
SESSION
USER
1853
SET
1854
SET
1855
SET
OPTION
1856
SHOW
COLUMNS
1857
SHOW
DATABASES
1858
SHOW
FIELDS
1859
SHOW
INDEX
1860
SHOW
INDEX
1861
SHOW
KEYS
1862
SHOW
PROCESSLIST
1863
SHOW
STATUS
1864
SHOW
TABLE
STATUS
1865
SHOW
TABLES
1866
SHOW
VARIABLES
1867
SIGN
1868
SIN
1869
single
quote
1870
SMALLINT
1871
SOUNDEX
1872
SPACE
1873
SQRT
1874
STD
1875
STDDEV
1876
STRAIGHT
JOIN
1877
STRCMP
1878
String
comparison
functions
1879
String
functions
1880
SUBDATE
1881
SUBSTRING
1882
SUBSTRING
1883
SUBSTRING
1884
SUBSTRING
INDEX
1885
subtraction
1886
SUM
1887
SYSDATE
1888
SYSTEM
USER
T
1889
tab
t
1890
table
DBI
method
1891
table
cache
1892
table
cache
1893
TAN
1894
TEXT
1895
TEXT
1896
Threads
1897
TIME
1898
TIME
1899
TIME
FORMAT
1900
TIME
TO
SEC
1901
TIMESTAMP
1902
TIMESTAMP
1903
TINYBLOB
1904
TINYINT
1905
TINYTEXT
1906
TMPDIR
environment
variable
1907
TO
DAYS
1908
trace
DBI
method
1909
trace
DBI
method
1910
TRIM
1911
TRUNCATE
1912
type
DBI
method
1913
Types
1914
TZ
environment
variable
1915
TZ
environment
variable
1916
TZ
environment
variable
U
1917
UCASE
1918
UDF
functions
1919
ulimit
1920
UMASK
environment
variable
1921
unary
minus
1922
UNIX
TIMESTAMP
1923
UNLOCK
TABLES
1924
UPDATE
1925
UPPER
1926
USE
1927
USER
environment
variable
1928
USER
1929
User
defined
functions
V
1930
VARCHAR
1931
VARCHAR
1932
VERSION
W
1933
WEEK
1934
WEEKDAY
1935
Wildcard
character
1936
Wildcard
character
Y
1937
YEAR
1938
YEAR
1939
YEAR
1940
bitwise
OR
1941
logical
OR
1942
Concept
Index
A
1943
Adding
native
functions
1944
Adding
user
definable
functions
1945
Alias
names
case
sensitivity
1946
Aliases
for
expressions
1947
Aliases
for
tables
1948
Aliases
in
GROUP
BY
clauses
1949
Aliases
in
ORDER
BY
clauses
1950
Aliases
on
expressions
1951
Anonymous
user
1952
Anonymous
user
1953
Anonymous
user
1954
ANSI
SQL
differences
from
1955
Arithmetic
expressions
1956
AUTO
INCREMENT
and
NULL
values
B
1957
Backups
1958
Big5
Chinese
character
encoding
1959
BLOB
columns
default
values
1960
BLOB
columns
indexing
1961
BLOB
inserting
binary
data
1962
Bug
reports
C
1963
C
compiler
cannot
create
executables
1964
Case
sensitivity
in
access
checking
1965
Case
sensitivity
in
searches
1966
Case
sensitivity
in
string
comparisons
1967
Case
sensitivity
of
alias
names
1968
Case
sensitivity
of
column
names
1969
Case
sensitivity
of
database
names
1970
Case
sensitivity
of
database
names
1971
Case
sensitivity
of
table
names
1972
Case
sensitivity
of
table
names
1973
Casts
1974
cc1plus
problems
1975
Checking
tables
for
errors
1976
Chinese
1977
Choosing
types
1978
Choosing
version
1979
Client
programs
building
1980
Column
names
case
sensitivity
1981
Command
line
history
1982
Commands
out
of
sync
1983
Compatibility
between
MySQL
versions
1984
Compatibility
between
MySQL
versions
1985
Compatibility
with
ANSI
SQL
1986
Compatibility
with
mSQL
1987
Compatibility
with
ODBC
1988
Compatibility
with
ODBC
1989
Compatibility
with
ODBC
1990
Compatibility
with
ODBC
1991
Compatibility
with
ODBC
1992
Compatibility
with
ODBC
1993
Compatibility
with
Oracle
1994
Compatibility
with
Oracle
1995
Compatibility
with
Oracle
1996
Compatibility
with
PostgreSQL
1997
Compatibility
with
Sybase
1998
Configuration
files
1999
configure
running
after
prior
invocation
2000
Constant
table
2001
Constant
table
2002
Contact
information
2003
Copyright
2004
Costs
licensing
and
support
D
2005
Database
mirroring
2006
Database
names
case
sensitivity
2007
Database
names
case
sensitivity
2008
Database
replication
2009
Database
replication
2010
Date
and
Time
types
2011
db
table
sorting
2012
DBI
Perl
module
2013
Default
options
2014
Default
values
BLOB
and
TEXT
columns
2015
Disk
full
2016
Downloading
E
2017
Environment
variables
2018
Environment
variables
2019
Environment
variables
2020
Environment
variables
2021
Expression
aliases
2022
Expressions
aliases
for
F
2023
fatal
signal
11
2024
Foreign
keys
2025
FreeBSD
troubleshooting
2026
Full
disk
2027
Functions
for
SELECT
and
WHERE
clauses
2028
Functions
native
adding
2029
Functions
user
definable
adding
G
2030
Getting
MySQL
2031
Grant
tables
sorting
2032
Grant
tables
sorting
2033
GROUP
BY
aliases
in
2034
Grouping
of
expressions
H
2035
History
file
2036
host
table
sorting
2037
How
to
pronounce
MySQL
I
2038
Indexes
2039
Indexes
2040
Indexes
and
BLOB
columns
2041
Indexes
and
LIKE
2042
Indexes
and
NULL
values
2043
Indexes
and
TEXT
columns
2044
Indexes
leftmost
prefix
of
2045
Indexes
multi
part
2046
Internal
compiler
errors
2047
isamchk
2048
isamchk
K
2049
Keys
2050
Keywords
L
2051
Language
support
2052
Leftmost
prefix
of
indexes
2053
Licensing
costs
2054
Licensing
policy
2055
Licensing
terms
2056
Linking
2057
Log
file
names
M
2058
make
binary
release
2059
Manual
information
2060
Memory
use
2061
Mirroring
database
2062
mSQL
compatibility
2063
msql2mysql
2064
Multi
byte
characters
2065
Multi
part
index
2066
Multiple
servers
2067
MyODBC
2068
mysql
2069
MySQL
binary
distribution
2070
MySQL
mailing
lists
2071
MySQL
source
distribution
2072
MySQL
version
2073
MySQL
version
2074
MySQL
how
to
pronounce
2075
MySQL
what
it
is
2076
mysql
fix
privilege
tables
2077
mysql
install
db
2078
mysqlaccess
2079
mysqladmin
2080
mysqladmin
2081
mysqladmin
2082
mysqladmin
2083
mysqladmin
2084
mysqladmin
2085
mysqlbug
2086
mysqld
2087
mysqldump
2088
mysqldump
2089
mysqlimport
2090
mysqlimport
2091
mysqlimport
2092
mysqlshow
N
2093
Native
functions
adding
2094
Net
etiquette
2095
Net
etiquette
2096
NULL
values
vs
empty
values
2097
NULL
values
and
indexes
2098
NULL
values
and
AUTO
INCREMENT
columns
2099
NULL
values
and
TIMESTAMP
columns
O
2100
ODBC
2101
ODBC
compatibility
2102
ODBC
compatibility
2103
ODBC
compatibility
2104
ODBC
compatibility
2105
ODBC
compatibility
2106
ODBC
compatibility
2107
Optimizations
2108
Option
files
2109
Oracle
compatibility
2110
Oracle
compatibility
2111
Oracle
compatibility
2112
ORDER
BY
aliases
in
P
2113
pack
isam
2114
pack
isam
2115
pack
isam
2116
pack
isam
2117
pack
isam
2118
Password
encryption
reversibility
of
2119
Passwords
setting
2120
Passwords
setting
2121
Passwords
setting
2122
Passwords
setting
2123
Payment
information
2124
Performance
2125
PostgreSQL
compatibility
2126
Protocol
mismatch
Q
2127
Quoting
2128
Quoting
binary
data
2129
Quoting
strings
R
2130
RedHat
Package
Manager
2131
RedHat
Package
Manager
2132
References
2133
Release
numbers
2134
replace
2135
Replication
2136
Replication
database
2137
Replication
database
2138
Reporting
bugs
2139
Reporting
errors
2140
Reserved
words
2141
Reserved
words
exceptions
2142
Row
level
locking
2143
RPM
2144
RPM
2145
Running
configure
after
prior
invocation
S
2146
safe
mysqld
2147
Scripts
2148
Server
functions
2149
Size
of
tables
2150
Solaris
troubleshooting
2151
Sorting
grant
tables
2152
Sorting
grant
tables
2153
sql
yacc
cc
problems
2154
Stability
2155
Startup
parameters
2156
Storage
requirements
2157
String
comparisons
case
sensitivity
2158
Strings
2159
Strings
escaping
characters
2160
Strings
quoting
2161
Support
costs
2162
Support
terms
2163
Support
types
2164
Sybase
compatibility
2165
Symbolic
links
2166
System
table
T
2167
Table
aliases
2168
Table
cache
2169
Table
cache
2170
Table
cache
2171
Table
names
case
sensitivity
2172
Table
names
case
sensitivity
2173
Table
size
2174
Table
constant
2175
Table
constant
2176
Table
system
2177
TEXT
columns
default
values
2178
TEXT
columns
indexing
2179
The
table
is
full
2180
The
table
is
full
2181
TIMESTAMP
and
NULL
values
2182
Timezone
problems
2183
Timezone
problems
2184
Timezone
problems
2185
TODO
2186
Troubleshooting
FreeBSD
2187
Troubleshooting
Solaris
2188
Type
conversions
2189
Type
portability
2190
Types
of
support
2191
Types
choosing
2192
Types
Date
and
Time
U
2193
Update
log
2194
user
table
sorting
2195
User
definable
functions
adding
V
2196
Version
choosing
2197
Version
latest
2198
Virtual
memory
problems
while
compiling
W
2199
Which
languages
MySQL
supports
2200
Wildcards
and
LIKE
2201
Wildcards
in
mysql
columns
priv
table
2202
Wildcards
in
mysql
db
table
2203
Wildcards
in
mysql
host
table
2204
Wildcards
in
mysql
tables
priv
table
2205
Wildcards
in
mysql
user
table
2206
Windows
Y
2207
Year
2000
compliance
2208
Year
2000
issues
This
document
was
generated
on
8
July
1999
using
the
2209
texi2html
translator
version
1
52
extended
by
davida
detron
se
1
Preface
PHP
Manual
Stig
Sæther
Bakken
Alexander
Aulbach
Egon
Schmid
Jim
Winstead
Lars
Torben
Wilson
Rasmus
Lerdorf
Zeev
Suraski
Edited
by
Stig
Sæther
Bakken
2
Copyright
1997
1998
1999
by
the
PHP
Documentation
Group
Dedication
Date
1999
07
19
Table
of
Contents
3
Preface
4
About
this
Manual
I
5
Getting
Started
1
6
Introduction
2
7
Installation
3
8
Configuration
4
9
Security
II
10
Language
Reference
5
11
Basic
syntax
6
12
Types
7
13
Variables
8
14
Constants
9
15
Expressions
10
16
Operators
11
17
Control
Structures
12
18
Functions
13
19
Classes
and
Objects
III
20
Features
14
21
Error
handling
15
22
Creating
GIF
images
16
23
HTTP
authentication
with
PHP
17
24
Cookies
18
25
Handling
file
uploads
19
26
Connection
handling
20
27
Persistent
database
connections
IV
28
Function
Reference
I
29
Adabas
D
functions
II
30
Apache
specific
functions
III
31
Array
functions
IV
32
Aspell
functions
V
33
Arbitrary
precision
mathematics
functions
VI
34
Calendar
functions
VII
35
ClibPDF
functions
VIII
36
Date
and
Time
functions
IX
37
Database
dbm
style
abstraction
layer
functions
X
38
dBase
functions
XI
39
dbm
functions
XII
40
Directory
functions
XIII
41
Dynamic
Loading
functions
XIV
42
Program
Execution
functions
XV
43
Forms
Data
Format
functions
XVI
44
filePro
functions
XVII
45
Filesystem
functions
XVIII
46
Functions
related
to
HTTP
XIX
47
Hyperwave
functions
XX
48
Image
functions
XXI
49
IMAP
functions
XXII
50
PHP
options
information
XXIII
51
Informix
functions
XXIV
52
InterBase
functions
XXV
53
LDAP
functions
XXVI
54
Mail
functions
XXVII
55
Mathematical
functions
XXVIII
56
Encryption
functions
XXIX
57
Hash
functions
XXX
58
Miscellaneous
functions
XXXI
59
mSQL
functions
XXXII
60
Microsoft
SQL
Server
functions
XXXIII
61
MySQL
functions
XXXIV
62
Sybase
functions
XXXV
63
Network
functions
XXXVI
64
NIS
functions
XXXVII
65
ODBC
functions
XXXVIII
66
Oracle
8
functions
XXXIX
67
Oracle
functions
XL
68
Perl
compatible
Regular
Expression
functions
XLI
69
PDF
functions
XLII
70
PostgreSQL
functions
XLIII
71
Regular
expression
functions
XLIV
72
Semaphore
and
shared
memory
functions
XLV
73
Solid
functions
XLVI
74
SNMP
functions
XLVII
75
String
functions
XLVIII
76
URL
functions
XLIX
77
Variable
functions
L
78
Vmailmgr
functions
LI
79
WDDX
functions
LII
80
Compression
functions
LIII
81
XML
parser
functions
V
82
Appendixes
A
83
Migrating
from
PHP
FI
2
0
to
PHP
3
0
B
84
PHP
development
C
85
The
PHP
Debugger
86
Next
Preface
1
PHP
Manual
2
Preface
PHP
Manual
Copyright
This
manual
is
Copyright
1997
1998
1999
the
PHP
Documentation
Group
The
members
of
this
group
are
listed
3
on
the
front
page
of
this
manual
This
manual
can
be
redistributed
under
the
terms
of
the
GNU
General
Public
License
as
published
by
the
Free
Software
Foundation
either
version
2
of
the
License
or
at
your
option
any
later
version
4
Home
1
PHP
Manual
2
PHP
Manual
3
Getting
Started
PHP
Manual
4
Prev
5
Next
Preface
Table
of
Contents
6
About
this
Manual
PHP
is
an
HTML
embedded
scripting
language
Much
of
its
syntax
is
borrowed
from
C
Java
and
Perl
with
a
couple
of
unique
PHP
specific
features
thrown
in
The
goal
of
the
language
is
to
allow
web
developers
to
write
dynamically
generated
pages
quickly
About
this
Manual
This
manual
is
written
in
SGML
using
the
7
DocBook
DTD
using
8
DSSSL
Document
Style
and
Semantics
Specification
Language
for
formatting
The
tools
used
for
formatting
HTML
TeX
and
RTF
versions
are
9
Jade
written
by
10
James
Clark
and
11
The
Modular
DocBook
Stylesheets
written
by
12
Norman
Walsh
PHP
s
documentation
framework
was
assembled
by
13
Stig
Sæther
Bakken
14
Prev
15
Home
16
Next
PHP
Manual
Getting
Started
1
PHP
Manual
2
Preface
3
Introduction
PHP
Manual
4
Prev
5
Next
I
Getting
Started
Table
of
Contents
1
6
Introduction
2
7
Installation
3
8
Configuration
4
9
Security
10
Prev
11
Home
12
Next
Preface
Introduction
1
PHP
Manual
2
Getting
Started
3
Getting
Started
4
What
can
PHP
do
PHP
Manual
5
Prev
6
Next
Chapter
1
Introduction
Table
of
Contents
7
What
is
PHP
8
What
can
PHP
do
9
A
Brief
History
of
PHP
What
is
PHP
PHP
is
a
server
side
HTML
embedded
scripting
language
Simple
answer
but
what
does
that
mean
An
example
Example
1
1
An
introductory
example
html
head
title
Example
title
body
php
echo
Hi
I
m
a
PHP
script
body
html
Notice
how
this
is
different
from
a
CGI
script
written
in
other
languages
like
Perl
or
C
instead
of
writing
a
program
with
lots
of
commands
to
output
HTML
you
write
an
HTML
script
with
a
some
embedded
code
to
do
something
in
this
case
output
some
text
The
PHP
code
is
enclosed
in
special
start
and
end
tags
that
allow
you
to
jump
into
and
out
of
PHP
mode
What
distinguishes
PHP
from
something
like
client
side
Javascript
is
that
the
code
is
executed
on
the
server
If
you
were
to
have
a
script
similar
to
the
above
on
your
server
the
client
would
receive
the
results
of
running
that
script
with
no
way
of
determining
what
the
underlying
code
may
be
You
can
even
configure
your
web
server
to
process
all
your
HTML
files
with
PHP
and
then
there
s
really
no
way
that
users
can
tell
what
you
have
up
your
sleeve
10
Prev
11
Home
12
Next
Getting
Started
13
Up
What
can
PHP
do
1
PHP
Manual
2
Introduction
3
Introduction
4
A
Brief
History
of
PHP
PHP
Manual
5
Prev
Chapter
1
Introduction
6
Next
What
can
PHP
do
At
the
most
basic
level
PHP
can
do
anything
any
other
CGI
program
can
do
such
as
collect
form
data
generate
dynamic
page
content
or
send
and
receive
cookies
Perhaps
the
strongest
and
most
significant
feature
in
PHP
is
its
support
for
a
wide
range
of
databases
Writing
a
database
enabled
web
page
is
incredibly
simple
The
following
databases
are
currently
supported
Adabas
D
InterBase
Solid
dBase
mSQL
Sybase
Empress
MySQL
Velocis
FilePro
Oracle
Unix
dbm
Informix
PostgreSQL
PHP
also
has
support
for
talking
to
other
services
using
protocols
such
as
IMAP
SNMP
NNTP
POP3
or
even
HTTP
You
can
also
open
raw
network
sockets
and
interact
using
other
protocols
7
Prev
8
Home
9
Next
Introduction
10
Up
A
Brief
History
of
PHP
1
PHP
Manual
2
Introduction
3
What
can
PHP
do
4
Installation
PHP
Manual
5
Prev
Chapter
1
Introduction
6
Next
A
Brief
History
of
PHP
PHP
was
conceived
sometime
in
the
fall
of
1994
by
Rasmus
Lerdorf
Early
non
released
versions
were
used
on
his
home
page
to
keep
track
of
who
was
looking
at
his
online
resume
The
first
version
used
by
others
was
available
sometime
in
early
1995
and
was
known
as
the
Personal
Home
Page
Tools
It
consisted
of
a
very
simplistic
parser
engine
that
only
understood
a
few
special
macros
and
a
number
of
utilities
that
were
in
common
use
on
home
pages
back
then
A
guestbook
a
counter
and
some
other
stuff
The
parser
was
rewritten
in
mid
1995
and
named
PHP
FI
Version
2
The
FI
came
from
another
package
Rasmus
had
written
which
interpreted
html
form
data
He
combined
the
Personal
Home
Page
tools
scripts
with
the
Form
Interpreter
and
added
mSQL
support
and
PHP
FI
was
born
PHP
FI
grew
at
an
amazing
pace
and
people
started
contributing
code
to
it
It
is
hard
to
give
any
hard
statistics
but
it
is
estimated
that
by
late
1996
PHP
FI
was
in
use
on
at
least
15
000
web
sites
around
the
world
By
mid
1997
this
number
had
grown
to
over
50
000
Mid
1997
also
saw
a
change
in
the
development
of
PHP
It
changed
from
being
Rasmus
own
pet
project
that
a
handful
of
people
had
contributed
to
to
being
a
much
more
organized
team
effort
The
parser
was
rewritten
from
scratch
by
Zeev
Suraski
and
Andi
Gutmans
and
this
new
parser
formed
the
basis
for
PHP
Version
3
A
lot
of
the
utility
code
from
PHP
FI
was
ported
over
to
PHP3
and
a
lot
of
it
was
completely
rewritten
Today
mid
1999
either
PHP
FI
or
PHP3
ships
with
a
number
of
commercial
products
such
as
C2
s
StrongHold
web
server
and
RedHat
Linux
and
a
conservative
estimate
based
on
an
extrapolation
from
numbers
provided
by
NetCraft
would
be
that
PHP
is
in
use
on
over
150
000
sites
around
the
world
To
put
that
in
perspective
that
is
more
sites
than
run
Netscape
s
flagship
Enterprise
server
on
the
Internet
Also
as
of
this
writing
work
is
underway
on
the
next
generation
of
PHP
that
will
utilize
the
powerful
Zend
scripting
engine
to
deliver
higher
performance
and
will
also
support
running
under
webservers
other
than
Apache
as
a
native
server
module
7
Prev
8
Home
9
Next
What
can
PHP
do
10
Up
Installation
1
PHP
Manual
2
Getting
Started
3
A
Brief
History
of
PHP
4
Installation
on
UNIX
systems
PHP
Manual
5
Prev
6
Next
Chapter
2
Installation
Table
of
Contents
7
Downloading
the
latest
version
8
Installation
on
UNIX
systems
9
Installation
on
Windows
95
98
NT
systems
10
Problems
Downloading
the
latest
version
The
source
code
and
binary
distributions
for
some
platforms
including
Windows
can
be
found
at
11
http
www
php
net
12
Prev
13
Home
14
Next
A
Brief
History
of
PHP
15
Up
Installation
on
UNIX
systems
1
PHP
Manual
2
Installation
3
Installation
4
Installation
on
Windows
95
98
NT
systems
PHP
Manual
5
Prev
Chapter
2
Installation
6
Next
Installation
on
UNIX
systems
This
section
will
guide
you
through
the
configuration
and
installation
of
PHP
Prerequisite
knowledge
and
software
Basic
UNIX
skills
being
able
to
operate
make
and
a
C
compiler
An
ANSI
C
compiler
A
web
server
Quick
Installation
Instructions
Apache
Module
Version
1
gunzip
apache
1
3
x
tar
gz
2
tar
xvf
apache
1
3
x
tar
3
gunzip
php
3
0
x
tar
gz
4
tar
xvf
php
3
0
x
tar
5
cd
apache
1
3
x
6
configure
prefix
www
7
cd
php
3
0
x
8
configure
with
mysql
with
apache
apache
1
3
x
enable
track
vars
9
make
10
make
install
11
cd
apache
1
3
x
12
configure
prefix
www
activate
module
src
modules
php3
libphp3
a
13
make
14
make
install
Instead
of
this
step
you
may
prefer
to
simply
copy
the
httpd
binary
overtop
of
your
existing
binary
Make
sure
you
shut
down
your
server
first
though
15
cd
php
3
0
x
16
cp
php3
ini
dist
usr
local
lib
php3
ini
You
can
edit
usr
local
lib
php3
ini
file
to
set
PHP
options
If
you
prefer
this
file
in
another
location
use
with
config
file
path
path
in
step
8
17
Edit
your
httpd
conf
or
srm
conf
file
and
add
AddType
application
x
httpd
php3
php3
You
can
choose
any
extension
you
wish
here
php3
is
simply
the
one
we
suggest
18
Use
your
normal
procedure
for
starting
the
Apache
server
You
must
stop
and
restart
the
server
not
just
cause
the
server
to
reload
by
use
a
HUP
or
USR1
signal
Configuration
There
are
two
ways
of
configuring
PHP
Using
the
setup
script
that
comes
with
PHP
This
script
asks
you
a
series
of
questions
almost
like
the
install
script
of
PHP
FI
2
0
and
runs
configure
in
the
end
To
run
this
script
type
setup
This
script
will
also
create
a
file
called
do
conf
this
file
will
contain
the
options
passed
to
configure
You
can
edit
this
file
to
change
just
a
few
options
without
having
to
re
run
setup
Then
type
do
conf
to
run
configure
with
the
new
options
Running
configure
by
hand
To
see
what
options
you
have
type
configure
help
Details
about
some
of
the
different
configuration
options
are
listed
below
Apache
module
To
build
PHP
as
an
Apache
module
answer
yes
to
Build
as
an
Apache
module
the
7
with
apache
DIR
option
to
configure
and
specify
the
Apache
distribution
base
directory
If
you
have
unpacked
your
Apache
distribution
in
usr
local
www
apache
1
2
4
this
is
your
Apache
distribution
base
directory
The
default
directory
is
usr
local
etc
httpd
fhttpd
module
To
build
PHP
as
an
fhttpd
module
answer
yes
to
Build
as
an
fhttpd
module
the
8
with
fhttpd
DIR
option
to
configure
and
specify
the
fhttpd
source
base
directory
The
default
directory
is
usr
local
src
fhttpd
If
you
are
running
fhttpd
building
PHP
as
a
module
will
give
better
performance
more
control
and
remote
execution
capability
CGI
version
The
default
is
to
build
PHP
as
a
CGI
program
If
you
are
running
a
web
server
PHP
has
module
support
for
you
should
generally
go
for
that
solution
for
performance
reasons
However
the
CGI
version
enables
Apache
users
to
run
different
PHP
enabled
pages
under
different
user
ids
Please
make
sure
you
read
through
the
9
Security
chapter
if
you
are
going
to
run
PHP
as
a
CGI
Database
Support
Options
PHP
has
native
support
for
a
number
of
databases
as
well
as
ODBC
Adabas
D
with
adabas
DIR
Compiles
with
Adabas
D
support
The
parameter
is
the
Adabas
D
install
directory
and
defaults
to
usr
local
adabasd
10
Adabas
home
page
dBase
with
dbase
Enables
the
bundled
DBase
support
No
external
libraries
are
required
filePro
with
filepro
Enables
the
bundled
read
only
filePro
support
No
external
libraries
are
required
mSQL
with
msql
DIR
Enables
mSQL
support
The
parameter
to
this
option
is
the
mSQL
install
directory
and
defaults
to
usr
local
Hughes
This
is
the
default
directory
of
the
mSQL
2
0
distribution
configure
automatically
detects
which
mSQL
version
you
are
running
and
PHP
supports
both
1
0
and
2
0
but
if
you
compile
PHP
with
mSQL
1
0
you
can
only
access
mSQL
1
0
databases
and
vice
versa
See
also
11
mSQL
Configuration
Directives
in
the
12
configuration
file
13
mSQL
home
page
MySQL
with
mysql
DIR
Enables
MySQL
support
The
parameter
to
this
option
is
the
MySQL
install
directory
and
defaults
to
usr
local
This
is
the
default
installation
directory
of
the
MySQL
distribution
See
also
14
MySQL
Configuration
Directives
in
the
15
configuration
file
16
MySQL
home
page
iODBC
with
iodbc
DIR
Includes
iODBC
support
This
feature
was
first
developed
for
iODBC
Driver
Manager
a
freely
redistributable
ODBC
driver
manager
which
runs
under
many
flavors
of
UNIX
The
parameter
to
this
option
is
the
iODBC
installation
directory
and
defaults
to
usr
local
17
FreeODBC
home
page
OpenLink
ODBC
with
openlink
DIR
Includes
OpenLink
ODBC
support
The
parameter
to
this
option
is
the
OpenLink
ODBC
installation
directory
and
defaults
to
usr
local
openlink
18
OpenLink
Software
s
home
page
Oracle
with
oracle
DIR
Includes
Oracle
support
Has
been
tested
and
should
be
working
at
least
with
Oracle
versions
7
0
through
7
3
The
parameter
is
the
ORACLE
HOME
directory
You
do
not
have
to
specify
this
parameter
if
your
Oracle
environment
has
been
set
up
19
Oracle
home
page
PostgreSQL
with
pgsql
DIR
Includes
PostgreSQL
support
The
parameter
is
the
PostgreSQL
base
install
directory
and
defaults
to
usr
local
pgsql
See
also
20
Postgres
Configuration
Directives
in
the
21
configuration
file
22
PostgreSQL
home
page
Solid
with
solid
DIR
Includes
Solid
support
The
parameter
is
the
Solid
install
directory
and
defaults
to
usr
local
solid
23
Solid
home
page
Sybase
with
sybase
DIR
Includes
Sybase
support
The
parameter
is
the
Sybase
install
directory
and
defaults
to
home
sybase
See
also
24
Sybase
Configuration
Directives
in
the
25
configuration
file
26
Sybase
home
page
Sybase
CT
with
sybase
ct
DIR
Includes
Sybase
CT
support
The
parameter
is
the
Sybase
CT
install
directory
and
defaults
to
home
sybase
See
also
27
Sybase
CT
Configuration
Directives
in
the
28
configuration
file
Velocis
with
velocis
DIR
Includes
Velocis
support
The
parameter
is
the
Velocis
install
directory
and
defaults
to
usr
local
velocis
29
Velocis
home
page
A
custom
ODBC
library
with
custom
odbc
DIR
Includes
support
for
an
arbitrary
custom
ODBC
library
The
parameter
is
the
base
directory
and
defaults
to
usr
local
This
option
implies
that
you
have
defined
CUSTOM
ODBC
LIBS
when
you
run
the
configure
script
You
also
must
have
a
valid
odbc
h
header
somewhere
in
your
include
path
If
you
don
t
have
one
create
it
and
include
your
specific
header
from
there
Your
header
may
also
require
some
extra
definitions
particularly
when
it
is
multiplatform
Define
them
in
CFLAGS
For
example
you
can
use
Sybase
SQL
Anywhere
on
QNX
as
following
CFLAGS
DODBC
QNX
LDFLAGS
lunix
CUSTOM
ODBC
LIBS
ldblib
lodbc
configure
with
custom
odbc
usr
lib
sqlany50
Unified
ODBC
disable
unified
odbc
Disables
the
Unified
ODBC
module
which
is
a
common
interface
to
all
the
databases
with
ODBC
based
interfaces
such
as
Solid
and
Adabas
D
It
also
works
for
normal
ODBC
libraries
Has
been
tested
with
iODBC
Solid
Adabas
D
and
Sybase
SQL
Anywhere
Requires
that
one
and
only
one
of
these
modules
or
the
Velocis
module
is
enabled
or
a
custom
ODBC
library
specified
This
option
is
only
applicable
if
one
of
the
following
options
is
used
30
with
iodbc
31
with
solid
32
with
adabas
33
with
velocis
or
34
with
custom
odbc
See
also
35
Unified
ODBC
Configuration
Directives
in
the
36
configuration
file
LDAP
with
ldap
DIR
Includes
LDAP
Lightweight
Directory
Access
Protocol
support
The
parameter
is
the
LDAP
base
install
directory
defaults
to
usr
local
ldap
More
information
about
LDAP
can
be
found
in
37
RFC1777
and
38
RFC1778
Other
configure
options
with
mcrypt
DIR
with
mcrypt
Include
support
for
the
mcrypt
library
See
the
39
mcrypt
documentation
for
more
information
If
you
use
the
optional
DIR
argument
PHP
will
look
for
mcrypt
h
in
DIR
include
enable
sysvsem
enable
sysvsem
Include
support
for
Sys
V
semaphores
supported
by
most
Unix
derivates
See
the
40
Semaphore
and
Shared
Memory
documentation
for
more
information
enable
sysvshm
enable
sysvshm
Include
support
for
Sys
V
shared
memory
supported
by
most
Unix
derivates
See
the
41
Semaphore
and
Shared
Memory
documentation
for
more
information
with
xml
with
xml
Include
support
for
a
non
validating
XML
parser
using
James
Clark
s
42
expat
library
See
the
43
XML
function
reference
for
details
enable
maintainer
mode
enable
maintainer
mode
Turns
on
extra
dependencies
and
compiler
warnings
used
by
some
of
the
PHP
developers
with
system
regex
with
system
regex
Uses
the
system
s
regular
expression
library
rather
than
the
bundled
one
If
you
are
building
PHP
as
a
server
module
you
must
use
the
same
library
when
building
PHP
as
when
linking
the
server
Enable
this
if
the
system
s
library
provides
special
features
you
need
It
is
recommended
that
you
use
the
bundled
library
if
possible
with
config
file
path
with
config
file
path
DIR
The
path
used
to
look
for
44
the
php3
ini
file
when
PHP
starts
up
with
exec
dir
with
exec
dir
DIR
Only
allow
running
of
executables
in
DIR
when
in
safe
mode
Defaults
to
usr
local
bin
This
option
only
sets
the
default
it
may
be
changed
with
the
45
safe
mode
exec
dir
directive
in
the
46
configuration
file
later
enable
debug
enable
debug
Enables
extra
debug
information
This
makes
it
possible
to
gather
more
detailed
information
when
there
are
problems
with
PHP
Note
that
this
doesn
t
have
anything
to
do
with
debugging
facilities
or
information
available
to
PHP
scripts
enable
safe
mode
enable
safe
mode
Enables
safe
mode
by
default
This
imposes
several
restrictions
on
what
PHP
can
do
such
as
opening
only
files
within
the
document
root
Read
the
47
Security
chapter
for
more
more
information
CGI
users
should
always
enable
secure
mode
This
option
only
sets
the
default
it
may
be
enabled
or
disabled
with
the
48
safe
mode
directive
in
the
49
configuration
file
later
enable
track
vars
enable
track
vars
Makes
PHP
keep
track
of
where
GET
POST
cookie
variables
come
from
in
the
arrays
HTTP
GET
VARS
HTTP
POST
VARS
and
HTTP
COOKIE
VARS
This
option
only
sets
the
default
it
may
be
enabled
or
disabled
with
the
50
track
vars
directive
in
the
51
configuration
file
later
enable
magic
quotes
enable
magic
quotes
Enable
magic
quotes
by
default
This
option
only
sets
the
default
it
may
be
enabled
or
disabled
with
the
52
magic
quotes
runtime
directive
in
the
53
configuration
file
later
See
also
the
54
magic
quotes
gpc
and
the
55
magic
quotes
sybase
directives
enable
debugger
enable
debugger
Enables
the
internal
PHP
debugger
support
This
feature
is
still
in
an
experimental
state
See
also
the
56
Debugger
Configuration
directives
in
the
57
configuration
file
enable
discard
path
enable
discard
path
If
this
is
enabled
the
PHP
CGI
binary
can
safely
be
placed
outside
of
the
web
tree
and
people
will
not
be
able
to
circumvent
htaccess
security
Read
the
58
section
in
the
security
chapter
about
this
option
enable
bcmath
enable
bcmath
Enables
bc
style
arbitrary
precision
math
functions
See
also
the
59
bcmath
scale
option
in
the
60
configuration
file
enable
force
cgi
redirect
enable
force
cgi
redirect
Enable
the
security
check
for
internal
server
redirects
You
should
use
this
if
you
are
running
the
CGI
version
with
Apache
When
using
PHP
as
a
CGI
binary
PHP
by
default
always
first
checks
that
it
is
used
by
redirection
for
example
under
Apache
by
using
Action
directives
This
makes
sure
that
the
PHP
binary
cannot
be
used
to
bypass
standard
web
server
authentication
procedures
by
calling
it
directly
like
http
my
host
cgi
bin
php
secret
doc
html
This
example
accesses
http
my
host
secret
doc
html
but
does
not
honour
any
security
settings
enforced
by
httpd
for
directory
secret
Not
enabling
option
disables
the
check
and
enables
bypassing
httpd
security
and
authentication
settings
Do
this
only
if
your
server
software
is
unable
to
indicate
that
a
safe
redirection
was
done
and
all
your
files
under
your
document
root
and
user
directories
may
be
accessed
by
anyone
Read
the
61
section
in
the
security
chapter
about
this
option
disable
short
tags
disable
short
tags
Disables
the
short
form
PHP
tags
You
must
disable
the
short
form
if
you
want
to
use
PHP
with
XML
With
short
tags
disabled
the
only
PHP
code
tag
is
php
This
option
only
sets
the
default
it
may
be
enabled
or
disabled
with
the
62
short
open
tag
directive
in
the
63
configuration
file
later
enable
url
includes
enable
url
includes
Makes
it
possible
to
run
code
on
other
HTTP
or
FTP
servers
directly
from
PHP
with
64
include
See
also
the
65
include
path
option
in
the
66
configuration
file
disable
syntax
hl
disable
syntax
hl
Turns
off
syntax
highlighting
CPPFLAGS
and
LDFLAGS
To
make
the
PHP
installation
look
for
header
or
library
files
in
different
directories
modify
the
CPPFLAGS
and
LDFLAGS
environment
variables
respectively
If
you
are
using
a
sensible
shell
you
should
be
able
to
do
LDFLAGS
L
my
lib
dir
CPPFLAGS
I
my
include
dir
configure
Building
When
PHP
is
configured
you
are
ready
to
build
the
CGI
executable
or
the
PHP
library
The
command
make
should
take
care
of
this
If
it
fails
and
you
can
t
figure
out
why
see
the
67
Problems
section
VPATH
Testing
If
you
have
built
PHP
as
a
CGI
program
you
may
test
your
build
by
typing
make
test
It
is
always
a
good
idea
to
test
your
build
This
way
you
may
catch
a
problem
with
PHP
on
your
platform
early
instead
of
having
to
struggle
with
it
later
Benchmarking
If
you
have
built
PHP
as
a
CGI
program
you
may
benchmark
your
build
by
typing
make
bench
Note
that
if
safe
mode
is
on
by
default
the
benchmark
may
not
be
able
to
finish
if
it
takes
longer
then
the
30
seconds
allowed
This
is
because
the
68
set
time
limit
can
not
be
used
in
safe
mode
Use
the
69
max
execution
time
to
control
this
time
for
you
own
scripts
make
bench
ignores
the
70
configuration
file
71
Prev
72
Home
73
Next
Installation
74
Up
Installation
on
Windows
95
98
NT
systems
1
PHP
Manual
2
Installation
3
Installation
on
UNIX
systems
4
Problems
PHP
Manual
5
Prev
Chapter
2
Installation
6
Next
Installation
on
Windows
95
98
NT
systems
This
install
guide
will
help
you
install
and
configure
PHP
on
your
Windows
9x
NT
webservers
This
guide
was
compiled
by
7
Bob
Silva
The
latest
revision
can
be
found
at
8
http
www
umesd
k12
or
us
php
win32install
html
This
guide
provides
installation
support
for
Personal
Web
Server
Newest
version
recommended
Internet
Information
Server
3
or
4
Apache
1
3
x
Omni
HTTPd
2
0b1
Configuration
Changes
for
PHP
All
modules
are
now
prefixed
with
php3
You
will
need
to
change
your
9
php3
ini
file
and
or
any
scripts
loading
extensions
with
the
10
dl
function
or
you
could
always
remove
the
php3
prefix
This
will
prevent
confusion
between
php
modules
and
their
supporting
libraries
The
11
ChangeLog
12
FAQ
and
updated
documentation
can
always
be
found
at
the
offical
PHP
website
or
any
of
its
mirrors
General
Installation
Steps
The
following
steps
should
be
performed
on
all
installations
before
the
server
specific
instructions
Extract
the
distribution
file
to
a
directory
of
your
choice
C
PHP3
is
a
good
start
Copy
the
file
php3
dist
ini
to
your
WINDOWS
directory
and
rename
it
to
php3
ini
Your
WINDOWS
directory
is
typically
c
windows
for
Windows
95
98
c
winnt
or
c
winnt40
for
NT
servers
Edit
your
php3
ini
file
You
will
need
to
change
the
extension
dir
setting
to
point
to
your
php
install
dir
or
where
you
have
placed
your
php3
dll
files
ex
c
php3
If
you
are
using
Omni
Httpd
do
not
follow
the
next
step
Set
the
doc
root
to
point
to
your
webservers
document
root
ex
c
apache
htdocs
or
c
webroot
Choose
which
modules
you
would
like
to
load
when
PHP
starts
You
can
uncomment
the
extension
php3
dll
lines
to
load
these
modules
Some
modules
require
you
to
have
additional
libraries
installed
on
your
system
for
the
module
to
work
correctly
The
PHP
13
FAQ
has
more
information
on
where
to
get
supporting
libraries
You
can
also
load
a
module
dynamically
in
your
script
using
dl
php
dll
On
PWS
and
IIS
you
can
set
the
browscap
ini
to
point
to
c
windows
system
inetsrv
browscap
ini
on
Windows
95
98
and
c
winnt
system32
inetsrv
browscap
ini
on
NT
Server
Additional
information
on
using
the
browscap
functionality
in
PHP
can
be
found
at
this
14
mirror
select
the
source
button
to
see
it
in
action
Windows
95
98
NT
and
PWS
IIS
3
The
recommended
method
for
configuring
these
servers
is
to
use
the
INF
file
included
with
the
distribution
php
iis
reg
inf
You
may
want
to
edit
this
file
and
make
sure
the
extensions
and
PHP
install
directories
match
your
configuration
Or
you
can
follow
the
steps
below
to
do
it
manually
WARNING
These
steps
involve
working
directly
with
the
windows
registry
One
error
here
can
leave
your
system
in
an
unstable
state
We
highly
recommend
that
you
back
up
your
registry
first
The
PHP
Development
team
will
not
be
held
responsible
if
you
damage
your
registry
Run
Regedit
Navigate
to
HKEY
LOCAL
MACHINE
System
CurrentControlSet
Services
W3Svc
Parameters
ScriptMap
On
the
edit
menu
select
New
String
Value
Type
in
the
extension
you
wish
to
use
for
your
php
scripts
ex
php3
Double
click
on
the
new
string
value
and
enter
the
path
to
php
exe
in
the
value
data
field
ex
c
php3
php
exe
s
s
The
s
s
is
VERY
important
PHP
will
not
work
properly
without
it
Repeat
these
steps
for
each
extension
you
wish
to
associate
with
PHP
scripts
Now
navigate
to
HKEY
CLASSES
ROOT
On
the
edit
menu
select
New
Key
Name
the
key
to
the
extension
you
setup
in
the
previous
section
ex
php3
Highlight
the
new
key
and
in
the
right
side
pane
double
click
the
default
value
and
enter
phpfile
Repeat
the
last
step
for
each
extension
you
set
up
in
the
previous
section
Now
create
another
New
Key
under
HKEY
CLASSES
ROOT
and
name
it
phpfile
Highlight
the
new
key
phpfile
and
in
the
right
side
pane
double
click
the
default
value
and
enter
PHP
Script
Right
click
on
the
phpfile
key
and
select
New
Key
name
it
Shell
Right
click
on
the
Shell
key
and
select
New
Key
name
it
open
Right
click
on
the
open
key
and
select
New
Key
name
it
command
Highlight
the
new
key
command
and
in
the
right
side
pane
double
click
the
default
value
and
enter
the
path
to
php
exe
ex
c
php3
php
exe
q
1
don
t
forget
the
1
Exit
Regedit
PWS
and
IIS
3
users
now
have
a
fully
operational
system
IIS
3
users
can
use
a
nifty
15
tool
from
Steven
Genusa
to
configure
their
script
maps
Windows
NT
and
IIS
4
To
install
PHP
on
an
NT
Server
running
IIS
4
follow
these
instructions
In
Internet
Service
Manager
MMC
select
the
Web
site
or
the
starting
point
directory
of
an
application
Open
the
directory
s
property
sheets
by
right
clicking
and
selecting
properties
and
then
click
the
Home
Directory
Virtual
Directory
or
Directory
tab
Click
the
Configuration
button
and
then
click
the
App
Mappings
tab
Click
Add
and
in
the
Executable
box
type
c
path
to
php
dir
php
exe
s
s
You
MUST
have
the
s
s
on
the
end
PHP
will
not
function
properly
if
you
fail
to
do
this
In
the
Extension
box
type
the
file
name
extension
you
want
associated
with
PHP
scripts
You
must
repeat
step
5
and
6
for
each
extension
you
want
accociated
with
PHP
scripts
php3
and
phtml
are
common
Set
up
the
appropriate
security
This
is
done
in
Internet
Service
Manager
and
if
your
NT
Server
uses
NTFS
file
system
add
execute
rights
for
I
USR
to
the
directory
that
contains
php
exe
Windows
9x
NT
and
Apache
1
3
x
You
must
edit
your
srm
conf
or
httpd
conf
to
configure
Apache
to
work
with
the
PHP
CGI
binary
Although
there
can
be
a
few
variations
of
configuring
PHP
under
Apache
this
one
is
simple
enough
to
be
used
by
the
newcomer
Please
consult
the
Apache
Docs
for
further
configuration
directives
ScriptAlias
php3
c
path
to
php
dir
AddType
application
x
httpd
php3
php3
AddType
application
x
httpd
php3
phtml
Action
application
x
httpd
php3
php3
php
exe
To
use
the
source
code
highlighting
feature
simply
create
a
PHP
script
file
and
stick
this
code
in
php
show
source
original
php
script
php3
Substitute
original
php
script
php3
with
the
name
of
the
file
you
wish
to
show
the
source
of
this
is
only
one
way
of
doing
it
Note
On
Win
Apache
all
back
slashes
in
a
path
statement
such
as
c
directory
file
ext
must
be
converted
to
forward
slashes
Omni
HTTPd
2
0b1
for
Windows
This
has
got
to
be
the
easiest
config
there
is
Step
1
Install
Omni
server
Step
2
Right
click
on
the
blue
OmniHTTPd
icon
in
the
system
tray
and
select
Properties
Step
3
Click
on
Web
Server
Global
Settings
Step
4
On
the
External
tab
enter
virtual
php3
actual
c
path
to
php
dir
php
exe
Step
5
On
the
Mime
tab
enter
virtual
wwwserver
stdcgi
actual
php3
Step
6
Click
OK
Repeat
steps
2
6
for
each
extension
you
want
to
associate
with
PHP
PHP
Modules
Table
2
1
PHP
Modules
php3
calendar
dll
Calendar
conversion
functions
php3
crypt
dll
Crypt
functions
php3
dbase
dll
DBase
functions
php3
dbm
dll
GDBM
emulation
via
Berkely
DB2
library
php3
filepro
dll
READ
ONLY
access
to
filepro
databases
php3
gd
dll
GD
Library
functions
for
gif
manipulation
php3
hyperwave
dll
HyperWave
functions
php3
imap4r2
dll
IMAP
4
functions
php3
ldap
dll
LDAP
functions
php3
msql1
dll
mSQL
1
client
php3
msql2
dll
mSQL
2
client
php3
mssql
dll
MSSQL
client
requires
MSSQL
DB
Libraries
php3
mysql
dll
MySQL
functions
php3
nsmail
dll
Netscape
mail
functions
php3
oci73
dll
Oracle
functions
php3
snmp
dll
SNMP
get
and
walk
functions
NT
only
php3
zlib
dll
ZLib
functions
16
Prev
17
Home
18
Next
Installation
on
UNIX
systems
19
Up
Problems
1
PHP
Manual
2
Installation
3
Installation
on
Windows
95
98
NT
systems
4
Configuration
PHP
Manual
5
Prev
Chapter
2
Installation
6
Next
Problems
Read
the
FAQ
Some
problems
are
more
common
than
others
The
most
common
ones
are
listed
in
the
PHP
FAQ
found
at
7
http
www
php
net
FAQ
php3
Bug
reports
If
you
think
you
have
found
a
bug
in
PHP
please
report
it
The
PHP
developers
probably
don
t
know
about
it
and
unless
you
report
it
chances
are
it
won
t
be
fixed
You
can
report
bugs
using
the
bug
tracking
system
at
8
http
www
php
net
bugs
php3
Other
problems
If
you
are
still
stuck
someone
on
the
PHP
mailing
list
may
be
able
to
help
you
You
should
check
out
the
archive
first
in
case
someone
already
answered
someone
else
who
had
the
same
problem
as
you
The
archives
are
available
from
the
support
page
on
9
http
www
php
net
To
subscribe
to
the
PHP
mailing
list
send
an
empty
mail
to
10
php3
subscribe
lists
php
net
The
mailing
list
address
is
php3
lists
php
net
If
you
want
to
get
help
on
the
mailing
list
please
try
to
be
precise
and
give
the
necessary
details
about
your
environment
which
operating
system
what
PHP
version
what
web
server
if
you
are
running
PHP
as
CGI
or
a
server
module
etc
and
preferably
enough
code
to
make
others
able
to
reproduce
and
test
your
problem
11
Prev
12
Home
13
Next
Installation
on
Windows
95
98
NT
systems
14
Up
Configuration
1
PHP
Manual
2
Getting
Started
3
Problems
4
Apache
Module
PHP
Manual
5
Prev
6
Next
Chapter
3
Configuration
Table
of
Contents
7
The
php3
ini
file
8
Apache
Module
9
CGI
10
Virtual
hosts
11
Security
The
php3
ini
file
The
php3
ini
file
is
read
when
PHP
s
parser
starts
up
For
the
server
module
versions
of
PHP
this
happens
only
once
when
the
web
server
is
started
For
the
CGI
version
it
happens
on
every
invocation
Just
about
every
directive
listed
here
has
a
corresponding
Apache
httpd
conf
directive
Simply
prepend
php3
to
the
start
of
the
directive
names
listed
here
You
can
view
the
settings
of
most
of
the
configuration
values
in
the
output
of
12
phpinfo
General
Configuration
Directives
auto
append
file
string
Specifies
the
name
of
a
file
that
is
automatically
parsed
after
the
main
file
The
file
is
included
as
if
it
was
called
with
the
13
include
function
so
14
include
path
is
used
The
special
value
none
disables
auto
appending
Note
If
the
script
is
terminated
with
15
exit
auto
append
will
not
occur
auto
prepend
file
string
Specifies
the
name
of
a
file
that
is
automatically
parsed
before
the
main
file
The
file
is
included
as
if
it
was
called
with
the
16
include
function
so
17
include
path
is
used
The
special
value
none
disables
auto
prepending
cgi
ext
string
display
errors
boolean
This
determines
whether
errors
should
be
printed
to
the
screen
as
part
of
the
HTML
output
or
not
doc
root
string
PHP
s
root
directory
on
the
server
Only
used
if
non
empty
If
PHP
is
configured
with
18
safe
mode
no
files
outside
this
directory
are
served
engine
boolean
This
directive
is
really
only
useful
in
the
Apache
module
version
of
PHP
It
is
used
by
sites
that
would
like
to
turn
PHP
parsing
on
and
off
on
a
per
directory
or
per
virtual
server
basis
By
putting
php3
engine
off
in
the
appropriate
places
in
the
httpd
conf
file
PHP
can
be
enabled
or
disabled
error
log
string
Name
of
file
where
script
errors
should
be
logged
If
the
special
value
syslog
is
used
the
errors
are
sent
to
the
system
logger
instead
On
UNIX
this
means
syslog
3
and
on
Windows
NT
it
means
the
event
log
The
system
logger
is
not
supported
on
Windows
95
error
reporting
integer
Set
the
error
reporting
level
The
parameter
is
an
integer
representing
a
bit
field
Add
the
values
of
the
error
reporting
levels
you
want
Table
3
1
Error
Reporting
Levels
bit
value
enabled
reporting
1
normal
errors
2
normal
warnings
4
parser
errors
8
non
critical
style
related
warnings
The
default
value
for
this
directive
is
7
normal
errors
normal
warnings
and
parser
errors
are
shown
open
basedir
string
Limit
the
files
that
can
be
opened
by
PHP
to
the
specified
directory
tree
When
a
script
tries
to
open
a
file
with
for
example
fopen
or
gzopen
the
location
of
the
file
is
checked
When
the
file
is
outside
the
specified
directory
tree
PHP
will
refuse
to
open
it
All
symbolic
links
are
resolved
so
it
s
not
possible
to
avoid
this
restriction
with
a
symlink
The
special
value
indicates
that
the
directory
in
which
the
script
is
stored
will
be
used
as
base
directory
Under
Windows
separate
the
directories
with
a
semicolon
On
all
other
systems
separate
the
directories
with
a
colon
As
an
Apache
module
open
basedir
paths
from
parent
directories
are
now
automatically
inherited
Note
Support
for
multiple
directories
was
added
in
3
0
7
The
default
is
to
allow
all
files
to
be
opened
gpc
order
string
Set
the
order
of
GET
POST
COOKIE
variable
parsing
The
default
setting
of
this
directive
is
GPC
Setting
this
to
GP
for
example
will
cause
PHP
to
completely
ignore
cookies
and
to
overwrite
any
GET
method
variables
with
POST
method
variables
of
the
same
name
ignore
user
abort
string
Off
by
default
If
changed
to
On
scripts
will
run
to
completion
even
if
the
remote
client
disconnects
in
the
middle
See
also
19
ignore
user
abort
include
path
string
Specifies
a
list
of
directories
where
the
20
require
21
include
and
fopen
with
path
functions
look
for
files
The
format
is
like
the
system
s
PATH
environment
variable
a
list
of
directories
separated
with
a
colon
in
UNIX
or
semicolon
in
Windows
Example
3
1
UNIX
include
path
include
path
home
httpd
php
lib
Example
3
2
Windows
include
path
include
path
c
www
phplib
The
default
value
for
this
directive
is
only
the
current
directory
isapi
ext
string
log
errors
boolean
Tells
whether
script
error
messages
should
be
logged
to
the
server
s
error
log
This
option
is
thus
server
specific
magic
quotes
gpc
boolean
Sets
the
magic
quotes
state
for
GPC
Get
Post
Cookie
operations
When
magic
quotes
are
on
all
single
quote
double
quote
backslash
and
NUL
s
are
escaped
with
a
backslash
automatically
If
magic
quotes
sybase
is
also
on
a
single
quote
is
escaped
with
a
single
quote
instead
of
a
backslash
magic
quotes
runtime
boolean
If
magic
quotes
runtime
is
enabled
most
functions
that
return
data
from
any
sort
of
external
source
including
databases
and
text
files
will
have
quotes
escaped
with
a
backslash
If
magic
quotes
sybase
is
also
on
a
single
quote
is
escaped
with
a
single
quote
instead
of
a
backslash
magic
quotes
sybase
boolean
If
magic
quotes
sybase
is
also
on
a
single
quote
is
escaped
with
a
single
quote
instead
of
a
backslash
if
magic
quotes
gpc
or
magic
quotes
runtime
is
enabled
max
execution
time
integer
This
sets
the
maximum
time
in
seconds
a
script
is
allowed
to
take
before
it
is
terminated
by
the
parser
This
helps
prevent
poorly
written
scripts
from
tieing
up
the
server
memory
limit
integer
This
sets
the
maximum
amount
of
memory
in
bytes
that
a
script
is
allowed
to
allocate
This
helps
prevent
poorly
written
scripts
for
eating
up
all
available
memory
on
a
server
nsapi
ext
string
short
open
tag
boolean
Tells
whether
the
short
form
of
PHP
s
open
tag
should
be
allowed
If
you
want
to
use
PHP
in
combination
with
XML
you
have
to
disable
this
option
If
disabled
you
must
use
the
long
form
of
the
open
tag
php
sql
safe
mode
boolean
track
errors
boolean
If
enabled
the
last
error
message
will
always
be
present
in
the
global
variable
php
errormsg
track
vars
boolean
If
enabled
GET
POST
and
cookie
input
can
be
found
in
the
global
associative
arrays
HTTP
GET
VARS
HTTP
POST
VARS
and
HTTP
COOKIE
VARS
respectively
upload
tmp
dir
string
The
temporary
directory
used
for
storing
files
when
doing
file
upload
Must
be
writable
by
whatever
user
PHP
is
running
as
user
dir
string
The
base
name
of
the
directory
used
on
a
user
s
home
directory
for
PHP
files
for
example
public
html
warn
plus
overloading
boolean
If
enabled
this
option
makes
PHP
output
a
warning
when
the
plus
operator
is
used
on
strings
This
is
to
make
it
easier
to
find
scripts
that
need
to
be
rewritten
to
using
the
string
concatenator
instead
Mail
Configuration
Directives
SMTP
string
DNS
name
or
IP
address
of
the
SMTP
server
PHP
under
Windows
should
use
for
mail
sent
with
the
22
mail
function
sendmail
from
string
Which
From
mail
address
should
be
used
in
mail
sent
from
PHP
under
Windows
sendmail
path
string
Where
the
sendmail
program
can
be
found
usually
usr
sbin
sendmail
or
usr
lib
sendmail
configure
does
an
honest
attempt
of
locating
this
one
for
you
and
set
a
default
but
if
it
fails
you
can
set
it
here
Systems
not
using
sendmail
should
set
this
directive
to
the
sendmail
wrapper
replacement
their
mail
system
offers
if
any
For
example
23
Qmail
users
can
normally
set
it
to
var
qmail
bin
sendmail
Safe
Mode
Configuration
Directives
safe
mode
boolean
Whether
to
enable
PHP
s
safe
mode
Read
the
24
Security
chapter
for
more
more
information
safe
mode
exec
dir
string
If
PHP
is
used
in
safe
mode
25
system
and
the
other
functions
executing
system
programs
refuse
to
start
programs
that
are
not
in
this
directory
Debugger
Configuration
Directives
debugger
host
string
DNS
name
or
IP
address
of
host
used
by
the
debugger
debugger
port
string
Port
number
used
by
the
debugger
debugger
enabled
boolean
Whether
the
debugger
is
enabled
Extension
Loading
Directives
enable
dl
boolean
This
directive
is
really
only
useful
in
the
Apache
module
version
of
PHP
You
can
turn
dynamic
loading
of
PHP
extensions
with
26
dl
on
and
off
per
virtual
server
or
per
directory
The
main
reason
for
turning
dynamic
loading
off
is
security
With
dynamic
loading
it
s
possible
to
ignore
all
the
safe
mode
and
open
basedir
restrictions
The
default
is
to
allow
dynamic
loading
except
when
using
safe
mode
In
safe
mode
it
s
always
imposible
to
use
27
dl
extension
dir
string
In
what
directory
PHP
should
look
for
dynamically
loadable
extensions
extension
string
Which
dynamically
loadable
extensions
to
load
when
PHP
starts
up
MySQL
Configuration
Directives
mysql
allow
persistent
boolean
Whether
to
allow
persistent
MySQL
connections
mysql
max
persistent
integer
The
maximum
number
of
persistent
MySQL
connections
per
process
mysql
max
links
integer
The
maximum
number
of
MySQL
connections
per
process
including
persistent
connections
mSQL
Configuration
Directives
msql
allow
persistent
boolean
Whether
to
allow
persistent
mSQL
connections
msql
max
persistent
integer
The
maximum
number
of
persistent
mSQL
connections
per
process
msql
max
links
integer
The
maximum
number
of
mSQL
connections
per
process
including
persistent
connections
Postgres
Configuration
Directives
pgsql
allow
persistent
boolean
Whether
to
allow
persistent
Postgres
connections
pgsql
max
persistent
integer
The
maximum
number
of
persistent
Postgres
connections
per
process
pgsql
max
links
integer
The
maximum
number
of
Postgres
connections
per
process
including
persistent
connections
Sybase
Configuration
Directives
sybase
allow
persistent
boolean
Whether
to
allow
persistent
Sybase
connections
sybase
max
persistent
integer
The
maximum
number
of
persistent
Sybase
connections
per
process
sybase
max
links
integer
The
maximum
number
of
Sybase
connections
per
process
including
persistent
connections
Sybase
CT
Configuration
Directives
sybct
allow
persistent
boolean
Whether
to
allow
persistent
Sybase
CT
connections
The
default
is
on
sybct
max
persistent
integer
The
maximum
number
of
persistent
Sybase
CT
connections
per
process
The
default
is
1
meaning
unlimited
sybct
max
links
integer
The
maximum
number
of
Sybase
CT
connections
per
process
including
persistent
connections
The
default
is
1
meaning
unlimited
sybct
min
server
severity
integer
Server
messages
with
severity
greater
than
or
equal
to
sybct
min
server
severity
will
be
reported
as
warnings
This
value
can
also
be
set
from
a
script
by
calling
sybase
min
server
severity
The
default
is
10
which
reports
errors
of
information
severity
or
greater
sybct
min
client
severity
integer
Client
library
messages
with
severity
greater
than
or
equal
to
sybct
min
client
severity
will
be
reported
as
warnings
This
value
can
also
be
set
from
a
script
by
calling
sybase
min
client
severity
The
default
is
10
which
effectively
disables
reporting
sybct
login
timeout
integer
The
maximum
time
in
seconds
to
wait
for
a
connection
attempt
to
succeed
before
returning
failure
Note
that
if
max
execution
time
has
been
exceeded
when
a
connection
attempt
times
out
your
script
will
be
terminated
before
it
can
take
action
on
failure
The
default
is
one
minute
sybct
timeout
integer
The
maximum
time
in
seconds
to
wait
for
a
select
db
or
query
operation
to
succeed
before
returning
failure
Note
that
if
max
execution
time
has
been
exceeded
when
am
operation
times
out
your
script
will
be
terminated
before
it
can
take
action
on
failure
The
default
is
no
limit
sybct
hostname
string
The
name
of
the
host
you
claim
to
be
connecting
from
for
display
by
sp
who
The
default
is
none
Informix
Configuration
Directives
ifx
allow
persistent
boolean
Whether
to
allow
persistent
Informix
connections
ifx
max
persistent
integer
The
maximum
number
of
persistent
Informix
connections
per
process
ifx
max
links
integer
The
maximum
number
of
Informix
connections
per
process
including
persistent
connections
ifx
default
host
string
The
default
host
to
connect
to
when
no
host
is
specified
in
28
ifx
connect
or
29
ifx
pconnect
ifx
default
user
string
The
default
user
id
to
use
when
none
is
specified
in
30
ifx
connect
or
31
ifx
pconnect
ifx
default
password
string
The
default
password
to
use
when
none
is
specified
in
32
ifx
connect
or
33
ifx
pconnect
ifx
blobinfile
boolean
Set
to
true
if
you
want
to
return
blob
columns
in
a
file
false
if
you
want
them
in
memory
You
can
override
the
setting
at
runtime
with
34
ifx
blobinfile
mode
ifx
textasvarchar
boolean
Set
to
true
if
you
want
to
return
TEXT
columns
as
normal
strings
in
select
statements
false
if
you
want
to
use
blob
id
parameters
You
can
override
the
setting
at
runtime
with
35
ifx
textasvarchar
ifx
byteasvarchar
boolean
Set
to
true
if
you
want
to
return
BYTE
columns
as
normal
strings
in
select
queries
false
if
you
want
to
use
blob
id
parameters
You
can
override
the
setting
at
runtime
with
36
ifx
textasvarchar
ifx
charasvarchar
boolean
Set
to
true
if
you
want
to
trim
trailing
spaces
from
CHAR
columns
when
fetching
them
ifx
nullformat
boolean
Set
to
true
if
you
want
to
return
NULL
columns
as
the
literal
string
NULL
false
if
you
want
them
returned
as
the
empty
string
You
can
override
this
setting
at
runtime
with
37
ifx
nullformat
BC
Math
Configuration
Directives
bcmath
scale
integer
Number
of
decimal
digits
for
all
bcmath
functions
Browser
Capability
Configuration
Directives
browscap
string
Name
of
browser
capabilities
file
Unified
ODBC
Configuration
Directives
uodbc
default
db
string
ODBC
data
source
to
use
if
none
is
specified
in
38
odbc
connect
or
39
odbc
pconnect
uodbc
default
user
string
User
name
to
use
if
none
is
specified
in
40
odbc
connect
or
41
odbc
pconnect
uodbc
default
pw
string
Password
to
use
if
none
is
specified
in
42
odbc
connect
or
43
odbc
pconnect
uodbc
allow
persistent
boolean
Whether
to
allow
persistent
ODBC
connections
uodbc
max
persistent
integer
The
maximum
number
of
persistent
ODBC
connections
per
process
uodbc
max
links
integer
The
maximum
number
of
ODBC
connections
per
process
including
persistent
connections
44
Prev
45
Home
46
Next
Problems
47
Up
Apache
Module
1
PHP
Manual
2
Configuration
3
Configuration
4
CGI
PHP
Manual
5
Prev
Chapter
3
Configuration
6
Next
Apache
Module
Apache
module
configuration
directives
CGI
redirection
module
action
module
7
Prev
8
Home
9
Next
Configuration
10
Up
CGI
1
PHP
Manual
2
Configuration
3
Apache
Module
4
Virtual
hosts
PHP
Manual
5
Prev
Chapter
3
Configuration
6
Next
CGI
7
Prev
8
Home
9
Next
Apache
Module
10
Up
Virtual
hosts
1
PHP
Manual
2
Configuration
3
CGI
4
Security
PHP
Manual
5
Prev
Chapter
3
Configuration
6
Next
Virtual
hosts
7
Prev
8
Home
9
Next
CGI
10
Up
Security
1
PHP
Manual
2
Configuration
3
Virtual
hosts
4
Security
PHP
Manual
5
Prev
Chapter
3
Configuration
6
Next
Security
PHP
is
a
powerful
language
and
the
interpreter
whether
included
in
a
web
server
as
a
module
or
executed
as
a
separate
CGI
binary
is
able
to
access
files
execute
commands
and
open
network
connections
on
the
server
These
properties
make
anything
run
on
a
web
server
insecure
by
default
PHP
is
designed
specifically
to
be
a
more
secure
language
for
writing
CGI
programs
than
Perl
or
C
and
with
correct
selection
of
compile
time
and
runtime
configuration
options
it
gives
you
exactly
the
combination
of
freedom
and
security
you
need
As
there
are
many
different
ways
of
utilizing
PHP
there
are
many
configuration
options
controlling
its
behaviour
A
large
selection
of
options
guarantees
you
can
use
PHP
for
a
lot
of
purposes
but
it
also
means
there
are
combinations
of
these
options
and
server
configurations
that
result
in
an
insecure
setup
This
chapter
explains
the
different
configuration
option
combinations
and
the
situations
they
can
be
safely
used
CGI
binary
Possible
attacks
Using
PHP
as
a
CGI
binary
is
an
option
for
setups
that
for
some
reason
do
not
wish
to
integrate
PHP
as
a
module
into
server
software
like
Apache
or
will
use
PHP
with
different
kinds
of
CGI
wrappers
to
create
safe
chroot
and
setuid
environments
for
scripts
This
setup
usually
involves
installing
executable
PHP
binary
to
the
web
server
cgi
bin
directory
CERT
advisory
7
CA
96
11
recommends
agains
placing
any
interpreters
into
cgi
bin
Even
if
the
PHP
binary
can
be
used
as
a
standalone
interpreter
PHP
is
designed
to
prevent
the
attacks
this
setup
makes
possible
Accessing
system
files
http
my
host
cgi
bin
php
etc
passwd
The
query
information
in
an
url
after
the
question
mark
is
passed
as
command
line
arguments
to
the
interpreter
by
the
CGI
interface
Usually
interpreters
open
and
execute
the
file
specified
as
the
first
argument
on
the
command
line
When
invoked
as
a
CGI
binary
PHP
refuses
to
interpret
the
command
line
arguments
Accessing
any
web
document
on
server
http
my
host
cgi
bin
php
secret
doc
html
The
path
information
part
of
the
url
after
the
PHP
binary
name
secret
doc
html
is
conventionally
used
to
specify
the
name
of
the
file
to
be
opened
and
interpreted
by
the
CGI
program
Usually
some
web
server
configuration
directives
Apache
Action
are
used
to
redirect
requests
to
documents
like
http
my
host
secret
script
php3
to
the
PHP
interpreter
With
this
setup
the
web
server
first
checks
the
access
permissions
to
the
directory
secret
and
after
that
creates
the
redirected
request
http
my
host
cgi
bin
php
secret
script
php3
Unfortunately
if
the
request
is
originally
given
in
this
form
no
access
checks
are
made
by
web
server
for
file
secret
script
php3
but
only
for
the
cgi
bin
php
file
This
way
any
user
able
to
access
cgi
bin
php
is
able
to
access
any
protected
document
on
the
web
server
In
PHP
compile
time
configuration
option
8
enable
force
cgi
redirect
and
runtime
configuration
directives
9
doc
root
and
10
user
dir
can
be
used
to
prevent
this
attack
if
the
server
document
tree
has
any
directories
with
access
restrictions
See
below
for
full
explanation
of
different
combinations
Case
1
only
public
files
served
If
your
server
does
not
have
any
content
that
is
not
restricted
by
password
or
ip
based
access
control
there
is
no
need
for
these
configuration
options
If
your
web
server
does
not
allow
you
to
do
redirects
or
the
server
does
not
have
a
way
to
communicate
with
the
PHP
binary
that
the
request
is
a
safely
redirected
request
you
can
specify
the
option
11
disable
force
cgi
redirect
to
the
configure
script
You
still
have
to
make
sure
your
PHP
scripts
do
not
rely
on
one
or
another
way
of
calling
the
script
neither
by
directly
http
my
host
cgi
bin
php
dir
script
php3
nor
by
redirection
http
my
host
dir
script
php3
Redirection
can
be
configured
for
example
in
apache
by
directives
AddHandler
and
Action
see
below
Case
2
using
enable
force
cgi
redirect
This
compile
time
option
prevents
anyone
from
calling
PHP
directly
with
a
url
like
http
my
host
cgi
bin
php
secretdir
script
php3
Instead
PHP
will
only
parse
in
this
mode
if
it
has
gone
through
a
web
server
redirect
rule
Usually
the
redirection
in
the
Apache
configuration
is
done
with
the
following
directives
Action
php3
script
cgi
bin
php
AddHandler
php3
script
php3
This
option
has
only
been
tested
with
the
Apache
web
server
and
relies
on
Apache
to
set
the
non
standard
CGI
environment
variable
REDIRECT
STATUS
on
redirected
requests
If
your
web
server
does
not
support
any
way
of
telling
if
the
request
is
direct
or
redirected
you
cannot
use
this
option
and
you
must
use
one
of
the
other
ways
of
running
the
CGI
version
documented
here
Case
3
setting
doc
root
or
user
dir
To
include
active
content
like
scripts
and
executables
in
the
web
server
document
directories
is
sometimes
consider
an
insecure
practice
If
for
some
configuration
mistake
the
scripts
are
not
executed
but
displayed
as
usual
HTML
documents
this
may
result
in
leakage
of
intellectual
property
or
security
information
like
passwords
Therefore
many
sysadmins
will
prefer
setting
up
another
directory
structure
for
scripts
that
is
only
accessible
through
the
PHP
CGI
and
therefore
always
interpreted
and
not
displayed
as
such
Also
if
the
method
for
making
sure
the
requests
are
not
redirected
as
described
in
the
previous
section
is
not
available
it
is
necessary
to
set
up
a
script
doc
root
that
is
different
from
web
document
root
You
can
set
the
PHP
script
document
root
by
the
configuration
directive
12
doc
root
in
the
13
php3
ini
file
or
you
can
set
the
environment
variable
PHP
DOCUMENT
ROOT
If
it
is
set
the
CGI
version
of
PHP
will
always
construct
the
file
name
to
open
with
this
doc
root
and
the
path
information
in
the
request
so
you
can
be
sure
no
script
is
executed
outside
this
directory
except
for
user
dir
below
Another
option
usable
here
is
14
user
dir
When
user
dir
is
unset
only
thing
controlling
the
opened
file
name
is
doc
root
Opening
an
url
like
http
my
host
user
doc
php3
does
not
result
in
opening
a
file
under
users
home
directory
but
a
file
called
user
doc
php3
under
doc
root
yes
a
directory
name
starting
with
a
tilde
If
user
dir
is
set
to
for
example
public
php
a
request
like
http
my
host
user
doc
php3
will
open
a
file
called
doc
php3
under
the
directory
named
public
php
under
the
home
directory
of
the
user
If
the
home
of
the
user
is
home
user
the
file
executed
is
home
user
public
php
doc
php3
user
dir
expansion
happens
regardless
of
the
doc
root
setting
so
you
can
control
the
document
root
and
user
directory
access
separately
Case
4
PHP
parser
outside
of
web
tree
A
very
secure
option
is
to
put
the
PHP
parser
binary
somewhere
outside
of
the
web
tree
of
files
In
usr
local
bin
for
example
The
only
real
downside
to
this
option
is
that
you
will
now
have
to
put
a
line
similar
to
usr
local
bin
php
as
the
first
line
of
any
file
containing
PHP
tags
You
will
also
need
to
make
the
file
executable
That
is
treat
it
exactly
as
you
would
treat
any
other
CGI
script
written
in
Perl
or
sh
or
any
other
common
scripting
language
which
uses
the
shell
escape
mechanism
for
launching
itself
To
get
PHP
to
handle
PATH
INFO
and
PATH
TRANSLATED
information
correctly
with
this
setup
the
php
parser
should
be
compiled
with
the
15
enable
discard
path
configure
option
Apache
module
When
PHP
is
used
as
an
Apache
module
it
inherits
Apache
s
user
permissions
typically
those
of
the
nobody
user
16
Prev
17
Home
18
Next
Virtual
hosts
19
Up
Security
1
PHP
Manual
2
Getting
Started
3
Security
4
Apache
module
PHP
Manual
5
Prev
6
Next
Chapter
4
Security
Table
of
Contents
7
CGI
binary
8
Apache
module
PHP
is
a
powerful
language
and
the
interpreter
whether
included
in
a
web
server
as
a
module
or
executed
as
a
separate
CGI
binary
is
able
to
access
files
execute
commands
and
open
network
connections
on
the
server
These
properties
make
anything
run
on
a
web
server
insecure
by
default
PHP
is
designed
specifically
to
be
a
more
secure
language
for
writing
CGI
programs
than
Perl
or
C
and
with
correct
selection
of
compile
time
and
runtime
configuration
options
it
gives
you
exactly
the
combination
of
freedom
and
security
you
need
As
there
are
many
different
ways
of
utilizing
PHP
there
are
many
configuration
options
controlling
its
behaviour
A
large
selection
of
options
guarantees
you
can
use
PHP
for
a
lot
of
purposes
but
it
also
means
there
are
combinations
of
these
options
and
server
configurations
that
result
in
an
insecure
setup
This
chapter
explains
the
different
configuration
option
combinations
and
the
situations
they
can
be
safely
used
CGI
binary
Possible
attacks
Using
PHP
as
a
CGI
binary
is
an
option
for
setups
that
for
some
reason
do
not
wish
to
integrate
PHP
as
a
module
into
server
software
like
Apache
or
will
use
PHP
with
different
kinds
of
CGI
wrappers
to
create
safe
chroot
and
setuid
environments
for
scripts
This
setup
usually
involves
installing
executable
PHP
binary
to
the
web
server
cgi
bin
directory
CERT
advisory
9
CA
96
11
recommends
agains
placing
any
interpreters
into
cgi
bin
Even
if
the
PHP
binary
can
be
used
as
a
standalone
interpreter
PHP
is
designed
to
prevent
the
attacks
this
setup
makes
possible
Accessing
system
files
http
my
host
cgi
bin
php
etc
passwd
The
query
information
in
an
url
after
the
question
mark
is
passed
as
command
line
arguments
to
the
interpreter
by
the
CGI
interface
Usually
interpreters
open
and
execute
the
file
specified
as
the
first
argument
on
the
command
line
When
invoked
as
a
CGI
binary
PHP
refuses
to
interpret
the
command
line
arguments
Accessing
any
web
document
on
server
http
my
host
cgi
bin
php
secret
doc
html
The
path
information
part
of
the
url
after
the
PHP
binary
name
secret
doc
html
is
conventionally
used
to
specify
the
name
of
the
file
to
be
opened
and
interpreted
by
the
CGI
program
Usually
some
web
server
configuration
directives
Apache
Action
are
used
to
redirect
requests
to
documents
like
http
my
host
secret
script
php3
to
the
PHP
interpreter
With
this
setup
the
web
server
first
checks
the
access
permissions
to
the
directory
secret
and
after
that
creates
the
redirected
request
http
my
host
cgi
bin
php
secret
script
php3
Unfortunately
if
the
request
is
originally
given
in
this
form
no
access
checks
are
made
by
web
server
for
file
secret
script
php3
but
only
for
the
cgi
bin
php
file
This
way
any
user
able
to
access
cgi
bin
php
is
able
to
access
any
protected
document
on
the
web
server
In
PHP
compile
time
configuration
option
10
enable
force
cgi
redirect
and
runtime
configuration
directives
11
doc
root
and
12
user
dir
can
be
used
to
prevent
this
attack
if
the
server
document
tree
has
any
directories
with
access
restrictions
See
below
for
full
explanation
of
different
combinations
Case
1
only
public
files
served
If
your
server
does
not
have
any
content
that
is
not
restricted
by
password
or
ip
based
access
control
there
is
no
need
for
these
configuration
options
If
your
web
server
does
not
allow
you
to
do
redirects
or
the
server
does
not
have
a
way
to
communicate
with
the
PHP
binary
that
the
request
is
a
safely
redirected
request
you
can
specify
the
option
13
disable
force
cgi
redirect
to
the
configure
script
You
still
have
to
make
sure
your
PHP
scripts
do
not
rely
on
one
or
another
way
of
calling
the
script
neither
by
directly
http
my
host
cgi
bin
php
dir
script
php3
nor
by
redirection
http
my
host
dir
script
php3
Redirection
can
be
configured
in
Apache
by
using
AddHandler
and
Action
directives
see
below
Case
2
using
enable
force
cgi
redirect
This
compile
time
option
prevents
anyone
from
calling
PHP
directly
with
a
url
like
http
my
host
cgi
bin
php
secretdir
script
php3
Instead
PHP
will
only
parse
in
this
mode
if
it
has
gone
through
a
web
server
redirect
rule
Usually
the
redirection
in
the
Apache
configuration
is
done
with
the
following
directives
Action
php3
script
cgi
bin
php
AddHandler
php3
script
php3
This
option
has
only
been
tested
with
the
Apache
web
server
and
relies
on
Apache
to
set
the
non
standard
CGI
environment
variable
REDIRECT
STATUS
on
redirected
requests
If
your
web
server
does
not
support
any
way
of
telling
if
the
request
is
direct
or
redirected
you
cannot
use
this
option
and
you
must
use
one
of
the
other
ways
of
running
the
CGI
version
documented
here
Case
3
setting
doc
root
or
user
dir
To
include
active
content
like
scripts
and
executables
in
the
web
server
document
directories
is
sometimes
consider
an
insecure
practice
If
for
some
configuration
mistake
the
scripts
are
not
executed
but
displayed
as
usual
HTML
documents
this
may
result
in
leakage
of
intellectual
property
or
security
information
like
passwords
Therefore
many
sysadmins
will
prefer
setting
up
another
directory
structure
for
scripts
that
is
only
accessible
through
the
PHP
CGI
and
therefore
always
interpreted
and
not
displayed
as
such
Also
if
the
method
for
making
sure
the
requests
are
not
redirected
as
described
in
the
previous
section
is
not
available
it
is
necessary
to
set
up
a
script
doc
root
that
is
different
from
web
document
root
You
can
set
the
PHP
script
document
root
by
the
configuration
directive
14
doc
root
in
the
15
php3
ini
file
or
you
can
set
the
environment
variable
PHP
DOCUMENT
ROOT
If
it
is
set
the
CGI
version
of
PHP
will
always
construct
the
file
name
to
open
with
this
doc
root
and
the
path
information
in
the
request
so
you
can
be
sure
no
script
is
executed
outside
this
directory
except
for
user
dir
below
Another
option
usable
here
is
16
user
dir
When
user
dir
is
unset
only
thing
controlling
the
opened
file
name
is
doc
root
Opening
an
url
like
http
my
host
user
doc
php3
does
not
result
in
opening
a
file
under
users
home
directory
but
a
file
called
user
doc
php3
under
doc
root
yes
a
directory
name
starting
with
a
tilde
If
user
dir
is
set
to
for
example
public
php
a
request
like
http
my
host
user
doc
php3
will
open
a
file
called
doc
php3
under
the
directory
named
public
php
under
the
home
directory
of
the
user
If
the
home
of
the
user
is
home
user
the
file
executed
is
home
user
public
php
doc
php3
user
dir
expansion
happens
regardless
of
the
doc
root
setting
so
you
can
control
the
document
root
and
user
directory
access
separately
Case
4
PHP
parser
outside
of
web
tree
A
very
secure
option
is
to
put
the
PHP
parser
binary
somewhere
outside
of
the
web
tree
of
files
In
usr
local
bin
for
example
The
only
real
downside
to
this
option
is
that
you
will
now
have
to
put
a
line
similar
to
usr
local
bin
php
as
the
first
line
of
any
file
containing
PHP
tags
You
will
also
need
to
make
the
file
executable
That
is
treat
it
exactly
as
you
would
treat
any
other
CGI
script
written
in
Perl
or
sh
or
any
other
common
scripting
language
which
uses
the
shell
escape
mechanism
for
launching
itself
To
get
PHP
to
handle
PATH
INFO
and
PATH
TRANSLATED
information
correctly
with
this
setup
the
php
parser
should
be
compiled
with
the
17
enable
discard
path
configure
option
18
Prev
19
Home
20
Next
Security
21
Up
Apache
module
1
PHP
Manual
2
Security
3
Security
4
Language
Reference
PHP
Manual
5
Prev
Chapter
4
Security
6
Next
Apache
module
When
PHP
is
used
as
an
Apache
module
it
inherits
Apache
s
user
permissions
typically
those
of
the
nobody
user
7
Prev
8
Home
9
Next
Security
10
Up
Language
Reference
1
PHP
Manual
2
Apache
module
3
Basic
syntax
PHP
Manual
4
Prev
5
Next
II
Language
Reference
Table
of
Contents
5
6
Basic
syntax
6
7
Types
7
8
Variables
8
9
Constants
9
10
Expressions
10
11
Operators
11
12
Control
Structures
12
13
Functions
13
14
Classes
and
Objects
15
Prev
16
Home
17
Next
Apache
module
Basic
syntax
1
PHP
Manual
2
Language
Reference
3
Language
Reference
4
Instruction
separation
PHP
Manual
5
Prev
6
Next
Chapter
5
Basic
syntax
Table
of
Contents
7
Escaping
from
HTML
8
Instruction
separation
9
Comments
Escaping
from
HTML
There
are
four
ways
of
escaping
from
HTML
and
entering
PHP
code
mode
Example
5
1
Ways
of
escaping
from
HTML
1
echo
this
is
the
simplest
an
SGML
processing
instruction
n
2
php
echo
if
you
want
to
serve
XML
documents
do
like
this
n
3
script
language
php
echo
some
editors
like
FrontPage
don
t
like
processing
instructions
script
4
echo
You
may
optionally
use
ASP
style
tags
variable
This
is
a
shortcut
for
echo
The
first
way
is
only
available
if
short
tags
have
been
enabled
either
by
calling
short
tags
they
are
configured
on
using
the
short
tags
run
time
configuration
setting
or
they
are
enabled
using
the
enable
short
tags
compile
time
configuration
setting
The
fourth
way
is
only
available
if
ASP
style
tags
have
been
enabled
using
either
the
asp
tags
configuration
setting
or
the
enable
asp
tags
compile
time
configuration
setting
Note
Support
for
ASP
style
tags
was
added
in
3
0
4
The
closing
bracket
for
the
block
will
include
the
immediately
trailing
newline
if
one
is
present
10
Prev
11
Home
12
Next
Language
Reference
13
Up
Instruction
separation
1
PHP
Manual
2
Basic
syntax
3
Basic
syntax
4
Comments
PHP
Manual
5
Prev
Chapter
5
Basic
syntax
6
Next
Instruction
separation
Instructions
are
separated
the
same
as
in
C
or
perl
terminate
each
statement
with
a
semicolon
The
closing
tag
also
implies
the
end
of
the
statement
so
the
following
are
equivalent
php
echo
This
is
a
test
php
echo
This
is
a
test
7
Prev
8
Home
9
Next
Basic
syntax
10
Up
Comments
1
PHP
Manual
2
Basic
syntax
3
Instruction
separation
4
Types
PHP
Manual
5
Prev
Chapter
5
Basic
syntax
6
Next
Comments
PHP
supports
C
C
and
Unix
shell
style
comments
For
example
php
echo
This
is
a
test
This
is
a
one
line
c
style
comment
This
is
a
multi
line
comment
yet
another
line
of
comment
echo
This
is
yet
another
test
echo
One
Final
Test
This
is
shell
style
style
comment
The
one
line
comment
styles
actually
only
comment
to
the
end
of
the
line
or
the
current
block
of
PHP
code
whichever
comes
first
h1
This
is
an
echo
simple
example
h1
p
The
header
above
will
say
This
is
an
example
You
should
be
careful
not
to
nest
C
style
comments
which
can
happen
when
commenting
out
large
blocks
php
echo
This
is
a
test
This
comment
will
cause
a
problem
7
Prev
8
Home
9
Next
Instruction
separation
10
Up
Types
1
PHP
Manual
2
Language
Reference
3
Comments
4
Floating
point
numbers
PHP
Manual
5
Prev
6
Next
Chapter
6
Types
Table
of
Contents
7
Integers
8
Floating
point
numbers
9
Strings
10
Arrays
11
Objects
12
Type
juggling
PHP
supports
the
following
types
13
integer
14
floating
point
numbers
15
string
16
array
17
object
The
type
of
a
variable
is
usually
not
set
by
the
programmer
rather
it
is
decided
at
runtime
by
PHP
depending
on
the
context
in
which
that
variable
is
used
If
you
would
like
to
force
a
variable
to
be
converted
to
a
certain
type
you
may
either
18
cast
the
variable
or
use
the
19
settype
function
on
it
Note
that
a
variable
may
behave
in
different
manners
in
certain
situations
depending
on
what
type
it
is
a
the
time
For
more
information
see
the
section
on
20
Type
Juggling
Integers
Integers
can
be
specified
using
any
of
the
following
syntaxes
a
1234
decimal
number
a
123
a
negative
number
a
0123
octal
number
equivalent
to
83
decimal
a
0x12
hexadecimal
number
equivalent
to
18
decimal
21
Prev
22
Home
23
Next
Comments
24
Up
Floating
point
numbers
1
PHP
Manual
2
Types
3
Types
4
Strings
PHP
Manual
5
Prev
Chapter
6
Types
6
Next
Floating
point
numbers
Floating
point
numbers
doubles
can
be
specified
using
any
of
the
following
syntaxes
a
1
234
a
1
2e3
7
Prev
8
Home
9
Next
Types
10
Up
Strings
1
PHP
Manual
2
Types
3
Floating
point
numbers
4
Arrays
PHP
Manual
5
Prev
Chapter
6
Types
6
Next
Strings
Strings
can
be
specified
using
one
of
two
sets
of
delimiters
If
the
string
is
enclosed
in
double
quotes
variables
within
the
string
will
be
expanded
subject
to
some
parsing
limitations
As
in
C
and
Perl
the
backslash
character
can
be
used
in
specifying
special
characters
Table
6
1
Escaped
characters
sequence
meaning
n
newline
r
carriage
t
horizontal
tab
backslash
dollar
sign
double
quote
You
can
escape
any
other
character
but
a
warning
will
be
issued
at
the
highest
warning
level
The
second
way
to
delimit
a
string
uses
the
single
quote
character
which
does
not
do
any
variable
expansion
or
backslash
processing
except
for
and
so
you
can
insert
backslashes
and
single
quotes
in
a
singly
quoted
string
String
conversion
When
a
string
is
evaluated
as
a
numeric
value
the
resulting
value
and
type
are
determined
as
follows
The
string
will
evaluate
as
a
double
if
it
contains
any
of
the
characters
e
or
E
Otherwise
it
will
evaluate
as
an
integer
The
value
is
given
by
the
initial
portion
of
the
string
If
the
string
starts
with
valid
numeric
data
this
will
be
the
value
used
Otherwise
the
value
will
be
0
zero
Valid
numeric
data
is
an
optional
sign
followed
by
one
or
more
digits
optionally
containing
a
decimal
point
followed
by
an
optional
exponent
The
exponent
is
an
e
or
E
followed
by
one
or
more
digits
When
the
first
expression
is
a
string
the
type
of
the
variable
will
depend
on
the
second
expression
foo
1
10
5
foo
is
double
11
5
foo
1
1
3e3
foo
is
double
1299
foo
1
bob
1
3e3
foo
is
integer
1
foo
1
bob3
foo
is
integer
1
foo
1
10
Small
Pigs
foo
is
integer
11
foo
1
10
Little
Piggies
foo
is
integer
11
foo
10
0
pigs
1
foo
is
integer
11
foo
10
0
pigs
1
0
foo
is
double
11
For
more
information
on
this
conversion
see
the
Unix
manual
page
for
strtod
3
7
Prev
8
Home
9
Next
Floating
point
numbers
10
Up
Arrays
1
PHP
Manual
2
Types
3
Strings
4
Objects
PHP
Manual
5
Prev
Chapter
6
Types
6
Next
Arrays
Arrays
actually
act
like
both
hash
tables
associative
arrays
and
indexed
arrays
vectors
Single
Dimension
Arrays
PHP
supports
both
scalar
and
associative
arrays
In
fact
there
is
no
difference
between
the
two
You
can
create
an
array
using
the
7
list
or
8
array
functions
or
you
can
explicitly
set
each
array
element
value
a
0
abc
a
1
def
b
foo
13
You
can
also
create
an
array
by
simply
adding
values
to
the
array
a
hello
a
2
hello
a
world
a
3
world
Arrays
may
be
sorted
using
the
9
asort
10
arsort
11
ksort
12
rsort
13
sort
14
uasort
15
usort
and
16
uksort
functions
depending
on
the
type
of
sort
you
want
You
can
count
the
number
of
items
in
an
array
using
the
17
count
function
You
can
traverse
an
array
using
18
next
and
19
prev
functions
Another
common
way
to
traverse
an
array
is
to
use
the
20
each
function
Multi
Dimensional
Arrays
Multi
dimensional
arrays
are
actually
pretty
simple
For
each
dimension
of
the
array
you
add
another
key
value
to
the
end
a
1
f
one
dimensional
examples
a
foo
f
a
1
0
f
two
dimensional
a
foo
2
f
you
can
mix
numeric
and
associative
indices
a
3
bar
f
you
can
mix
numeric
and
associative
indices
a
foo
4
bar
0
f
four
dimensional
You
can
fill
up
multi
dimensional
arrays
in
many
ways
but
the
trickiest
one
to
understand
is
how
to
use
the
21
array
command
for
associative
arrays
These
two
snippets
of
code
fill
up
the
one
dimensional
array
in
the
same
way
Example
1
a
color
red
a
taste
sweet
a
shape
round
a
name
apple
a
3
4
Example
2
a
array
color
red
taste
sweet
shape
round
name
apple
3
4
The
22
array
function
can
be
nested
for
multi
dimensional
arrays
a
array
apple
array
color
red
taste
sweet
shape
round
orange
array
color
orange
taste
sweet
shape
round
banana
array
color
yellow
taste
paste
y
shape
banana
shaped
echo
a
apple
taste
will
output
sweet
23
Prev
24
Home
25
Next
Strings
26
Up
Objects
1
PHP
Manual
2
Types
3
Arrays
4
Type
juggling
PHP
Manual
5
Prev
Chapter
6
Types
6
Next
Objects
Object
Initialization
To
initialize
an
object
you
use
the
new
statement
to
instantiate
the
object
to
a
variable
class
foo
function
do
foo
echo
Doing
foo
bar
new
foo
bar
do
foo
7
Prev
8
Home
9
Next
Arrays
10
Up
Type
juggling
1
PHP
Manual
2
Types
3
Objects
4
Variables
PHP
Manual
5
Prev
Chapter
6
Types
6
Next
Type
juggling
PHP
does
not
require
or
support
explicit
type
definition
in
variable
declaration
a
variable
s
type
is
determined
by
the
context
in
which
that
variable
is
used
That
is
to
say
if
you
assign
a
string
value
to
variable
var
var
becomes
a
string
If
you
then
assign
an
integer
value
to
var
it
becomes
an
integer
An
example
of
PHP
s
automatic
type
conversion
is
the
addition
operator
If
any
of
the
operands
is
a
double
then
all
operands
are
evaluated
as
doubles
and
the
result
will
be
a
double
Otherwise
the
operands
will
be
interpreted
as
integers
and
the
result
will
also
be
an
integer
Note
that
this
does
NOT
change
the
types
of
the
operands
themselves
the
only
change
is
in
how
the
operands
are
evaluated
foo
0
foo
is
string
ASCII
48
foo
foo
is
the
string
1
ASCII
49
foo
1
foo
is
now
an
integer
2
foo
foo
1
3
foo
is
now
a
double
3
3
foo
5
10
Little
Piggies
foo
is
integer
15
foo
5
10
Small
Pigs
foo
is
integer
15
If
the
last
two
examples
above
seem
odd
see
7
String
conversion
If
you
wish
to
force
a
variable
to
be
evaluated
as
a
certain
type
see
the
section
on
8
Type
casting
If
you
wish
to
change
the
type
of
a
variable
see
9
settype
Type
casting
Type
casting
in
PHP
works
much
as
it
does
in
C
the
name
of
the
desired
type
is
written
in
parentheses
before
the
variable
which
is
to
be
cast
foo
10
foo
is
an
integer
bar
double
foo
bar
is
a
double
The
casts
allowed
are
int
integer
cast
to
integer
real
double
float
cast
to
double
string
cast
to
string
array
cast
to
array
object
cast
to
object
Note
that
tabs
and
spaces
are
allowed
inside
the
parentheses
so
the
following
are
functionally
equivalent
foo
int
bar
foo
int
bar
10
Prev
11
Home
12
Next
Objects
13
Up
Variables
1
PHP
Manual
2
Language
Reference
3
Type
juggling
4
Variable
variables
PHP
Manual
5
Prev
6
Next
Chapter
7
Variables
Table
of
Contents
7
Variable
scope
8
Variable
variables
9
Variables
from
outside
PHP
Variable
scope
The
scope
of
a
variable
is
the
context
within
which
it
is
defined
For
the
most
part
all
PHP
variables
only
have
a
single
scope
However
within
user
defined
functions
a
local
function
scope
is
introduced
Any
variable
used
inside
a
function
is
by
default
limited
to
the
local
function
scope
For
example
a
1
global
scope
Function
Test
echo
a
reference
to
local
scope
variable
Test
This
script
will
not
produce
any
output
because
the
echo
statement
refers
to
a
local
version
of
the
a
variable
and
it
has
not
been
assigned
a
value
within
this
scope
You
may
notice
that
this
is
a
little
bit
different
from
the
C
language
in
that
global
variables
in
C
are
automatically
available
to
functions
unless
specifically
overridden
by
a
local
definition
This
can
cause
some
problems
in
that
people
may
inadvertently
change
a
global
variable
In
PHP
global
variables
must
be
declared
global
inside
a
function
if
they
are
going
to
be
used
in
that
function
An
example
a
1
b
2
Function
Sum
global
a
b
b
a
b
Sum
echo
b
The
above
script
will
output
3
By
declaring
a
and
b
global
within
the
function
all
references
to
either
variable
will
refer
to
the
global
version
There
is
no
limit
to
the
number
of
global
variables
that
can
be
manipulated
by
a
function
A
second
way
to
access
variables
from
the
global
scope
is
to
use
the
special
PHP
defined
GLOBALS
array
The
previous
example
can
be
rewritten
as
a
1
b
2
Function
Sum
GLOBALS
b
GLOBALS
a
GLOBALS
b
Sum
echo
b
The
GLOBALS
array
is
an
associative
array
with
the
name
of
the
global
variable
being
the
key
and
the
contents
of
that
variable
being
the
value
of
the
array
element
Another
important
feature
of
variable
scoping
is
the
static
variable
A
static
variable
exists
only
in
a
local
function
scope
but
it
does
not
lose
its
value
when
program
execution
leaves
this
scope
Consider
the
following
example
Function
Test
a
0
echo
a
a
This
function
is
quite
useless
since
every
time
it
is
called
it
sets
a
to
0
and
prints
0
The
a
which
increments
the
variable
serves
no
purpose
since
as
soon
as
the
function
exits
the
a
variable
disappears
To
make
a
useful
counting
function
which
will
not
lose
track
of
the
current
count
the
a
variable
is
declared
static
Function
Test
static
a
0
echo
a
a
Now
every
time
the
Test
function
is
called
it
will
print
the
value
of
a
and
increment
it
Static
variables
are
also
essential
when
functions
are
called
recursively
A
recursive
function
is
one
which
calls
itself
Care
must
be
taken
when
writing
a
recursive
function
because
it
is
possible
to
make
it
recurse
indefinitely
You
must
make
sure
you
have
an
adequate
way
of
terminating
the
recursion
The
following
simple
function
recursively
counts
to
10
Function
Test
static
count
0
count
echo
count
if
count
10
Test
count
10
Prev
11
Home
12
Next
Type
juggling
13
Up
Variable
variables
1
PHP
Manual
2
Variables
3
Variables
4
Variables
from
outside
PHP
PHP
Manual
5
Prev
Chapter
7
Variables
6
Next
Variable
variables
Sometimes
it
is
convenient
to
be
able
to
have
variable
variable
names
That
is
a
variable
name
which
can
be
set
and
used
dynamically
A
normal
variable
is
set
with
a
statement
such
as
a
hello
A
variable
variable
takes
the
value
of
a
variable
and
treats
that
as
the
name
of
a
variable
In
the
above
example
hello
can
be
used
as
the
name
of
a
variable
by
using
two
dollar
signs
ie
a
world
At
this
point
two
variables
have
been
defined
and
stored
in
the
PHP
symbol
tree
a
with
contents
hello
and
hello
with
contents
world
Therefore
this
statement
echo
a
a
produces
the
exact
same
output
as
echo
a
hello
ie
they
both
produce
hello
world
In
order
to
use
variable
variables
with
arrays
you
have
to
resolve
an
ambiguity
problem
That
is
if
you
write
a
1
then
the
parser
needs
to
know
if
you
meant
to
use
a
1
as
a
variable
or
if
you
wanted
a
as
the
variable
and
then
the
1
index
from
that
variable
The
syntax
for
resolving
this
ambiguity
is
a
1
for
the
first
case
and
a
1
for
the
second
7
Prev
8
Home
9
Next
Variables
10
Up
Variables
from
outside
PHP
1
PHP
Manual
2
Variables
3
Variable
variables
4
Constants
PHP
Manual
5
Prev
Chapter
7
Variables
6
Next
Variables
from
outside
PHP
HTML
Forms
GET
and
POST
When
a
form
is
submitted
to
a
PHP
script
any
variables
from
that
form
will
be
automatically
made
available
to
the
script
by
PHP
For
instance
consider
the
following
form
Example
7
1
Simple
form
variable
form
action
foo
php3
method
post
Name
input
type
text
name
name
br
input
type
submit
form
When
submitted
PHP
will
create
the
variable
name
which
will
will
contain
whatever
what
entered
into
the
Name
field
on
the
form
PHP
also
understands
arrays
in
the
context
of
form
variables
but
only
in
one
dimension
You
may
for
example
group
related
variables
together
or
use
this
feature
to
retrieve
values
from
a
multiple
select
input
Example
7
2
More
complex
form
variables
form
action
array
php
method
post
Name
input
type
text
name
personal
name
br
Email
input
type
text
name
personal
email
br
Beer
br
select
multiple
name
beer
option
value
warthog
Warthog
option
value
guinness
Guinness
select
input
type
submit
form
If
PHP
s
track
vars
feature
is
turned
on
either
by
the
7
track
vars
configuration
setting
or
the
php
track
vars
directive
then
variables
submitted
via
the
POST
or
GET
methods
will
also
be
found
in
the
global
associative
arrays
HTTP
POST
VARS
and
HTTP
GET
VARS
as
appropriate
IMAGE
SUBMIT
variable
names
When
submitting
a
form
it
is
possible
to
use
an
image
instead
of
the
standard
submit
button
with
a
tag
like
input
type
image
src
image
gif
name
sub
When
the
user
clicks
somewhere
on
the
image
the
accompanying
form
will
be
transmitted
to
the
server
with
two
additional
variables
sub
x
and
sub
y
These
contain
the
coordinates
of
the
user
click
within
the
image
The
experienced
may
note
that
the
actual
variable
names
sent
by
the
browser
contains
a
period
rather
than
an
underscore
but
PHP
converts
the
period
to
an
underscore
automatically
HTTP
Cookies
PHP
transparently
supports
HTTP
cookies
as
defined
by
8
Netscape
s
Spec
Cookies
are
a
mechanism
for
storing
data
in
the
remote
browser
and
thus
tracking
or
identifying
return
users
You
can
set
cookies
using
the
9
SetCookie
function
Cookies
are
part
of
the
HTTP
header
so
the
SetCookie
function
must
be
called
before
any
output
is
sent
to
the
browser
This
is
the
same
restriction
as
for
the
10
Header
function
Any
cookies
sent
to
you
from
the
client
will
automatically
be
turned
into
a
PHP
variable
just
like
GET
and
POST
method
data
If
you
wish
to
assign
multiple
values
to
a
single
cookie
just
add
to
the
cookie
name
For
example
SetCookie
MyCookie
Testing
time
3600
Note
that
a
cookie
will
replace
a
previous
cookie
by
the
same
name
in
your
browser
unless
the
path
or
domain
is
different
So
for
a
shopping
cart
application
you
may
want
to
keep
a
counter
and
pass
this
along
i
e
Example
7
3
SetCookie
Example
Count
SetCookie
Count
Count
time
3600
SetCookie
Cart
Count
item
time
3600
Environment
variables
PHP
automatically
makes
environment
variables
available
as
normal
PHP
variables
echo
HOME
Shows
the
HOME
environment
variable
if
set
Since
information
coming
in
via
GET
POST
and
Cookie
mechanisms
also
automatically
create
PHP
variables
it
is
sometimes
best
to
explicitly
read
a
variable
from
the
environment
in
order
to
make
sure
that
you
are
getting
the
right
version
The
11
getenv
function
can
be
used
for
this
You
can
also
set
an
environment
variable
with
the
12
putenv
function
Determining
variable
types
Because
PHP
determines
the
types
of
variables
and
converts
them
generally
as
needed
it
is
not
always
obvious
what
type
a
given
variable
is
at
any
one
time
PHP
includes
several
functions
which
find
out
what
type
a
variable
is
They
are
13
gettype
14
is
long
15
is
double
16
is
string
17
is
array
and
18
is
object
19
Prev
20
Home
21
Next
Variable
variables
22
Up
Constants
1
PHP
Manual
2
Language
Reference
3
Variables
from
outside
PHP
4
Expressions
PHP
Manual
5
Prev
6
Next
Chapter
8
Constants
PHP
defines
several
constants
and
provides
a
mechanism
for
defining
more
at
run
time
Constants
are
much
like
variables
save
for
the
two
facts
that
constants
must
be
defined
using
the
define
function
and
that
they
cannot
later
be
redefined
to
another
value
The
predefined
constants
always
available
are
FILE
The
name
of
the
script
file
presently
being
parsed
If
used
within
a
file
which
has
been
included
or
required
then
the
name
of
the
included
file
is
given
and
not
the
name
of
the
parent
file
LINE
The
number
of
the
line
within
the
current
script
file
which
is
being
parsed
If
used
within
a
file
which
has
been
included
or
required
then
the
position
within
the
included
file
is
given
PHP
VERSION
The
string
representation
of
the
version
of
the
PHP
parser
presently
in
use
e
g
3
0
8
dev
PHP
OS
The
name
of
the
operating
system
on
which
the
PHP
parser
is
executing
e
g
Linux
TRUE
A
true
value
FALSE
A
false
value
E
ERROR
Denotes
an
error
other
than
a
parsing
error
from
which
recovery
is
not
possible
E
WARNING
Denotes
a
condition
where
PHP
knows
something
is
wrong
but
will
continue
anyway
these
can
be
caught
by
the
script
itself
An
example
would
be
an
invalid
regexp
in
7
ereg
E
PARSE
The
parser
choked
on
invalid
syntax
in
the
script
file
Recovery
is
not
possible
E
NOTICE
Something
happened
which
may
or
may
not
be
an
error
Execution
continues
Examples
include
using
an
unquoted
string
as
a
hash
index
or
accessing
a
variable
which
has
not
been
set
The
E
constants
are
typically
used
with
the
8
error
reporting
function
for
setting
the
error
reporting
level
You
can
define
additional
constants
using
the
define
function
Note
that
these
are
constants
not
C
style
macros
only
valid
scalar
data
may
be
represented
by
a
constant
Example
8
1
Defining
Constants
php
define
CONSTANT
Hello
world
echo
CONSTANT
outputs
Hello
world
Example
8
2
Using
FILE
and
LINE
php
function
report
error
file
line
message
echo
An
error
occured
in
file
on
line
line
message
report
error
FILE
LINE
Something
went
wrong
9
Prev
10
Home
11
Next
Variables
from
outside
PHP
12
Up
Expressions
1
PHP
Manual
2
Language
Reference
3
Constants
4
Operators
PHP
Manual
5
Prev
6
Next
Chapter
9
Expressions
Expressions
are
the
most
important
building
stones
of
PHP
In
PHP
almost
anything
you
write
is
an
expression
The
simplest
yet
most
accurate
way
to
define
an
expression
is
anything
that
has
a
value
The
most
basic
forms
of
expressions
are
constants
and
variables
When
you
type
a
5
you
re
assigning
5
into
a
5
obviously
has
the
value
5
or
in
other
words
5
is
an
expression
with
the
value
of
5
in
this
case
5
is
an
integer
constant
After
this
assignment
you
d
expect
a
s
value
to
be
5
as
well
so
if
you
wrote
b
a
you
d
expect
it
to
behave
just
as
if
you
wrote
b
5
In
other
words
a
is
an
expression
with
the
value
of
5
as
well
If
everything
works
right
this
is
exactly
what
will
happen
Slightly
more
complex
examples
for
expressions
are
functions
For
instance
consider
the
following
function
function
foo
return
5
Assuming
you
re
familiar
with
the
concept
of
functions
if
you
re
not
take
a
look
at
the
chapter
about
functions
you
d
assume
that
typing
c
foo
is
essentially
just
like
writing
c
5
and
you
re
right
Functions
are
expressions
with
the
value
of
their
return
value
Since
foo
returns
5
the
value
of
the
expression
foo
is
5
Usually
functions
don
t
just
return
a
static
value
but
compute
something
Of
course
values
in
PHP
don
t
have
to
be
integers
and
very
often
they
aren
t
PHP
supports
three
scalar
value
types
integer
values
floating
point
values
and
string
values
scalar
values
are
values
that
you
can
t
break
into
smaller
pieces
unlike
arrays
for
instance
PHP
also
supports
two
composite
non
scalar
types
arrays
and
objects
Each
of
these
value
types
can
be
assigned
into
variables
or
returned
from
functions
So
far
users
of
PHP
FI
2
shouldn
t
feel
any
change
However
PHP
takes
expressions
much
further
in
the
same
way
many
other
languages
do
PHP
is
an
expression
oriented
language
in
the
sense
that
almost
everything
is
an
expression
Consider
the
example
we
ve
already
dealt
with
a
5
It
s
easy
to
see
that
there
are
two
values
involved
here
the
value
of
the
integer
constant
5
and
the
value
of
a
which
is
being
updated
to
5
as
well
But
the
truth
is
that
there
s
one
additional
value
involved
here
and
that
s
the
value
of
the
assignment
itself
The
assignment
itself
evaluates
to
the
assigned
value
in
this
case
5
In
practice
it
means
that
a
5
regardless
of
what
it
does
is
an
expression
with
the
value
5
Thus
writing
something
like
b
a
5
is
like
writing
a
5
b
5
a
semicolon
marks
the
end
of
a
statement
Since
assignments
are
parsed
in
a
right
to
left
order
you
can
also
write
b
a
5
Another
good
example
of
expression
orientation
is
pre
and
post
increment
and
decrement
Users
of
PHP
FI
2
and
many
other
languages
may
be
familiar
with
the
notation
of
variable
and
variable
These
are
increment
and
decrement
operators
In
PHP
FI
2
the
statement
a
has
no
value
is
not
an
expression
and
thus
you
can
t
assign
it
or
use
it
in
any
way
PHP
enhances
the
increment
decrement
capabilities
by
making
these
expressions
as
well
like
in
C
In
PHP
like
in
C
there
are
two
types
of
increment
pre
increment
and
post
increment
Both
pre
increment
and
post
increment
essentially
increment
the
variable
and
the
effect
on
the
variable
is
idential
The
difference
is
with
the
value
of
the
increment
expression
Pre
increment
which
is
written
variable
evaluates
to
the
incremented
value
PHP
increments
the
variable
before
reading
its
value
thus
the
name
pre
increment
Post
increment
which
is
written
variable
evaluates
to
the
original
value
of
variable
before
it
was
incremented
PHP
increments
the
variable
after
reading
its
value
thus
the
name
post
increment
A
very
common
type
of
expressions
are
comparison
expressions
These
expressions
evaluate
to
either
0
or
1
meaning
FALSE
or
TRUE
respectively
PHP
supports
bigger
than
bigger
than
or
equal
to
equal
smaller
than
and
smaller
than
or
equal
to
These
expressions
are
most
commonly
used
inside
conditional
execution
such
as
IF
statements
The
last
example
of
expressions
we
ll
deal
with
here
is
combined
operator
assignment
expressions
You
already
know
that
if
you
want
to
increment
a
by
1
you
can
simply
write
a
or
a
But
what
if
you
want
to
add
more
than
one
to
it
for
instance
3
You
could
write
a
multiple
times
but
this
is
obviously
not
a
very
efficient
or
comfortable
way
A
much
more
common
practice
is
to
write
a
a
3
a
3
evaluates
to
the
value
of
a
plus
3
and
is
assigned
back
into
a
which
results
in
incrementing
a
by
3
In
PHP
as
in
several
other
languages
like
C
you
can
write
this
in
a
shorter
way
which
with
time
would
become
clearer
and
quicker
to
understand
as
well
Adding
3
to
the
current
value
of
a
can
be
written
a
3
This
means
exactly
take
the
value
of
a
add
3
to
it
and
assign
it
back
into
a
In
addition
to
being
shorter
and
clearer
this
also
results
in
faster
execution
The
value
of
a
3
like
the
value
of
a
regular
assignment
is
the
assigned
value
Notice
that
it
is
NOT
3
but
the
combined
value
of
a
plus
3
this
is
the
value
that
s
assigned
into
a
Any
two
place
operator
can
be
used
in
this
operator
assignment
mode
for
example
a
5
subtract
5
from
the
value
of
a
b
7
multiply
the
value
of
b
by
7
etc
There
is
one
more
expression
that
may
seem
odd
if
you
haven
t
seen
it
in
other
languages
the
ternary
conditional
operator
first
second
third
If
the
value
of
the
first
subexpression
is
true
non
zero
then
it
the
second
subexpression
is
evaluated
and
that
is
the
result
of
the
conditional
expression
Otherwise
the
third
subexpression
is
evaluated
and
that
is
the
value
The
following
example
should
help
you
understand
pre
and
post
increment
and
expressions
in
general
a
bit
better
function
double
i
return
i
2
b
a
5
assign
the
value
five
into
the
variable
a
and
b
c
a
post
increment
assign
original
value
of
a
5
to
c
e
d
b
pre
increment
assign
the
incremented
value
of
b
6
to
d
and
e
at
this
point
both
d
and
e
are
equal
to
6
f
double
d
assign
twice
the
value
of
d
before
the
increment
2
6
12
to
f
g
double
e
assign
twice
the
value
of
e
after
the
increment
2
7
14
to
g
h
g
10
first
g
is
incremented
by
10
and
ends
with
the
value
of
24
the
value
of
the
assignment
24
is
then
assigned
into
h
and
h
ends
with
the
value
of
24
as
well
In
the
beginning
of
the
chapter
we
said
that
we
ll
be
describing
the
various
statement
types
and
as
promised
expressions
can
be
statements
However
not
every
expression
is
a
statement
In
this
case
a
statement
has
the
form
of
expr
that
is
an
expression
followed
by
a
semicolon
In
b
a
5
a
5
is
a
valid
expression
but
it
s
not
a
statement
by
itself
b
a
5
however
is
a
valid
statement
One
last
thing
worth
mentioning
is
the
truth
value
of
expressions
In
many
events
mainly
in
conditional
execution
and
loops
you
re
not
interested
in
the
specific
value
of
the
expression
but
only
care
about
whether
it
means
TRUE
or
FALSE
PHP
doesn
t
have
a
dedicated
boolean
type
The
truth
value
of
expressions
in
PHP
is
calculated
in
a
similar
way
to
perl
Any
numeric
non
zero
numeric
value
is
TRUE
zero
is
FALSE
Be
sure
to
note
that
negative
values
are
non
zero
and
are
thus
considered
TRUE
The
empty
string
and
the
string
0
are
FALSE
all
other
strings
are
TRUE
With
non
scalar
values
arrays
and
objects
if
the
value
contains
no
elements
it
s
considered
FALSE
otherwise
it
s
considered
TRUE
PHP
provides
a
full
and
powerful
implementation
of
expressions
and
documenting
it
entirely
goes
beyond
the
scope
of
this
manual
The
above
examples
should
give
you
a
good
idea
about
what
expressions
are
and
how
you
can
construct
useful
expressions
Throughout
the
rest
of
this
manual
we
ll
write
expr
to
indicate
any
valid
PHP
expression
7
Prev
8
Home
9
Next
Constants
10
Up
Operators
1
PHP
Manual
2
Language
Reference
3
Expressions
4
String
Operators
PHP
Manual
5
Prev
6
Next
Chapter
10
Operators
Table
of
Contents
7
Arithmetic
Operators
8
String
Operators
9
Assignment
Operators
10
Bitwise
Operators
11
Logical
Operators
12
Comparison
Operators
13
Operator
Precedence
Arithmetic
Operators
Remember
basic
arithmetic
from
school
These
work
just
like
those
Table
10
1
Arithmetic
Operators
example
name
result
a
b
Addition
Sum
of
a
and
b
a
b
Subtraction
Remainder
of
b
subtracted
from
a
a
b
Multiplication
Product
of
a
and
b
a
b
Division
Dividend
of
a
and
b
a
b
Modulus
Remainder
of
a
divided
by
b
14
Prev
15
Home
16
Next
Expressions
17
Up
String
Operators
1
PHP
Manual
2
Operators
3
Operators
4
Assignment
Operators
PHP
Manual
5
Prev
Chapter
10
Operators
6
Next
String
Operators
There
is
only
really
one
string
operator
the
concatenation
operator
a
Hello
b
a
World
now
b
Hello
World
7
Prev
8
Home
9
Next
Operators
10
Up
Assignment
Operators
1
PHP
Manual
2
Operators
3
String
Operators
4
Bitwise
Operators
PHP
Manual
5
Prev
Chapter
10
Operators
6
Next
Assignment
Operators
The
basic
assignment
operator
is
Your
first
inclination
might
be
to
think
of
this
as
equal
to
Don
t
It
really
means
that
the
the
left
operand
gets
set
to
the
value
of
the
expression
on
the
rights
that
is
gets
set
to
The
value
of
an
assignment
expression
is
the
value
assigned
That
is
the
value
of
a
3
is
3
This
allows
you
to
do
some
tricky
things
a
b
4
5
a
is
equal
to
9
now
and
b
has
been
set
to
4
In
addition
to
the
basic
assignment
operator
there
are
combined
operators
for
all
of
the
binary
arithmetic
and
string
operators
that
allow
you
to
use
a
value
in
an
expression
and
then
set
its
value
to
the
result
of
that
expression
For
example
a
3
a
5
sets
a
to
8
as
if
we
had
said
a
a
5
b
Hello
b
There
sets
b
to
Hello
There
just
like
b
b
There
7
Prev
8
Home
9
Next
String
Operators
10
Up
Bitwise
Operators
1
PHP
Manual
2
Operators
3
Assignment
Operators
4
Logical
Operators
PHP
Manual
5
Prev
Chapter
10
Operators
6
Next
Bitwise
Operators
Bitwise
operators
allow
you
to
turn
specific
bits
within
an
integer
on
or
off
Table
10
2
Bitwise
Operators
example
name
result
a
b
And
Bits
that
are
set
in
both
a
and
b
are
set
a
b
Or
Bits
that
are
set
in
either
a
or
b
are
set
a
Not
Bits
that
are
set
in
a
are
not
set
and
vice
versa
a
b
Shift
left
Shift
the
bits
of
a
b
steps
to
the
left
each
step
means
multiply
by
two
a
b
Shift
right
Shift
the
bits
of
a
b
steps
to
the
right
each
step
means
divide
by
two
7
Prev
8
Home
9
Next
Assignment
Operators
10
Up
Logical
Operators
1
PHP
Manual
2
Operators
3
Bitwise
Operators
4
Comparison
Operators
PHP
Manual
5
Prev
Chapter
10
Operators
6
Next
Logical
Operators
Table
10
3
Logical
Operators
example
name
result
a
and
b
And
True
of
both
a
and
b
are
true
a
or
b
Or
True
if
either
a
or
b
is
true
a
xor
b
Or
True
if
either
a
or
b
is
true
but
not
both
a
Not
True
if
a
is
not
true
a
b
And
True
of
both
a
and
b
are
true
a
b
Or
True
if
either
a
or
b
is
true
The
reason
for
the
two
different
variations
of
and
and
or
operators
is
that
they
operate
at
different
precedences
See
below
7
Prev
8
Home
9
Next
Bitwise
Operators
10
Up
Comparison
Operators
1
PHP
Manual
2
Operators
3
Logical
Operators
4
Operator
Precedence
PHP
Manual
5
Prev
Chapter
10
Operators
6
Next
Comparison
Operators
Comparison
operators
as
their
name
imply
allow
you
to
compare
two
values
Table
10
4
Comparson
Operators
example
name
result
a
b
Equal
True
if
a
is
equal
to
b
a
b
Not
equal
True
if
a
is
not
equal
to
b
a
b
Less
than
True
if
a
is
strictly
less
than
b
a
b
Greater
than
True
if
a
is
strictly
greater
than
b
a
b
Less
than
or
equal
to
True
if
a
is
less
than
or
equal
to
b
a
b
Greater
than
or
equal
to
True
if
a
is
greater
than
or
equal
to
b
Another
conditional
operator
is
the
or
trinary
operator
which
operates
as
in
C
and
many
other
languages
expr1
expr2
expr3
This
expression
returns
to
expr2
if
expr1
evalutes
to
true
and
expr3
if
expr1
evaluates
to
false
7
Prev
8
Home
9
Next
Logical
Operators
10
Up
Operator
Precedence
1
PHP
Manual
2
Operators
3
Comparison
Operators
4
Control
Structures
PHP
Manual
5
Prev
Chapter
10
Operators
6
Next
Operator
Precedence
The
precedence
of
an
operator
specifies
how
tightly
it
binds
two
expressions
together
For
example
in
the
expression
1
5
3
the
answer
is
16
and
not
18
because
the
multiplication
operator
has
a
higher
precedence
than
the
addition
operator
The
following
table
lists
the
precedence
of
operators
with
the
lowest
precedence
operators
listed
first
Table
10
5
Operator
Precedence
Associativity
Operators
left
left
or
left
xor
left
and
right
print
left
left
left
left
left
left
left
non
associative
non
associative
left
left
left
right
int
double
string
array
object
right
non
associative
new
7
Prev
8
Home
9
Next
Comparison
Operators
10
Up
Control
Structures
1
PHP
Manual
2
Language
Reference
3
Operator
Precedence
4
else
PHP
Manual
5
Prev
6
Next
Chapter
11
Control
Structures
Table
of
Contents
7
if
8
else
9
elseif
10
Alternative
syntax
for
if
structures
if
endif
11
while
12
do
while
13
for
14
break
15
continue
16
switch
17
require
18
include
Any
PHP
script
is
built
out
of
a
series
of
statements
A
statement
can
be
an
assignment
a
function
call
a
loop
a
conditional
statement
of
even
a
statement
that
does
nothing
an
empty
statement
Statements
usually
end
with
a
semicolon
In
addition
statements
can
be
grouped
into
a
statement
group
by
encapsulating
a
group
of
statements
with
curly
braces
A
statement
group
is
a
statement
by
itself
as
well
The
various
statement
types
are
described
in
this
chapter
if
The
if
construct
is
one
of
the
most
important
features
of
many
languages
PHP
included
It
allows
for
conditional
execution
of
code
fragments
PHP
features
an
if
structure
that
is
similar
to
that
of
C
if
expr
statement
As
described
in
the
section
about
expressions
expr
is
evaluated
to
its
truth
value
If
expr
evaluates
to
TRUE
PHP
will
execute
statement
and
if
it
evaluates
to
FALSE
it
ll
ignore
it
The
following
example
would
display
a
is
bigger
than
b
if
a
is
bigger
than
b
if
a
b
print
a
is
bigger
than
b
Often
you
d
want
to
have
more
than
one
statement
to
be
executed
conditionally
Of
course
there
s
no
need
to
wrap
each
statement
with
an
if
clause
Instead
you
can
group
several
statements
into
a
statement
group
For
example
this
code
would
display
a
is
bigger
than
b
if
a
is
bigger
than
b
and
would
then
assign
the
value
of
a
into
b
if
a
b
print
a
is
bigger
than
b
b
a
If
statements
can
be
nested
indefinitely
within
other
if
statements
which
provides
you
with
complete
flexibility
for
conditional
execution
of
the
various
parts
of
your
program
19
Prev
20
Home
21
Next
Operator
Precedence
22
Up
else
1
PHP
Manual
2
Control
Structures
3
Control
Structures
4
elseif
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
else
Often
you
d
want
to
execute
a
statement
if
a
certain
condition
is
met
and
a
different
statement
if
the
condition
is
not
met
This
is
what
else
is
for
else
extends
an
if
statement
to
execute
a
statement
in
case
the
expression
in
the
if
statement
evaluates
to
FALSE
For
example
the
following
code
would
display
a
is
bigger
than
b
if
a
is
bigger
than
b
and
a
is
NOT
bigger
than
b
otherwise
if
a
b
print
a
is
bigger
than
b
else
print
a
is
NOT
bigger
than
b
The
else
statement
is
only
executed
if
the
if
expression
evaluated
to
FALSE
and
if
there
were
any
elseif
expressions
only
if
they
evaluated
to
FALSE
as
well
see
below
7
Prev
8
Home
9
Next
Control
Structures
10
Up
elseif
1
PHP
Manual
2
Control
Structures
3
else
4
Alternative
syntax
for
if
structures
if
endif
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
elseif
elseif
as
its
name
suggests
is
a
combination
of
if
and
else
Like
else
it
extends
an
if
statement
to
execute
a
different
statement
in
case
the
original
if
expression
evaluates
to
FALSE
However
unlike
else
it
will
execute
that
alternative
expression
only
if
the
elseif
conditional
expression
evaluates
to
TRUE
For
example
the
following
code
would
display
a
is
bigger
than
b
a
equal
to
b
or
a
is
smaller
than
b
if
a
b
print
a
is
bigger
than
b
elseif
a
b
print
a
is
equal
to
b
else
print
a
is
smaller
than
b
There
may
be
several
elseifs
within
the
same
if
statement
The
first
elseif
expression
if
any
that
evaluates
to
true
would
be
executed
In
PHP
you
can
also
write
else
if
in
two
words
and
the
behavior
would
be
identical
to
the
one
of
elseif
in
a
single
word
The
syntactic
meaning
is
slightly
different
if
you
re
familiar
with
C
this
is
the
same
behavior
but
the
bottom
line
is
that
both
would
result
in
exactly
the
same
behavior
The
elseif
statement
is
only
executed
if
the
preceding
if
expression
and
any
preceding
elseif
expressions
evaluated
to
FALSE
and
the
current
elseif
expression
evaluated
to
TRUE
7
Prev
8
Home
9
Next
else
10
Up
Alternative
syntax
for
if
structures
if
endif
1
PHP
Manual
2
Control
Structures
3
elseif
4
while
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
Alternative
syntax
for
if
structures
if
endif
PHP
offers
a
different
way
to
group
statements
within
an
if
statement
This
is
most
commonly
used
when
you
nest
HTML
blocks
inside
if
statements
but
can
be
used
anywhere
Instead
of
using
curly
braces
if
expr
should
be
followed
by
a
colon
the
list
of
one
or
more
statements
and
end
with
endif
Consider
the
following
example
php
if
a
5
A
5
php
endif
In
the
above
example
the
HTML
block
A
5
is
nested
within
an
if
statement
written
in
the
alternative
syntax
The
HTML
block
would
be
displayed
only
if
a
is
equal
to
5
The
alternative
syntax
applies
to
else
and
elseif
as
well
The
following
is
an
if
structure
with
elseif
and
else
in
the
alternative
format
if
a
5
print
a
equals
5
print
elseif
a
6
print
a
equals
6
print
else
print
a
is
neither
5
nor
6
endif
7
Prev
8
Home
9
Next
elseif
10
Up
while
1
PHP
Manual
2
Control
Structures
3
Alternative
syntax
for
if
structures
if
endif
4
do
while
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
while
while
loops
are
the
simplest
type
of
loop
in
PHP
They
behave
just
like
their
C
counterparts
The
basic
form
of
a
while
statement
is
while
expr
statement
The
meaning
of
a
while
statement
is
simple
It
tells
PHP
to
execute
the
nested
statement
s
repeatedly
as
long
as
the
while
expression
evaluates
to
TRUE
The
value
of
the
expression
is
checked
each
time
at
the
beginning
of
the
loop
so
even
if
this
value
changes
during
the
execution
of
the
nested
statement
s
execution
will
not
stop
until
the
end
of
the
iteration
each
time
PHP
runs
the
statements
in
the
loop
is
one
iteration
Sometimes
if
the
while
expression
evaluates
to
FALSE
from
the
very
beginning
the
nested
statement
s
won
t
even
be
run
once
Like
with
the
if
statement
you
can
group
multiple
statements
within
the
same
while
loop
by
surrounding
a
group
of
statements
with
curly
braces
or
by
using
the
alternate
syntax
while
expr
statement
endwhile
The
following
examples
are
identical
and
both
print
numbers
from
1
to
10
example
1
i
1
while
i
10
print
i
the
printed
value
would
be
i
before
the
increment
post
increment
example
2
i
1
while
i
10
print
i
i
endwhile
7
Prev
8
Home
9
Next
Alternative
syntax
for
if
structures
if
endif
10
Up
do
while
1
PHP
Manual
2
Control
Structures
3
while
4
for
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
do
while
do
while
loops
are
very
similar
to
while
loops
except
the
truth
expression
is
checked
at
the
end
of
each
iteration
instead
of
in
the
beginning
The
main
difference
from
regular
while
loops
is
that
the
first
iteration
of
a
do
while
loop
is
guarenteed
to
run
the
truth
expression
is
only
checked
at
the
end
of
the
iteration
whereas
it
s
may
not
necessarily
run
with
a
regular
while
loop
the
truth
expression
is
checked
at
the
beginning
of
each
iteration
if
it
evaluates
to
FALSE
right
from
the
beginning
the
loop
execution
would
end
immediately
There
is
just
one
syntax
for
do
while
loops
i
0
do
print
i
while
i
0
The
above
loop
would
run
one
time
exactly
since
after
the
first
iteration
when
truth
expression
is
checked
it
evaluates
to
FALSE
i
is
not
bigger
than
0
and
the
loop
execution
ends
Advanced
C
users
may
be
familiar
with
a
different
usage
of
the
do
while
loop
to
allow
stopping
execution
in
the
middle
of
code
blocks
by
encapsulating
them
with
do
while
0
and
using
the
7
break
statement
The
following
code
fragment
demonstrates
this
do
if
i
5
print
i
is
not
big
enough
break
i
factor
if
i
minimum
limit
break
print
i
is
ok
process
i
while
0
Don
t
worry
if
you
don
t
understand
this
right
away
or
at
all
You
can
code
scripts
and
even
powerful
scripts
without
using
this
feature
8
Prev
9
Home
10
Next
while
11
Up
for
1
PHP
Manual
2
Control
Structures
3
do
while
4
break
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
for
for
loops
are
the
most
complex
loops
in
PHP
They
behave
like
their
C
counterparts
The
syntax
of
a
for
loop
is
for
expr1
expr2
expr3
statement
The
first
expression
expr1
is
evaluated
executed
once
unconditionally
at
the
beginning
of
the
loop
In
the
beginning
of
each
iteration
expr2
is
evaluated
If
it
evaluates
to
TRUE
the
loop
continues
and
the
nested
statement
s
are
executed
If
it
evaluates
to
FALSE
the
execution
of
the
loop
ends
At
the
end
of
each
iteration
expr3
is
evaluated
executed
Each
of
the
expressions
can
be
empty
expr2
being
empty
means
the
loop
should
be
run
indefinitely
PHP
implicitly
considers
it
as
TRUE
like
C
This
may
not
be
as
useless
as
you
might
think
since
often
you
d
want
to
end
the
loop
using
a
conditional
7
break
statement
instead
of
using
the
for
truth
expression
Consider
the
following
examples
All
of
them
display
numbers
from
1
to
10
example
1
for
i
1
i
10
i
print
i
example
2
for
i
1
i
if
i
10
break
print
i
example
3
i
1
for
if
i
10
break
print
i
i
example
4
for
i
1
i
10
print
i
i
Of
course
the
first
example
appears
to
be
the
nicest
one
or
perhaps
the
fourth
but
you
may
find
that
being
able
to
use
empty
expressions
in
for
loops
comes
in
handy
in
many
occasions
PHP
also
supports
the
alternate
colon
syntax
for
for
loops
for
expr1
expr2
expr3
statement
endfor
Other
languages
have
a
foreach
statement
to
traverse
an
array
or
hash
PHP
uses
the
while
statement
and
the
8
list
and
9
each
functions
for
this
See
the
documentation
for
these
functions
for
an
example
10
Prev
11
Home
12
Next
do
while
13
Up
break
1
PHP
Manual
2
Control
Structures
3
for
4
continue
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
break
break
breaks
out
of
the
current
looping
control
structures
i
0
while
i
10
if
arr
i
stop
break
i
7
Prev
8
Home
9
Next
for
10
Up
continue
1
PHP
Manual
2
Control
Structures
3
break
4
switch
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
continue
continue
is
used
within
looping
structures
to
skip
the
rest
of
the
current
loop
iteration
and
continue
execution
at
the
beginning
of
the
next
iteration
while
list
key
value
each
arr
if
key
2
skip
even
members
continue
do
something
odd
value
7
Prev
8
Home
9
Next
break
10
Up
switch
1
PHP
Manual
2
Control
Structures
3
continue
4
require
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
switch
The
switch
statement
is
similar
to
a
series
of
IF
statements
on
the
same
expression
In
many
occasions
you
may
want
to
compare
the
same
variable
or
expression
with
many
different
values
and
execute
a
different
piece
of
code
depending
on
which
value
it
equals
to
This
is
exactly
what
the
switch
statement
is
for
The
following
two
examples
are
two
different
ways
to
write
the
same
thing
one
using
a
series
of
if
statements
and
the
other
using
the
switch
statement
example
1
if
i
0
print
i
equals
0
if
i
1
print
i
equals
1
if
i
2
print
i
equals
2
example
2
switch
i
case
0
print
i
equals
0
break
case
1
print
i
equals
1
break
case
2
print
i
equals
2
break
It
is
important
to
understand
how
the
switch
statement
is
executed
in
order
to
avoid
messups
The
switch
statement
executes
line
by
line
actually
statement
by
statement
In
the
beginning
no
code
is
executed
Only
when
a
case
statement
is
found
with
a
value
that
matches
the
value
of
the
switch
expression
PHP
begins
to
execute
the
statements
PHP
continues
to
execute
the
statements
until
the
end
of
the
switch
block
or
the
first
time
it
sees
a
break
statement
If
you
don
t
write
a
break
statement
at
the
end
of
a
case
s
statement
list
PHP
will
go
on
executing
the
statements
of
the
following
case
For
example
example
3
switch
i
case
0
print
i
equals
0
case
1
print
i
equals
1
case
2
print
i
equals
2
Here
if
i
equals
to
0
PHP
would
execute
all
of
the
print
statements
If
i
equals
to
1
PHP
would
execute
the
last
two
print
statements
and
only
if
i
equals
to
2
you
d
get
the
expected
behavior
and
only
i
equals
2
would
be
displayed
So
it
s
important
not
to
forget
break
statements
even
though
you
may
want
to
avoid
supplying
them
on
purpose
under
certain
circumstances
A
special
case
is
the
default
case
This
case
matches
anything
that
wasn
t
matched
by
the
other
cases
For
example
example
4
switch
i
case
0
print
i
equals
0
break
case
1
print
i
equals
1
break
case
2
print
i
equals
2
break
default
print
i
is
not
equal
to
0
1
or
2
Another
fact
worth
mentioning
is
that
the
case
expression
may
be
any
expression
that
evaluates
to
a
scalar
type
that
is
integer
or
floating
point
numbers
and
strings
Arrays
or
objects
are
meaningless
in
that
context
7
Prev
8
Home
9
Next
continue
10
Up
require
1
PHP
Manual
2
Control
Structures
3
switch
4
include
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
require
The
require
statement
replaces
itself
with
the
specified
file
much
like
the
C
preprocessor
s
include
works
This
means
that
you
can
t
put
a
require
statement
inside
of
a
loop
structure
and
expect
it
to
include
the
contents
of
a
different
file
on
each
iteration
To
do
that
use
an
include
statement
require
header
inc
7
Prev
8
Home
9
Next
switch
10
Up
include
1
PHP
Manual
2
Control
Structures
3
require
4
Functions
PHP
Manual
5
Prev
Chapter
11
Control
Structures
6
Next
include
The
include
statement
includes
and
evaluates
the
specified
file
This
happens
each
time
the
include
statement
is
encountered
so
you
can
use
an
include
statement
within
a
looping
structure
to
include
a
number
of
different
file
files
array
first
inc
second
inc
third
inc
for
i
0
i
count
files
i
include
files
i
7
include
differs
from
8
require
in
that
the
include
statement
is
re
evaluated
each
time
it
is
encountered
and
only
when
it
is
being
executed
whereas
the
9
require
statement
is
replaced
by
the
required
file
when
it
is
first
encountered
whether
the
contents
of
the
file
will
be
evaluated
or
not
for
example
if
it
is
inside
an
if
statement
whose
condition
evaluated
to
false
Because
10
include
is
a
special
language
construct
you
must
enclose
it
within
a
statement
block
if
it
is
inside
a
conditional
block
This
is
WRONG
and
will
not
work
as
desired
if
condition
include
file
else
include
other
This
is
CORRECT
if
condition
include
file
else
include
other
When
the
file
is
evaluated
the
parser
begins
in
HTML
mode
which
will
output
the
contents
of
the
file
until
the
first
PHP
start
tag
is
encountered
See
also
11
readfile
12
require
13
virtual
14
Prev
15
Home
16
Next
require
17
Up
Functions
1
PHP
Manual
2
Language
Reference
3
include
4
Returning
values
PHP
Manual
5
Prev
6
Next
Chapter
12
Functions
Table
of
Contents
7
User
defined
functions
8
Returning
values
9
Function
arguments
10
old
function
User
defined
functions
A
function
may
be
defined
using
syntax
such
as
the
following
function
foo
arg
1
arg
2
arg
n
echo
Example
function
n
return
retval
Any
valid
PHP
code
may
appear
inside
a
function
even
other
functions
and
11
class
definitions
Functions
must
be
defined
before
they
are
referenced
12
Prev
13
Home
14
Next
include
15
Up
Returning
values
1
PHP
Manual
2
Functions
3
Functions
4
Function
arguments
PHP
Manual
5
Prev
Chapter
12
Functions
6
Next
Returning
values
Values
are
returned
by
using
the
optional
return
statement
Any
type
may
be
returned
including
lists
and
objects
function
square
num
return
num
num
echo
square
4
outputs
16
You
can
t
return
multiple
values
from
a
function
but
similar
results
can
be
obtained
by
returning
a
list
function
small
numbers
return
array
0
1
2
list
zero
one
two
small
numbers
7
Prev
8
Home
9
Next
Functions
10
Up
Function
arguments
1
PHP
Manual
2
Functions
3
Returning
values
4
old
function
PHP
Manual
5
Prev
Chapter
12
Functions
6
Next
Function
arguments
Information
may
be
passed
to
functions
via
the
argument
list
which
is
a
comma
delimited
list
of
variables
and
or
constants
PHP
supports
passing
arguments
by
value
the
default
7
passing
by
reference
and
8
default
argument
values
Variable
length
argument
lists
are
not
supported
but
a
similar
effect
may
be
obtained
by
passing
arrays
function
takes
array
input
echo
input
0
input
1
input
0
input
1
Making
arguments
be
passed
by
reference
By
default
function
arguments
are
passed
by
value
so
that
if
you
change
the
value
of
the
argument
within
the
function
it
does
not
get
changed
outside
of
the
function
If
you
wish
to
allow
a
function
to
modify
its
arguments
you
must
pass
them
by
reference
If
you
want
an
argument
to
a
function
to
always
be
passed
by
reference
you
can
prepend
an
ampersand
to
the
argument
name
in
the
function
definition
function
add
some
extra
string
string
and
something
extra
str
This
is
a
string
add
some
extra
str
echo
str
outputs
This
is
a
string
and
something
extra
If
you
wish
to
pass
a
variable
by
reference
to
a
function
which
does
not
do
this
by
default
you
may
prepend
an
ampersand
to
the
argument
name
in
the
function
call
function
foo
bar
bar
and
something
extra
str
This
is
a
string
foo
str
echo
str
outputs
This
is
a
string
foo
str
echo
str
outputs
This
is
a
string
and
something
extra
Default
argument
values
A
function
may
define
C
style
default
values
for
scalar
arguments
as
follows
function
makecoffee
type
cappucino
return
Making
a
cup
of
type
n
echo
makecoffee
echo
makecoffee
espresso
The
output
from
the
above
snippet
is
Making
a
cup
of
cappucino
Making
a
cup
of
espresso
The
default
value
must
be
a
constant
expression
not
for
example
a
variable
or
class
member
In
PHP
4
0
it
s
also
possible
to
specify
unset
for
default
argument
This
means
that
the
argument
will
not
be
set
at
all
if
a
value
is
not
supplied
Note
that
when
using
default
arguments
any
defaults
should
be
on
the
right
side
of
any
non
default
arguments
otherwise
things
will
not
work
as
expected
Consider
the
following
code
snippet
function
makeyogurt
type
acidophilus
flavour
return
Making
a
bowl
of
type
flavour
n
echo
makeyogurt
raspberry
won
t
work
as
expected
The
output
of
the
above
example
is
Warning
Missing
argument
2
in
call
to
makeyogurt
in
usr
local
etc
httpd
htdocs
php3test
functest
html
on
line
41
Making
a
bowl
of
raspberry
Now
compare
the
above
with
this
function
makeyogurt
flavour
type
acidophilus
return
Making
a
bowl
of
type
flavour
n
echo
makeyogurt
raspberry
works
as
expected
The
output
of
this
example
is
Making
a
bowl
of
acidophilus
raspberry
9
Prev
10
Home
11
Next
Returning
values
12
Up
old
function
1
PHP
Manual
2
Functions
3
Function
arguments
4
Classes
and
Objects
PHP
Manual
5
Prev
Chapter
12
Functions
6
Next
old
function
The
old
function
statement
allows
you
to
declare
a
function
using
a
syntax
identical
to
PHP
FI2
except
you
must
replace
function
with
old
function
This
is
a
deprecated
feature
and
should
only
be
used
by
the
PHP
FI2
PHP3
convertor
Warning
Functions
declared
as
old
function
cannot
be
called
from
PHP
s
internal
code
Among
other
things
this
means
you
can
t
use
them
in
functions
such
as
7
usort
8
array
walk
and
9
register
shutdown
function
You
can
get
around
this
limitation
by
writing
a
wrapper
function
in
normal
PHP3
form
to
call
the
old
function
10
Prev
11
Home
12
Next
Function
arguments
13
Up
Classes
and
Objects
1
PHP
Manual
2
Language
Reference
3
old
function
4
Features
PHP
Manual
5
Prev
6
Next
Chapter
13
Classes
and
Objects
Table
of
Contents
7
class
class
A
class
is
a
collection
of
variables
and
functions
working
with
these
variables
A
class
is
defined
using
the
following
syntax
php
class
Cart
var
items
Items
in
our
shopping
cart
Add
num
articles
of
artnr
to
the
cart
function
add
item
artnr
num
this
items
artnr
num
Take
num
articles
of
artnr
out
of
the
cart
function
remove
item
artnr
num
if
this
items
artnr
num
this
items
artnr
num
return
true
else
return
false
This
defines
a
class
named
Cart
that
consists
of
an
associative
array
of
articles
in
the
cart
and
two
functions
to
add
and
remove
items
from
this
cart
Classes
are
types
that
is
they
are
blueprints
for
actual
variables
You
have
to
create
a
variables
of
the
desired
type
with
the
new
operator
cart
new
Cart
cart
add
item
10
1
This
creates
an
object
cart
of
the
class
Cart
The
function
add
item
of
that
object
is
being
called
to
add
1
item
of
article
number
10
to
the
cart
Classes
can
be
extensions
of
other
classes
The
extended
or
derived
class
has
all
variables
and
functions
of
the
base
class
and
what
you
add
in
the
extended
definition
This
is
done
using
the
extends
keyword
class
Named
Cart
extends
Cart
var
owner
function
set
owner
name
this
owner
name
This
defines
a
class
Named
Cart
that
has
all
variables
and
functions
of
Cart
plus
an
additional
variable
owner
and
an
additional
function
set
owner
You
create
a
named
cart
the
usual
way
and
can
now
set
and
get
the
carts
owner
You
can
still
use
normal
cart
functions
on
named
carts
ncart
new
Named
Cart
Create
a
named
cart
ncart
set
owner
kris
Name
that
cart
print
ncart
owner
print
the
cart
owners
name
ncart
add
item
10
1
inherited
functionality
from
cart
Within
functions
of
a
class
the
variable
this
means
this
object
You
have
to
use
this
something
to
access
any
variable
or
function
named
something
within
your
current
object
Constructors
are
functions
in
a
class
that
are
automatically
called
when
you
create
a
new
instance
of
a
class
A
function
becomes
a
constructor
when
it
has
the
same
name
as
the
class
class
Auto
Cart
extends
Cart
function
Auto
Cart
this
add
item
10
1
This
defines
a
class
Auto
Cart
that
is
a
Cart
plus
a
constructor
which
initializes
the
cart
with
one
item
of
article
number
10
each
time
a
new
Auto
Cart
is
being
made
with
new
Constructors
can
also
take
arguments
and
these
arguments
can
be
optional
which
makes
them
much
more
useful
class
Constructor
Cart
function
Constructor
Cart
item
10
num
1
this
add
item
item
num
Shop
the
same
old
boring
stuff
default
cart
new
Constructor
Cart
Shop
for
real
different
cart
new
Constructor
Cart
20
17
Caution
For
derived
classes
the
constructor
of
the
parent
class
is
not
automatically
called
when
the
derived
class
s
constructor
is
called
8
Prev
9
Home
10
Next
old
function
11
Up
Features
1
PHP
Manual
2
Classes
and
Objects
3
Error
handling
PHP
Manual
4
Prev
5
Next
III
Features
Table
of
Contents
14
6
Error
handling
15
7
Creating
GIF
images
16
8
HTTP
authentication
with
PHP
17
9
Cookies
18
10
Handling
file
uploads
19
11
Connection
handling
20
12
Persistent
database
connections
13
Prev
14
Home
15
Next
Classes
and
Objects
Error
handling
1
PHP
Manual
2
Features
3
Features
4
Creating
GIF
images
PHP
Manual
5
Prev
6
Next
Chapter
14
Error
handling
There
are
4
types
of
errors
and
warnings
in
PHP
They
are
1
Normal
Function
Errors
2
Normal
Warnings
4
Parser
Errors
8
Notices
warnings
you
can
ignore
but
which
may
imply
a
bug
in
your
code
The
above
4
numbers
are
added
up
to
define
an
error
reporting
level
The
default
error
reporting
level
is
7
which
is
1
2
4
or
everything
except
notices
This
level
can
be
changed
in
the
php3
ini
file
with
the
error
reporting
directive
It
can
also
be
set
in
your
Apache
httpd
conf
file
with
the
php3
error
reporting
directive
or
lastly
it
may
be
set
at
runtime
within
a
script
using
the
7
error
reporting
function
All
8
PHP
expressions
can
also
be
called
with
the
prefix
which
turns
off
error
reporting
for
that
particular
expression
If
an
error
occurred
during
such
an
expression
and
the
9
track
errors
feature
is
enabled
you
can
find
the
error
message
in
the
global
variable
php
errormsg
10
Prev
11
Home
12
Next
Features
13
Up
Creating
GIF
images
1
PHP
Manual
2
Features
3
Error
handling
4
HTTP
authentication
with
PHP
PHP
Manual
5
Prev
6
Next
Chapter
15
Creating
GIF
images
PHP
is
not
limited
to
creating
just
HTML
output
It
can
also
be
used
to
create
GIF
image
files
or
even
more
convenient
GIF
image
streams
You
will
need
to
compile
PHP
with
the
GD
library
of
image
functions
for
this
to
work
Example
15
1
GIF
creation
with
PHP
php
Header
Content
type
image
gif
string
implode
argv
im
imagecreatefromgif
images
button1
gif
orange
ImageColorAllocate
im
220
210
60
px
imagesx
im
7
5
strlen
string
2
ImageString
im
3
px
9
string
orange
ImageGif
im
ImageDestroy
im
This
example
would
be
called
from
a
page
with
a
tag
like
img
src
button
php3
text
The
above
button
php3
script
then
takes
this
text
string
an
overlays
it
on
top
of
a
base
image
which
in
this
case
is
images
button1
gif
and
outputs
the
resulting
image
This
is
a
very
convenient
way
to
avoid
having
to
draw
new
button
images
every
time
you
want
to
change
the
text
of
a
button
With
this
method
they
are
dynamically
generated
7
Prev
8
Home
9
Next
Error
handling
10
Up
HTTP
authentication
with
PHP
1
PHP
Manual
2
Features
3
Creating
GIF
images
4
Cookies
PHP
Manual
5
Prev
6
Next
Chapter
16
HTTP
authentication
with
PHP
The
HTTP
Authentication
hooks
in
PHP
are
only
available
when
it
is
running
as
an
Apache
module
and
is
hence
not
available
in
the
CGI
version
In
an
Apache
module
PHP
script
it
is
possible
to
use
the
7
Header
function
to
send
an
Authentication
Required
message
to
the
client
browser
causing
it
to
pop
up
a
Username
Password
input
window
Once
the
user
has
filled
in
a
username
and
a
password
the
URL
containing
the
PHP
script
will
be
called
again
with
the
variables
PHP
AUTH
USER
PHP
AUTH
PW
and
PHP
AUTH
TYPE
set
to
the
user
name
password
and
authentication
type
respectively
Only
Basic
authentication
is
supported
at
this
point
See
the
8
Header
function
for
more
information
An
example
script
fragment
which
would
force
client
authentication
on
a
page
would
be
the
following
Example
16
1
HTTP
Authentication
example
php
if
isset
PHP
AUTH
USER
Header
WWW
Authenticate
Basic
realm
My
Realm
Header
HTTP
1
0
401
Unauthorized
echo
Text
to
send
if
user
hits
Cancel
button
n
exit
else
echo
Hello
PHP
AUTH
USER
P
echo
You
entered
PHP
AUTH
PW
as
your
password
P
Instead
of
simply
printing
out
the
PHP
AUTH
USER
and
PHP
AUTH
PW
you
would
probably
want
to
check
the
username
and
password
for
validity
Perhaps
by
sending
a
query
to
a
database
or
by
looking
up
the
user
in
a
dbm
file
Watch
out
for
buggy
Internet
Explorer
browsers
out
there
They
seem
very
picky
about
the
order
of
the
headers
Sending
the
WWW
Authenticate
header
before
the
HTTP
1
0
401
header
seems
to
do
the
trick
for
now
In
order
to
prevent
someone
from
writing
a
script
which
reveals
the
password
for
a
page
that
was
authenticated
through
a
traditional
external
mechanism
the
PHP
AUTH
variables
will
not
be
set
if
external
authentication
is
enabled
for
that
particular
page
In
this
case
the
REMOTE
USER
variable
can
be
used
to
identify
the
externally
authenticated
user
Note
however
that
the
above
does
not
prevent
someone
who
controls
a
non
authenticated
URL
from
stealing
passwords
from
authenticated
URLs
on
the
same
server
Both
Netscape
and
Internet
Explorer
will
clear
the
local
browser
window
s
authentication
cache
for
the
realm
upon
receiving
a
server
response
of
401
This
can
effectively
log
out
a
user
forcing
them
to
re
enter
their
username
and
password
Some
people
use
this
to
time
out
logins
or
provide
a
log
out
button
Example
16
2
HTTP
Authentication
example
forcing
a
new
name
password
php
function
authenticate
Header
WWW
authenticate
basic
realm
Test
Authentication
System
Header
HTTP
1
0
401
Unauthorized
echo
You
must
enter
a
valid
login
ID
and
password
to
access
th
is
resource
n
exit
if
isset
PHP
AUTH
USER
SeenBefore
1
strcmp
OldAuth
PH
P
AUTH
USER
authenticate
else
echo
Welcome
PHP
AUTH
USER
BR
echo
Old
OldAuth
echo
FORM
ACTION
PHP
SELF
METHOD
POST
n
echo
INPUT
TYPE
HIDDEN
NAME
SeenBefore
VALUE
1
n
echo
INPUT
TYPE
HIDDEN
NAME
OldAuth
VALUE
PHP
AUTH
USER
n
echo
INPUT
TYPE
Submit
VALUE
Re
Authenticate
n
echo
FORM
n
This
behavior
is
not
required
by
the
HTTP
Basic
authentication
standard
so
you
should
never
depend
on
this
Testing
with
Lynx
has
shown
that
Lynx
does
not
clear
the
authentication
credentials
with
a
401
server
response
so
pressing
back
and
then
forward
again
will
open
the
resource
as
long
as
the
credential
requirements
haven
t
changed
Also
note
that
this
does
not
work
using
Microsoft
s
IIS
server
and
the
CGI
version
of
PHP
due
to
a
limitation
of
IIS
9
Prev
10
Home
11
Next
Creating
GIF
images
12
Up
Cookies
1
PHP
Manual
2
Features
3
HTTP
authentication
with
PHP
4
Handling
file
uploads
PHP
Manual
5
Prev
6
Next
Chapter
17
Cookies
PHP
transparently
supports
HTTP
cookies
Cookies
are
a
mechanism
for
storing
data
in
the
remote
browser
and
thus
tracking
or
identifying
return
users
You
can
set
cookies
using
the
7
setcookie
function
Cookies
are
part
of
the
HTTP
header
so
8
setcookie
must
be
called
before
any
output
is
sent
to
the
browser
This
is
the
same
limitation
that
9
header
has
Any
cookies
sent
to
you
from
the
client
will
automatically
be
turned
into
a
PHP
variable
just
like
GET
and
POST
method
data
If
you
wish
to
assign
multiple
values
to
a
single
cookie
just
add
to
the
cookie
name
For
more
details
see
the
10
setcookie
function
11
Prev
12
Home
13
Next
HTTP
authentication
with
PHP
14
Up
Handling
file
uploads
1
PHP
Manual
2
Features
3
Cookies
4
Common
Pitfalls
PHP
Manual
5
Prev
6
Next
Chapter
18
Handling
file
uploads
Table
of
Contents
7
POST
method
uploads
8
Common
Pitfalls
9
Uploading
multiple
files
10
PUT
method
support
POST
method
uploads
PHP
is
capable
of
receiving
file
uploads
from
any
RFC
1867
compliant
browser
which
includes
Netscape
Navigator
3
or
later
Microsoft
Internet
Explorer
3
with
a
patch
from
Microsoft
or
later
without
a
patch
This
feature
lets
people
upload
both
text
and
binary
files
With
PHP
s
authentication
and
file
manipulation
functions
you
have
full
control
over
who
is
allowed
to
upload
and
what
is
to
be
done
with
the
file
once
it
has
been
uploaded
Note
that
PHP
also
supports
PUT
method
file
uploads
as
used
by
Netscape
Composer
and
W3C
s
Amaya
clients
See
the
11
PUT
Method
Support
for
more
details
A
file
upload
screen
can
be
built
by
creating
a
special
form
which
looks
something
like
this
Example
18
1
File
Upload
Form
FORM
ENCTYPE
multipart
form
data
ACTION
URL
METHOD
POST
INPUT
TYPE
hidden
name
MAX
FILE
SIZE
value
1000
Send
this
file
INPUT
NAME
userfile
TYPE
file
INPUT
TYPE
submit
VALUE
Send
File
FORM
The
URL
should
point
to
a
php
html
file
The
MAX
FILE
SIZE
hidden
field
must
precede
the
file
input
field
and
its
value
is
the
maximum
filesize
accepted
The
value
is
in
bytes
In
this
destination
file
the
following
variables
will
be
defined
upon
a
successful
upload
userfile
The
temporary
filename
in
which
the
uploaded
file
was
stored
on
the
server
machine
userfile
name
The
original
name
of
the
file
on
the
sender
s
system
userfile
size
The
size
of
the
uploaded
file
in
bytes
userfile
type
The
mime
type
of
the
file
if
the
browser
provided
this
information
An
example
would
be
image
gif
Note
that
the
userfile
part
of
the
above
variables
is
whatever
the
name
of
the
INPUT
field
of
TYPE
file
is
in
the
upload
form
In
the
above
upload
form
example
we
chose
to
call
it
userfile
Files
will
by
default
be
stored
in
the
server
s
default
temporary
directory
This
can
be
changed
by
setting
the
environment
variable
TMPDIR
in
the
environment
in
which
PHP
runs
Setting
it
using
12
putenv
from
within
a
PHP
script
will
not
work
The
PHP
script
which
receives
the
uploaded
file
should
implement
whatever
logic
is
necessary
for
determining
what
should
be
done
with
the
uploaded
file
You
can
for
example
use
the
file
size
variable
to
throw
away
any
files
that
are
either
too
small
or
too
big
You
could
use
the
file
type
variable
to
throw
away
any
files
that
didn
t
match
a
certain
type
criteria
Whatever
the
logic
you
should
either
delete
the
file
from
the
temporary
directory
or
move
it
elsewhere
The
file
will
be
deleted
from
the
temporary
directory
at
the
end
of
the
request
if
it
has
not
been
moved
away
or
renamed
13
Prev
14
Home
15
Next
Cookies
16
Up
Common
Pitfalls
1
PHP
Manual
2
Handling
file
uploads
3
Handling
file
uploads
4
Uploading
multiple
files
PHP
Manual
5
Prev
Chapter
18
Handling
file
uploads
6
Next
Common
Pitfalls
The
MAX
FILE
SIZE
item
cannot
specify
a
file
size
greater
than
the
file
size
that
has
been
set
in
the
upload
max
filesize
in
the
PHP3
ini
file
or
the
corresponding
php3
upload
max
filesize
Apache
conf
directive
The
default
is
2
Megabytes
Please
note
that
the
CERN
httpd
seems
to
strip
off
everything
starting
at
the
first
whitespace
in
the
content
type
mime
header
it
gets
from
the
client
As
long
as
this
is
the
case
CERN
httpd
will
not
support
the
file
upload
feature
7
Prev
8
Home
9
Next
Handling
file
uploads
10
Up
Uploading
multiple
files
1
PHP
Manual
2
Handling
file
uploads
3
Common
Pitfalls
4
PUT
method
support
PHP
Manual
5
Prev
Chapter
18
Handling
file
uploads
6
Next
Uploading
multiple
files
It
is
possible
to
upload
multiple
files
simultaneously
and
have
the
information
organized
automatically
in
arrays
for
you
To
do
so
you
need
to
use
the
same
array
submission
syntax
in
the
HTML
form
as
you
do
with
multiple
selects
and
checkboxes
Note
Support
for
multiple
file
uploads
was
added
in
version
3
0
10
Example
18
2
Uploading
multiple
forms
form
action
file
upload
html
method
post
enctype
multipart
form
data
Send
these
files
br
input
name
userfile
type
file
br
input
name
userfile
type
file
br
input
type
submit
value
Send
files
form
When
the
above
form
is
submitted
the
arrays
userfile
userfile
name
and
userfile
size
will
be
formed
in
the
global
scope
as
well
as
in
HTTP
POST
VARS
Each
of
these
will
be
a
numerically
indexed
array
of
the
appropriate
values
for
the
submitted
files
For
instance
assume
that
the
filenames
home
test
review
html
and
home
test
xwp
out
are
submitted
In
this
case
userfile
name
0
would
contain
the
value
review
html
and
userfile
name
1
would
contain
the
value
xwp
out
Similarly
userfile
size
0
would
contain
review
html
s
filesize
and
so
forth
7
Prev
8
Home
9
Next
Common
Pitfalls
10
Up
PUT
method
support
1
PHP
Manual
2
Handling
file
uploads
3
Uploading
multiple
files
4
Connection
handling
PHP
Manual
5
Prev
Chapter
18
Handling
file
uploads
6
Next
PUT
method
support
PHP
provides
support
for
the
HTTP
PUT
method
used
by
clients
such
as
Netscape
Composer
and
W3C
Amaya
PUT
requests
are
much
simpler
than
a
file
upload
and
they
look
something
like
this
PUT
path
filename
html
HTTP
1
1
This
would
normally
mean
that
the
remote
client
would
like
to
save
the
content
that
follows
as
path
filename
html
in
your
web
tree
It
is
obviously
not
a
good
idea
for
Apache
or
PHP
to
automatically
let
everybody
overwrite
any
files
in
your
web
tree
So
to
handle
such
a
request
you
have
to
first
tell
your
web
server
that
you
want
a
certain
PHP
script
to
handle
the
request
In
Apache
you
do
this
with
the
Script
directive
It
can
be
placed
almost
anywhere
in
your
Apache
configuration
file
A
common
place
is
inside
a
Directory
block
or
perhaps
inside
a
Virtualhost
block
A
line
like
this
would
do
the
trick
Script
PUT
put
php3
This
tells
Apache
to
send
all
PUT
requests
for
URIs
that
match
the
context
in
which
you
put
this
line
to
the
put
php3
script
This
assumes
of
course
that
you
have
PHP
enabled
for
the
php3
extension
and
PHP
is
active
Inside
your
put
php3
file
you
would
then
do
something
like
this
copy
PHP
UPLOADED
FILE
NAME
DOCUMENT
ROOT
REQUEST
URI
This
would
copy
the
file
to
the
location
requested
by
the
remote
client
You
would
probably
want
to
perform
some
checks
and
or
authenticate
the
user
before
performing
this
file
copy
The
only
trick
here
is
that
when
PHP
sees
a
PUT
method
request
it
stores
the
uploaded
file
in
a
temporary
file
just
like
those
handled
bu
the
7
POST
method
When
the
request
ends
this
temporary
file
is
deleted
So
your
PUT
handling
PHP
script
has
to
copy
that
file
somewhere
The
filename
of
this
temporary
file
is
in
the
PHP
PUT
FILENAME
variable
and
you
can
see
the
suggested
destination
filename
in
the
REQUEST
URI
may
vary
on
non
Apache
web
servers
This
destination
filename
is
the
one
that
the
remote
client
specified
You
do
not
have
to
listen
to
this
client
You
could
for
example
copy
all
uploaded
files
to
a
special
uploads
directory
8
Prev
9
Home
10
Next
Uploading
multiple
files
11
Up
Connection
handling
1
PHP
Manual
2
Features
3
PUT
method
support
4
Persistent
database
connections
PHP
Manual
5
Prev
6
Next
Chapter
19
Connection
handling
Note
The
following
applies
to
3
0
7
and
later
Internally
in
PHP
a
connection
status
is
maintained
There
are
3
possible
states
0
NORMAL
1
ABORTED
2
TIMEOUT
When
a
PHP
script
is
running
normally
the
NORMAL
state
is
active
If
the
remote
client
disconnects
the
ABORTED
state
flag
is
turned
on
A
remote
client
disconnect
is
usually
caused
by
the
user
hitting
his
STOP
button
If
the
PHP
imposed
time
limit
see
7
set
time
limit
is
hit
the
TIMEOUT
state
flag
is
turned
on
You
can
decide
whether
or
not
you
want
a
client
disconnect
to
cause
your
script
to
be
aborted
Sometimes
it
is
handy
to
always
have
your
scripts
run
to
completion
even
if
there
is
no
remote
browser
receiving
the
output
The
default
behaviour
is
however
for
your
script
to
be
aborted
when
the
remote
client
disconnects
This
behaviour
can
be
set
via
the
ignore
user
abort
php3
ini
directive
as
well
as
through
the
corresponding
php3
ignore
user
abort
Apache
conf
directive
or
with
the
8
ignore
user
abort
function
If
you
do
not
tell
PHP
to
ignore
a
user
abort
and
the
user
aborts
your
script
will
terminate
The
one
exception
is
if
you
have
registered
a
shutdown
function
using
9
register
shutdown
function
With
a
shutdown
function
when
the
remote
user
hits
his
STOP
button
the
next
time
your
script
tries
to
output
something
PHP
will
detect
that
the
connection
has
been
aborted
and
the
shutdown
function
is
called
This
shutdown
function
will
also
get
called
at
the
end
of
your
script
terminating
normally
so
to
do
something
different
in
case
of
a
client
diconnect
you
can
use
the
10
connection
aborted
function
This
function
will
return
true
if
the
connection
was
aborted
Your
script
can
also
be
terminated
by
the
built
in
script
timer
The
default
timeout
is
30
seconds
It
can
be
changed
using
the
max
execution
time
php3
ini
directive
or
the
corresponding
php3
max
execution
time
Apache
conf
directive
as
well
as
with
the
11
set
time
limit
function
When
the
timer
expires
the
script
will
be
aborted
and
as
with
the
above
client
disconnect
case
if
a
shutdown
function
has
been
registered
it
will
be
called
Within
this
shutdown
function
you
can
check
to
see
if
a
timeout
caused
the
shutdown
function
to
be
called
by
calling
the
12
connection
timeout
function
This
function
will
return
true
if
a
timeout
caused
the
shutdown
function
to
be
called
One
thing
to
note
is
that
both
the
ABORTED
and
the
TIMEOUT
states
can
be
active
at
the
same
time
This
is
possible
if
you
tell
PHP
to
ignore
user
aborts
PHP
will
still
note
the
fact
that
a
user
may
have
broken
the
connection
but
the
script
will
keep
running
If
it
then
hits
the
time
limit
it
will
be
aborted
and
your
shutdown
function
if
any
will
be
called
At
this
point
you
will
find
that
13
connection
timeout
and
14
connection
aborted
return
true
You
can
also
check
both
states
in
a
single
call
by
using
the
15
connection
status
This
function
returns
a
bitfield
of
the
active
states
So
if
both
states
are
active
it
would
return
3
for
example
16
Prev
17
Home
18
Next
PUT
method
support
19
Up
Persistent
database
connections
1
PHP
Manual
2
Features
3
Connection
handling
4
Function
Reference
PHP
Manual
5
Prev
6
Next
Chapter
20
Persistent
database
connections
Persistent
connections
are
SQL
links
that
do
not
close
when
the
execution
of
your
script
ends
When
a
persistent
connection
is
requested
PHP
checks
if
there
s
already
an
identical
persistent
connection
that
remained
open
from
earlier
and
if
it
exists
it
uses
it
If
it
does
not
exist
it
creates
the
link
An
identical
connection
is
a
connection
that
was
opened
to
the
same
host
with
the
same
username
and
the
same
password
where
applicable
People
who
aren
t
thoroughly
familiar
with
the
way
web
servers
work
and
distribute
the
load
may
mistake
persistent
connects
for
what
they
re
not
In
particular
they
do
not
give
you
an
ability
to
open
user
sessions
on
the
same
SQL
link
they
do
not
give
you
an
ability
to
build
up
a
transaction
efficently
and
they
don
t
do
a
whole
lot
of
other
things
In
fact
to
be
extremely
clear
about
the
subject
persistent
connections
don
t
give
you
any
functionality
that
wasn
t
possible
with
their
non
persistent
brothers
Why
This
has
to
do
with
the
way
web
servers
work
There
are
three
ways
in
which
your
web
server
can
utilize
PHP
to
generate
web
pages
The
first
method
is
to
use
PHP
as
a
CGI
wrapper
When
run
this
way
an
instance
of
the
PHP
interpreter
is
created
and
destroyed
for
every
page
request
for
a
PHP
page
to
your
web
server
Because
it
is
destroyed
after
every
request
any
resources
that
it
acquires
such
as
a
link
to
an
SQL
database
server
are
closed
when
it
is
destroyed
In
this
case
you
do
not
gain
anything
from
trying
to
use
persistent
connections
they
simply
don
t
persist
The
second
and
most
popular
method
is
to
run
PHP
as
a
module
in
a
multiprocess
web
server
which
currently
only
includes
Apache
A
multiprocess
server
typically
has
one
process
the
parent
which
coordinates
a
set
of
processes
its
children
who
actually
do
the
work
of
serving
up
web
pages
When
each
request
comes
in
from
a
a
client
it
is
handed
off
to
one
of
the
children
that
is
not
already
serving
another
client
This
means
that
when
the
same
client
makes
a
second
request
to
the
server
it
may
be
serviced
by
a
different
child
process
than
the
first
time
What
a
persistent
connection
does
for
you
in
this
case
it
make
it
so
each
child
process
only
needs
to
connect
to
your
SQL
server
the
first
time
that
it
serves
a
page
that
makes
us
of
such
a
connection
When
another
page
then
requires
a
connection
to
the
SQL
server
it
can
reuse
the
connection
that
child
established
earlier
The
last
method
is
to
use
PHP
as
a
plug
in
for
a
multithreaded
web
server
Currently
this
is
only
theoretical
PHP
does
not
yet
work
as
a
plug
in
for
any
multithreaded
web
servers
Work
is
progressing
on
support
for
ISAPI
WSAPI
and
NSAPI
on
Windows
which
will
all
allow
PHP
to
be
used
as
a
plug
in
on
multithreaded
servers
like
Netscape
FastTrack
Microsoft
s
Internet
Information
Server
IIS
and
O
Reilly
s
WebSite
Pro
When
this
happens
the
behavior
will
be
essentially
the
same
as
for
the
multiprocess
model
described
before
If
persistent
connections
don
t
have
any
added
functionality
what
are
they
good
for
The
answer
here
is
extremely
simple
efficiency
Persistent
connections
are
good
if
the
overhead
to
create
a
link
to
your
SQL
server
is
high
Whether
or
not
this
overhead
is
really
high
depends
on
many
factors
Like
what
kind
of
database
it
is
whether
or
not
it
sits
on
the
same
computer
on
which
your
web
server
sits
how
loaded
the
machine
the
SQL
server
sits
on
is
and
so
forth
The
bottom
line
is
that
if
that
connection
overhead
is
high
persistent
connections
help
you
considerably
They
cause
the
child
process
to
simply
connect
only
once
for
its
entire
lifespan
instead
of
every
time
it
processes
a
page
that
requires
connecting
to
the
SQL
server
This
means
that
for
every
child
that
opened
a
persistent
connection
will
have
its
own
open
persistent
connection
to
the
server
For
example
if
you
had
20
different
child
processes
that
ran
a
script
that
made
a
persistent
connection
to
your
SQL
server
you
d
have
20
different
connections
to
the
SQL
server
one
from
each
child
An
important
summary
Persistent
connections
were
designed
to
have
one
to
one
mapping
to
regular
connections
That
means
that
you
should
always
be
able
to
replace
persistent
connections
with
non
persistent
connections
and
it
won
t
change
the
way
your
script
behaves
It
may
and
probably
will
change
the
efficiency
of
the
script
but
not
its
behavior
7
Prev
8
Home
9
Next
Connection
handling
10
Up
Function
Reference
1
PHP
Manual
2
Persistent
database
connections
3
Adabas
D
functions
PHP
Manual
4
Prev
5
Next
IV
Function
Reference
Table
of
Contents
I
6
Adabas
D
functions
II
7
Apache
specific
functions
III
8
Array
functions
IV
9
Aspell
functions
V
10
Arbitrary
precision
mathematics
functions
VI
11
Calendar
functions
VII
12
ClibPDF
functions
VIII
13
Date
and
Time
functions
IX
14
Database
dbm
style
abstraction
layer
functions
X
15
dBase
functions
XI
16
dbm
functions
XII
17
Directory
functions
XIII
18
Dynamic
Loading
functions
XIV
19
Program
Execution
functions
XV
20
Forms
Data
Format
functions
XVI
21
filePro
functions
XVII
22
Filesystem
functions
XVIII
23
Functions
related
to
HTTP
XIX
24
Hyperwave
functions
XX
25
Image
functions
XXI
26
IMAP
functions
XXII
27
PHP
options
information
XXIII
28
Informix
functions
XXIV
29
InterBase
functions
XXV
30
LDAP
functions
XXVI
31
Mail
functions
XXVII
32
Mathematical
functions
XXVIII
33
Encryption
functions
XXIX
34
Hash
functions
XXX
35
Miscellaneous
functions
XXXI
36
mSQL
functions
XXXII
37
Microsoft
SQL
Server
functions
XXXIII
38
MySQL
functions
XXXIV
39
Sybase
functions
XXXV
40
Network
functions
XXXVI
41
NIS
functions
XXXVII
42
ODBC
functions
XXXVIII
43
Oracle
8
functions
XXXIX
44
Oracle
functions
XL
45
Perl
compatible
Regular
Expression
functions
XLI
46
PDF
functions
XLII
47
PostgreSQL
functions
XLIII
48
Regular
expression
functions
XLIV
49
Semaphore
and
shared
memory
functions
XLV
50
Solid
functions
XLVI
51
SNMP
functions
XLVII
52
String
functions
XLVIII
53
URL
functions
XLIX
54
Variable
functions
L
55
Vmailmgr
functions
LI
56
WDDX
functions
LII
57
Compression
functions
LIII
58
XML
parser
functions
59
Prev
60
Home
61
Next
Persistent
database
connections
Adabas
D
functions
1
PHP
Manual
2
Function
Reference
3
Function
Reference
4
ada
afetch
PHP
Manual
5
Prev
6
Next
I
Adabas
D
functions
The
Adabas
D
functions
are
deprecated
you
probably
want
to
use
the
7
Unified
ODBC
functions
instead
Table
of
Contents
8
ada
afetch
fetch
a
result
row
into
an
array
9
ada
autocommit
toggle
autocommit
behaviour
10
ada
close
close
a
connection
to
an
Adabas
D
server
11
ada
commit
commit
a
transaction
12
ada
connect
connect
to
an
Adabas
D
datasource
13
ada
exec
prepare
and
execute
a
SQL
statement
14
ada
fetchrow
fetch
a
row
from
a
result
15
ada
fieldname
get
the
columnname
16
ada
fieldnum
get
column
number
17
ada
fieldtype
get
the
datatype
of
a
field
18
ada
freeresult
free
resources
associated
with
a
result
19
ada
numfields
get
the
number
of
columns
in
a
result
20
ada
numrows
number
of
rows
in
a
result
21
ada
result
get
data
from
results
22
ada
resultall
print
result
as
HTML
table
23
ada
rollback
rollback
a
transaction
24
Prev
25
Home
26
Next
Function
Reference
27
Up
ada
afetch
1
PHP
Manual
2
Adabas
D
functions
3
Adabas
D
functions
4
ada
autocommit
PHP
Manual
5
Prev
6
Next
ada
afetch
ada
afetch
fetch
a
result
row
into
an
array
Description
See
7
odbc
fetch
into
8
Prev
9
Home
10
Next
Adabas
D
functions
11
Up
ada
autocommit
1
PHP
Manual
2
Adabas
D
functions
3
ada
afetch
4
ada
close
PHP
Manual
5
Prev
6
Next
ada
autocommit
ada
autocommit
toggle
autocommit
behaviour
Description
See
7
odbc
autocommit
8
Prev
9
Home
10
Next
ada
afetch
11
Up
ada
close
1
PHP
Manual
2
Adabas
D
functions
3
ada
autocommit
4
ada
commit
PHP
Manual
5
Prev
6
Next
ada
close
ada
close
close
a
connection
to
an
Adabas
D
server
Description
See
7
odbc
close
8
Prev
9
Home
10
Next
ada
autocommit
11
Up
ada
commit
1
PHP
Manual
2
Adabas
D
functions
3
ada
close
4
ada
connect
PHP
Manual
5
Prev
6
Next
ada
commit
ada
commit
commit
a
transaction
Description
See
7
odbc
commit
8
Prev
9
Home
10
Next
ada
close
11
Up
ada
connect
1
PHP
Manual
2
Adabas
D
functions
3
ada
commit
4
ada
exec
PHP
Manual
5
Prev
6
Next
ada
connect
ada
connect
connect
to
an
Adabas
D
datasource
Description
See
7
odbc
connect
8
Prev
9
Home
10
Next
ada
commit
11
Up
ada
exec
1
PHP
Manual
2
Adabas
D
functions
3
ada
connect
4
ada
fetchrow
PHP
Manual
5
Prev
6
Next
ada
exec
ada
exec
prepare
and
execute
a
SQL
statement
Description
See
7
odbc
exec
or
8
odbc
do
9
Prev
10
Home
11
Next
ada
connect
12
Up
ada
fetchrow
1
PHP
Manual
2
Adabas
D
functions
3
ada
exec
4
ada
fieldname
PHP
Manual
5
Prev
6
Next
ada
fetchrow
ada
fetchrow
fetch
a
row
from
a
result
Description
See
7
odbc
fetch
row
8
Prev
9
Home
10
Next
ada
exec
11
Up
ada
fieldname
1
PHP
Manual
2
Adabas
D
functions
3
ada
fetchrow
4
ada
fieldnum
PHP
Manual
5
Prev
6
Next
ada
fieldname
ada
fieldname
get
the
columnname
Description
See
7
odbc
field
name
8
Prev
9
Home
10
Next
ada
fetchrow
11
Up
ada
fieldnum
1
PHP
Manual
2
Adabas
D
functions
3
ada
fieldname
4
ada
fieldtype
PHP
Manual
5
Prev
6
Next
ada
fieldnum
ada
fieldnum
get
column
number
Description
See
odbc
field
num
7
Prev
8
Home
9
Next
ada
fieldname
10
Up
ada
fieldtype
1
PHP
Manual
2
Adabas
D
functions
3
ada
fieldnum
4
ada
freeresult
PHP
Manual
5
Prev
6
Next
ada
fieldtype
ada
fieldtype
get
the
datatype
of
a
field
Description
See
7
odbc
field
type
8
Prev
9
Home
10
Next
ada
fieldnum
11
Up
ada
freeresult
1
PHP
Manual
2
Adabas
D
functions
3
ada
fieldtype
4
ada
numfields
PHP
Manual
5
Prev
6
Next
ada
freeresult
ada
freeresult
free
resources
associated
with
a
result
Description
See
7
odbc
free
result
8
Prev
9
Home
10
Next
ada
fieldtype
11
Up
ada
numfields
1
PHP
Manual
2
Adabas
D
functions
3
ada
freeresult
4
ada
numrows
PHP
Manual
5
Prev
6
Next
ada
numfields
ada
numfields
get
the
number
of
columns
in
a
result
Description
See
7
odbc
num
fields
8
Prev
9
Home
10
Next
ada
freeresult
11
Up
ada
numrows
1
PHP
Manual
2
Adabas
D
functions
3
ada
numfields
4
ada
result
PHP
Manual
5
Prev
6
Next
ada
numrows
ada
numrows
number
of
rows
in
a
result
Description
See
7
odbc
num
rows
8
Prev
9
Home
10
Next
ada
numfields
11
Up
ada
result
1
PHP
Manual
2
Adabas
D
functions
3
ada
numrows
4
ada
resultall
PHP
Manual
5
Prev
6
Next
ada
result
ada
result
get
data
from
results
Description
See
7
odbc
result
8
Prev
9
Home
10
Next
ada
numrows
11
Up
ada
resultall
1
PHP
Manual
2
Adabas
D
functions
3
ada
result
4
ada
rollback
PHP
Manual
5
Prev
6
Next
ada
resultall
ada
resultall
print
result
as
HTML
table
Description
See
7
odbc
result
all
8
Prev
9
Home
10
Next
ada
result
11
Up
ada
rollback
1
PHP
Manual
2
Adabas
D
functions
3
ada
resultall
4
Apache
specific
functions
PHP
Manual
5
Prev
6
Next
ada
rollback
ada
rollback
rollback
a
transaction
Description
See
7
odbc
rollback
8
Prev
9
Home
10
Next
ada
resultall
11
Up
Apache
specific
functions
1
PHP
Manual
2
Function
Reference
3
ada
rollback
4
apache
lookup
uri
PHP
Manual
5
Prev
6
Next
II
Apache
specific
functions
Table
of
Contents
7
apache
lookup
uri
Perform
a
partial
request
for
the
specified
URI
and
return
all
info
about
it
8
apache
note
Get
and
set
apache
request
notes
9
getallheaders
Fetch
all
HTTP
request
headers
10
virtual
Perform
an
Apache
sub
request
11
Prev
12
Home
13
Next
ada
rollback
14
Up
apache
lookup
uri
1
PHP
Manual
2
Apache
specific
functions
3
Apache
specific
functions
4
apache
note
PHP
Manual
5
Prev
6
Next
apache
lookup
uri
apache
lookup
uri
Perform
a
partial
request
for
the
specified
URI
and
return
all
info
about
it
Description
class
apache
lookup
uri
string
filename
This
performs
a
partial
request
for
a
URI
It
goes
just
far
enough
to
obtain
all
the
important
information
about
the
given
resource
and
returns
this
information
in
a
class
The
properties
of
the
returned
class
are
status
the
request
status
line
method
content
type
handler
uri
filename
path
info
args
boundary
no
cache
no
local
copy
allowed
send
bodyct
bytes
sent
byterange
clength
unparsed
uri
mtime
request
time
7
Prev
8
Home
9
Next
Apache
specific
functions
10
Up
apache
note
1
PHP
Manual
2
Apache
specific
functions
3
apache
lookup
uri
4
getallheaders
PHP
Manual
5
Prev
6
Next
apache
note
apache
note
Get
and
set
apache
request
notes
Description
string
apache
note
string
note
name
string
note
value
apache
note
is
an
Apache
specific
function
which
gets
and
sets
values
in
a
request
s
notes
table
If
called
with
one
argument
it
returns
the
current
value
of
note
note
name
If
called
with
two
arguments
it
sets
the
value
of
note
note
name
to
note
value
and
returns
the
previous
value
of
note
note
name
7
Prev
8
Home
9
Next
apache
lookup
uri
10
Up
getallheaders
1
PHP
Manual
2
Apache
specific
functions
3
apache
note
4
virtual
PHP
Manual
5
Prev
6
Next
getallheaders
getallheaders
Fetch
all
HTTP
request
headers
Description
array
getallheaders
void
This
function
returns
an
associative
array
of
all
the
HTTP
headers
in
the
current
request
Note
You
can
also
get
at
the
value
of
the
common
CGI
variables
by
reading
them
from
the
environment
which
works
whether
or
not
you
are
using
PHP
as
an
Apache
module
Use
7
phpinfo
to
see
a
list
of
all
of
the
environment
variables
defined
this
way
Example
1
getallheaders
Example
headers
getallheaders
while
list
header
value
each
headers
echo
header
value
br
n
This
example
will
display
all
the
request
headers
for
the
current
request
Note
getallheaders
is
currently
only
supported
when
PHP
runs
as
an
Apache
module
8
Prev
9
Home
10
Next
apache
note
11
Up
virtual
1
PHP
Manual
2
Apache
specific
functions
3
getallheaders
4
Array
functions
PHP
Manual
5
Prev
6
Next
virtual
virtual
Perform
an
Apache
sub
request
Description
int
virtual
string
filename
virtual
is
an
Apache
specific
function
which
is
equivalent
to
include
virtual
in
mod
include
It
performs
an
Apache
sub
request
It
is
useful
for
including
CGI
scripts
or
shtml
files
or
anything
else
that
you
would
parse
through
Apache
Note
that
for
a
CGI
script
the
script
must
generate
valid
CGI
headers
At
the
minimum
that
means
it
must
generate
a
Content
type
header
For
PHP
files
you
should
use
7
include
or
8
require
9
Prev
10
Home
11
Next
getallheaders
12
Up
Array
functions
1
PHP
Manual
2
Function
Reference
3
virtual
4
array
PHP
Manual
5
Prev
6
Next
III
Array
functions
Table
of
Contents
7
array
Create
an
array
8
array
push
Push
one
or
more
elements
onto
the
end
of
array
9
array
pop
Pop
the
element
off
the
end
of
array
10
array
unshift
Push
one
or
more
elements
onto
the
beginning
of
array
11
array
shift
Pop
an
element
of
the
beginning
of
array
12
array
slice
Extract
a
slice
of
the
array
13
array
splice
Remove
a
portion
of
the
array
and
replace
it
with
something
else
14
array
merge
Merge
two
or
more
arrays
15
array
keys
Return
all
the
keys
of
an
array
16
array
values
Return
all
the
values
of
an
array
17
array
walk
Apply
a
user
function
to
every
member
of
an
array
18
arsort
Sort
an
array
in
reverse
order
and
maintain
index
association
19
asort
Sort
an
array
and
maintain
index
association
20
compact
Create
array
containing
variables
and
their
values
21
count
count
elements
in
a
variable
22
current
Return
the
current
element
in
an
array
23
each
Return
the
next
key
and
value
pair
from
an
array
24
end
Set
the
internal
pointer
of
an
array
to
its
last
element
25
extract
Import
variables
into
the
symbol
table
from
an
array
26
in
array
Return
true
if
a
value
exists
in
an
array
27
key
Fetch
a
key
from
an
associative
array
28
ksort
Sort
an
array
by
key
29
list
Assign
variables
as
if
they
were
an
array
30
next
Advance
the
internal
array
pointer
of
an
array
31
pos
Get
the
current
element
from
an
array
32
prev
Rewind
the
internal
array
pointer
33
range
Create
an
array
containing
a
range
of
integers
34
reset
Set
the
internal
pointer
of
an
array
to
its
first
element
35
rsort
Sort
an
array
in
reverse
order
36
shuffle
Shuffle
an
array
37
sizeof
Get
the
number
of
elements
in
an
array
38
sort
Sort
an
array
39
uasort
Sort
an
array
with
a
user
defined
comparison
function
and
maintain
index
association
40
uksort
Sort
an
array
by
keys
using
a
user
defined
comparison
function
41
usort
Sort
an
array
by
values
using
a
user
defined
comparison
function
42
Prev
43
Home
44
Next
virtual
45
Up
array
1
PHP
Manual
2
Array
functions
3
Array
functions
4
array
push
PHP
Manual
5
Prev
6
Next
array
array
Create
an
array
Description
array
array
Returns
an
array
of
the
parameters
The
parameters
can
be
given
an
index
with
the
operator
Note
array
is
a
language
construct
used
to
represent
literal
arrays
and
not
a
regular
function
The
following
example
demonstrates
how
to
create
a
two
dimensional
array
how
to
specify
keys
for
associative
arrays
and
how
to
skip
and
continue
numeric
indices
in
normal
arrays
Example
1
array
example
fruits
array
fruits
array
a
orange
b
banana
c
apple
numbers
array
1
2
3
4
5
6
holes
array
first
5
second
third
See
also
7
list
8
Prev
9
Home
10
Next
Array
functions
11
Up
array
push
1
PHP
Manual
2
Array
functions
3
array
4
array
pop
PHP
Manual
5
Prev
6
Next
array
push
array
push
Push
one
or
more
elements
onto
the
end
of
array
Description
int
array
push
array
array
mixed
var
array
push
treats
array
as
a
stack
and
pushes
the
passed
variables
onto
the
end
of
array
The
length
of
array
increases
by
the
number
of
variables
pushed
Has
the
same
effect
as
array
var
repeated
for
each
var
Returns
the
new
number
of
elements
in
the
array
Example
1
array
push
example
stack
array
1
2
array
push
stack
3
This
example
would
result
in
stack
having
4
elements
1
2
and
3
See
also
7
array
pop
8
array
shift
and
9
array
unshift
Note
This
function
was
added
in
PHP
4
0
10
Prev
11
Home
12
Next
array
13
Up
array
pop
1
PHP
Manual
2
Array
functions
3
array
push
4
array
unshift
PHP
Manual
5
Prev
6
Next
array
pop
array
pop
Pop
the
element
off
the
end
of
array
Description
mixed
array
pop
array
array
array
pop
pops
and
returns
the
last
value
of
the
array
shortening
the
array
by
one
element
Example
1
array
pop
example
stack
array
orange
apple
raspberry
fruit
array
pop
stack
After
this
stack
has
only
2
elements
orange
and
apple
and
fruit
has
raspberry
See
also
7
array
push
8
array
shift
and
9
array
unshift
Note
This
function
was
added
in
PHP
4
0
10
Prev
11
Home
12
Next
array
push
13
Up
array
unshift
1
PHP
Manual
2
Array
functions
3
array
pop
4
array
shift
PHP
Manual
5
Prev
6
Next
array
unshift
array
unshift
Push
one
or
more
elements
onto
the
beginning
of
array
Description
int
array
unshift
array
array
mixed
var
array
unshift
prepends
passed
elements
to
the
front
of
the
array
Note
that
the
list
of
elements
is
prepended
as
a
whole
so
that
the
prepended
elements
stay
in
the
same
order
Returns
the
new
number
of
elements
in
the
array
Example
1
array
unshift
example
queue
array
p1
p3
array
unshift
queue
p4
p5
p6
This
would
result
in
queue
having
5
elements
p4
p5
p6
p1
and
p3
See
also
7
array
shift
8
array
push
and
9
array
pop
Note
This
function
was
added
in
PHP
4
0
10
Prev
11
Home
12
Next
array
pop
13
Up
array
shift
1
PHP
Manual
2
Array
functions
3
array
unshift
4
array
slice
PHP
Manual
5
Prev
6
Next
array
shift
array
shift
Pop
an
element
of
the
beginning
of
array
Description
mixed
array
shift
array
array
array
shift
shifts
the
first
value
of
the
array
off
and
returns
it
shortening
the
array
by
one
element
and
moving
everything
down
Example
1
array
shift
example
args
array
v
f
opt
array
shift
args
This
would
result
in
args
having
one
element
f
left
and
opt
being
v
See
also
7
array
unshift
8
array
push
and
9
array
pop
Note
This
function
was
added
in
PHP
4
0
10
Prev
11
Home
12
Next
array
unshift
13
Up
array
slice
1
PHP
Manual
2
Array
functions
3
array
shift
4
array
splice
PHP
Manual
5
Prev
6
Next
array
slice
array
slice
Extract
a
slice
of
the
array
Description
array
array
slice
array
array
int
offset
int
length
array
slice
returns
a
sequence
of
elements
from
the
array
specified
by
the
offset
and
length
parameters
If
offset
is
positive
the
sequence
will
start
at
that
offset
in
the
array
If
offset
is
negative
the
sequence
will
start
that
far
from
the
end
of
the
array
If
length
is
given
and
is
positive
then
the
sequence
will
have
that
many
elements
in
it
If
length
is
given
and
is
negative
then
the
sequence
will
stop
that
many
elements
from
the
end
of
the
array
If
it
is
omitted
then
the
sequence
will
have
everything
from
offset
up
until
the
end
of
the
array
Example
1
array
slice
examples
input
array
a
b
c
d
e
output
array
slice
input
2
returns
c
d
and
e
output
array
slice
input
2
1
returns
c
d
output
array
slice
input
2
1
returns
d
output
array
slice
input
0
3
returns
a
b
and
c
See
also
7
array
splice
Note
This
function
was
added
in
PHP
4
0
8
Prev
9
Home
10
Next
array
shift
11
Up
array
splice
1
PHP
Manual
2
Array
functions
3
array
slice
4
array
merge
PHP
Manual
5
Prev
6
Next
array
splice
array
splice
Remove
a
portion
of
the
array
and
replace
it
with
something
else
Description
array
array
splice
array
input
int
offset
int
length
array
replacement
array
splice
removed
the
elements
designated
by
offset
and
length
from
the
input
array
and
replaces
them
with
the
elements
of
the
replacement
array
if
supplied
If
offset
is
positive
then
the
start
of
removed
portion
is
at
that
offset
from
the
beginning
of
the
input
array
If
offset
is
negative
then
it
starts
that
far
from
the
end
of
the
input
array
If
length
is
omitted
removes
everything
from
offset
to
the
end
of
the
array
If
length
is
specified
and
is
positive
then
that
many
elements
will
be
removed
If
length
is
specified
and
is
negative
then
the
end
of
the
removed
portion
will
be
that
many
elements
from
the
end
of
the
array
Tip
to
remove
everything
from
offset
to
the
end
of
the
array
when
replacement
is
also
specified
use
count
input
for
length
If
replacement
array
is
specified
then
the
removed
elements
are
replaced
with
elements
from
this
array
If
offset
and
length
are
such
that
nothing
is
removed
then
the
elements
from
the
replacement
array
are
inserted
in
the
place
specified
by
the
offset
Tip
if
the
replacement
is
just
one
element
it
is
not
necessary
to
put
array
around
it
unless
the
element
is
an
array
itself
The
following
equivalences
hold
array
push
input
x
y
array
splice
input
count
input
0
array
x
y
array
pop
input
array
splice
input
1
array
shift
input
array
splice
input
0
1
array
unshift
input
x
y
array
splice
input
0
0
array
x
y
a
x
y
array
splice
input
x
1
y
Returns
the
array
consisting
of
removed
elements
Example
1
array
splice
examples
input
array
red
green
blue
yellow
array
splice
input
2
input
is
now
array
red
green
array
splice
input
1
1
input
is
now
array
red
yellow
array
splice
input
1
count
input
orange
input
is
now
array
red
orange
array
splice
input
1
1
array
black
maroon
input
is
now
array
red
green
blue
black
maroon
See
also
7
array
slice
Note
This
function
was
added
in
PHP
4
0
8
Prev
9
Home
10
Next
array
slice
11
Up
array
merge
1
PHP
Manual
2
Array
functions
3
array
splice
4
array
keys
PHP
Manual
5
Prev
6
Next
array
merge
array
merge
Merge
two
or
more
arrays
Description
array
array
merge
array
array1
array
array2
array
merge
merges
the
elements
of
two
or
more
arrays
together
so
that
the
values
of
one
are
appended
to
the
end
of
the
previous
one
It
returns
the
resulting
array
If
the
input
arrays
had
the
same
string
keys
then
the
later
value
for
that
key
will
overwrite
previous
one
If
however
the
arrays
have
the
same
numeric
key
this
does
not
happen
since
the
values
are
appended
Example
1
array
merge
example
array1
array
color
red
2
4
array2
array
a
b
color
green
shape
trapezoid
array
merge
array1
array2
Resulting
array
will
be
array
color
green
2
4
a
b
shape
trapezoid
Note
This
function
was
added
in
PHP
4
0
7
Prev
8
Home
9
Next
array
splice
10
Up
array
keys
1
PHP
Manual
2
Array
functions
3
array
merge
4
array
values
PHP
Manual
5
Prev
6
Next
array
keys
array
keys
Return
all
the
keys
of
an
array
Description
array
array
keys
array
input
array
keys
returns
all
the
keys
numeric
and
string
from
the
input
array
Example
1
array
keys
example
array
array
0
100
color
red
array
keys
array
returns
array
0
color
See
also
7
array
values
Note
This
function
was
added
in
PHP
4
0
8
Prev
9
Home
10
Next
array
merge
11
Up
array
values
1
PHP
Manual
2
Array
functions
3
array
keys
4
array
walk
PHP
Manual
5
Prev
6
Next
array
values
array
values
Return
all
the
values
of
an
array
Description
array
array
values
array
input
array
values
returns
all
the
values
from
the
input
array
Example
1
array
values
example
array
array
size
XL
color
gold
array
values
array
returns
array
XL
gold
Note
This
function
was
added
in
PHP
4
0
7
Prev
8
Home
9
Next
array
keys
10
Up
array
walk
1
PHP
Manual
2
Array
functions
3
array
values
4
arsort
PHP
Manual
5
Prev
6
Next
array
walk
array
walk
Apply
a
user
function
to
every
member
of
an
array
Description
int
array
walk
array
arr
string
func
Applies
the
function
named
by
func
to
each
element
of
arr
The
elements
are
passed
as
the
first
argument
of
func
if
func
requires
more
than
one
argument
a
warning
will
be
generated
each
time
array
walk
calls
func
These
warnings
may
be
suppressed
by
prepending
the
sign
to
the
array
walk
call
or
by
using
7
error
reporting
Note
func
will
actually
be
working
with
the
elements
of
arr
so
any
changes
made
to
those
elements
will
be
made
in
the
array
itself
Example
1
array
walk
example
fruits
array
d
lemon
a
orange
b
banana
c
apple
function
test
alter
item1
item1
bogus
function
test
print
item2
echo
item2
br
n
array
walk
fruits
test
print
array
walk
fruits
test
alter
array
walk
fruits
test
print
See
also
8
each
and
9
list
10
Prev
11
Home
12
Next
array
values
13
Up
arsort
1
PHP
Manual
2
Array
functions
3
array
walk
4
asort
PHP
Manual
5
Prev
6
Next
arsort
arsort
Sort
an
array
in
reverse
order
and
maintain
index
association
Description
void
arsort
array
array
This
function
sorts
an
array
such
that
array
indices
maintain
their
correlation
with
the
array
elements
they
are
associated
with
This
is
used
mainly
when
sorting
associative
arrays
where
the
actual
element
order
is
significant
Example
1
arsort
example
fruits
array
d
lemon
a
orange
b
banana
c
apple
arsort
fruits
for
reset
fruits
key
key
fruits
next
fruits
echo
fruits
key
fruits
key
n
This
example
would
display
fruits
a
orange
fruits
d
lemon
fruits
b
banana
fruits
c
apple
The
fruits
have
been
sorted
in
reverse
alphabetical
order
and
the
index
associated
with
each
element
has
been
maintained
See
also
7
asort
8
rsort
9
ksort
and
10
sort
11
Prev
12
Home
13
Next
array
walk
14
Up
asort
1
PHP
Manual
2
Array
functions
3
arsort
4
compact
PHP
Manual
5
Prev
6
Next
asort
asort
Sort
an
array
and
maintain
index
association
Description
void
asort
array
array
This
function
sorts
an
array
such
that
array
indices
maintain
their
correlation
with
the
array
elements
they
are
associated
with
This
is
used
mainly
when
sorting
associative
arrays
where
the
actual
element
order
is
significant
Example
1
asort
example
fruits
array
d
lemon
a
orange
b
banana
c
apple
asort
fruits
for
reset
fruits
key
key
fruits
next
fruits
echo
fruits
key
fruits
key
n
This
example
would
display
fruits
c
apple
fruits
b
banana
fruits
d
lemon
fruits
a
orange
The
fruits
have
been
sorted
in
alphabetical
order
and
the
index
associated
with
each
element
has
been
maintained
See
also
7
arsort
8
rsort
9
ksort
and
10
sort
11
Prev
12
Home
13
Next
arsort
14
Up
compact
1
PHP
Manual
2
Array
functions
3
asort
4
count
PHP
Manual
5
Prev
6
Next
compact
compact
Create
array
containing
variables
and
their
values
Description
array
compact
string
varname
array
varnames
compact
takes
a
variable
number
of
parameters
Each
parameter
can
be
either
a
string
containing
the
name
of
the
variable
or
an
array
of
variable
names
The
array
can
contain
other
arrays
of
variable
names
inside
it
compact
handles
it
recursively
For
each
of
these
compact
looks
for
a
variable
with
that
name
in
the
current
symbol
table
and
adds
it
to
the
output
array
such
that
the
variable
name
becomes
the
key
and
the
contents
of
the
variable
become
the
value
for
that
key
In
short
it
does
the
opposite
of
7
extract
It
returns
the
output
array
with
all
the
variables
added
to
it
Example
1
compact
example
city
San
Francisco
state
CA
event
SIGGRAPH
location
vars
array
city
state
result
compact
event
location
vars
After
this
result
will
be
array
event
SIGGRAPH
city
San
Francisco
state
CA
See
also
8
extract
Note
This
function
was
added
in
PHP
4
0
9
Prev
10
Home
11
Next
asort
12
Up
count
1
PHP
Manual
2
Array
functions
3
compact
4
current
PHP
Manual
5
Prev
6
Next
count
count
count
elements
in
a
variable
Description
int
count
mixed
var
Returns
the
number
of
elements
in
var
which
is
typically
an
array
since
anything
else
will
have
one
element
Returns
1
if
the
variable
is
not
an
array
Returns
0
if
the
variable
is
not
set
Warning
count
may
return
0
for
a
variable
that
isn
t
set
but
it
may
also
return
0
for
a
variable
that
has
been
initialized
with
an
empty
array
Use
7
isset
to
test
if
a
variable
is
set
See
also
8
sizeof
9
isset
and
10
is
array
11
Prev
12
Home
13
Next
compact
14
Up
current
1
PHP
Manual
2
Array
functions
3
count
4
each
PHP
Manual
5
Prev
6
Next
current
current
Return
the
current
element
in
an
array
Description
mixed
current
array
array
Every
array
has
an
internal
pointer
to
its
current
element
which
is
initialized
to
the
first
element
inserted
into
the
array
The
current
function
simply
returns
the
array
element
that
s
currently
being
pointed
by
the
internal
pointer
It
does
not
move
the
pointer
in
any
way
If
the
internal
pointer
points
beyond
the
end
of
the
elements
list
current
returns
false
Warning
If
the
array
contains
empty
elements
0
or
the
empty
string
then
this
function
will
return
false
for
these
elements
as
well
This
makes
it
impossible
to
determine
if
you
are
really
at
the
end
of
the
list
in
such
an
array
using
current
To
properly
traverse
an
array
that
may
contain
empty
elements
use
the
7
each
function
See
also
8
end
9
next
10
prev
and
11
reset
12
Prev
13
Home
14
Next
count
15
Up
each
1
PHP
Manual
2
Array
functions
3
current
4
end
PHP
Manual
5
Prev
6
Next
each
each
Return
the
next
key
and
value
pair
from
an
array
Description
array
each
array
array
Returns
the
current
key
and
value
pair
from
the
array
array
and
advances
the
array
cursor
This
pair
is
returned
in
a
four
element
array
with
the
keys
0
1
key
and
value
Elements
0
and
key
contain
the
key
name
of
the
array
element
and
1
and
value
contain
the
data
If
the
internal
pointer
for
the
array
points
past
the
end
of
the
array
contents
each
returns
false
Example
1
each
examples
foo
array
bob
fred
jussi
jouni
bar
each
foo
bar
now
contains
the
following
key
value
pairs
0
0
1
bob
key
0
value
bob
foo
array
Robert
Bob
Seppo
Sepi
bar
each
foo
bar
now
contains
the
following
key
value
pairs
0
Robert
1
Bob
key
Robert
value
Bob
each
is
typically
used
in
conjunction
with
7
list
to
traverse
an
array
for
instance
HTTP
POST
VARS
Example
2
Traversing
HTTP
POST
VARS
with
each
echo
Values
submitted
via
POST
method
br
while
list
key
val
each
HTTP
POST
VARS
echo
key
val
br
After
each
has
executed
the
array
cursor
will
be
left
on
the
next
element
of
the
array
or
on
the
last
element
if
it
hits
the
end
of
the
array
See
also
8
key
9
list
10
current
11
reset
12
next
and
13
prev
14
Prev
15
Home
16
Next
current
17
Up
end
1
PHP
Manual
2
Array
functions
3
each
4
extract
PHP
Manual
5
Prev
6
Next
end
end
Set
the
internal
pointer
of
an
array
to
its
last
element
Description
end
array
array
end
advances
array
s
internal
pointer
to
the
last
element
See
also
7
current
8
each
end
9
next
and
10
reset
11
Prev
12
Home
13
Next
each
14
Up
extract
1
PHP
Manual
2
Array
functions
3
end
4
in
array
PHP
Manual
5
Prev
6
Next
extract
extract
Import
variables
into
the
symbol
table
from
an
array
Description
void
extract
array
var
array
int
extract
type
string
prefix
This
function
is
used
to
import
variables
from
an
array
into
the
current
symbol
table
It
takes
associative
array
var
array
and
treats
keys
as
variable
names
and
values
as
variable
values
For
each
key
value
pair
it
will
create
a
variable
in
the
current
symbol
table
subject
to
extract
type
and
prefix
parameters
extract
checks
for
colissions
with
existing
variables
The
way
collisions
are
treated
is
determined
by
extract
type
It
can
be
one
of
the
following
values
EXTR
OVERWRITE
If
there
is
a
collision
overwrite
the
existing
variable
EXTR
SKIP
If
there
is
a
collision
don
t
overwrite
the
existing
variable
EXTR
PREFIX
SAME
If
there
is
a
collision
prefix
the
new
variable
with
prefix
EXTR
PREFIX
ALL
Prefix
all
variables
with
prefix
If
extract
type
is
not
specified
it
is
assumed
to
be
EXTR
OVERWRITE
Note
that
prefix
is
only
required
if
extract
type
is
EXTR
PREFIX
SAME
or
EXTR
PREFIX
ALL
extract
checks
each
key
to
see
if
it
constitues
a
valid
variable
name
and
if
it
does
only
then
does
it
proceed
to
import
it
A
possible
use
for
extract
is
to
import
into
symbol
table
variables
contained
in
an
associative
array
returned
by
7
wddx
deserialize
Example
1
extract
example
Suppose
that
var
array
is
an
array
returned
from
wddx
deserialize
size
large
var
array
array
color
blue
size
medium
shape
sphere
extract
var
array
EXTR
PREFIX
SAME
wddx
print
color
size
shape
wddx
size
n
The
above
example
will
produce
blue
large
sphere
medium
The
size
wasn
t
overwritten
becaus
we
specified
EXTR
PREFIX
SAME
which
resulted
in
wddx
size
being
created
If
EXTR
SKIP
was
specified
then
wddx
size
wouldn
t
even
have
been
created
EXTR
OVERWRITE
would
have
cause
size
to
have
value
medium
and
EXTR
PREFIX
ALL
would
result
in
new
variables
being
named
wddx
color
wddx
size
and
wddx
shape
8
Prev
9
Home
10
Next
end
11
Up
in
array
1
PHP
Manual
2
Array
functions
3
extract
4
key
PHP
Manual
5
Prev
6
Next
in
array
in
array
Return
true
if
a
value
exists
in
an
array
Description
bool
in
array
mixed
needle
array
haystack
Searches
haystack
for
needle
and
returns
true
if
it
is
found
in
the
array
false
otherwise
Example
1
in
array
example
os
array
Mac
NT
Irix
Linux
if
in
array
Irix
os
print
Got
Irix
Note
This
function
was
added
in
PHP
4
0
7
Prev
8
Home
9
Next
extract
10
Up
key
1
PHP
Manual
2
Array
functions
3
in
array
4
ksort
PHP
Manual
5
Prev
6
Next
key
key
Fetch
a
key
from
an
associative
array
Description
mixed
key
array
array
key
returns
the
index
element
of
the
current
array
position
See
also
7
current
8
next
9
Prev
10
Home
11
Next
in
array
12
Up
ksort
1
PHP
Manual
2
Array
functions
3
key
4
list
PHP
Manual
5
Prev
6
Next
ksort
ksort
Sort
an
array
by
key
Description
int
ksort
array
array
Sorts
an
array
by
key
maintaining
key
to
data
correlations
This
is
useful
mainly
for
associative
arrays
Example
1
ksort
example
fruits
array
d
lemon
a
orange
b
banana
c
apple
ksort
fruits
for
reset
fruits
key
key
fruits
next
fruits
echo
fruits
key
fruits
key
n
This
example
would
display
fruits
a
orange
fruits
b
banana
fruits
c
apple
fruits
d
lemon
See
also
7
asort
8
arsort
9
sort
and
10
rsort
11
Prev
12
Home
13
Next
key
14
Up
list
1
PHP
Manual
2
Array
functions
3
ksort
4
next
PHP
Manual
5
Prev
6
Next
list
list
Assign
variables
as
if
they
were
an
array
Description
void
list
Like
7
array
this
is
not
really
a
function
but
a
language
construct
list
is
used
to
assign
a
list
of
variables
in
one
operation
Example
1
list
example
table
tr
th
Employee
name
th
th
Salary
th
tr
php
result
mysql
conn
SELECT
id
name
salary
FROM
employees
while
list
id
name
salary
mysql
fetch
row
result
print
tr
n
td
a
href
info
php3
id
id
name
a
td
n
td
salary
td
n
tr
n
table
See
also
8
each
9
array
10
Prev
11
Home
12
Next
ksort
13
Up
next
1
PHP
Manual
2
Array
functions
3
list
4
pos
PHP
Manual
5
Prev
6
Next
next
next
Advance
the
internal
array
pointer
of
an
array
Description
mixed
next
array
array
Returns
the
array
element
in
the
next
place
that
s
pointed
by
the
internal
array
pointer
or
false
if
there
are
no
more
elements
next
behaves
like
7
current
with
one
difference
It
advances
the
internal
array
pointer
one
place
forward
before
returning
the
element
That
means
it
returns
the
next
array
element
and
advances
the
internal
array
pointer
by
one
If
advancing
the
internal
array
pointer
results
in
going
beyond
the
end
of
the
element
list
next
returns
false
Warning
If
the
array
contains
empty
elements
then
this
function
will
return
false
for
these
elements
as
well
To
properly
traverse
an
array
which
may
contain
empty
elements
see
the
8
each
function
See
also
9
current
10
end
11
prev
and
12
reset
13
Prev
14
Home
15
Next
list
16
Up
pos
1
PHP
Manual
2
Array
functions
3
next
4
prev
PHP
Manual
5
Prev
6
Next
pos
pos
Get
the
current
element
from
an
array
Description
mixed
pos
array
array
This
is
an
alias
for
7
current
See
also
8
end
9
next
10
prev
and
11
reset
12
Prev
13
Home
14
Next
next
15
Up
prev
1
PHP
Manual
2
Array
functions
3
pos
4
range
PHP
Manual
5
Prev
6
Next
prev
prev
Rewind
the
internal
array
pointer
Description
mixed
prev
array
array
Returns
the
array
element
in
the
previous
place
that
s
pointed
by
the
internal
array
pointer
or
false
if
there
are
no
more
elements
Warning
If
the
array
contains
empty
elements
then
this
function
will
return
false
for
these
elements
as
well
To
properly
traverse
an
array
which
may
contain
empty
elements
see
the
7
each
function
prev
behaves
just
like
8
next
except
it
rewinds
the
internal
array
pointer
one
place
instead
of
advancing
it
See
also
9
current
10
end
11
next
and
12
reset
13
Prev
14
Home
15
Next
pos
16
Up
range
1
PHP
Manual
2
Array
functions
3
prev
4
reset
PHP
Manual
5
Prev
6
Next
range
range
Create
an
array
containing
a
range
of
integers
Description
array
range
int
low
int
high
range
returns
an
array
of
integers
from
low
to
high
inclusive
See
7
shuffle
for
an
example
of
its
use
8
Prev
9
Home
10
Next
prev
11
Up
reset
1
PHP
Manual
2
Array
functions
3
range
4
rsort
PHP
Manual
5
Prev
6
Next
reset
reset
Set
the
internal
pointer
of
an
array
to
its
first
element
Description
mixed
reset
array
array
reset
rewinds
array
s
internal
pointer
to
the
first
element
reset
returns
the
value
of
the
first
array
element
See
also
7
current
8
each
9
next
10
prev
and
reset
11
Prev
12
Home
13
Next
range
14
Up
rsort
1
PHP
Manual
2
Array
functions
3
reset
4
shuffle
PHP
Manual
5
Prev
6
Next
rsort
rsort
Sort
an
array
in
reverse
order
Description
void
rsort
array
array
This
function
sorts
an
array
in
reverse
order
highest
to
lowest
Example
1
rsort
example
fruits
array
lemon
orange
banana
apple
rsort
fruits
for
reset
fruits
list
key
value
each
fruits
echo
fruits
key
value
n
This
example
would
display
fruits
0
orange
fruits
1
lemon
fruits
2
banana
fruits
3
apple
The
fruits
have
been
sorted
in
reverse
alphabetical
order
See
also
7
arsort
8
asort
9
ksort
10
sort
and
11
usort
12
Prev
13
Home
14
Next
reset
15
Up
shuffle
1
PHP
Manual
2
Array
functions
3
rsort
4
sizeof
PHP
Manual
5
Prev
6
Next
shuffle
shuffle
Shuffle
an
array
Description
void
shuffle
array
array
This
function
shuffles
randomizes
the
order
of
the
elements
in
an
array
Example
1
shuffle
example
numbers
range
1
20
srand
time
shuffle
numbers
while
list
number
each
numbers
echo
number
See
also
7
arsort
8
asort
9
ksort
10
rsort
11
sort
and
12
usort
13
Prev
14
Home
15
Next
rsort
16
Up
sizeof
1
PHP
Manual
2
Array
functions
3
shuffle
4
sort
PHP
Manual
5
Prev
6
Next
sizeof
sizeof
Get
the
number
of
elements
in
an
array
Description
int
sizeof
array
array
Returns
the
number
of
elements
in
the
array
See
also
7
count
8
Prev
9
Home
10
Next
shuffle
11
Up
sort
1
PHP
Manual
2
Array
functions
3
sizeof
4
uasort
PHP
Manual
5
Prev
6
Next
sort
sort
Sort
an
array
Description
void
sort
array
array
This
function
sorts
an
array
Elements
will
be
arranged
from
lowest
to
highest
when
this
function
has
completed
Example
1
sort
example
fruits
array
lemon
orange
banana
apple
sort
fruits
for
reset
fruits
key
key
fruits
next
fruits
echo
fruits
key
fruits
key
n
This
example
would
display
fruits
0
apple
fruits
1
banana
fruits
2
lemon
fruits
3
orange
The
fruits
have
been
sorted
in
alphabetical
order
See
also
7
arsort
8
asort
9
ksort
10
rsort
and
11
usort
12
Prev
13
Home
14
Next
sizeof
15
Up
uasort
1
PHP
Manual
2
Array
functions
3
sort
4
uksort
PHP
Manual
5
Prev
6
Next
uasort
uasort
Sort
an
array
with
a
user
defined
comparison
function
and
maintain
index
association
Description
void
uasort
array
array
function
cmp
function
This
function
sorts
an
array
such
that
array
indices
maintain
their
correlation
with
the
array
elements
they
are
associated
with
This
is
used
mainly
when
sorting
associative
arrays
where
the
actual
element
order
is
significant
The
comparison
function
is
user
defined
7
Prev
8
Home
9
Next
sort
10
Up
uksort
1
PHP
Manual
2
Array
functions
3
uasort
4
usort
PHP
Manual
5
Prev
6
Next
uksort
uksort
Sort
an
array
by
keys
using
a
user
defined
comparison
function
Description
void
uksort
array
array
function
cmp
function
This
function
will
sort
the
keys
of
an
array
using
a
user
supplied
comparison
function
If
the
array
you
wish
to
sort
needs
to
be
sorted
by
some
non
trivial
criteria
you
should
use
this
function
Example
1
uksort
example
function
mycompare
a
b
if
a
b
return
0
return
a
b
1
1
a
array
4
four
3
three
20
twenty
10
ten
uksort
a
mycompare
while
list
key
value
each
a
echo
key
value
n
This
example
would
display
20
twenty
10
ten
4
four
3
three
See
also
7
arsort
8
asort
9
uasort
10
ksort
11
rsort
and
12
sort
13
Prev
14
Home
15
Next
uasort
16
Up
usort
1
PHP
Manual
2
Array
functions
3
uksort
4
Aspell
functions
PHP
Manual
5
Prev
6
Next
usort
usort
Sort
an
array
by
values
using
a
user
defined
comparison
function
Description
void
usort
array
array
function
cmp
function
This
function
will
sort
an
array
by
its
values
using
a
user
supplied
comparison
function
If
the
array
you
wish
to
sort
needs
to
be
sorted
by
some
non
trivial
criteria
you
should
use
this
function
The
comparison
function
must
return
an
integer
less
than
equal
to
or
greater
than
zero
if
the
first
argument
is
considered
to
be
respectively
less
than
equal
to
or
greater
than
the
second
If
two
members
compare
as
equal
their
order
in
the
sorted
array
is
undefined
Example
1
usort
example
function
cmp
a
b
if
a
b
return
0
return
a
b
1
1
a
array
3
2
5
6
1
usort
a
cmp
while
list
key
value
each
a
echo
key
value
n
This
example
would
display
0
6
1
5
2
3
3
2
4
1
Note
Obviously
in
this
trivial
case
the
7
rsort
function
would
be
more
appropriate
Warning
The
underlying
quicksort
function
in
some
C
libraries
such
as
on
Solaris
systems
may
cause
PHP
to
crash
if
the
comparison
function
does
not
return
consistent
values
See
also
8
arsort
9
asort
10
ksort
11
rsort
and
12
sort
13
Prev
14
Home
15
Next
uksort
16
Up
Aspell
functions
1
PHP
Manual
2
Function
Reference
3
usort
4
aspell
new
PHP
Manual
5
Prev
6
Next
IV
Aspell
functions
The
aspell
functions
allows
you
to
check
the
spelling
on
a
word
and
offer
suggestions
You
need
the
aspell
library
available
from
7
http
metalab
unc
edu
kevina
aspell
Table
of
Contents
8
aspell
new
load
a
new
dictionary
9
aspell
check
check
a
word
10
aspell
check
raw
check
a
word
without
changing
its
case
or
trying
to
trim
it
11
aspell
suggest
suggest
spellings
of
a
word
12
Prev
13
Home
14
Next
usort
15
Up
aspell
new
1
PHP
Manual
2
Aspell
functions
3
Aspell
functions
4
aspell
check
PHP
Manual
5
Prev
6
Next
aspell
new
aspell
new
load
a
new
dictionary
Description
int
aspell
new
string
master
string
personal
aspell
new
opens
up
a
new
dictionary
and
returns
the
dictionary
link
identifier
for
use
in
other
aspell
functions
Example
1
aspell
new
aspell
link
aspell
new
english
7
Prev
8
Home
9
Next
Aspell
functions
10
Up
aspell
check
1
PHP
Manual
2
Aspell
functions
3
aspell
new
4
aspell
check
raw
PHP
Manual
5
Prev
6
Next
aspell
check
aspell
check
check
a
word
Description
boolean
aspell
check
int
dictionary
link
string
word
aspell
check
checks
the
spelling
of
a
word
and
returns
true
if
the
spelling
is
correct
false
if
not
Example
1
aspell
check
aspell
link
aspell
new
english
if
aspell
check
aspell
link
testt
echo
This
is
a
valid
spelling
else
echo
Sorry
wrong
spelling
7
Prev
8
Home
9
Next
aspell
new
10
Up
aspell
check
raw
1
PHP
Manual
2
Aspell
functions
3
aspell
check
4
aspell
suggest
PHP
Manual
5
Prev
6
Next
aspell
check
raw
aspell
check
raw
check
a
word
without
changing
its
case
or
trying
to
trim
it
Description
boolean
aspell
check
raw
int
dictionary
link
string
word
7
aspell
check
raw
checks
the
spelling
of
a
word
without
changing
its
case
or
trying
to
trim
it
in
any
way
and
returns
true
if
the
spelling
is
correct
false
if
not
Example
1
aspell
check
raw
aspell
link
aspell
new
english
if
aspell
check
raw
aspell
link
testt
echo
This
is
a
valid
spelling
else
echo
Sorry
wrong
spelling
8
Prev
9
Home
10
Next
aspell
check
11
Up
aspell
suggest
1
PHP
Manual
2
Aspell
functions
3
aspell
check
raw
4
Arbitrary
precision
mathematics
functions
PHP
Manual
5
Prev
6
Next
aspell
suggest
aspell
suggest
suggest
spellings
of
a
word
Description
array
aspell
suggest
int
dictionary
link
string
word
aspell
suggest
returns
an
array
of
possible
spellings
for
the
given
word
Example
1
aspell
suggest
aspell
link
aspell
new
english
if
aspell
check
aspell
link
testt
suggestions
aspell
suggest
aspell
link
testt
for
i
0
i
count
suggestions
i
echo
Possible
spelling
suggestions
i
br
7
Prev
8
Home
9
Next
aspell
check
raw
10
Up
Arbitrary
precision
mathematics
functions
1
PHP
Manual
2
Function
Reference
3
aspell
suggest
4
bcadd
PHP
Manual
5
Prev
6
Next
V
Arbitrary
precision
mathematics
functions
These
functions
are
only
available
if
PHP
was
configured
with
enable
bcmath
Table
of
Contents
7
bcadd
Add
two
arbitrary
precision
numbers
8
bccomp
Compare
two
arbitrary
precision
numbers
9
bcdiv
Divide
two
arbitrary
precision
numbers
10
bcmod
Get
modulus
of
an
arbitrary
precision
number
11
bcmul
Multiply
two
arbitrary
precision
number
12
bcpow
Raise
an
arbitrary
precision
number
to
another
13
bcscale
Set
default
scale
parameter
for
all
bc
math
functions
14
bcsqrt
Get
the
square
root
of
an
arbitray
precision
number
15
bcsub
Subtract
one
arbitrary
precision
number
from
another
16
Prev
17
Home
18
Next
aspell
suggest
19
Up
bcadd
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
Arbitrary
precision
mathematics
functions
4
bccomp
PHP
Manual
5
Prev
6
Next
bcadd
bcadd
Add
two
arbitrary
precision
numbers
Description
string
bcadd
string
left
operand
string
right
operand
int
scale
Adds
the
left
operand
to
the
right
operand
and
returns
the
sum
in
a
string
The
optional
scale
parameter
is
used
to
set
the
number
of
digits
after
the
decimal
place
in
the
result
See
also
7
bcsub
8
Prev
9
Home
10
Next
Arbitrary
precision
mathematics
functions
11
Up
bccomp
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bcadd
4
bcdiv
PHP
Manual
5
Prev
6
Next
bccomp
bccomp
Compare
two
arbitrary
precision
numbers
Description
int
bccomp
string
left
operand
string
right
operand
int
scale
Compares
the
left
operand
to
the
right
operand
and
returns
the
result
as
an
integer
The
optional
scale
parameter
is
used
to
set
the
number
of
digits
after
the
decimal
place
which
will
be
used
in
the
comparion
The
return
value
is
0
if
the
two
operands
are
equal
If
the
left
operand
is
larger
than
the
right
operand
the
return
value
is
1
and
if
the
left
operand
is
less
than
the
right
operand
the
return
value
is
1
7
Prev
8
Home
9
Next
bcadd
10
Up
bcdiv
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bccomp
4
bcmod
PHP
Manual
5
Prev
6
Next
bcdiv
bcdiv
Divide
two
arbitrary
precision
numbers
Description
string
bcdiv
string
left
operand
string
right
operand
int
scale
Divides
the
left
operand
by
the
right
operand
and
returns
the
result
The
optional
scale
sets
the
number
of
digits
after
the
decimal
place
in
the
result
See
also
7
bcmul
8
Prev
9
Home
10
Next
bccomp
11
Up
bcmod
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bcdiv
4
bcmul
PHP
Manual
5
Prev
6
Next
bcmod
bcmod
Get
modulus
of
an
arbitrary
precision
number
Description
string
bcmod
string
left
operand
string
modulus
Get
the
modulus
of
the
left
operand
using
modulus
See
also
7
bcdiv
8
Prev
9
Home
10
Next
bcdiv
11
Up
bcmul
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bcmod
4
bcpow
PHP
Manual
5
Prev
6
Next
bcmul
bcmul
Multiply
two
arbitrary
precision
number
Description
string
bcmul
string
left
operand
string
right
operand
int
scale
Multiply
the
left
operand
by
the
right
operand
and
returns
the
result
The
optional
scale
sets
the
number
of
digits
after
the
decimal
place
in
the
result
See
also
7
bcdiv
8
Prev
9
Home
10
Next
bcmod
11
Up
bcpow
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bcmul
4
bcscale
PHP
Manual
5
Prev
6
Next
bcpow
bcpow
Raise
an
arbitrary
precision
number
to
another
Description
string
bcpow
string
x
string
y
int
scale
Raise
x
to
the
power
y
The
scale
can
be
used
to
set
the
number
of
digits
after
the
decimal
place
in
the
result
See
also
7
bcsqrt
8
Prev
9
Home
10
Next
bcmul
11
Up
bcscale
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bcpow
4
bcsqrt
PHP
Manual
5
Prev
6
Next
bcscale
bcscale
Set
default
scale
parameter
for
all
bc
math
functions
Description
string
bcscale
int
scale
This
function
sets
the
default
scale
parameter
for
all
subsequent
bc
math
functions
that
do
not
explicitly
specify
a
scale
parameter
7
Prev
8
Home
9
Next
bcpow
10
Up
bcsqrt
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bcscale
4
bcsub
PHP
Manual
5
Prev
6
Next
bcsqrt
bcsqrt
Get
the
square
root
of
an
arbitray
precision
number
Description
string
bcsqrt
string
operand
int
scale
Return
the
square
root
of
the
operand
The
optional
scale
parameter
sets
the
number
of
digits
after
the
decimal
place
in
the
result
See
also
7
bcpow
8
Prev
9
Home
10
Next
bcscale
11
Up
bcsub
1
PHP
Manual
2
Arbitrary
precision
mathematics
functions
3
bcsqrt
4
Calendar
functions
PHP
Manual
5
Prev
6
Next
bcsub
bcsub
Subtract
one
arbitrary
precision
number
from
another
Description
string
bcsub
string
left
operand
string
right
operand
int
scale
Subtracts
the
right
operand
from
the
left
operand
and
returns
the
result
in
a
string
The
optional
scale
parameter
is
used
to
set
the
number
of
digits
after
the
decimal
place
in
the
result
See
also
7
bcadd
8
Prev
9
Home
10
Next
bcsqrt
11
Up
Calendar
functions
1
PHP
Manual
2
Function
Reference
3
bcsub
4
JDToGregorian
PHP
Manual
5
Prev
6
Next
VI
Calendar
functions
The
calendar
functions
are
only
available
if
you
have
compiled
the
calendar
extension
in
dl
calendar
Read
dl
README
for
instructions
on
using
it
The
calendar
extension
presents
a
series
of
functions
to
simplify
converting
between
different
calendar
formats
The
intermediary
or
standard
it
is
based
on
is
the
Julian
Day
Count
The
Julian
Day
Count
is
a
count
of
days
starting
way
earlier
than
any
date
most
people
would
need
to
track
somewhere
around
4000bc
To
convert
between
calendar
systems
you
must
first
convert
to
Julian
Day
Count
then
to
the
calendar
system
of
your
choice
Julian
Day
Count
is
very
different
from
the
Julian
Calendar
For
more
information
on
calendar
systems
visit
7
http
genealogy
org
scottlee
cal
overview
html
Excerpts
from
this
page
are
included
in
these
instructions
and
are
in
quotes
Table
of
Contents
8
JDToGregorian
Converts
Julian
Day
Count
to
Gregorian
date
9
GregorianToJD
Converts
a
Gregorian
date
to
Julian
Day
Count
10
JDToJulian
Converts
a
Julian
Calendar
date
to
Julian
Day
Count
11
JulianToJD
Converts
a
Julian
Calendar
date
to
Julian
Day
Count
12
JDToJewish
Converts
a
Julian
Day
Count
to
the
Jewish
Calendar
13
JewishToJD
Converts
a
date
in
the
Jewish
Calendar
to
Julian
Day
Count
14
JDToFrench
Converts
a
Julian
Day
Count
to
the
French
Republican
Calendar
15
FrenchToJD
Converts
a
date
from
the
French
Republican
Calendar
to
a
Julian
Day
Count
16
JDMonthName
Returns
a
month
name
17
JDDayOfWeek
Returns
the
day
of
the
week
18
easter
date
get
UNIX
timestamp
for
midnight
on
Easter
of
a
given
year
19
easter
days
get
number
of
days
after
March
21
on
which
Easter
falls
for
a
given
year
20
Prev
21
Home
22
Next
bcsub
23
Up
JDToGregorian
1
PHP
Manual
2
Calendar
functions
3
Calendar
functions
4
GregorianToJD
PHP
Manual
5
Prev
6
Next
JDToGregorian
JDToGregorian
Converts
Julian
Day
Count
to
Gregorian
date
Description
string
jdtogregorian
int
julianday
Converts
Julian
Day
Count
to
a
string
containing
the
Gregorian
date
in
the
format
of
month
day
year
7
Prev
8
Home
9
Next
Calendar
functions
10
Up
GregorianToJD
1
PHP
Manual
2
Calendar
functions
3
JDToGregorian
4
JDToJulian
PHP
Manual
5
Prev
6
Next
GregorianToJD
GregorianToJD
Converts
a
Gregorian
date
to
Julian
Day
Count
Description
int
gregoriantojd
int
month
int
day
int
year
Valid
Range
for
Gregorian
Calendar
4714
B
C
to
9999
A
D
Although
this
software
can
handle
dates
all
the
way
back
to
4714
B
C
such
use
may
not
be
meaningful
The
Gregorian
calendar
was
not
instituted
until
October
15
1582
or
October
5
1582
in
the
Julian
calendar
Some
countries
did
not
accept
it
until
much
later
For
example
Britain
converted
in
1752
The
USSR
in
1918
and
Greece
in
1923
Most
European
countries
used
the
Julian
calendar
prior
to
the
Gregorian
Example
1
Calendar
functions
php
jd
GregorianToJD
10
11
1970
echo
jd
n
gregorian
JDToGregorian
jd
echo
gregorian
n
7
Prev
8
Home
9
Next
JDToGregorian
10
Up
JDToJulian
1
PHP
Manual
2
Calendar
functions
3
GregorianToJD
4
JulianToJD
PHP
Manual
5
Prev
6
Next
JDToJulian
JDToJulian
Converts
a
Julian
Calendar
date
to
Julian
Day
Count
Description
string
jdtojulian
int
julianday
Converts
Julian
Day
Count
to
a
string
containing
the
Julian
Calendar
Date
in
the
format
of
month
day
year
7
Prev
8
Home
9
Next
GregorianToJD
10
Up
JulianToJD
1
PHP
Manual
2
Calendar
functions
3
JDToJulian
4
JDToJewish
PHP
Manual
5
Prev
6
Next
JulianToJD
JulianToJD
Converts
a
Julian
Calendar
date
to
Julian
Day
Count
Description
int
juliantojd
int
month
int
day
int
year
Valid
Range
for
Julian
Calendar
4713
B
C
to
9999
A
D
Although
this
software
can
handle
dates
all
the
way
back
to
4713
B
C
such
use
may
not
be
meaningful
The
calendar
was
created
in
46
B
C
but
the
details
did
not
stabilize
until
at
least
8
A
D
and
perhaps
as
late
at
the
4th
century
Also
the
beginning
of
a
year
varied
from
one
culture
to
another
not
all
accepted
January
as
the
first
month
7
Prev
8
Home
9
Next
JDToJulian
10
Up
JDToJewish
1
PHP
Manual
2
Calendar
functions
3
JulianToJD
4
JewishToJD
PHP
Manual
5
Prev
6
Next
JDToJewish
JDToJewish
Converts
a
Julian
Day
Count
to
the
Jewish
Calendar
Description
string
jdtojewish
int
julianday
Converts
a
Julian
Day
Count
the
the
Jewish
Calendar
7
Prev
8
Home
9
Next
JulianToJD
10
Up
JewishToJD
1
PHP
Manual
2
Calendar
functions
3
JDToJewish
4
JDToFrench
PHP
Manual
5
Prev
6
Next
JewishToJD
JewishToJD
Converts
a
date
in
the
Jewish
Calendar
to
Julian
Day
Count
Description
int
jewishtojd
int
month
int
day
int
year
Valid
Range
Although
this
software
can
handle
dates
all
the
way
back
to
the
year
1
3761
B
C
such
use
may
not
be
meaningful
The
Jewish
calendar
has
been
in
use
for
several
thousand
years
but
in
the
early
days
there
was
no
formula
to
determine
the
start
of
a
month
A
new
month
was
started
when
the
new
moon
was
first
observed
7
Prev
8
Home
9
Next
JDToJewish
10
Up
JDToFrench
1
PHP
Manual
2
Calendar
functions
3
JewishToJD
4
FrenchToJD
PHP
Manual
5
Prev
6
Next
JDToFrench
JDToFrench
Converts
a
Julian
Day
Count
to
the
French
Republican
Calendar
Description
string
jdtofrench
int
month
int
day
int
year
Converts
a
Julian
Day
Count
to
the
French
Republican
Calendar
7
Prev
8
Home
9
Next
JewishToJD
10
Up
FrenchToJD
1
PHP
Manual
2
Calendar
functions
3
JDToFrench
4
JDMonthName
PHP
Manual
5
Prev
6
Next
FrenchToJD
FrenchToJD
Converts
a
date
from
the
French
Republican
Calendar
to
a
Julian
Day
Count
Description
int
frenchtojd
int
month
int
day
int
year
Converts
a
date
from
the
French
Republican
Calendar
to
a
Julian
Day
Count
These
routines
only
convert
dates
in
years
1
through
14
Gregorian
dates
22
September
1792
through
22
September
1806
This
more
than
covers
the
period
when
the
calendar
was
in
use
7
Prev
8
Home
9
Next
JDToFrench
10
Up
JDMonthName
1
PHP
Manual
2
Calendar
functions
3
FrenchToJD
4
JDDayOfWeek
PHP
Manual
5
Prev
6
Next
JDMonthName
JDMonthName
Returns
a
month
name
Description
string
jdmonthname
int
julianday
int
mode
Returns
a
string
containing
a
month
name
mode
tells
this
function
which
calendar
to
convert
the
Julian
Day
Count
to
and
what
type
of
month
names
are
to
be
returned
Table
1
Calendar
modes
Mode
Meaning
0
Gregorian
apreviated
1
Gregorian
2
Julian
apreviated
3
Julian
4
Jewish
5
French
Republican
7
Prev
8
Home
9
Next
FrenchToJD
10
Up
JDDayOfWeek
1
PHP
Manual
2
Calendar
functions
3
JDMonthName
4
easter
date
PHP
Manual
5
Prev
6
Next
JDDayOfWeek
JDDayOfWeek
Returns
the
day
of
the
week
Description
mixed
jddayofweek
int
julianday
int
mode
Returns
the
day
of
the
week
Can
return
a
string
or
an
int
depending
on
the
mode
Table
1
Calendar
week
modes
Mode
Meaning
0
returns
the
day
number
as
an
int
0
sunday
1
monday
etc
1
returns
string
containing
the
day
of
week
english
gregorian
2
returns
a
string
containing
the
abreviated
day
of
week
english
gregorian
7
Prev
8
Home
9
Next
JDMonthName
10
Up
easter
date
1
PHP
Manual
2
Calendar
functions
3
JDDayOfWeek
4
easter
days
PHP
Manual
5
Prev
6
Next
easter
date
easter
date
get
UNIX
timestamp
for
midnight
on
Easter
of
a
given
year
Description
int
easter
date
int
year
Returns
the
UNIX
timestamp
corresponding
to
midnight
on
Easter
of
the
given
year
If
no
year
is
specified
the
current
year
is
assumed
Warning
This
function
will
generate
a
warning
if
the
year
is
outside
of
the
range
for
UNIX
timestamps
i
e
before
1970
or
after
2037
Example
1
easter
date
example
echo
date
M
d
Y
easter
date
1999
Apr
04
1999
echo
date
M
d
Y
easter
date
2000
Apr
23
2000
echo
date
M
d
Y
easter
date
2001
Apr
15
2001
The
date
of
Easter
Day
was
defined
by
the
Council
of
Nicaea
in
AD325
as
the
Sunday
after
the
first
full
moon
which
falls
on
or
after
the
Spring
Equinox
The
Equinox
is
assumed
to
always
fall
on
21st
March
so
the
calculation
reduces
to
determining
the
date
of
the
full
moon
and
the
date
of
the
following
Sunday
The
algorithm
used
here
was
introduced
around
the
year
532
by
Dionysius
Exiguus
Under
the
Julian
Calendar
for
years
before
1753
a
simple
19
year
cycle
is
used
to
track
the
phases
of
the
Moon
Under
the
Gregorian
Calendar
for
years
after
1753
devised
by
Clavius
and
Lilius
and
introduced
by
Pope
Gregory
XIII
in
October
1582
and
into
Britain
and
its
then
colonies
in
September
1752
two
correction
factors
are
added
to
make
the
cycle
more
accurate
The
code
is
based
on
a
C
program
by
Simon
Kershaw
webmaster
ely
anglican
org
See
7
easter
days
for
calculating
Easter
before
1970
or
after
2037
8
Prev
9
Home
10
Next
JDDayOfWeek
11
Up
easter
days
1
PHP
Manual
2
Calendar
functions
3
easter
date
4
ClibPDF
functions
PHP
Manual
5
Prev
6
Next
easter
days
easter
days
get
number
of
days
after
March
21
on
which
Easter
falls
for
a
given
year
Description
int
easter
days
int
year
Returns
the
number
of
days
after
March
21
on
which
Easter
falls
for
a
given
year
If
no
year
is
specified
the
current
year
is
assumed
This
function
can
be
used
instead
of
7
easter
date
to
calculate
Easter
for
years
which
fall
outside
the
range
of
UNIX
timestamps
i
e
before
1970
or
after
2037
Example
1
8
easter
date
example
echo
easter
days
1999
14
i
e
April
4
echo
easter
days
1492
32
i
e
April
22
echo
easter
days
1913
2
i
e
March
23
The
date
of
Easter
Day
was
defined
by
the
Council
of
Nicaea
in
AD325
as
the
Sunday
after
the
first
full
moon
which
falls
on
or
after
the
Spring
Equinox
The
Equinox
is
assumed
to
always
fall
on
21st
March
so
the
calculation
reduces
to
determining
the
date
of
the
full
moon
and
the
date
of
the
following
Sunday
The
algorithm
used
here
was
introduced
around
the
year
532
by
Dionysius
Exiguus
Under
the
Julian
Calendar
for
years
before
1753
a
simple
19
year
cycle
is
used
to
track
the
phases
of
the
Moon
Under
the
Gregorian
Calendar
for
years
after
1753
devised
by
Clavius
and
Lilius
and
introduced
by
Pope
Gregory
XIII
in
October
1582
and
into
Britain
and
its
then
colonies
in
September
1752
two
correction
factors
are
added
to
make
the
cycle
more
accurate
The
code
is
based
on
a
C
program
by
Simon
Kershaw
webmaster
ely
anglican
org
See
also
9
easter
date
10
Prev
11
Home
12
Next
easter
date
13
Up
ClibPDF
functions
1
PHP
Manual
2
Function
Reference
3
easter
days
4
cpdf
set
creator
PHP
Manual
5
Prev
6
Next
VII
ClibPDF
functions
ClibPDF
allows
to
create
pdf
documents
with
PHP
It
is
available
at
7
FastIO
but
is
not
free
software
You
should
definitely
read
the
licence
before
you
start
playing
with
ClibPDF
If
you
cannot
fullfil
the
licence
agreement
consider
using
pdflib
by
Thomas
Merz
which
is
also
very
powerful
ClibPDF
functionality
and
API
is
similar
to
Thomas
Merz
pdflib
but
ClibPDF
is
according
to
FastIO
faster
and
creates
smaller
documents
This
may
have
changed
with
the
new
version
2
0
of
pdflib
A
simple
benchmark
the
pdfclock
c
example
from
pdflib
2
0
turned
into
a
php
script
actually
show
no
difference
in
speed
at
all
The
file
size
is
also
similar
if
compression
is
turned
off
This
documentation
should
be
read
with
the
ClibPDF
manual
since
it
explains
much
of
the
library
in
much
more
detail
Once
you
understand
the
manual
of
ClibPDF
you
should
be
able
to
start
using
the
library
with
PHP
Many
functions
in
the
native
ClibPDF
and
the
PHP
module
as
well
as
in
pdflib
have
the
same
name
All
functions
except
for
8
cpdf
open
take
as
their
first
parameter
the
handle
for
the
document
on
which
the
function
is
to
be
performed
Currently
this
handle
is
not
used
internally
since
ClibPDF
does
not
support
the
creation
of
several
PDF
documents
at
the
same
time
Actually
you
should
not
even
try
it
the
results
are
unpredictable
I
cannot
oversee
what
the
consequences
in
a
multi
threaded
environment
are
According
to
the
author
of
ClibPDF
this
will
change
in
one
of
the
next
releases
current
version
when
this
was
written
is
1
10
If
you
need
this
functionality
use
the
pdflib
module
One
big
advantage
of
ClibPDF
over
pdflib
is
the
possibility
to
create
the
pdf
document
completely
in
memory
without
using
temporary
files
It
also
provides
the
ability
to
pass
coordinates
in
a
predefined
unit
length
This
is
a
handy
feature
but
can
be
simulated
with
9
pdf
translate
Most
of
the
functions
are
fairly
easy
to
use
The
most
difficult
part
is
probably
creating
a
very
simple
PDF
document
at
all
The
following
example
should
help
you
get
started
It
creates
a
document
with
one
page
The
page
contains
the
text
Times
Roman
in
an
outlined
30pt
font
The
text
is
underlined
Example
1
Simple
ClibPDF
Example
php
cpdf
cpdf
open
0
cpdf
page
init
cpdf
1
0
595
842
cpdf
add
outline
cpdf
0
0
0
1
Page
1
cpdf
set
font
cpdf
Times
Roman
30
4
cpdf
set
text
rendering
cpdf
1
cpdf
text
cpdf
Times
Roman
outlined
50
750
cpdf
moveto
cpdf
50
740
cpdf
lineto
cpdf
330
740
cpdf
stroke
cpdf
cpdf
finalize
cpdf
Header
Content
type
application
pdf
cpdf
output
buffer
cpdf
cpdf
close
cpdf
The
pdflib
distribution
contains
a
more
complex
example
which
creates
a
series
of
pages
with
an
analog
clock
Here
is
that
example
converted
into
PHP
using
the
ClibPDF
extension
Example
2
pdfclock
example
from
pdflib
2
0
distribution
php
radius
200
margin
20
pagecount
40
pdf
cpdf
open
0
cpdf
set
creator
pdf
pdf
clock
php3
cpdf
set
title
pdf
Analog
Clock
while
pagecount
0
cpdf
page
init
pdf
pagecount
1
0
2
radius
margin
2
radius
margin
1
0
cpdf
set
page
animation
pdf
4
0
5
0
0
0
wipe
cpdf
translate
pdf
radius
margin
radius
margin
cpdf
save
pdf
cpdf
setrgbcolor
pdf
0
0
0
0
1
0
minute
strokes
cpdf
setlinewidth
pdf
2
0
for
alpha
0
alpha
360
alpha
6
cpdf
rotate
pdf
6
0
cpdf
moveto
pdf
radius
0
0
cpdf
lineto
pdf
radius
margin
3
0
0
cpdf
stroke
pdf
cpdf
restore
pdf
cpdf
save
pdf
5
minute
strokes
cpdf
setlinewidth
pdf
3
0
for
alpha
0
alpha
360
alpha
30
cpdf
rotate
pdf
30
0
cpdf
moveto
pdf
radius
0
0
cpdf
lineto
pdf
radius
margin
0
0
cpdf
stroke
pdf
ltime
getdate
draw
hour
hand
cpdf
save
pdf
cpdf
rotate
pdf
ltime
minutes
60
0
ltime
hours
3
0
30
0
cpdf
moveto
pdf
radius
10
radius
20
cpdf
lineto
pdf
radius
2
0
0
cpdf
lineto
pdf
radius
10
radius
20
cpdf
closepath
pdf
cpdf
fill
pdf
cpdf
restore
pdf
draw
minute
hand
cpdf
save
pdf
cpdf
rotate
pdf
ltime
seconds
60
0
ltime
minutes
15
0
6
0
cpdf
moveto
pdf
radius
10
radius
20
cpdf
lineto
pdf
radius
0
8
0
0
cpdf
lineto
pdf
radius
10
radius
20
cpdf
closepath
pdf
cpdf
fill
pdf
cpdf
restore
pdf
draw
second
hand
cpdf
setrgbcolor
pdf
1
0
0
0
0
0
cpdf
setlinewidth
pdf
2
cpdf
save
pdf
cpdf
rotate
pdf
ltime
seconds
15
0
6
0
cpdf
moveto
pdf
radius
5
0
0
cpdf
lineto
pdf
radius
0
0
cpdf
stroke
pdf
cpdf
restore
pdf
draw
little
circle
at
center
cpdf
circle
pdf
0
0
radius
30
cpdf
fill
pdf
cpdf
restore
pdf
cpdf
finalize
page
pdf
pagecount
1
cpdf
finalize
pdf
Header
Content
type
application
pdf
cpdf
output
buffer
pdf
cpdf
close
pdf
Table
of
Contents
10
cpdf
set
creator
Sets
the
creator
field
in
the
pdf
document
11
cpdf
set
title
Sets
the
title
field
of
the
pdf
document
12
cpdf
set
subject
Sets
the
subject
field
of
the
pdf
document
13
cpdf
set
keywords
Sets
the
keywords
field
of
the
pdf
document
14
cpdf
open
Opens
a
new
pdf
document
15
cpdf
close
Closes
the
pdf
document
16
cpdf
page
init
Starts
new
page
17
cpdf
finalize
page
Ends
page
18
cpdf
finalize
Ends
document
19
cpdf
output
buffer
Outputs
the
pdf
document
in
memory
buffer
20
cpdf
save
to
file
Writes
the
pdf
document
into
a
file
21
cpdf
set
current
page
Sets
current
page
22
cpdf
begin
text
Starts
text
section
23
cpdf
end
text
Starts
text
section
24
cpdf
show
Output
text
at
current
position
25
cpdf
show
xy
Output
text
at
position
26
cpdf
text
Output
text
with
parameters
27
cpdf
set
font
Select
the
current
font
face
and
size
28
cpdf
set
leading
Sets
distance
between
text
lines
29
cpdf
set
text
rendering
Determines
how
text
is
rendered
30
cpdf
set
horiz
scaling
Sets
horizontal
scaling
of
text
31
cpdf
set
text
rise
Sets
the
text
rise
32
cpdf
set
text
matrix
Sets
the
text
matrix
33
cpdf
set
text
pos
Sets
text
position
34
cpdf
set
char
spacing
Sets
character
spacing
35
cpdf
set
word
spacing
Sets
spacing
between
words
36
cpdf
continue
text
Output
text
in
next
line
37
cpdf
stringwidth
Returns
width
of
text
in
current
font
38
cpdf
save
Saves
current
enviroment
39
cpdf
restore
Restores
formerly
saved
enviroment
40
cpdf
translate
Sets
origin
of
coordinate
system
41
cpdf
scale
Sets
scaling
42
cpdf
rotate
Sets
rotation
43
cpdf
setflat
Sets
flatness
44
cpdf
setlinejoin
Sets
linejoin
parameter
45
cpdf
setlinecap
Sets
linecap
aparameter
46
cpdf
setmiterlimit
Sets
miter
limit
47
cpdf
setlinewidth
Sets
line
width
48
cpdf
setdash
Sets
dash
pattern
49
cpdf
moveto
Sets
current
point
50
cpdf
rmoveto
Sets
current
point
51
cpdf
curveto
Draws
a
curve
52
cpdf
lineto
Draws
a
line
53
cpdf
rlineto
Draws
a
line
54
cpdf
circle
Draw
a
circle
55
cpdf
arc
Draws
an
arc
56
cpdf
rect
Draw
a
rectangle
57
cpdf
closepath
Close
path
58
cpdf
stroke
Draw
line
along
path
59
cpdf
closepath
stroke
Close
path
and
draw
line
along
path
60
cpdf
fill
Fill
current
path
61
cpdf
fill
stroke
Fill
and
stroke
current
path
62
cpdf
closepath
fill
stroke
Close
fill
and
stroke
current
path
63
cpdf
clip
Clips
to
current
path
64
cpdf
setgray
fill
Sets
filling
color
to
gray
value
65
cpdf
setgray
stroke
Sets
drawing
color
to
gray
value
66
cpdf
setgray
Sets
drawing
and
filling
color
to
gray
value
67
cpdf
setrgbcolor
fill
Sets
filling
color
to
rgb
color
value
68
cpdf
setrgbcolor
stroke
Sets
drawing
color
to
rgb
color
value
69
cpdf
setrgbcolor
Sets
drawing
and
filling
color
to
rgb
color
value
70
cpdf
add
outline
Adds
bookmark
for
current
page
71
cpdf
set
page
animation
Sets
duration
between
pages
72
cpdf
import
jpeg
Opens
a
JPEG
image
73
cpdf
place
inline
image
Places
an
image
on
the
page
74
cpdf
add
annotation
Adds
annotation
75
Prev
76
Home
77
Next
easter
days
78
Up
cpdf
set
creator
1
PHP
Manual
2
ClibPDF
functions
3
ClibPDF
functions
4
cpdf
set
title
PHP
Manual
5
Prev
6
Next
cpdf
set
creator
cpdf
set
creator
Sets
the
creator
field
in
the
pdf
document
Description
void
cpdf
set
creator
string
creator
The
cpdf
set
creator
function
sets
the
creator
of
a
pdf
document
See
also
7
cpdf
set
subject
8
cpdf
set
title
9
cpdf
set
keywords
10
Prev
11
Home
12
Next
ClibPDF
functions
13
Up
cpdf
set
title
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
creator
4
cpdf
set
subject
PHP
Manual
5
Prev
6
Next
cpdf
set
title
cpdf
set
title
Sets
the
title
field
of
the
pdf
document
Description
void
cpdf
set
title
string
title
The
cpdf
set
title
function
sets
the
title
of
a
pdf
document
See
also
7
cpdf
set
subject
8
cpdf
set
creator
9
cpdf
set
keywords
10
Prev
11
Home
12
Next
cpdf
set
creator
13
Up
cpdf
set
subject
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
title
4
cpdf
set
keywords
PHP
Manual
5
Prev
6
Next
cpdf
set
subject
cpdf
set
subject
Sets
the
subject
field
of
the
pdf
document
Description
void
cpdf
set
subject
string
subject
The
cpdf
set
subject
function
sets
the
subject
of
a
pdf
document
See
also
7
cpdf
set
title
8
cpdf
set
creator
9
cpdf
set
keywords
10
Prev
11
Home
12
Next
cpdf
set
title
13
Up
cpdf
set
keywords
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
subject
4
cpdf
open
PHP
Manual
5
Prev
6
Next
cpdf
set
keywords
cpdf
set
keywords
Sets
the
keywords
field
of
the
pdf
document
Description
void
cpdf
set
keywords
string
keywords
The
cpdf
set
keywords
function
sets
the
keywords
of
a
pdf
document
See
also
7
cpdf
set
title
8
cpdf
set
creator
9
cpdf
set
subject
10
Prev
11
Home
12
Next
cpdf
set
subject
13
Up
cpdf
open
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
keywords
4
cpdf
close
PHP
Manual
5
Prev
6
Next
cpdf
open
cpdf
open
Opens
a
new
pdf
document
Description
int
cpdf
open
int
compression
string
filename
The
cpdf
open
function
opens
a
new
pdf
document
The
first
parameter
turns
document
compression
on
if
it
is
unequal
to
0
The
second
optional
parameter
sets
the
file
in
which
the
document
is
written
If
it
is
omitted
the
document
is
created
in
memory
and
can
either
be
written
into
a
file
with
the
7
cpdf
save
to
file
or
written
to
standard
output
with
8
cpdf
output
buffer
Note
The
return
value
will
be
needed
in
futher
versions
of
ClibPDF
as
the
first
parameter
in
all
other
functions
which
are
writing
to
the
pdf
document
The
ClibPDF
library
takes
the
filename
as
a
synonym
for
stdout
If
PHP
is
compiled
as
an
apache
module
this
will
not
work
because
the
way
ClibPDF
outputs
to
stdout
does
not
work
with
apache
You
can
solve
this
problem
by
skipping
the
filename
and
using
9
cpdf
output
buffer
to
output
the
pdf
document
See
also
10
cpdf
close
11
cpdf
output
buffer
12
Prev
13
Home
14
Next
cpdf
set
keywords
15
Up
cpdf
close
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
open
4
cpdf
page
init
PHP
Manual
5
Prev
6
Next
cpdf
close
cpdf
close
Closes
the
pdf
document
Description
void
cpdf
close
int
pdf
document
The
cpdf
close
function
closes
the
pdf
document
This
should
be
the
last
function
even
after
7
cpdf
finalize
8
cpdf
output
buffer
and
9
cpdf
save
to
file
See
also
10
cpdf
open
11
Prev
12
Home
13
Next
cpdf
open
14
Up
cpdf
page
init
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
close
4
cpdf
finalize
page
PHP
Manual
5
Prev
6
Next
cpdf
page
init
cpdf
page
init
Starts
new
page
Description
void
cpdf
page
init
int
pdf
document
int
page
number
int
orientation
double
height
double
width
double
unit
The
cpdf
page
init
function
starts
a
new
page
with
height
height
and
width
width
The
page
has
number
page
number
and
orientation
orientation
orientation
can
be
0
for
portrait
and
1
for
landscape
The
last
optional
parameter
unit
sets
the
unit
for
the
koordinate
system
The
value
should
be
the
number
of
postscript
points
per
unit
Since
one
inch
is
equal
to
72
points
a
value
of
72
would
set
the
unit
to
one
inch
The
default
is
also
72
See
also
7
cpdf
set
current
page
8
Prev
9
Home
10
Next
cpdf
close
11
Up
cpdf
finalize
page
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
page
init
4
cpdf
finalize
PHP
Manual
5
Prev
6
Next
cpdf
finalize
page
cpdf
finalize
page
Ends
page
Description
void
cpdf
finalize
page
int
pdf
document
int
page
number
The
cpdf
finalize
page
function
ends
the
page
with
page
number
page
number
This
function
is
only
for
saving
memory
A
finalized
page
takes
less
memory
but
cannot
be
modified
anymore
See
also
7
cpdf
page
init
8
Prev
9
Home
10
Next
cpdf
page
init
11
Up
cpdf
finalize
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
finalize
page
4
cpdf
output
buffer
PHP
Manual
5
Prev
6
Next
cpdf
finalize
cpdf
finalize
Ends
document
Description
void
cpdf
finalize
int
pdf
document
The
cpdf
finalize
function
ends
the
document
You
still
have
to
call
7
cpdf
close
See
also
8
cpdf
close
9
Prev
10
Home
11
Next
cpdf
finalize
page
12
Up
cpdf
output
buffer
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
finalize
4
cpdf
save
to
file
PHP
Manual
5
Prev
6
Next
cpdf
output
buffer
cpdf
output
buffer
Outputs
the
pdf
document
in
memory
buffer
Description
void
cpdf
output
buffer
int
pdf
document
The
cpdf
output
buffer
function
outputs
the
pdf
document
to
stdout
The
document
has
to
be
created
in
memory
which
is
the
case
if
7
cpdf
open
has
been
called
with
no
filename
parameter
See
also
8
cpdf
open
9
Prev
10
Home
11
Next
cpdf
finalize
12
Up
cpdf
save
to
file
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
output
buffer
4
cpdf
set
current
page
PHP
Manual
5
Prev
6
Next
cpdf
save
to
file
cpdf
save
to
file
Writes
the
pdf
document
into
a
file
Description
void
cpdf
save
to
file
int
pdf
document
string
filename
The
cpdf
save
to
file
function
outputs
the
pdf
document
into
a
file
if
it
has
been
created
in
memory
This
function
is
not
needed
if
the
pdf
document
has
been
open
by
specifying
a
filename
as
a
parameter
of
7
cpdf
open
See
also
8
cpdf
output
buffer
9
cpdf
open
10
Prev
11
Home
12
Next
cpdf
output
buffer
13
Up
cpdf
set
current
page
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
save
to
file
4
cpdf
begin
text
PHP
Manual
5
Prev
6
Next
cpdf
set
current
page
cpdf
set
current
page
Sets
current
page
Description
void
cpdf
set
current
page
int
pdf
document
int
page
number
The
cpdf
set
current
page
function
set
the
page
on
which
all
operations
are
performed
One
can
switch
between
pages
until
a
page
is
finished
with
7
cpdf
finalize
page
See
also
8
cpdf
finalize
page
9
Prev
10
Home
11
Next
cpdf
save
to
file
12
Up
cpdf
begin
text
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
current
page
4
cpdf
end
text
PHP
Manual
5
Prev
6
Next
cpdf
begin
text
cpdf
begin
text
Starts
text
section
Description
void
cpdf
begin
text
int
pdf
document
The
cpdf
begin
text
function
starts
a
text
section
It
must
be
ended
with
7
cpdf
end
text
Example
1
Text
output
php
cpdf
begin
text
pdf
cpdf
set
font
pdf
16
Helvetica
4
cpdf
text
pdf
100
100
Some
text
cpdf
end
text
pdf
See
also
8
cpdf
end
text
9
Prev
10
Home
11
Next
cpdf
set
current
page
12
Up
cpdf
end
text
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
begin
text
4
cpdf
show
PHP
Manual
5
Prev
6
Next
cpdf
end
text
cpdf
end
text
Starts
text
section
Description
void
cpdf
end
text
int
pdf
document
The
cpdf
end
text
function
ends
a
text
section
which
was
started
with
7
cpdf
begin
text
Example
1
Text
output
php
cpdf
begin
text
pdf
cpdf
set
font
pdf
16
Helvetica
4
cpdf
text
pdf
100
100
Some
text
cpdf
end
text
pdf
See
also
8
cpdf
begin
text
9
Prev
10
Home
11
Next
cpdf
begin
text
12
Up
cpdf
show
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
end
text
4
cpdf
show
xy
PHP
Manual
5
Prev
6
Next
cpdf
show
cpdf
show
Output
text
at
current
position
Description
void
cpdf
show
int
pdf
document
string
text
The
cpdf
show
function
outputs
the
string
in
text
at
the
current
position
See
also
7
cpdf
text
8
cpdf
begin
text
9
cpdf
end
text
10
Prev
11
Home
12
Next
cpdf
end
text
13
Up
cpdf
show
xy
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
show
4
cpdf
text
PHP
Manual
5
Prev
6
Next
cpdf
show
xy
cpdf
show
xy
Output
text
at
position
Description
void
cpdf
show
xy
int
pdf
document
string
text
double
x
koor
double
y
koor
int
mode
The
cpdf
show
xy
function
outputs
the
string
text
at
position
with
coordinates
x
koor
y
koor
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
Note
The
function
cpdf
show
xy
is
identical
to
7
cpdf
text
without
the
optional
parameters
See
also
8
cpdf
text
9
Prev
10
Home
11
Next
cpdf
show
12
Up
cpdf
text
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
show
xy
4
cpdf
set
font
PHP
Manual
5
Prev
6
Next
cpdf
text
cpdf
text
Output
text
with
parameters
Description
void
cpdf
text
int
pdf
document
string
text
double
x
koor
double
y
koor
int
mode
double
orientation
int
alignmode
The
cpdf
text
function
outputs
the
string
text
at
position
with
coordinates
x
koor
y
koor
The
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
The
optional
parameter
orientation
is
the
rotation
of
the
text
in
degree
The
optional
parameter
alignmode
determines
how
the
text
is
align
See
the
ClibPDF
documentation
for
possible
values
See
also
7
cpdf
show
xy
8
Prev
9
Home
10
Next
cpdf
show
xy
11
Up
cpdf
set
font
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
text
4
cpdf
set
leading
PHP
Manual
5
Prev
6
Next
cpdf
set
font
cpdf
set
font
Select
the
current
font
face
and
size
Description
void
cpdf
set
font
int
pdf
document
string
font
name
double
size
int
encoding
The
cpdf
set
font
function
sets
the
the
current
font
face
font
size
and
encoding
Currently
only
the
standard
postscript
fonts
are
supported
The
last
parameter
encoding
can
take
the
following
values
2
macroman
3
macexpert
4
winansi
Any
other
value
selects
the
font
s
buildin
encoding
7
Prev
8
Home
9
Next
cpdf
text
10
Up
cpdf
set
leading
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
font
4
cpdf
set
text
rendering
PHP
Manual
5
Prev
6
Next
cpdf
set
leading
cpdf
set
leading
Sets
distance
between
text
lines
Description
void
cpdf
set
leading
int
pdf
document
double
distance
The
cpdf
set
leading
function
sets
the
distance
between
text
lines
This
will
be
used
if
text
is
output
by
7
cpdf
continue
text
See
also
8
cpdf
continue
text
9
Prev
10
Home
11
Next
cpdf
set
font
12
Up
cpdf
set
text
rendering
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
leading
4
cpdf
set
horiz
scaling
PHP
Manual
5
Prev
6
Next
cpdf
set
text
rendering
cpdf
set
text
rendering
Determines
how
text
is
rendered
Description
void
cpdf
set
text
rendering
int
pdf
document
int
mode
The
cpdf
set
text
rendering
function
determines
how
text
is
rendered
The
possible
values
for
mode
are
0
fill
text
1
stroke
text
2
fill
and
stroke
text
3
invisible
4
fill
text
and
add
it
to
cliping
path
5
stroke
text
and
add
it
to
clipping
path
6
fill
and
stroke
text
and
add
it
to
cliping
path
7
add
it
to
clipping
path
7
Prev
8
Home
9
Next
cpdf
set
leading
10
Up
cpdf
set
horiz
scaling
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
text
rendering
4
cpdf
set
text
rise
PHP
Manual
5
Prev
6
Next
cpdf
set
horiz
scaling
cpdf
set
horiz
scaling
Sets
horizontal
scaling
of
text
Description
void
cpdf
set
horiz
scaling
int
pdf
document
double
scale
The
cpdf
set
horiz
scaling
function
sets
the
horizontal
scaling
to
scale
percent
7
Prev
8
Home
9
Next
cpdf
set
text
rendering
10
Up
cpdf
set
text
rise
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
horiz
scaling
4
cpdf
set
text
matrix
PHP
Manual
5
Prev
6
Next
cpdf
set
text
rise
cpdf
set
text
rise
Sets
the
text
rise
Description
void
cpdf
set
text
rise
int
pdf
document
double
value
The
cpdf
set
text
rise
function
sets
the
text
rising
to
value
units
7
Prev
8
Home
9
Next
cpdf
set
horiz
scaling
10
Up
cpdf
set
text
matrix
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
text
rise
4
cpdf
set
text
pos
PHP
Manual
5
Prev
6
Next
cpdf
set
text
matrix
cpdf
set
text
matrix
Sets
the
text
matrix
Description
void
cpdf
set
text
matrix
int
pdf
document
array
matrix
The
cpdf
set
text
matrix
function
sets
a
matrix
which
describes
a
transformation
applied
on
the
current
text
font
7
Prev
8
Home
9
Next
cpdf
set
text
rise
10
Up
cpdf
set
text
pos
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
text
matrix
4
cpdf
set
char
spacing
PHP
Manual
5
Prev
6
Next
cpdf
set
text
pos
cpdf
set
text
pos
Sets
text
position
Description
void
cpdf
set
text
pos
int
pdf
document
double
x
koor
double
y
koor
int
mode
The
cpdf
set
text
pos
function
sets
the
position
of
text
for
the
next
7
cpdf
show
function
call
The
last
optional
parameter
mode
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
8
cpdf
show
9
cpdf
text
10
Prev
11
Home
12
Next
cpdf
set
text
matrix
13
Up
cpdf
set
char
spacing
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
text
pos
4
cpdf
set
word
spacing
PHP
Manual
5
Prev
6
Next
cpdf
set
char
spacing
cpdf
set
char
spacing
Sets
character
spacing
Description
void
cpdf
set
char
spacing
int
pdf
document
double
space
The
cpdf
set
char
spacing
function
sets
the
spacing
between
characters
See
also
7
cpdf
set
word
spacing
8
cpdf
set
leading
9
Prev
10
Home
11
Next
cpdf
set
text
pos
12
Up
cpdf
set
word
spacing
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
char
spacing
4
cpdf
continue
text
PHP
Manual
5
Prev
6
Next
cpdf
set
word
spacing
cpdf
set
word
spacing
Sets
spacing
between
words
Description
void
cpdf
set
word
spacing
int
pdf
document
double
space
The
cpdf
set
word
spacing
function
sets
the
spacing
between
words
See
also
7
cpdf
set
char
spacing
8
cpdf
set
leading
9
Prev
10
Home
11
Next
cpdf
set
char
spacing
12
Up
cpdf
continue
text
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
word
spacing
4
cpdf
stringwidth
PHP
Manual
5
Prev
6
Next
cpdf
continue
text
cpdf
continue
text
Output
text
in
next
line
Description
void
cpdf
continue
text
int
pdf
document
string
text
The
cpdf
continue
text
function
outputs
the
string
in
text
in
the
next
line
See
also
7
cpdf
show
xy
8
cpdf
text
9
cpdf
set
leading
10
cpdf
set
text
pos
11
Prev
12
Home
13
Next
cpdf
set
word
spacing
14
Up
cpdf
stringwidth
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
continue
text
4
cpdf
save
PHP
Manual
5
Prev
6
Next
cpdf
stringwidth
cpdf
stringwidth
Returns
width
of
text
in
current
font
Description
double
cpdf
stringwidth
int
pdf
document
string
text
The
cpdf
stringwidth
function
returns
the
width
of
the
string
in
text
It
requires
a
font
to
be
set
before
See
also
7
cpdf
set
font
8
Prev
9
Home
10
Next
cpdf
continue
text
11
Up
cpdf
save
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
stringwidth
4
cpdf
restore
PHP
Manual
5
Prev
6
Next
cpdf
save
cpdf
save
Saves
current
enviroment
Description
void
cpdf
save
int
pdf
document
The
cpdf
save
function
saves
the
current
enviroment
It
works
like
the
postscript
command
gsave
Very
useful
if
you
want
to
translate
or
rotate
an
object
without
effecting
other
objects
See
also
7
cpdf
restore
8
Prev
9
Home
10
Next
cpdf
stringwidth
11
Up
cpdf
restore
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
save
4
cpdf
translate
PHP
Manual
5
Prev
6
Next
cpdf
restore
cpdf
restore
Restores
formerly
saved
enviroment
Description
void
cpdf
restore
int
pdf
document
The
cpdf
restore
function
restores
the
enviroment
saved
with
7
cpdf
save
It
works
like
the
postscript
command
grestore
Very
useful
if
you
want
to
translate
or
rotate
an
object
without
effecting
other
objects
Example
1
Save
Restore
php
cpdf
save
pdf
do
all
kinds
of
rotations
transformations
cpdf
restore
pdf
See
also
8
cpdf
save
9
Prev
10
Home
11
Next
cpdf
save
12
Up
cpdf
translate
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
restore
4
cpdf
scale
PHP
Manual
5
Prev
6
Next
cpdf
translate
cpdf
translate
Sets
origin
of
coordinate
system
Description
void
cpdf
translate
int
pdf
document
double
x
koor
double
y
koor
int
mode
The
cpdf
translate
function
set
the
origin
of
coordinate
system
to
the
point
x
koor
y
koor
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
7
Prev
8
Home
9
Next
cpdf
restore
10
Up
cpdf
scale
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
translate
4
cpdf
rotate
PHP
Manual
5
Prev
6
Next
cpdf
scale
cpdf
scale
Sets
scaling
Description
void
cpdf
scale
int
pdf
document
double
x
scale
double
y
scale
The
cpdf
scale
function
set
the
scaling
factor
in
both
directions
7
Prev
8
Home
9
Next
cpdf
translate
10
Up
cpdf
rotate
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
scale
4
cpdf
setflat
PHP
Manual
5
Prev
6
Next
cpdf
rotate
cpdf
rotate
Sets
rotation
Description
void
cpdf
rotate
int
pdf
document
double
angle
The
cpdf
rotate
function
set
the
rotation
in
degress
to
angle
7
Prev
8
Home
9
Next
cpdf
scale
10
Up
cpdf
setflat
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
rotate
4
cpdf
setlinejoin
PHP
Manual
5
Prev
6
Next
cpdf
setflat
cpdf
setflat
Sets
flatness
Description
void
cpdf
setflat
int
pdf
document
double
value
The
cpdf
setflat
function
set
the
flatness
to
a
value
between
0
and
100
7
Prev
8
Home
9
Next
cpdf
rotate
10
Up
cpdf
setlinejoin
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setflat
4
cpdf
setlinecap
PHP
Manual
5
Prev
6
Next
cpdf
setlinejoin
cpdf
setlinejoin
Sets
linejoin
parameter
Description
void
cpdf
setlinejoin
int
pdf
document
long
value
The
cpdf
setlinejoin
function
set
the
linejoin
parameter
between
a
value
of
0
and
2
0
miter
1
round
2
bevel
7
Prev
8
Home
9
Next
cpdf
setflat
10
Up
cpdf
setlinecap
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setlinejoin
4
cpdf
setmiterlimit
PHP
Manual
5
Prev
6
Next
cpdf
setlinecap
cpdf
setlinecap
Sets
linecap
aparameter
Description
void
cpdf
setlinecap
int
pdf
document
int
value
The
cpdf
setlinecap
function
set
the
linecap
parameter
between
a
value
of
0
and
2
0
butt
end
1
round
2
projecting
square
7
Prev
8
Home
9
Next
cpdf
setlinejoin
10
Up
cpdf
setmiterlimit
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setlinecap
4
cpdf
setlinewidth
PHP
Manual
5
Prev
6
Next
cpdf
setmiterlimit
cpdf
setmiterlimit
Sets
miter
limit
Description
void
cpdf
setmiterlimit
int
pdf
document
double
value
The
cpdf
setmiterlimit
function
set
the
miter
limit
to
a
value
greater
or
equal
than
1
7
Prev
8
Home
9
Next
cpdf
setlinecap
10
Up
cpdf
setlinewidth
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setmiterlimit
4
cpdf
setdash
PHP
Manual
5
Prev
6
Next
cpdf
setlinewidth
cpdf
setlinewidth
Sets
line
width
Description
void
cpdf
setlinewidth
int
pdf
document
double
width
The
cpdf
setlinewidth
function
set
the
line
width
to
width
7
Prev
8
Home
9
Next
cpdf
setmiterlimit
10
Up
cpdf
setdash
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setlinewidth
4
cpdf
moveto
PHP
Manual
5
Prev
6
Next
cpdf
setdash
cpdf
setdash
Sets
dash
pattern
Description
void
cpdf
setdash
int
pdf
document
double
white
double
black
The
cpdf
setdash
function
set
the
dash
pattern
white
white
units
and
black
black
units
If
both
are
0
a
solid
line
is
set
7
Prev
8
Home
9
Next
cpdf
setlinewidth
10
Up
cpdf
moveto
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setdash
4
cpdf
rmoveto
PHP
Manual
5
Prev
6
Next
cpdf
moveto
cpdf
moveto
Sets
current
point
Description
void
cpdf
moveto
int
pdf
document
double
x
koor
double
y
koor
int
mode
The
cpdf
moveto
function
set
the
current
point
to
the
coordinates
x
koor
and
y
koor
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
7
Prev
8
Home
9
Next
cpdf
setdash
10
Up
cpdf
rmoveto
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
moveto
4
cpdf
curveto
PHP
Manual
5
Prev
6
Next
cpdf
rmoveto
cpdf
rmoveto
Sets
current
point
Description
void
cpdf
rmoveto
int
pdf
document
double
x
koor
double
y
koor
int
mode
The
cpdf
rmoveto
function
set
the
current
point
relative
to
the
coordinates
x
koor
and
y
koor
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
moveto
8
Prev
9
Home
10
Next
cpdf
moveto
11
Up
cpdf
curveto
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
rmoveto
4
cpdf
lineto
PHP
Manual
5
Prev
6
Next
cpdf
curveto
cpdf
curveto
Draws
a
curve
Description
void
cpdf
curveto
int
pdf
document
double
x1
double
y1
double
x2
double
y2
double
x3
double
y3
int
mode
The
cpdf
curveto
function
draws
a
Bezier
curve
from
the
current
point
to
the
point
x3
y3
using
x1
y1
and
x2
y2
as
control
points
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
moveto
8
cpdf
rmoveto
9
cpdf
rlineto
10
cpdf
lineto
11
Prev
12
Home
13
Next
cpdf
rmoveto
14
Up
cpdf
lineto
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
curveto
4
cpdf
rlineto
PHP
Manual
5
Prev
6
Next
cpdf
lineto
cpdf
lineto
Draws
a
line
Description
void
cpdf
lineto
int
pdf
document
double
x
koor
double
y
koor
int
mode
The
cpdf
lineto
function
draws
a
line
from
the
current
point
to
the
point
with
coordinates
x
koor
y
koor
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
moveto
8
cpdf
rmoveto
9
cpdf
curveto
10
Prev
11
Home
12
Next
cpdf
curveto
13
Up
cpdf
rlineto
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
lineto
4
cpdf
circle
PHP
Manual
5
Prev
6
Next
cpdf
rlineto
cpdf
rlineto
Draws
a
line
Description
void
cpdf
rlineto
int
pdf
document
double
x
koor
double
y
koor
int
mode
The
cpdf
rlineto
function
draws
a
line
from
the
current
point
to
the
relative
point
with
coordinates
x
koor
y
koor
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
moveto
8
cpdf
rmoveto
9
cpdf
curveto
10
Prev
11
Home
12
Next
cpdf
lineto
13
Up
cpdf
circle
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
rlineto
4
cpdf
arc
PHP
Manual
5
Prev
6
Next
cpdf
circle
cpdf
circle
Draw
a
circle
Description
void
cpdf
circle
int
pdf
document
double
x
koor
double
y
koor
double
radius
int
mode
The
cpdf
circle
function
draws
a
circle
with
center
at
point
x
koor
y
koor
and
radius
radius
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
arc
8
Prev
9
Home
10
Next
cpdf
rlineto
11
Up
cpdf
arc
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
circle
4
cpdf
rect
PHP
Manual
5
Prev
6
Next
cpdf
arc
cpdf
arc
Draws
an
arc
Description
void
cpdf
arc
int
pdf
document
double
x
koor
double
y
koor
double
radius
double
start
double
end
int
mode
The
cpdf
arc
function
draws
an
arc
with
center
at
point
x
koor
y
koor
and
radius
radius
starting
at
angle
start
and
ending
at
angle
end
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
circle
8
Prev
9
Home
10
Next
cpdf
circle
11
Up
cpdf
rect
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
arc
4
cpdf
closepath
PHP
Manual
5
Prev
6
Next
cpdf
rect
cpdf
rect
Draw
a
rectangle
Description
void
cpdf
rect
int
pdf
document
double
x
koor
double
y
koor
double
width
double
height
int
mode
The
cpdf
rect
function
draws
a
rectangle
with
its
lower
left
corner
at
point
x
koor
y
koor
This
width
is
set
to
widgth
This
height
is
set
to
height
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
7
Prev
8
Home
9
Next
cpdf
arc
10
Up
cpdf
closepath
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
rect
4
cpdf
stroke
PHP
Manual
5
Prev
6
Next
cpdf
closepath
cpdf
closepath
Close
path
Description
void
cpdf
closepath
int
pdf
document
The
cpdf
closepath
function
closes
the
current
path
7
Prev
8
Home
9
Next
cpdf
rect
10
Up
cpdf
stroke
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
closepath
4
cpdf
closepath
stroke
PHP
Manual
5
Prev
6
Next
cpdf
stroke
cpdf
stroke
Draw
line
along
path
Description
void
cpdf
stroke
int
pdf
document
The
cpdf
stroke
function
draws
a
line
along
current
path
See
also
7
cpdf
closepath
8
cpdf
closepath
stroke
9
Prev
10
Home
11
Next
cpdf
closepath
12
Up
cpdf
closepath
stroke
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
stroke
4
cpdf
fill
PHP
Manual
5
Prev
6
Next
cpdf
closepath
stroke
cpdf
closepath
stroke
Close
path
and
draw
line
along
path
Description
void
cpdf
closepath
stroke
int
pdf
document
The
cpdf
closepath
stroke
function
is
a
combination
of
7
cpdf
closepath
and
8
cpdf
stroke
Than
clears
the
path
See
also
9
cpdf
closepath
10
cpdf
stroke
11
Prev
12
Home
13
Next
cpdf
stroke
14
Up
cpdf
fill
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
closepath
stroke
4
cpdf
fill
stroke
PHP
Manual
5
Prev
6
Next
cpdf
fill
cpdf
fill
Fill
current
path
Description
void
cpdf
fill
int
pdf
document
The
cpdf
fill
function
fills
the
interior
of
the
current
path
with
the
current
fill
color
See
also
7
cpdf
closepath
8
cpdf
stroke
9
cpdf
setgray
fill
10
cpdf
setgray
11
cpdf
setrgbcolor
fill
12
cpdf
setrgbcolor
13
Prev
14
Home
15
Next
cpdf
closepath
stroke
16
Up
cpdf
fill
stroke
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
fill
4
cpdf
closepath
fill
stroke
PHP
Manual
5
Prev
6
Next
cpdf
fill
stroke
cpdf
fill
stroke
Fill
and
stroke
current
path
Description
void
cpdf
fill
stroke
int
pdf
document
The
cpdf
fill
stroke
function
fills
the
interior
of
the
current
path
with
the
current
fill
color
and
draws
current
path
See
also
7
cpdf
closepath
8
cpdf
stroke
9
cpdf
fill
10
cpdf
setgray
fill
11
cpdf
setgray
12
cpdf
setrgbcolor
fill
13
cpdf
setrgbcolor
14
Prev
15
Home
16
Next
cpdf
fill
17
Up
cpdf
closepath
fill
stroke
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
fill
stroke
4
cpdf
clip
PHP
Manual
5
Prev
6
Next
cpdf
closepath
fill
stroke
cpdf
closepath
fill
stroke
Close
fill
and
stroke
current
path
Description
void
cpdf
closepath
fill
stroke
int
pdf
document
The
cpdf
closepath
fill
stroke
function
closes
fills
the
interior
of
the
current
path
with
the
current
fill
color
and
draws
current
path
See
also
7
cpdf
closepath
8
cpdf
stroke
9
cpdf
fill
10
cpdf
setgray
fill
11
cpdf
setgray
12
cpdf
setrgbcolor
fill
13
cpdf
setrgbcolor
14
Prev
15
Home
16
Next
cpdf
fill
stroke
17
Up
cpdf
clip
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
closepath
fill
stroke
4
cpdf
setgray
fill
PHP
Manual
5
Prev
6
Next
cpdf
clip
cpdf
clip
Clips
to
current
path
Description
void
cpdf
clip
int
pdf
document
The
cpdf
clip
function
clips
all
drawing
to
the
current
path
7
Prev
8
Home
9
Next
cpdf
closepath
fill
stroke
10
Up
cpdf
setgray
fill
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
clip
4
cpdf
setgray
stroke
PHP
Manual
5
Prev
6
Next
cpdf
setgray
fill
cpdf
setgray
fill
Sets
filling
color
to
gray
value
Description
void
cpdf
setgray
fill
int
pdf
document
double
value
The
cpdf
setgray
fill
function
sets
the
current
gray
value
to
fill
a
path
See
also
7
cpdf
setrgbcolor
fill
8
Prev
9
Home
10
Next
cpdf
clip
11
Up
cpdf
setgray
stroke
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setgray
fill
4
cpdf
setgray
PHP
Manual
5
Prev
6
Next
cpdf
setgray
stroke
cpdf
setgray
stroke
Sets
drawing
color
to
gray
value
Description
void
cpdf
setgray
stroke
int
pdf
document
double
gray
value
The
cpdf
setgray
stroke
function
sets
the
current
drawing
color
to
the
given
gray
value
See
also
7
cpdf
setrgbcolor
stroke
8
Prev
9
Home
10
Next
cpdf
setgray
fill
11
Up
cpdf
setgray
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setgray
stroke
4
cpdf
setrgbcolor
fill
PHP
Manual
5
Prev
6
Next
cpdf
setgray
cpdf
setgray
Sets
drawing
and
filling
color
to
gray
value
Description
void
cpdf
setgray
int
pdf
document
double
gray
value
The
7
cpdf
setgray
stroke
function
sets
the
current
drawing
and
filling
color
to
the
given
gray
value
See
also
8
cpdf
setrgbcolor
stroke
9
cpdf
setrgbcolor
fill
10
Prev
11
Home
12
Next
cpdf
setgray
stroke
13
Up
cpdf
setrgbcolor
fill
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setgray
4
cpdf
setrgbcolor
stroke
PHP
Manual
5
Prev
6
Next
cpdf
setrgbcolor
fill
cpdf
setrgbcolor
fill
Sets
filling
color
to
rgb
color
value
Description
void
cpdf
setrgbcolor
fill
int
pdf
document
double
red
value
double
green
value
double
blue
value
The
cpdf
setrgbcolor
fill
function
sets
the
current
rgb
color
value
to
fill
a
path
See
also
7
cpdf
setrgbcolor
stroke
8
cpdf
setrgbcolor
9
Prev
10
Home
11
Next
cpdf
setgray
12
Up
cpdf
setrgbcolor
stroke
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setrgbcolor
fill
4
cpdf
setrgbcolor
PHP
Manual
5
Prev
6
Next
cpdf
setrgbcolor
stroke
cpdf
setrgbcolor
stroke
Sets
drawing
color
to
rgb
color
value
Description
void
cpdf
setrgbcolor
stroke
int
pdf
document
double
red
value
double
green
value
double
blue
value
The
cpdf
setrgbcolor
stroke
function
sets
the
current
drawing
color
to
the
given
rgb
color
value
See
also
7
cpdf
setrgbcolor
fill
8
cpdf
setrgbcolor
9
Prev
10
Home
11
Next
cpdf
setrgbcolor
fill
12
Up
cpdf
setrgbcolor
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setrgbcolor
stroke
4
cpdf
add
outline
PHP
Manual
5
Prev
6
Next
cpdf
setrgbcolor
cpdf
setrgbcolor
Sets
drawing
and
filling
color
to
rgb
color
value
Description
void
cpdf
setrgbcolor
int
pdf
document
double
red
value
double
green
value
double
blue
value
The
7
cpdf
setrgbcolor
stroke
function
sets
the
current
drawing
and
filling
color
to
the
given
rgb
color
value
See
also
8
cpdf
setrgbcolor
stroke
9
cpdf
setrgbcolor
fill
10
Prev
11
Home
12
Next
cpdf
setrgbcolor
stroke
13
Up
cpdf
add
outline
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
setrgbcolor
4
cpdf
set
page
animation
PHP
Manual
5
Prev
6
Next
cpdf
add
outline
cpdf
add
outline
Adds
bookmark
for
current
page
Description
void
cpdf
add
outline
int
pdf
document
string
text
The
cpdf
add
outline
function
adds
a
bookmark
with
text
text
that
points
to
the
current
page
Example
1
Adding
a
page
outline
php
cpdf
cpdf
open
0
cpdf
page
init
cpdf
1
0
595
842
cpdf
add
outline
cpdf
0
0
0
1
Page
1
some
drawing
cpdf
finalize
cpdf
Header
Content
type
application
pdf
cpdf
output
buffer
cpdf
cpdf
close
cpdf
7
Prev
8
Home
9
Next
cpdf
setrgbcolor
10
Up
cpdf
set
page
animation
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
add
outline
4
cpdf
import
jpeg
PHP
Manual
5
Prev
6
Next
cpdf
set
page
animation
cpdf
set
page
animation
Sets
duration
between
pages
Description
void
cpdf
set
page
animation
int
pdf
document
int
transition
double
duration
The
cpdf
set
page
animation
function
set
the
transition
between
following
pages
The
value
of
transition
can
be
0
for
none
1
for
two
lines
sweeping
across
the
screen
reveal
the
page
2
for
multiple
lines
sweeping
across
the
screen
reveal
the
page
3
for
a
box
reveals
the
page
4
for
a
single
line
sweeping
across
the
screen
reveals
the
page
5
for
the
old
page
dissolves
to
reveal
the
page
6
for
the
dissolve
effect
moves
from
one
screen
edge
to
another
7
for
the
old
page
is
simply
replaced
by
the
new
page
default
The
value
of
duration
is
the
number
of
seconds
between
page
flipping
7
Prev
8
Home
9
Next
cpdf
add
outline
10
Up
cpdf
import
jpeg
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
set
page
animation
4
cpdf
place
inline
image
PHP
Manual
5
Prev
6
Next
cpdf
import
jpeg
cpdf
import
jpeg
Opens
a
JPEG
image
Description
int
cpdf
open
jpeg
int
pdf
document
string
file
name
double
x
koor
double
y
koor
double
angle
double
width
double
height
double
x
scale
double
y
scale
int
mode
The
cpdf
import
jpeg
function
opens
an
image
stored
in
the
file
with
the
name
file
name
The
format
of
the
image
has
to
be
jpeg
The
image
is
placed
on
the
current
page
at
position
x
koor
y
koor
The
image
is
rotated
by
angle
degres
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
place
inline
image
8
Prev
9
Home
10
Next
cpdf
set
page
animation
11
Up
cpdf
place
inline
image
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
import
jpeg
4
cpdf
add
annotation
PHP
Manual
5
Prev
6
Next
cpdf
place
inline
image
cpdf
place
inline
image
Places
an
image
on
the
page
Description
void
cpdf
place
inline
image
int
pdf
document
int
image
double
x
koor
double
y
koor
double
angle
double
width
double
height
int
mode
The
cpdf
place
inline
image
function
places
an
image
created
with
the
php
image
functions
on
the
page
at
postion
x
koor
y
koor
The
image
can
be
scaled
at
the
same
time
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
See
also
7
cpdf
import
jpeg
8
Prev
9
Home
10
Next
cpdf
import
jpeg
11
Up
cpdf
add
annotation
1
PHP
Manual
2
ClibPDF
functions
3
cpdf
place
inline
image
4
Date
and
Time
functions
PHP
Manual
5
Prev
6
Next
cpdf
add
annotation
cpdf
add
annotation
Adds
annotation
Description
void
cpdf
add
annotation
int
pdf
document
double
llx
double
lly
double
urx
double
ury
string
title
string
content
int
mode
The
cpdf
add
annotation
adds
a
note
with
the
lower
left
corner
at
llx
lly
and
the
upper
right
corner
at
urx
ury
The
last
optional
parameter
determines
the
unit
length
If
is
0
or
omitted
the
default
unit
as
specified
for
the
page
is
used
Otherwise
the
koodinates
are
measured
in
postscript
points
disregarding
the
current
unit
7
Prev
8
Home
9
Next
cpdf
place
inline
image
10
Up
Date
and
Time
functions
1
PHP
Manual
2
Function
Reference
3
cpdf
add
annotation
4
checkdate
PHP
Manual
5
Prev
6
Next
VIII
Date
and
Time
functions
Table
of
Contents
7
checkdate
validate
a
date
time
8
date
format
a
local
time
date
9
strftime
format
a
local
time
date
according
to
locale
settings
10
gmstrftime
format
a
GMT
CUT
time
date
according
to
locale
settings
11
getdate
get
date
time
information
12
gettimeofday
get
current
time
13
gmdate
format
a
GMT
CUT
date
time
14
mktime
get
UNIX
timestamp
for
a
date
15
gmmktime
get
UNIX
timestamp
for
a
GMT
date
16
time
return
current
UNIX
timestamp
17
microtime
return
current
UNIX
timestamp
with
microseconds
18
Prev
19
Home
20
Next
cpdf
add
annotation
21
Up
checkdate
1
PHP
Manual
2
Date
and
Time
functions
3
Date
and
Time
functions
4
date
PHP
Manual
5
Prev
6
Next
checkdate
checkdate
validate
a
date
time
Description
int
checkdate
int
month
int
day
int
year
Returns
true
if
the
date
given
is
valid
otherwise
returns
false
Checks
the
validity
of
the
date
formed
by
the
arguments
A
date
is
considered
valid
if
year
is
between
0
and
32767
inclusive
month
is
between
1
and
12
inclusive
day
is
within
the
allowed
number
of
days
for
the
given
month
Leap
years
are
taken
into
consideration
7
Prev
8
Home
9
Next
Date
and
Time
functions
10
Up
date
1
PHP
Manual
2
Date
and
Time
functions
3
checkdate
4
strftime
PHP
Manual
5
Prev
6
Next
date
date
format
a
local
time
date
Description
string
date
string
format
int
timestamp
Returns
a
string
formatted
according
to
the
given
format
string
using
the
given
timestamp
or
the
current
local
time
if
no
timestamp
is
given
The
following
characters
are
recognized
in
the
format
string
a
am
or
pm
A
AM
or
PM
d
day
of
the
month
2
digits
with
leading
zeros
i
e
01
to
31
D
day
of
the