-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpackage_mysqli.xml
727 lines (710 loc) · 28.2 KB
/
package_mysqli.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
<?xml version="1.0" encoding="UTF-8"?>
<package packagerversion="1.9.1" version="2.0" xmlns="http://pear.php.net/dtd/package-2.0" xmlns:tasks="http://pear.php.net/dtd/tasks-1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://pear.php.net/dtd/tasks-1.0 http://pear.php.net/dtd/tasks-1.0.xsd http://pear.php.net/dtd/package-2.0 http://pear.php.net/dtd/package-2.0.xsd">
<name>MDB2_Driver_mysqli</name>
<channel>pear.php.net</channel>
<summary>mysqli MDB2 driver</summary>
<description>This is the MySQLi MDB2 driver.</description>
<lead>
<name>Lukas Kahwe Smith</name>
<user>lsmith</user>
<email>smith@pooteeweet.org</email>
<active>no</active>
</lead>
<lead>
<name>Lorenzo Alberton</name>
<user>quipo</user>
<email>l.alberton@quipo.it</email>
<active>yes</active>
</lead>
<date>2010-08-29</date>
<time>12:47:59</time>
<version>
<release>1.5.0b3</release>
<api>1.5.0b3</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<license>BSD License</license>
<notes>
- fixed bug #16003: incorrect check for error after mysqli_store_result
- fixed bug #16147: first prepared statement is emulated when using factory with mysql
- fixed bug #17037: 'on update' not mentioned in tableInfo()
- fixed bug #17065: There is no NEW row in on DELETE trigger (fix error in FK constraint triggers)
- fixed bug #17650: lastInsertId can not handle bigint, forces cast to integer [alexpw]
- return ON UPDATE|DELETE action in getTableConstraintDefinition()
- result->free() now works on multiple result sets
open todo items:
- use a trigger to emulate setting default now()
</notes>
<contents>
<dir baseinstalldir="/" name="/">
<dir name="MDB2">
<dir name="Driver">
<dir name="Datatype">
<file name="mysqli.php" role="php">
<tasks:replace from="@package_version@" to="version" type="package-info" />
</file>
</dir> <!-- /MDB2/Driver/Datatype -->
<dir name="Function">
<file name="mysqli.php" role="php">
<tasks:replace from="@package_version@" to="version" type="package-info" />
</file>
</dir> <!-- /MDB2/Driver/Function -->
<dir name="Manager">
<file name="mysqli.php" role="php">
<tasks:replace from="@package_version@" to="version" type="package-info" />
</file>
</dir> <!-- /MDB2/Driver/Manager -->
<dir name="Native">
<file name="mysqli.php" role="php">
<tasks:replace from="@package_version@" to="version" type="package-info" />
</file>
</dir> <!-- /MDB2/Driver/Native -->
<dir name="Reverse">
<file name="mysqli.php" role="php">
<tasks:replace from="@package_version@" to="version" type="package-info" />
</file>
</dir> <!-- /MDB2/Driver/Reverse -->
<file name="mysqli.php" role="php">
<tasks:replace from="@package_version@" to="version" type="package-info" />
</file>
</dir> <!-- /MDB2/Driver -->
</dir> <!-- /MDB2 -->
<dir name="tests">
<file name="MDB2_nonstandard_mysqli.php" role="test" />
</dir> <!-- /tests -->
<file name="package_mysqli.xml" role="data" />
</dir> <!-- / -->
</contents>
<dependencies>
<required>
<php>
<min>5.3.0</min>
</php>
<pearinstaller>
<min>1.9.1</min>
</pearinstaller>
<package>
<name>MDB2</name>
<channel>pear.php.net</channel>
<min>1.5.0b3</min>
</package>
<extension>
<name>mysqli</name>
</extension>
</required>
</dependencies>
<phprelease />
<changelog>
<release>
<version>
<release>1.5.0b3</release>
<api>1.5.0b3</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2010-08-29</date>
<license>BSD License</license>
<notes>
- fixed bug #16003: incorrect check for error after mysqli_store_result
- fixed bug #16147: first prepared statement is emulated when using factory with mysql
- fixed bug #17037: 'on update' not mentioned in tableInfo()
- fixed bug #17065: There is no NEW row in on DELETE trigger (fix error in FK constraint triggers)
- fixed bug #17650: lastInsertId can not handle bigint, forces cast to integer [alexpw]
- return ON UPDATE|DELETE action in getTableConstraintDefinition()
- result->free() now works on multiple result sets
open todo items:
- use a trigger to emulate setting default now()
</notes>
</release>
<release>
<version>
<release>1.5.0b2</release>
<api>1.5.0b2</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2009-01-14</date>
<license>BSD License</license>
<notes>
- fixed bug #12117: disconnect() does not work as documented
- fixed bug #13412: sometimes getTableConstraintDefinition() fails for FOREIGN KEYs
- fixed bug #13581: wrong query in beginTransaction() for certain MySQL versions
- fixed bug #13928: Invalid triggers created for 'ON UPDATE'
- fixed bug #15051: Cannot create constraints with field length
- add index on FK column(s) or a FK constraint cannot be created in some cases
open todo items:
- use a trigger to emulate setting default now()
</notes>
</release>
<release>
<version>
<release>1.5.0b1</release>
<api>1.5.0b1</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<date>2008-03-15</date>
<license>BSD License</license>
<notes>
- fixed bug #11831: createTable() now supports tables with a multi-field PRIMARY KEY
where one field is defined as AUTO_INCREMENT
- request #11204: support AUTO_INCREMENT for FLOAT data type and UNSIGNED option
for FLOAT and DECIMAL data type [afz]
- fixed bug #11692: value of $db->supports('transactions') changes after query [afz]
- request #12731: added truncateTable() in the Manager module
- request #12732: added vacuum() in the Manager module for OPTIMIZE/VACUUM TABLE abstraction
- request #12800: added alterDatabase() in the Manager module [afz]
- fixed quoting in createDatabase() in the Manager module
- fixed bug #12924: correctly handle internal expected errors even with custom error handling
- added standaloneQuery() and databaseExists()
- request #13106: added unixtimestamp() in the Function module
- fixed regexp in listTableConstraints() in the Manager module to list FOREIGN KEY constraints
- fixed bug #13180: MySQL driver tells SAVEPOINT is supported for MyISAM tables
- fixed bug #13283: replace() doesn't respect quote_identifiers option
- request #13313: setCharSet() supports 'COLLATE' too
- fixed bug #13370: some capabilities depend on user options, so check them after
a setOption() call
- when triggers are supported, two triggers are created to emulate ON UPDATE / ON DELETE actions
for FOREIGN KEY constraints. Known limitation: since mysql doesn't support multiple triggers
with the same action time and event for one table, if there are multiple table referencing
the same table, only the first one will have the triggers created.
open todo items:
- use a trigger to emulate setting default now()
</notes>
</release>
<release>
<version>
<release>1.5.0a2</release>
<api>1.5.0a2</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<date>2007-12-06</date>
<license>BSD License</license>
<notes>
- fixed bug #12516: error in FK constraint creation query
- request #12012: added charset/collation support in createDatabase()
open todo items:
- use a trigger to emulate setting default now()
</notes>
</release>
<release>
<version>
<release>1.5.0a1</release>
<api>1.5.0a1</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<date>2007-10-28</date>
<license>BSD License</license>
<notes>
- fixed bug #10024: Added new option 'lob_allow_url_include' (default false) to
[dis]allow inserting a LOB from an url (file, http, ...).
- fixed bug #10986: Using more random statement names (request #11625)
- fixed bug #11055: Using placeholders with := variable assignment fails [bekarau]
- initial support for FOREIGN KEY constraints in the Manager and Reverse modules
- request #11389: added many new MySQL 5.1 error codes in errorInfo()
- fixed bug #11428: propagate quote() errors with invalid data types
- fixed bug in _modifyQuery() when using SELECT FOR UPDATE or similar queries
- fixed bug #11590: _getServerCapabilities() has to be called once per connection
- fixed bug #11790: avoid array_diff() because it has a memory leak in PHP 5.1.x
- fixed some E_STRICT errors with PHP5
- fixed bug #12010: MDB2_PORTABILITY_RTRIM option was ignored
- fixed bug #12083: createTable() in the Manager module now returns MDB2_OK on success,
as documented
- request #12213: usage of mysqli_options 'MYSQLI_SET_CHARSET_NAME' and mysqli_set_charset()
when available (patch by Carsten Wiedmann)
- fixed bug #12242: missing charset info in the Reverse module (patch by Carsten Wiedmann)
- fixed bug #12269: tableInfo() in the Reverse module detect 'clob' data type
as first option
- fixed bug #12336: supply default value for NOT NULL timestamp fields
open todo items:
- use a trigger to emulate setting default now()
</notes>
</release>
<release>
<version>
<release>1.4.1</release>
<api>1.4.1</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2007-05-03</date>
<license>BSD License</license>
<notes>
- fixed bug #10378: incorrect query rewrite in setLimit() when using "FOR UPDATE"
or "LOCK IN SHARE MODE" (thanks to priyadi) or "INTO OUTFILE" or "INTO DUMPFILE"
- fixed bug #10384: in setCharset(), use mysqli_real_escape_string() instead of
mysql_real_escape_string()
- return length as "precision,scale" for NUMERIC and DECIMAL fields in mapNativeDatatype()
- in getTableIndexDefinition() and getTableConstraintDefinition() in the Reverse
module, also return the field position in the index/constraint
- fixed bug #10636: transactions broken in release 2.4.0 because of some properties
being reset (thanks to Conor Kerr)
- fixed bug #10748: failed connections don't return native error code [urkle]
- fixed bug #10895: setLimit() does not work properly when a subquery uses LIMIT
open todo items:
- use a trigger to emulate setting default now()
</notes>
</release>
<release>
<version>
<release>1.4.0</release>
<api>1.4.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2007-03-13</date>
<license>BSD License</license>
<notes>
- fixed bug #9283: missing support for BINARY/VARBINARY data types (thanks to Tom Hendrikx)
- propagate errors in getTableFieldDefinition() in the Reverse module
- implemented getTriggerDefinition() in the Reverse module (mysql > 5.0.2) [experimental]
- implemented listTableTriggers() in the Manager module (mysql > 5.0.2)
- implemented listFunctions() in the Manager module
- setCharset() now uses "SET NAMES" instead of "SET character_set_client"
- select the mysql database in listUsers() in the Manager module
- added error codes for MySQL 5 (patch by Adam Harvey)
- implemented guid() in the Function module [globally unique identifier]
- fixed bug #10033: beginTransaction() does not know server capabilities
- fixed bug #10057: createConstraint() returns an error when the definition is incomplete
- request #9451: you can set charset, collation, engine and comments in createSequence()
- implemented a fallback mechanism within getTableIndexDefinition() and
getTableConstraintDefinition() in the Reverse module to ignore the 'idxname_format'
option and use the index name as provided in case of failure before returning
an error
- fixed bug #10181: propagate error when an invalid type is passed to prepare()
- added a 'nativetype_map_callback' option to map native data declarations back to
custom data types (thanks to Andrew Hill).
- fixed bug #10239: execute() misinterprets MySQL's user defined variables
- phpdoc fixes
open todo items:
- use a trigger to emulate setting default now()
</notes>
</release>
<release>
<version>
<release>1.3.0</release>
<api>2.3.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-11-03</date>
<license>BSD License</license>
<notes>
- added charset and collation support to field declaration
- fixed bug #9024: typo in error checking
- fixed parameter order in charset setting fallback (Bug #8807)
- fix typos in error handling in a few places (bug #9024)
- typo fix in tableInfo (Bug #8925)
- do not skip id generation in nextId() when creating a sequence on demand
because this prevents lastInsertID() from working
- migrated to package.xml version 2
</notes>
</release>
<release>
<version>
<release>1.2.2</release>
<api>1.2.2</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-09-03</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- fixed single quote handling inside non emulated prepared statements (Bug #8538)
- flip positions property array in prepared statement objects to make it
possible to optionally use the same named placeholder in multiple places
inside a single prepared statement
</notes>
</release>
<release>
<version>
<release>1.2.1</release>
<api>1.2.1</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-08-21</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- fixed issue in tableInfo() that originates in getTableFieldDefinition() which
led to returning incorrect type values (Bug #8291)
- quote identifiers in the reverse module when 'quote_identifiers' is enabled (Bug #8309)
- use version_compare() to fix complex version comparisons (Bug #8355)
- do not use quote() in setCharset() since it is supposed to set the charset in
the connection that was passed to it
- return an error if a named placeholder name is used twice inside a single statement
- do not list empty contraints and indexes
- added support for 'primary' option in createTable()
- fixed notnull reverse engineering on mysql 4.x (Bug #8415)
- do not set a default if type is a LOB (Request #8074)
- if a default value is set, then we need to use VARCHAR instead of TEXT
- removed _verifyTableType() since it just adds overhead, is hard to do reliably
and you will get an error if the table type is not supported anyways
- fixed handling return values when disable_query is set in _doQuery() and _execute()
- only call RELEASE SAVEPOINT if the server version if 5.0.3 or higher
- increased MDB2 dependency too 2.2.1
</notes>
</release>
<release>
<version>
<release>1.2.0</release>
<api>1.2.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-07-23</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- added ability to escape wildcard characters in escape() and quote()
- added setTransactionIsolation()
- added savepoint support to beginTransaction(), commit() and rollback()
- added debug() call at the end of a query/prepare/execute calling (Request #7933)
- added context array parameter to debug() and make use of it whereever sensible
- added optional method name parameter to raiseError() and use whereever possible
- added ability to escape wildcard characters in escape() and quote()
- added debug() call at the end of a query/prepare/execute calling (Request #7933)
- added 'nativetype' output to tableInfo() and getTableFieldDefinition()
- added 'mdb2type' output to getTableFieldDefinition()
- reworked tableInfo() to use a common implementation based on getTableFieldDefinition()
when a table name is passed (Bug #8124)
- fixed incorrect regex in mapNativeDatatype() (Bug #8256) (thx ioz at ionosfera dot com)
- use old dsn when rolling back open transactions in disconnect()
</notes>
</release>
<release>
<version>
<release>1.1.0</release>
<api>1.1.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-06-15</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- tweaked handling of free() for prepared statements
- return error if a prepared statement is attempted to be freed twice
- removed use of addslashes() for BLOB quoting
(this might result in SQL injection vulnerability)
- added setCharset()
- use setCharset() in connect()/_doConnect()
- set transaction enabled engine as default
- generalized quoteIdentifier() with a property
- use general implementation of quoteIdentifier() (Bug #7738)
- fixed warning in replace() if type is not set (Bug #7740)
- cosmetic performance tweak in getTableFieldDefinition()
- switched most array_key_exists() calls to !empty() to improve readability and performance
- fixed a few edge cases and potential warnings
- added ability to rewrite queries for query(), exec() and prepare() using a debug handler callback
- pass limit and offset to the result object constructor in _execute() for read statements
- check if result/connection has not yet been freed/dicsonnected before
attempting to free a result set(Bug #7790)
- fixed unbuffered query support
- revert change that would prefer 'clob' over 'text' for TEXT fields
(this was breaking runtime instrospection)
</notes>
</release>
<release>
<version>
<release>1.0.3</release>
<api>1.0.3</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-05-22</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- fixed unsigned handling and minor tweaks to type mapping in mapNativeDatatype()
- use emulated prepared statements on mysql 4.0 or lower
- added "emulate_prepared" option to force prepared statement emulation
</notes>
</release>
<release>
<version>
<release>1.0.2</release>
<api>1.0.2</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-05-14</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- optimized listTables() and listViews()
- optimized show related queries
- merged in some features and fixes from the mysql driver
- explicitly set is_manip parameter to false for transaction debug calls
- pass parameter array as debug() all with scope "parameters" in every execute()
call (bug #4119)
- silently change name of primary key contraints to PRIMARY
- added ability to hint that a constraint is a primary key in dropConstraint()
- typo fixes in phpdoc (thx Stoyan)
- added support for fixed and variable types for 'text' in declarations,
as well as in reverse engineering (Request #1523)
- made _doQuery() return a reference
- added userinfo's to all raiseError calls that previously had none
- use native prepared queries for prepared SELECT statements
- only use native prepared queries of mysql 4.1 or higher
- added 'prepared_statements' supported meta data setting
- fixed issue with free() returning void
- added missing supported parameter to prepare() signature
</notes>
</release>
<release>
<version>
<release>1.0.1</release>
<api>1.0.1</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-04-16</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- fixed length handling in tableInfo() (bug #6887)
- aligned _modifyQuery() signature and phpdoc
- added support for tabe options in createTable() (bug ##7079)
- added optional database parameter to listTables() and listSequences()
- added 'result_introspection' supported metadata support
- properly quote table names in tableInfo() (related to bug #6573)
- use connected_server_info in getServerVersion() as a cache cache
- use parent::disconnect() in disconnect()
- added support for length in integer reverse engineering
- some fixes regarding boolean reverse engineering
- added listViews() and hide views in listTables()
open todo item:
- use native prepared queries for prepared SELECT statements
</notes>
</release>
<release>
<version>
<release>1.0.0</release>
<api>1.0.0</api>
</version>
<stability>
<release>stable</release>
<api>stable</api>
</stability>
<date>2006-02-09</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- handle null as resource when disable_query option is enabled in result object
open todo item:
- use native prepared queries for prepared SELECT statements
</notes>
</release>
<release>
<version>
<release>0.2.4</release>
<api>0.2.4</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2006-02-05</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- typo fix in getTableConstraintDefinition() (bug #6487)
- added support for length in integer and decimal columns
- removed ugly hack for quote parameter in quote() since it was insufficient
(escaping also needs to be prevented)
- added support for out of order parameter binding in prepared queries
- reset row_limit and row_offset after calling prepare() just like we do for query() and exec()
- cosmetic fix (removed "row_" prefix from "row_limit" and "row_offset")
- now using TINYINT(1) by default instead of CHAR(1) for the boolean datatype (BC BREAK!)
- typo fix in error message in createTable()
- improved parsing in getServerInfo() (bug #6550)
- fixed subselect emulation
- support an arbitrary number of arguments in concat()
open todo item:
- use native prepared queries for prepared SELECT statements
</notes>
</release>
<release>
<version>
<release>0.2.3</release>
<api>0.2.3</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2006-01-13</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- explicitly pass if the module is phptype specific in all loadModule calls (bug #6226)
- properly handle PRIMARY keys in listTableConstraints()
- apply _isIndexName() on non primary keys in getTableConstraintDefinition()
- initial implementation of multi_query option (bug #6418)
- added error handling in prepare()
- use multi_query option in executeStoredProc() (bug #6418)
- fixed signature of quoteIdentifier() to make second param optional
- fixed signature of executeStoredProc()
- typo fixes in error handling of nextResult() and numRows() calls
- added @ in front of a few more mysqli calls
- _fixIndexName() now just attempts to remove possible formatting
- renamed _isSequenceName() to _fixSequenceName()
- _fixSequenceName() now just attempts to remove possible formatting, and only
returns a boolean if no formatting was applied when the new "check" parameter is set to true
open todo item:
- use native prepared queries for prepared SELECT statements
</notes>
</release>
<release>
<version>
<release>0.2.2</release>
<api>0.2.2</api>
</version>
<stability>
<release>beta</release>
<api>beta</api>
</stability>
<date>2005-12-30</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- moved state to beta
- fixed typo in sub select detection
open todo item:
- use native prepared queries for prepared SELECT statements
</notes>
</release>
<release>
<version>
<release>0.2.1</release>
<api>0.2.1</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<date>2005-12-28</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- use emulated prepared queries for non manip prepared queries
- proper quote new table name in alterTable()
open todo item:
- use native prepared queries for prepared SELECT statements
</notes>
</release>
<release>
<version>
<release>0.2.0</release>
<api>0.2.0</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<date>2005-12-21</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
- do not fix case in listUsers()
- unified case fixing in the list*() methods
- fixed change and rename in alterTable()
- primary key must be called primary
- use getConnection() to access connection property
- split index and constraint handling
- quote identifiers where possible inside the manager methods depending on
the new 'quote_identifier' option (defaults to off)
- refactored get*Declaration() methods to use getTypeDeclaration()
- setting in_transaction to false on disconnect
- hide constraints from indexes and vice versa in the list methods
- added new Function modules to handle difference in SQL functions
- force rollback() with open transactions on disconnect
- fixed table renaming
- escape floats to make sure they do not contain evil characters (bug #5608)
- do not check with === if ssl is enabled
- fixed LOB handling
- support column length in create index (mysql only feature, but a nice touch,
emulating it with substring is not feasible though)
- split off manipulation queries into exec() method from the query() method *BC BREAK*
- if result_types is set to false in prepare() method the query will be handled as a DML statement *BC BREAK*
- use a proper default value if a field is set to not null in _getDeclaration*() (bug #5930)
- added ability to determine unsigned in mapNativeDatatype()
(only really implemented in the mysql(i) drivers) (bug #6054)
- use MDB2_ERROR_NOT_FOUND in getTableConstraintDefinition() and getTableIndexDefinition() (bug #6055)
- use lastInsertID() method in nextID()
- added getServerVersion() and use it to determine sub select support
- unified array structure in mapNativeDatatype() *BC BREAK*
- added 'mdbtype' to tableInfo() output that is generated from mapNativeDatatype()
- changed 'len' to 'length' in tableInfo() output *BC BREAK*
</notes>
</release>
<release>
<version>
<release>0.1.1</release>
<api>0.1.1</api>
</version>
<stability>
<release>alpha</release>
<api>alpha</api>
</stability>
<date>2005-10-10</date>
<license uri="http://www.example.com">BSD License</license>
<notes>
Warning: this release features numerous BC breaks!
There have been considerable improvements to the datatype, manager and reverse
modules. Furthermore preliminary support for auto increment and primary keys
has been added. Please note that making a field auto increment implies a single
column primary key on this field.
- added support for auto increment and primary key in schema.
- alterTable now needs the full definition to work (use getTableFieldDefinition
from Reverse module if you do not have a definition at hand) this eliminates the need
of the declaration part in the alterTable array.
- removed support for dummy_primary_key
- fix PHP4.4 breakage
- moved getInsertID() into core as lastInsertID()
- all non LOB values were quoted twice in execute()
- clobs only need to be mapped to binary when using mysqli_stmt_send_long_data()
which is handled independently
- use !empty() instead of isset() in fetchRow to determine if result cols were bound or result types were set
- expect keys in type arrays the same way as they are passed for the values in execute() and bindParamArray()
- add s pattern modifier to preg_replace() call for parameter searches in prepare() (bug #5362)
- moved all private fetch mode fix methods into _fixResultArrayValues() for performance reasons
- renamed MDB2_PORTABILITY_LOWERCASE to MDB2_PORTABILITY_FIX_CASE and use 'field_case' option to determine if to upper- or lowercase (CASE_LOWER/CASE_UPPER)
- count() -> !empty() where possible
- use array_map() instead of array_flip(array_change_key_case(array_flip())) to fix case of array values
- use array_key_exists() instead of isset() where possible
- changed structure of field add/remove/change in alterTable() to match MDB2_Schema
- removed subSelect() implementation (now in already included in common)
- return 0 for manipulation queries when disable_query is enabled
- tweaked getTableFieldDefinition() in reverse module
open todo items:
- fixed LOB support
</notes>
</release>
</changelog>
</package>