Packages
ecto_ch
0.6.0
0.10.0
0.9.4
0.9.3
0.9.2
0.9.1
0.9.0
0.8.9
0.8.8
0.8.7
0.8.6
0.8.5
retired
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.6
0.6.5
0.6.4
0.6.3
0.6.2
retired
0.6.1
retired
0.6.0
retired
0.5.1
0.5.0
retired
0.4.1
0.4.0
retired
0.3.10
0.3.9
0.3.8
0.3.7
0.3.6
0.3.5
0.3.4
0.3.3
0.3.2
0.3.1
0.3.0
0.2.2
0.2.1
0.2.0
0.1.11
0.1.10
0.1.9
0.1.8
0.1.7
0.1.6
0.1.5
0.1.4
0.1.3
0.1.2
0.1.1
0.1.0
ClickHouse adapter for Ecto
Retired package: Deprecated - Partially incompatible with Ecto v3.13. Use v0.6.3 for Ecto v3.12, or v0.7.0 for Ecto v3.13.
Current section
Files
Jump to
Current section
Files
lib/ecto/adapters/clickhouse/queryable.ex
defmodule Ecto.Adapters.ClickHouse.Queryable do
@moduledoc false
require Ecto.Query
@doc false
def alter_update_all(name, queryable, [], tuplet) do
alter_update_all(name, queryable, tuplet)
end
def alter_update_all(name, queryable, updates, tuplet) do
query = Ecto.Query.from(queryable, update: ^updates)
alter_update_all(name, query, tuplet)
end
defp alter_update_all(name, queryable, tuplet) do
query = Ecto.Queryable.to_query(queryable)
execute(:alter_update_all, name, query, tuplet)
end
defp execute(:alter_update_all = operation, _name, query, {adapter_meta, opts}) do
%{adapter: adapter, cache: cache, repo: repo} = adapter_meta
{query, opts} = repo.prepare_query(operation, query, opts)
query = Ecto.Query.Planner.attach_prefix(query, opts)
{query_meta, {:nocache, {:update_all, query}}, cast_params, dump_params} =
Ecto.Query.Planner.query(query, :update_all, cache, adapter, 0)
%{select: nil} = query_meta
opts = [cast_params: cast_params] ++ opts
adapter.execute(
adapter_meta,
query_meta,
{:nocache, {operation, query}},
dump_params,
opts
)
end
end