1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2026-03-02 03:49:30 +00:00
This commit is contained in:
gnosygnu
2015-04-12 23:12:36 -04:00
parent 18dcd3f89e
commit 551120b906
171 changed files with 3625 additions and 1983 deletions

View File

@@ -59,11 +59,11 @@ public class Db_conn {
public int Exec_sql_plog_ntx(String msg, String sql) {return Exec_sql_plog(Bool_.N, msg, sql);}
public int Exec_sql_plog_txn(String msg, String sql) {return Exec_sql_plog(Bool_.Y, msg, sql);}
public int Exec_sql_plog(boolean txn, String msg, String sql) {
Gfo_usr_dlg_.I.Plog_many("", "", "bgn: " + msg);
Gfo_usr_dlg_.I.Plog_many("", "", msg);
if (txn) this.Txn_bgn();
int rv = Exec_sql(sql);
if (txn) this.Txn_end();
Gfo_usr_dlg_.I.Plog_many("", "", "end: " + msg);
Gfo_usr_dlg_.I.Plog_many("", "", "done:" + msg);
return rv;
}
public int Exec_qry(Db_qry qry) {return Int_.cast_(engine.Exec_as_obj(qry));}

View File

@@ -30,6 +30,7 @@ public class Db_meta_fld {
public Object Default_value() {return default_value;} private final Object default_value;
public static final int Tid_bool = 0, Tid_byte = 1, Tid_short = 2, Tid_int = 3, Tid_long = 4, Tid_float = 5, Tid_double = 6, Tid_str = 7, Tid_text = 8, Tid_bry = 9;
public static final String Key_null = null;
public static final int Len_null = -1;
public static final String[] Ary_empy = String_.Ary_empty;
public static final Object Default_value_null = null;
}

View File

@@ -50,6 +50,7 @@ public class Db_meta_fld_list {
}
return rv.XtoStrAry();
}
public boolean Has(String key) {return flds.Has(key);}
public String Add_bool(String name) {return Add(name, Db_meta_fld.Tid_bool, Len_null, Bool_.N, Bool_.N, Bool_.N, Db_meta_fld.Default_value_null);}
public String Add_byte(String name) {return Add(name, Db_meta_fld.Tid_byte, Len_null, Bool_.N, Bool_.N, Bool_.N, Db_meta_fld.Default_value_null);}
public String Add_short(String name) {return Add(name, Db_meta_fld.Tid_short, Len_null, Bool_.N, Bool_.N, Bool_.N, Db_meta_fld.Default_value_null);}
@@ -70,10 +71,14 @@ public class Db_meta_fld_list {
public String Add_bry(String name) {return Add(name, Db_meta_fld.Tid_bry, Len_null, Bool_.N, Bool_.N, Bool_.N, Db_meta_fld.Default_value_null);}
public String Add(String name, int tid, int len, boolean nullable, boolean primary, boolean autoincrement, Object default_value) {
Db_meta_fld fld = new Db_meta_fld(name, tid, len, nullable, primary, autoincrement, default_value);
flds.Add(name, fld);
keys.Add(name);
Add_itm(fld);
return name;
}
private static final int Len_null = -1;
public void Add_itm(Db_meta_fld fld) {
String name = fld.Name();
flds.Add(name, fld);
keys.Add(name);
}
private static final int Len_null = Db_meta_fld.Len_null;
public static Db_meta_fld_list new_() {return new Db_meta_fld_list();}
}

View File

@@ -61,7 +61,16 @@ public abstract class Db_engine_sql_base implements Db_engine {
Exec_as_int(idx.To_sql_create());
}
}
public void Ddl_append_fld(String tbl, Db_meta_fld fld) {Exec_as_int(Db_sqlbldr__sqlite.I.Bld_alter_tbl_add(tbl, fld));}
public void Ddl_append_fld(String tbl, Db_meta_fld fld) {
Gfo_usr_dlg_.I.Plog_many("", "", "adding column to table: db=~{0} tbl=~{1} fld=~{2}", conn_info.Database(), tbl, fld.Name());
try {
Exec_as_int(Db_sqlbldr__sqlite.I.Bld_alter_tbl_add(tbl, fld));
Gfo_usr_dlg_.I.Plog_many("", "", "column added to table: db=~{0} tbl=~{1} fld=~{2}", conn_info.Database(), tbl, fld.Name());
}
catch (Exception e) { // catch error if column already added to table
Gfo_usr_dlg_.I.Warn_many("", "", "column not added to table: db=~{0} tbl=~{1} fld=~{2} err=~{3}", conn_info.Database(), tbl, fld.Name(), Err_.Message_gplx(e));
}
}
public void Ddl_delete_tbl(String tbl) {Exec_as_int(Db_sqlbldr__sqlite.I.Bld_drop_tbl(tbl));}
@gplx.Virtual public void Env_db_attach(String alias, Io_url db_url) {}
@gplx.Virtual public void Env_db_detach(String alias) {}

View File

@@ -114,7 +114,7 @@ public class Db_stmt_cmd implements Db_stmt {
catch (Exception e) {
this.Rls();
Reset_stmt();
throw Err_.err_(e, "db_stmt.insert: url={0} sql={1} err={2}", engine.Conn_info(), sql, Err_.Message_gplx_brief(e));
throw Err_.err_(e, "db_stmt.insert: url={0} sql={1} err={2}", engine.Conn_info().Xto_api(), sql, Err_.Message_gplx_brief(e));
}
}
public int Exec_update() {