Class: KnjDB_java_sqlite3

Inherits:
Object show all
Defined in:
lib/knj/knjdb/libknjdb_java_sqlite3.rb

Instance Method Summary collapse

Constructor Details

#initialize(knjdb_ob) ⇒ KnjDB_java_sqlite3

Returns a new instance of KnjDB_java_sqlite3.



14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 14

def initialize(knjdb_ob)
  @knjdb = knjdb_ob
  
  if @knjdb.opts[:sqlite_driver]
    require @knjdb.opts[:sqlite_driver]
  else
    require File.dirname(__FILE__) + "/sqlitejdbc-v056.jar"
  end
  
  require "java"
  import "org.sqlite.JDBC"
  @conn = java.sql.DriverManager::getConnection("jdbc:sqlite:" + @knjdb.opts[:path])
  @stat = @conn.createStatement
end

Instance Method Details

#escape(string) ⇒ Object



45
46
47
48
49
50
51
52
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 45

def escape(string)
  if (!string)
    return ""
  end
  
    string = string.gsub("'", "\\'")
  return string
end

#escape_colObject



6
7
8
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 6

def escape_col
  return "`"
end

#escape_tableObject



2
3
4
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 2

def escape_table
  return "`"
end

#escape_valObject



10
11
12
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 10

def escape_val
  return "'"
end

#fetch(result) ⇒ Object



41
42
43
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 41

def fetch(result)
  return result.fetch
end

#lastIDObject



54
55
56
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 54

def lastID
  return @conn.last_insert_row_id
end

#query(string) ⇒ Object



29
30
31
32
33
34
35
36
37
38
39
# File 'lib/knj/knjdb/libknjdb_java_sqlite3.rb', line 29

def query(string)
  begin
    return KnjDB_java_sqlite3_result.new(@stat.executeQuery(string))
  rescue java.sql.SQLException => e
    if e.message == "java.sql.SQLException: query does not return ResultSet"
      #ignore it.
    else
      raise e
    end
  end
end