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
83f92c3f
Commit
83f92c3f
authored
Aug 13, 2014
by
Steve Müller
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #660 from JeroenDeDauw/listfix
Fix rst list
parents
fba4a354
38919482
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
8 deletions
+8
-8
portability.rst
docs/en/reference/portability.rst
+8
-8
No files found.
docs/en/reference/portability.rst
View file @
83f92c3f
...
...
@@ -10,24 +10,24 @@ all the different vendors work the same.
There are many different layers that you need to take care of, here is a quick list:
1.
Returning of data is handled differently across vendors.
*
Returning of data is handled differently across vendors.
Oracle converts empty strings to NULL, which means a portable application
needs to convert all empty strings to null.
2.
Additionally some vendors pad CHAR columns to their length, whereas others don't.
*
Additionally some vendors pad CHAR columns to their length, whereas others don't.
This means all strings returned from a database have to be passed through ``rtrim()``.
3.
Case-sensitivity of column keys is handled differently in all databases, even depending
*
Case-sensitivity of column keys is handled differently in all databases, even depending
on identifier quoting or not. You either need to know all the rules or fix the cases
to lower/upper-case only.
4.
ANSI-SQL is not implemented fully by the different vendors. You have to make
*
ANSI-SQL is not implemented fully by the different vendors. You have to make
sure that the SQL you write is supported by all the vendors you are targeting.
5.
Some vendors use sequences for identity generation, some auto-increment approaches.
*
Some vendors use sequences for identity generation, some auto-increment approaches.
Both are completely different (pre- and post-insert access) and therefore need
special handling.
6.
Every vendor has a list of keywords that are not allowed inside SQL. Some even
*
Every vendor has a list of keywords that are not allowed inside SQL. Some even
allow a subset of their keywords, but not at every position.
7.
Database types like dates, long text fields, booleans and many others are handled
*
Database types like dates, long text fields, booleans and many others are handled
very differently between the vendors.
8.
There are differences with the regard to support of positional, named or both styles of parameters
*
There are differences with the regard to support of positional, named or both styles of parameters
in prepared statements between all vendors.
For each point in this list there are different abstraction layers in Doctrine DBAL that you
...
...
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