diff options
Diffstat (limited to 'lib/sisu/v3/db_select.rb')
-rw-r--r-- | lib/sisu/v3/db_select.rb | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/lib/sisu/v3/db_select.rb b/lib/sisu/v3/db_select.rb index 932bc551..a013c00b 100644 --- a/lib/sisu/v3/db_select.rb +++ b/lib/sisu/v3/db_select.rb @@ -78,7 +78,7 @@ module SiSU_DbSelect puts %{no connection with #{@sql_type} database established, createdb "#{@db.sqlite.db}"?} exit end - if @conn.class==NilClass + if @conn.is_a?(NilClass) db=@sql_type=='sqlite' \ ? @db.sqlite.db : @db.psql.db @@ -94,7 +94,9 @@ module SiSU_DbSelect @db=SiSU_Env::InfoDb.new @job="sqlite3 #{@db.sqlite.db} < #{@env.processing_path.sqlite}/#{@opt.fns}.sql" File.new("#{@env.processing_path.sqlite}/#{@opt.fns}.sql",'w+') - elsif @opt.fns and @opt.fns.inspect =~/create/; nil #sort variations later + elsif @opt.fns \ + and @opt.fns.inspect =~/create/ + nil #sort variations later else nil end else nil @@ -181,14 +183,13 @@ module SiSU_DbSelect else '???' end tell.puts_grey if @opt.cmd =~/v/ - when /^--update$/ when /^--remove$/ db_exist? @sdb_remove_doc.remove when /^--index$/ db_exist? @sdb_index.create_indexes - when /^droptable(s)?$/ + when /^--droptable(s)?$/ db_exist? @sdb_no.drop.tables when /^--dropindex(es)?$/ @@ -209,6 +210,10 @@ module SiSU_DbSelect puts @job end end + if @opt.act[:psql][:set]==:on \ + and @opt.mod.inspect !~/--(?:createdb|init(?:ialize)?|create(?:all)?|createtables?|recreate|cr(eate)?lex|cr(eate)?metadata|import|update|remove|index|droptable(s)?|dropindex(es)?|dropall|drop)/ + SiSU_Screen::Ansi.new(@opt.cmd,"--pg requires further instruction").warn unless @opt.cmd =~/[q]/ + end begin rescue; @sdb.output_dir? end |