任何以 : 开头的部分都是命名参数,旨在由 mini_sql 在发送给数据库管理系统(DBMS)之前进行替换,其本身并非有效的 SQL 语句。
示例,请参见下方的 [2]:
[1] pry(main)> User.find_by(username: 'anon43915857').id
=> 5
[2] pry(main)> DB.query(
"SELECT id FROM users WHERE username = :username",
{ username: 'anon43915857' }
).first.id
=> 5
[3] pry(main)> DB.query(
"SELECT id FROM users WHERE username = ?",
'anon43915857'
).first.id
=> 5