如何在 Elixir 字符串中显示单个反斜杠
How to Display a single backslash in Elixir string
有人能告诉我如何在 Elixir
的 SQL 语句中添加一个反斜杠吗
iex(1)> sql = "select * from user limit 1 \G;"
"select * from user limit 1 G;"
iex(2)> sql = "select * from user limit 1 \G;"
"select * from user limit 1 \G;"
我的 sql 语句中只需要 '\G'
$ elixir -v
Elixir 1.1.0-dev
其实我想用mariaex库,但是还是不行
defmodule Customer do
def main(args) do
sql = "SELECT name FROM user limit 3 \G;"
{:ok, p} = Mariaex.Connection.start_link(username: "root", password: "password", database: "user")
res = Mariaex.Connection.query(p, sql )
IO.inspect res
end
end
当我执行代码时,它告诉我“\G”附近有语法错误
$ escript billutil
{:error,
%Mariaex.Error{mariadb: %{code: 1064,
message: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\G' at line 1"},
message: nil}}
请问我应该如何格式化字符串?
你的第二次尝试是正确的。您会在输出中看到两个反斜杠,因为它是经过检查的输出(打印为 Elixir 术语)。如果您尝试将 sql 打印到控制台,您会看到一个反斜杠:
iex(1)> IO.puts("select * from user limit 1 \G;")
select * from user limit 1 \G;
有人能告诉我如何在 Elixir
的 SQL 语句中添加一个反斜杠吗
iex(1)> sql = "select * from user limit 1 \G;"
"select * from user limit 1 G;"
iex(2)> sql = "select * from user limit 1 \G;"
"select * from user limit 1 \G;"
我的 sql 语句中只需要 '\G'
$ elixir -v
Elixir 1.1.0-dev
其实我想用mariaex库,但是还是不行
defmodule Customer do
def main(args) do
sql = "SELECT name FROM user limit 3 \G;"
{:ok, p} = Mariaex.Connection.start_link(username: "root", password: "password", database: "user")
res = Mariaex.Connection.query(p, sql )
IO.inspect res
end
end
当我执行代码时,它告诉我“\G”附近有语法错误
$ escript billutil
{:error,
%Mariaex.Error{mariadb: %{code: 1064,
message: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\G' at line 1"},
message: nil}}
请问我应该如何格式化字符串?
你的第二次尝试是正确的。您会在输出中看到两个反斜杠,因为它是经过检查的输出(打印为 Elixir 术语)。如果您尝试将 sql 打印到控制台,您会看到一个反斜杠:
iex(1)> IO.puts("select * from user limit 1 \G;")
select * from user limit 1 \G;