ExScylla. Statement. Query
(ex_scylla v0.10.2)
Copy Markdown
Wrapper around rust module See rust documentation for more usage details: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html
Summary
Types
@type opaque() :: any()
Functions
@spec get_consistency(ExScylla.Types.query()) :: ExScylla.Types.consistency() | nil
Example
iex> q = Query.new("SELECT * FROM test;")
iex> Query.get_consistency(q)
nil
iex> q = Query.set_consistency(q, :quorum)
iex> Query.get_consistency(q)
:quorum
@spec get_execution_profile_handle(ExScylla.Types.query()) :: ExScylla.Types.execution_profile_handle() | nil
Example
iex> eph = ExecutionProfile.builder()
...> |> ExecutionProfileBuilder.build()
...> |> ExecutionProfile.into_handle()
iex> q = Query.new("SELECT * FROM test;")
...> |> Query.set_execution_profile_handle(eph)
iex> q |> Query.get_execution_profile_handle()
...> |> is_reference()
true
@spec get_is_idempotent(ExScylla.Types.query()) :: boolean()
Example
iex> q = Query.new("SELECT * FROM test;")
iex> false = Query.get_is_idempotent(q)
iex> q = Query.set_is_idempotent(q, true)
iex> true = Query.get_is_idempotent(q)
@spec get_page_size(ExScylla.Types.query()) :: pos_integer() | nil
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.get_page_size
Example
iex> q = Query.new("SELECT * FROM test;")
iex> 5000 = Query.get_page_size(q)
iex> q = Query.set_page_size(q, 10)
iex> 10 = Query.get_page_size(q)
@spec get_request_timeout(ExScylla.Types.query()) :: ExScylla.Types.duration_ms() | nil
Example
iex> q = Query.new("SELECT * FROM test;")
...> |> Query.set_request_timeout(15000)
iex> q |> Query.get_request_timeout()
15000
@spec get_serial_consistency(ExScylla.Types.query()) :: ExScylla.Types.serial_consistency() | nil
Example
iex> q = Query.new("SELECT * FROM test;")
iex> nil = Query.get_serial_consistency(q)
iex> q = Query.set_serial_consistency(q, :serial)
iex> :serial = Query.get_serial_consistency(q)
@spec get_timestamp(ExScylla.Types.query()) :: ExScylla.Types.ts_micros() | nil
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.get_timestamp
Example
iex> q = Query.new("SELECT * FROM test;")
iex> nil = Query.get_timestamp(q)
iex> ts_micro = :os.system_time(:microsecond)
iex> q = Query.set_timestamp(q, ts_micro)
iex> ^ts_micro = Query.get_timestamp(q)
@spec get_tracing(ExScylla.Types.query()) :: boolean()
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.get_tracing
Example
iex> q = Query.new("SELECT * FROM test;")
iex> false = Query.get_tracing(q)
iex> q = Query.set_tracing(q, true)
iex> true = Query.get_tracing(q)
@spec new(String.t()) :: ExScylla.Types.query()
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.new
Example
iex> Query.new("SELECT * FROM test;")
...> |> is_reference()
true
@spec set_consistency(ExScylla.Types.query(), ExScylla.Types.consistency()) :: ExScylla.Types.query()
Example
iex> q = Query.new("SELECT * FROM test;")
iex> q = Query.set_consistency(q, :one)
iex> true = is_reference(q)
@spec set_execution_profile_handle( ExScylla.Types.query(), ExScylla.Types.execution_profile_handle() | nil ) :: ExScylla.Types.query()
Example
iex> eph = ExecutionProfile.builder()
...> |> ExecutionProfileBuilder.build()
...> |> ExecutionProfile.into_handle()
iex> Query.new("SELECT * FROM test;")
...> |> Query.set_execution_profile_handle(eph)
...> |> is_reference()
true
@spec set_is_idempotent(ExScylla.Types.query(), boolean()) :: ExScylla.Types.query()
Example
iex> q = Query.new("SELECT * FROM test;")
iex> q = Query.set_is_idempotent(q, true)
iex> true = is_reference(q)
@spec set_page_size(ExScylla.Types.query(), pos_integer()) :: ExScylla.Types.query()
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.set_page_size
Example
iex> q = Query.new("SELECT * FROM test;")
iex> q = Query.set_page_size(q, 10)
iex> true = is_reference(q)
@spec set_request_timeout(ExScylla.Types.query(), ExScylla.Types.duration_ms() | nil) :: ExScylla.Types.query()
Example
iex> q = Query.new("SELECT * FROM test;")
...> |> Query.set_request_timeout(15000)
iex> q |> Query.get_request_timeout()
15000
@spec set_serial_consistency( ExScylla.Types.query(), ExScylla.Types.serial_consistency() | nil ) :: ExScylla.Types.query()
Example
iex> q = Query.new("SELECT * FROM test;")
iex> q = Query.set_serial_consistency(q, :local_serial)
iex> true = is_reference(q)
@spec set_timestamp(ExScylla.Types.query(), ExScylla.Types.ts_micros() | nil) :: ExScylla.Types.query()
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.set_timestamp
Example
iex> q = Query.new("SELECT * FROM test;")
iex> q = Query.set_timestamp(q, :os.system_time(:microsecond))
iex> true = is_reference(q)
@spec set_tracing(ExScylla.Types.query(), boolean()) :: ExScylla.Types.query()
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.set_tracing
Example
iex> q = Query.new("SELECT * FROM test;")
iex> q = Query.set_tracing(q, true)
iex> true = is_reference(q)
@spec with_page_size(ExScylla.Types.query(), pos_integer()) :: ExScylla.Types.query()
See: https://docs.rs/scylla/1.8.0/scylla/statement/unprepared/struct.Statement.html#method.with_page_size
Example
iex> q = Query.new("SELECT * FROM test;")
iex> q = Query.with_page_size(q, 10)
iex> true = is_reference(q)