db_binds.anubis 1.57 KB
/*
 * Created by PyramIDE.
 * User: フランスのトトロ aka (David RENÉ) 
 * Date: 17/03/2017
 * Time: 00:14
 * © Calexium 
 */


 extended version of bind for SQLite3.

public define SQLite3Bind
  bind_DB_id_or_NULL
  (
    String  _name,
    DB_id   _value
  )=
  if _value is
  {
    none          then bind_NULL(_name)
    db_id(value)  then bind_Int(_name, value)
  }
.

public define SQLite3Bind
  bind_DB_id_or_NULL
  (
    String        _name,
    Maybe(DB_id)  mb_value
  )=
  if mb_value is
  {
    failure      then bind_NULL(_name)
    success(id)  then bind_DB_id_or_NULL(_name, id)
  }
.
    
public define SQLite3Bind
  bind_Int_or_NULL
  (
    String     name,
    Maybe(Int) mb_value
  )=
  if mb_value is 
  {
    failure         then  bind_NULL(name),
    success(value)  then  bind_Int(name, value)
  }
.

public define SQLite3Bind
  bind_String_or_NULL
  (
    String  name,
    String  value
  )=
  if value = "" then
    bind_NULL(name)
  else
    bind_String(name, value).
  
public define SQLite3Bind
  bind_Datetime
  (
    String      name,
    DB_datetime dt
  )=
  bind_String(name, datetime(dt)).

public define SQLite3Bind
  bind_Date
  (
    String  name,
    DB_date d
  )=
  bind_String(name, date(d)).
  
public define SQLite3Bind
  bind_Time
  (
    String  name,
    DB_time d
  )=
  bind_String(name, time(d)).
  
public define SQLite3Bind
  bind_Bool
  (
    String  name,
    Bool    value
  )=
  bind_Int(name, to_DBInt(value)).

public define SQLite3Bind
  bind_BLOB
  (
    String    name,
    $V        value
  )=
  bind_ByteArray(name, serialize(value)).