@@ -143,7 +143,7 @@ Execute a query and return results. Queries are read-only and don't require a tr
143143
144144- ` language ` (str): Query language - ` "sql" ` , ` "opencypher" ` , ` "mongo" ` , ` "graphql" `
145145- ` command ` (str): Query string
146- - ` *args ` : Optional parameters to bind to the query
146+ - ` *args ` : Optional positional parameters, or one mapping for named parameters
147147
148148** Returns:**
149149
@@ -164,6 +164,13 @@ for record in result:
164164# Parameterized query
165165result = db.query(" sql" , " SELECT FROM Person WHERE age > ?" , 25 )
166166
167+ # Named parameters
168+ result = db.query(
169+ " sql" ,
170+ " SELECT FROM Person WHERE age IN :ages ORDER BY age" ,
171+ {" ages" : [25 , 30 , 35 ]},
172+ )
173+
167174# OpenCypher query
168175result = db.query(" opencypher" , """
169176 MATCH (p:Person)-[:Knows]->(friend)
@@ -195,7 +202,7 @@ Execute a command (write operation). Commands modify data and **require a transa
195202
196203- ` language ` (str): Command language (usually ` "sql" ` or ` "opencypher" ` )
197204- ` command ` (str): Command string
198- - ` *args ` : Optional parameters
205+ - ` *args ` : Optional positional parameters, or one mapping for named parameters
199206
200207** Returns:**
201208
@@ -223,7 +230,11 @@ db.command(
223230# Data operations must be in a transaction
224231with db.transaction():
225232 db.command(" sql" , " INSERT INTO Person SET name = ?, age = ?" , " Alice" , 30 )
226- db.command(" sql" , " UPDATE Person SET age = 31 WHERE name = 'Alice'" )
233+ db.command(
234+ " sql" ,
235+ " UPDATE Person SET age = :age WHERE name = :name" ,
236+ {" age" : 31 , " name" : " Alice" },
237+ )
227238 db.command(" sql" , " DELETE FROM Person WHERE name = 'Alice'" )
228239```
229240
0 commit comments