Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
doctrine-dbal
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Tomáš Trávníček
doctrine-dbal
Commits
ffd2d9ec
Commit
ffd2d9ec
authored
Jan 09, 2014
by
Steve Müller
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add more specific types and column asset documentation
parent
2790ee79
Changes
2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
802 additions
and
25 deletions
+802
-25
schema-representation.rst
docs/en/reference/schema-representation.rst
+79
-3
types.rst
docs/en/reference/types.rst
+723
-22
No files found.
docs/en/reference/schema-representation.rst
View file @
ffd2d9ec
...
@@ -29,12 +29,12 @@ example shows:
...
@@ -29,12 +29,12 @@ example shows:
$
myTable
->
setPrimaryKey
(
array
(
"id"
));
$
myTable
->
setPrimaryKey
(
array
(
"id"
));
$
myTable
->
addUniqueIndex
(
array
(
"username"
));
$
myTable
->
addUniqueIndex
(
array
(
"username"
));
$
schema
->
createSequence
(
"my_table_seq"
);
$
schema
->
createSequence
(
"my_table_seq"
);
$
myForeign
=
$
schema
->
createTable
(
"my_foreign"
);
$
myForeign
=
$
schema
->
createTable
(
"my_foreign"
);
$
myForeign
->
addColumn
(
"id"
,
"integer"
);
$
myForeign
->
addColumn
(
"id"
,
"integer"
);
$
myForeign
->
addColumn
(
"user_id"
,
"integer"
);
$
myForeign
->
addColumn
(
"user_id"
,
"integer"
);
$
myForeign
->
addForeignKeyConstraint
($
myTable
,
array
(
"user_id"
),
array
(
"id"
),
array
(
"onUpdate"
=>
"CASCADE"
));
$
myForeign
->
addForeignKeyConstraint
($
myTable
,
array
(
"user_id"
),
array
(
"id"
),
array
(
"onUpdate"
=>
"CASCADE"
));
$
queries
=
$
schema
->
toSql
($
myPlatform
);
//
get
queries
to
create
this
schema
.
$
queries
=
$
schema
->
toSql
($
myPlatform
);
//
get
queries
to
create
this
schema
.
$
dropSchema
=
$
schema
->
toDropSql
($
myPlatform
);
//
get
queries
to
safely
delete
this
schema
.
$
dropSchema
=
$
schema
->
toDropSql
($
myPlatform
);
//
get
queries
to
safely
delete
this
schema
.
...
@@ -48,7 +48,7 @@ foreign key, sequence and index changes.
...
@@ -48,7 +48,7 @@ foreign key, sequence and index changes.
<?
php
<?
php
$
comparator
=
new
\
Doctrine
\
DBAL
\
Schema
\
Comparator
();
$
comparator
=
new
\
Doctrine
\
DBAL
\
Schema
\
Comparator
();
$
schemaDiff
=
$
comparator
->
compare
($
fromSchema
,
$
toSchema
);
$
schemaDiff
=
$
comparator
->
compare
($
fromSchema
,
$
toSchema
);
$
queries
=
$
schemaDiff
->
toSql
($
myPlatform
);
//
queries
to
get
from
one
to
another
schema
.
$
queries
=
$
schemaDiff
->
toSql
($
myPlatform
);
//
queries
to
get
from
one
to
another
schema
.
$
saveQueries
=
$
schemaDiff
->
toSaveSql
($
myPlatform
);
$
saveQueries
=
$
schemaDiff
->
toSaveSql
($
myPlatform
);
...
@@ -61,4 +61,80 @@ All methods that generate SQL queries for you make much effort to
...
@@ -61,4 +61,80 @@ All methods that generate SQL queries for you make much effort to
get
the
order
of
generation
correct
,
so
that
no
problems
will
ever
get
the
order
of
generation
correct
,
so
that
no
problems
will
ever
occour
with
missing
links
of
foreign
keys
.
occour
with
missing
links
of
foreign
keys
.
Schema
Assets
-------------
A
schema
asset
is
considered
any
abstract
atomic
unit
in
a
database
such
as
schemas
,
tables
,
indexes
,
but
also
sequences
,
columns
and
even
identifiers
.
The
following
chapter
gives
an
overview
of
all
available
Doctrine
2
schema
assets
with
short
explanations
on
their
context
and
usage
.
All
schema
assets
reside
in
the
``
Doctrine
\
DBAL
\
Schema
``
namespace
.
..
note
::
This
chapter
is
far
from
being
completely
documented
.
Column
~~~~~~
Represents
a
table
column
in
the
database
schema
.
A
column
consists
of
a
name
,
a
type
,
portable
options
,
commonly
supported
options
and
vendors
specific
options
.
Portable
options
^^^^^^^^^^^^^^^^
The
following
options
are
considered
to
be
fully
portable
across
all
database
platforms
:
-
**
notnull
**
(
boolean
):
Whether
the
column
is
nullable
or
not
.
Defaults
to
``
true
``.
-
**
default
**
(
integer
|
string
):
The
default
value
of
the
column
if
no
value
was
specified
.
Defaults
to
``
null
``.
-
**
autoincrement
**
(
boolean
):
Whether
this
column
should
use
an
autoincremented
value
if
no
value
was
specified
.
Only
applies
to
Doctrine
's ``smallint``, ``integer``
and ``bigint`` types. Defaults to ``false``.
- **length** (integer): The maximum length of the column. Only applies to Doctrine'
s
``
string
``
and
``
binary
``
types
.
Defaults
to
``
null
``
and
is
evaluated
to
``
255
``
in
the
platform
.
-
**
fixed
**
(
boolean
):
Whether
a
``
string
``
or
``
binary
``
Doctrine
type
column
has
a
fixed
length
.
Defaults
to
``
false
``.
-
**
precision
**
(
integer
):
The
precision
of
a
Doctrine
``
decimal
``
or
``
float
``
type
column
that
determines
the
overall
maximum
number
of
digits
to
be
stored
(
including
scale
).
Defaults
to
``
10
``.
-
**
scale
**
(
integer
):
The
exact
number
of
decimal
digits
to
be
stored
in
a
Doctrine
``
decimal
``
or
``
float
``
type
column
.
Defaults
to
``
0
``.
-
**
customSchemaOptions
**
(
array
):
Additional
options
for
the
column
that
are
supported
by
all
vendors
:
-
**
unique
**
(
boolean
):
Whether
to
automatically
add
a
unique
constraint
for
the
column
.
Defaults
to
``
false
``.
Common
options
^^^^^^^^^^^^^^
The
following
options
are
not
completely
portable
but
are
supported
by
most
of
the
vendors
:
-
**
unsigned
**
(
boolean
):
Whether
a
``
smallint
``,
``
integer
``
or
``
bigint
``
Doctrine
type
column
should
allow
unsigned
values
only
.
Supported
by
MySQL
,
SQL
Anywhere
and
Drizzle
.
Defaults
to
``
false
``.
-
**
comment
**
(
integer
|
string
):
The
column
comment
.
Supported
by
MySQL
,
PostgreSQL
,
Oracle
,
SQL
Server
,
SQL
Anywhere
and
Drizzle
.
Defaults
to
``
null
``.
Vendor
specific
options
^^^^^^^^^^^^^^^^^^^^^^^
The
following
options
are
completely
vendor
specific
and
absolutely
not
portable
:
-
**
columnDefinition
**:
The
custom
column
declaration
SQL
snippet
to
use
instead
of
the
generated
SQL
by
Doctrine
.
Defaults
to
``
null
``.
This
can
useful
to
add
vendor
specific
declaration
information
that
is
not
evaluated
by
Doctrine
(
such
as
the
``
ZEROFILL
``
attribute
on
MySQL
).
-
**
customSchemaOptions
**
(
array
):
Additional
options
for
the
column
that
are
supported
by
some
vendors
but
not
portable
:
-
**
charset
**
(
string
):
The
character
set
to
use
for
the
column
.
Currently
only
supported
on
MySQL
and
Drizzle
.
-
**
collate
**
(
string
):
The
collation
to
use
for
the
column
.
Currently
only
supported
on
SQL
Server
.
-
**
check
**
(
string
):
The
check
constraint
clause
to
add
to
the
column
.
Defaults
to
``
null
``.
docs/en/reference/types.rst
View file @
ffd2d9ec
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment