Epoxy - bind data to queries for any query language.
Let me hit ya with some science!
ep = Epoxy.new("select * from foo where bar=?")
binds = %W[foo]
bound_query = ep.quote { |x| "'" + binds[x] + "'" }
"select * from foo where bar='foo'"
Epoxy handles:
-
? for numbered binds (named binds coming soon!)
-
?? for a real question mark
-
‘?’ for a real question mark
-
comments, weird quoting styles (look at the “holy shit” test for examples)
-
not telling you how to quote your data. This solution works for any query language and any database.
Note on Patches/Pull Requests
-
Fork the project.
-
Make your feature addition or bug fix.
-
Add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
-
Send me a pull request. Bonus points for topic branches.
Copyright
Copyright © 2010 Erik Hollensbe. See LICENSE for details.