diff options
author | Alexey Shchepin <alexey@process-one.net> | 2019-12-11 17:48:53 +0300 |
---|---|---|
committer | Alexey Shchepin <alexey@process-one.net> | 2019-12-11 17:49:02 +0300 |
commit | f9120f75b03f3debc0773f39cfb9a1c02b36cc55 (patch) | |
tree | 071b0a8ae4faa72f272596d135617d1b9603d08f /src/ejabberd_sql.erl | |
parent | Update the Spanish translation (diff) |
Improve compatibility with CockroachDB (#3074)
Diffstat (limited to 'src/ejabberd_sql.erl')
-rw-r--r-- | src/ejabberd_sql.erl | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/ejabberd_sql.erl b/src/ejabberd_sql.erl index c1d9383a0..22151b697 100644 --- a/src/ejabberd_sql.erl +++ b/src/ejabberd_sql.erl @@ -44,6 +44,7 @@ escape_like/1, escape_like_arg/1, escape_like_arg_circumflex/1, + to_string_literal/2, to_bool/1, sqlite_db/1, sqlite_file/1, @@ -251,6 +252,17 @@ to_array(EscapeFun, Val) -> Escaped = lists:join(<<",">>, lists:map(EscapeFun, Val)), [<<"{">>, Escaped, <<"}">>]. +to_string_literal(odbc, S) -> + <<"'", (escape(S))/binary, "'">>; +to_string_literal(mysql, S) -> + <<"'", (escape(S))/binary, "'">>; +to_string_literal(mssql, S) -> + <<"'", (standard_escape(S))/binary, "'">>; +to_string_literal(sqlite, S) -> + <<"'", (standard_escape(S))/binary, "'">>; +to_string_literal(pgsql, S) -> + <<"E'", (escape(S))/binary, "'">>. + encode_term(Term) -> escape(list_to_binary( erl_prettypr:format(erl_syntax:abstract(Term), |