我正在玩mysql2(和mysql 5)gem以及结果和Enumerable结果.
我可以运行诸如的查询
results = client.query("select now()")
Run Code Online (Sandbox Code Playgroud)
我也可以运行诸如此类的查询
results = client.query("select version()")
Run Code Online (Sandbox Code Playgroud)
但我想要做的就是把它提升一个档次.在现实生活中,我假设人们运行多个查询.那么我怎样才能确保我能一次性获得版本和时间.
-
我尝试过的东西不起作用:
results = client.query("select version(); select now()")
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
Mysql2::Error: You have an error in your SQL Syntax; check the manual that corresponds to your Mysql Version for the right syntax to use near 'select now()' at line1
Run Code Online (Sandbox Code Playgroud)
现在我明白我可以在Mysql Console中运行以下查询并获得结果,我将如何在Mysql2 Gem中做同样的事情:
select version();select now()
Run Code Online (Sandbox Code Playgroud)
我如何在一个命令行中使用Mysql2 gem(或者我需要两个).我问,因为在现实生活中,人们通常会运行多个查询,以便按照他们想要的方式获得结果.
小智 8
我在连接MySQL之前添加了这个默认查询选项解决了这个问题:
Mysql2::Client.default_query_options[:connect_flags] |= Mysql2::Client::MULTI_STATEMENTS
| 归档时间: |
|
| 查看次数: |
2651 次 |
| 最近记录: |