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
6adc9ee1
Commit
6adc9ee1
authored
Feb 08, 2014
by
Benjamin Eberlei
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #502 from deeky666/DBAL-764
[DBAL-764] Document types / column usage properly
parents
03144c4d
ffd2d9ec
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 @
6adc9ee1
...
...
@@ -29,12 +29,12 @@ example shows:
$
myTable
->
setPrimaryKey
(
array
(
"id"
));
$
myTable
->
addUniqueIndex
(
array
(
"username"
));
$
schema
->
createSequence
(
"my_table_seq"
);
$
myForeign
=
$
schema
->
createTable
(
"my_foreign"
);
$
myForeign
->
addColumn
(
"id"
,
"integer"
);
$
myForeign
->
addColumn
(
"user_id"
,
"integer"
);
$
myForeign
->
addForeignKeyConstraint
($
myTable
,
array
(
"user_id"
),
array
(
"id"
),
array
(
"onUpdate"
=>
"CASCADE"
));
$
queries
=
$
schema
->
toSql
($
myPlatform
);
//
get
queries
to
create
this
schema
.
$
dropSchema
=
$
schema
->
toDropSql
($
myPlatform
);
//
get
queries
to
safely
delete
this
schema
.
...
...
@@ -48,7 +48,7 @@ foreign key, sequence and index changes.
<?
php
$
comparator
=
new
\
Doctrine
\
DBAL
\
Schema
\
Comparator
();
$
schemaDiff
=
$
comparator
->
compare
($
fromSchema
,
$
toSchema
);
$
queries
=
$
schemaDiff
->
toSql
($
myPlatform
);
//
queries
to
get
from
one
to
another
schema
.
$
saveQueries
=
$
schemaDiff
->
toSaveSql
($
myPlatform
);
...
...
@@ -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
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 @
6adc9ee1
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