You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
let pattern =FTS3Pattern(matchingAnyTokenIn: "*") // nil
305
305
```
306
306
307
-
FTS3Pattern are regular [values](../README.md#values). You can use them as query [arguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments):
307
+
FTS3Pattern are regular [values](../README.md#values). You can use them as query [arguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments):
let pattern =FTS5Pattern(matchingAnyTokenIn: "*") // nil
588
588
```
589
589
590
-
FTS5Pattern are regular [values](../README.md#values). You can use them as query [arguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments):
590
+
FTS5Pattern are regular [values](../README.md#values). You can use them as query [arguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments):
> **Warning**: It is your responsibility to prevent sensitive information from leaking in unexpected locations, so you should not set the `publicStatementArguments` flag in release builds (think about GDPR and other privacy-related rules).
618
618
619
-
See [Configuration](https://swiftpackageindex.com/groue/grdb/documentation/grdb/configuration) for more details and configuration options.
619
+
See [Configuration](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/configuration) for more details and configuration options.
620
620
621
621
622
622
SQLite API
@@ -673,7 +673,7 @@ try dbQueue.write { db in
673
673
}
674
674
```
675
675
676
-
The `?` and colon-prefixed keys like `:score` in the SQL query are the **statements arguments**. You pass arguments with arrays or dictionaries, as in the example above. See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments) for a detailed documentation of SQLite arguments.
676
+
The `?` and colon-prefixed keys like `:score` in the SQL query are the **statements arguments**. You pass arguments with arrays or dictionaries, as in the example above. See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments) for a detailed documentation of SQLite arguments.
677
677
678
678
You can also embed query arguments right into your SQL queries, with the `literal` argument label, as in the example below. See [SQL Interpolation] for more details.
679
679
@@ -931,7 +931,7 @@ try dbQueue.read { db in
931
931
let dictionary =tryDictionary(uniqueKeysWithValues: cursor)
932
932
```
933
933
934
-
-**Cursors adopt the [Cursor](https://swiftpackageindex.com/groue/grdb/documentation/grdb/cursor) protocol, which looks a lot like standard [lazy sequences](https://developer.apple.com/reference/swift/lazysequenceprotocol) of Swift.** As such, cursors come with many convenience methods: `compactMap`, `contains`, `dropFirst`, `dropLast`, `drop(while:)`, `enumerated`, `filter`, `first`, `flatMap`, `forEach`, `joined`, `joined(separator:)`, `max`, `max(by:)`, `min`, `min(by:)`, `map`, `prefix`, `prefix(while:)`, `reduce`, `reduce(into:)`, `suffix`:
934
+
-**Cursors adopt the [Cursor](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/cursor) protocol, which looks a lot like standard [lazy sequences](https://developer.apple.com/reference/swift/lazysequenceprotocol) of Swift.** As such, cursors come with many convenience methods: `compactMap`, `contains`, `dropFirst`, `dropLast`, `drop(while:)`, `enumerated`, `filter`, `first`, `flatMap`, `forEach`, `joined`, `joined(separator:)`, `max`, `max(by:)`, `min`, `min(by:)`, `map`, `prefix`, `prefix(while:)`, `reduce`, `reduce(into:)`, `suffix`:
935
935
936
936
```swift
937
937
// Prints all Github links
@@ -1010,7 +1010,7 @@ let rows = try Row.fetchAll(db,
1010
1010
arguments: ["name":"Arthur"])
1011
1011
```
1012
1012
1013
-
See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments) for a detailed documentation of SQLite arguments.
1013
+
See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments) for a detailed documentation of SQLite arguments.
1014
1014
1015
1015
Unlike row arrays that contain copies of the database rows, row cursors are close to the SQLite metal, and require a little care:
1016
1016
@@ -1318,7 +1318,7 @@ GRDB ships with built-in support for the following value types:
1318
1318
1319
1319
- Generally speaking, all types that adopt the [DatabaseValueConvertible](#custom-value-types) protocol.
1320
1320
1321
-
Values can be used as [statement arguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments):
1321
+
Values can be used as [statement arguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments):
1322
1322
1323
1323
```swift
1324
1324
let url: URL =...
@@ -1791,7 +1791,7 @@ try dbQueue.inDatabase { db in // or dbPool.writeWithoutTransaction
1791
1791
}
1792
1792
```
1793
1793
1794
-
Transactions can't be left opened unless you set the [allowsUnsafeTransactions](https://swiftpackageindex.com/groue/grdb/documentation/grdb/configuration/allowsunsafetransactions) configuration flag:
1794
+
Transactions can't be left opened unless you set the [allowsUnsafeTransactions](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/configuration/allowsunsafetransactions) configuration flag:
1795
1795
1796
1796
```swift
1797
1797
// fatal error: A transaction has been left opened at the end of a database access
@@ -1903,7 +1903,7 @@ try dbQueue.write { db in
1903
1903
}
1904
1904
```
1905
1905
1906
-
The `?` and colon-prefixed keys like `:name` in the SQL query are the statement arguments. You set them with arrays or dictionaries (arguments are actually of type [StatementArguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments), which happens to adopt the ExpressibleByArrayLiteral and ExpressibleByDictionaryLiteral protocols).
1906
+
The `?` and colon-prefixed keys like `:name` in the SQL query are the statement arguments. You set them with arrays or dictionaries (arguments are actually of type [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments), which happens to adopt the ExpressibleByArrayLiteral and ExpressibleByDictionaryLiteral protocols).
@@ -1986,7 +1986,7 @@ See also `Database.execute(sql:)` in the [Executing Updates](#executing-updates)
1986
1986
1987
1987
>**Note**: it is a programmer error to reuse a prepared statement that has failed: GRDB may crash if you do so.
1988
1988
1989
-
For more information about prepared statements, see the [Statement reference](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statement).
1989
+
For more information about prepared statements, see the [Statement reference](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statement).
See [fetching methods](#fetching-methods) for information about the `fetchCursor`, `fetchAll`, `fetchSet` and `fetchOne` methods. See [StatementArguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments) for more information about the query arguments.
2733
+
See [fetching methods](#fetching-methods) for information about the `fetchCursor`, `fetchAll`, `fetchSet` and `fetchOne` methods. See [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments) for more information about the query arguments.
2734
2734
2735
2735
>**Note**:for performance reasons, the same row argument to `init(row:)` is reused during the iteration of a fetch query. If you want to keep the row for later use, make sure to store a copy: `self.row = row.copy()`.
2736
2736
@@ -3240,7 +3240,7 @@ Here is a list with all the available [persistence callbacks], listed in the sam
3240
3240
- `aroundDelete`
3241
3241
- `didDelete`
3242
3242
3243
-
For detailed information about each callback, check the [reference](https://swiftpackageindex.com/groue/grdb/documentation/grdb/mutablepersistablerecord/).
3243
+
For detailed information about each callback, check the [reference](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/mutablepersistablerecord/).
3244
3244
3245
3245
In the `MutablePersistableRecord` protocol, `willInsert` and `didInsert` are mutating methods. In `PersistableRecord`, they are not mutating.
3246
3246
@@ -3433,7 +3433,7 @@ protocol EncodableRecord {
3433
3433
}
3434
3434
```
3435
3435
3436
-
See [DatabaseColumnDecodingStrategy](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databasecolumndecodingstrategy) and [DatabaseColumnEncodingStrategy](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databasecolumnencodingstrategy/) to learn about all available strategies.
3436
+
See [DatabaseColumnDecodingStrategy](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databasecolumndecodingstrategy) and [DatabaseColumnEncodingStrategy](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databasecolumnencodingstrategy/) to learn about all available strategies.
3437
3437
3438
3438
3439
3439
### Date and UUID Coding Strategies
@@ -3455,7 +3455,7 @@ protocol EncodableRecord {
3455
3455
}
3456
3456
```
3457
3457
3458
-
See [DatabaseDateDecodingStrategy](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databasedatedecodingstrategy/), [DatabaseDateEncodingStrategy](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databasedateencodingstrategy/), and [DatabaseUUIDEncodingStrategy](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databaseuuidencodingstrategy/) to learn about all available strategies.
3458
+
See [DatabaseDateDecodingStrategy](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databasedatedecodingstrategy/), [DatabaseDateEncodingStrategy](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databasedateencodingstrategy/), and [DatabaseUUIDEncodingStrategy](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databaseuuidencodingstrategy/) to learn about all available strategies.
3459
3459
3460
3460
There is no customization of uuid decoding, because UUID can already decode all its encoded variants (16-bytes blobs and uuid strings, both uppercase and lowercase).
3461
3461
@@ -5015,7 +5015,7 @@ Player // SELECT * FROM player
5015
5015
```
5016
5016
5017
5017
5018
-
Raw SQL snippets are also accepted, with eventual [arguments](https://swiftpackageindex.com/groue/grdb/documentation/grdb/statementarguments):
5018
+
Raw SQL snippets are also accepted, with eventual [arguments](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/statementarguments):
5019
5019
5020
5020
```swift
5021
5021
// SELECT DATE(creationDate), COUNT(*) FROM player WHERE name = 'Arthur' GROUP BY date(creationDate)
For example, if you observe the region of `Player.select(max(Column("score")))`, then you'll get be notified of all changes performed on the `score` column of the `player` table (updates, insertions and deletions), even if they do not modify the value of the maximum score. However, you will not get any notification for changes performed on other database tables, or updates to other columns of the player table.
7254
7254
7255
-
For more details, see the [reference](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databaseregion/).
7255
+
For more details, see the [reference](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databaseregion/).
7256
7256
7257
7257
7258
7258
#### The DatabaseRegionConvertible Protocol
@@ -8616,7 +8616,7 @@ When this is the case, there are two possible explanations:
8616
8616
try db.execute(sql: "UPDATE player SET name = ?", arguments: [name])
8617
8617
```
8618
8618
8619
-
For more information, see [Double-quoted String Literals Are Accepted](https://sqlite.org/quirks.html#dblquote), and [Configuration.acceptsDoubleQuotedStringLiterals](https://swiftpackageindex.com/groue/grdb/documentation/grdb/configuration/acceptsdoublequotedstringliterals).
8619
+
For more information, see [Double-quoted String Literals Are Accepted](https://sqlite.org/quirks.html#dblquote), and [Configuration.acceptsDoubleQuotedStringLiterals](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/configuration/acceptsdoublequotedstringliterals).
8620
8620
8621
8621
8622
8622
@@ -8765,7 +8765,7 @@ This chapter has [moved](Documentation/Concurrency.md#database-snapshots).
8765
8765
8766
8766
#### DatabaseWriter and DatabaseReader Protocols
8767
8767
8768
-
This chapter was removed. See the references of [DatabaseReader](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databasereader) and [DatabaseWriter](https://swiftpackageindex.com/groue/grdb/documentation/grdb/databasewriter).
8768
+
This chapter was removed. See the references of [DatabaseReader](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databasereader) and [DatabaseWriter](http://groue.github.io/GRDB.swift/docs/6.3/documentation/grdb/databasewriter).
8769
8769
8770
8770
#### Asynchronous APIs
8771
8771
@@ -8819,7 +8819,7 @@ This chapter was renamed to [Embedding SQL in Query Interface Requests].
8819
8819
[Sharing a Database]: Documentation/SharingADatabase.md
0 commit comments