@@ -518,22 +518,17 @@ Connection Objects
518
518
519
519
.. method :: create_collation(name, callable)
520
520
521
- Creates a collation with the specified *name * and *callable *. The callable will
522
- be passed two string arguments. It should return -1 if the first is ordered
523
- lower than the second, 0 if they are ordered equal and 1 if the first is ordered
524
- higher than the second. Note that this controls sorting (ORDER BY in SQL) so
525
- your comparisons don't affect other SQL operations .
521
+ Create a collation named *name * using the collating function *callable *.
522
+ * callable * is passed two :class: ` string <str> ` arguments,
523
+ and it should return 1 if the first is ordered higher than the second,
524
+ -1 if the first is ordered lower than the second,
525
+ and 0 if they are ordered equal .
526
526
527
- Note that the callable will get its parameters as Python bytestrings, which will
528
- normally be encoded in UTF-8.
529
-
530
- The following example shows a custom collation that sorts "the wrong way":
527
+ The following example shows a reverse sorting collation:
531
528
532
529
.. literalinclude :: ../includes/sqlite3/collation_reverse.py
533
530
534
- To remove a collation, call ``create_collation `` with ``None `` as callable::
535
-
536
- con.create_collation("reverse", None)
531
+ Remove a collation function by setting *callable * to :const: `None `.
537
532
538
533
.. versionchanged :: 3.11
539
534
The collation name can contain any Unicode character. Earlier, only
0 commit comments