Class | Sequel::SqlAnywhere::Database |
In: |
lib/sequel/adapters/sqlanywhere.rb
|
Parent: | Sequel::Database |
api | [RW] |
# File lib/sequel/adapters/sqlanywhere.rb, line 47 47: def connect(server) 48: opts = server_opts(server) 49: unless conn_string = opts[:conn_string] 50: conn_string = [] 51: conn_string << "Host=#{opts[:host]}#{":#{opts[:port]}" if opts[:port]}" if opts[:host] 52: conn_string << "DBN=#{opts[:database]}" if opts[:database] 53: conn_string << "UID=#{opts[:user]}" if opts[:user] 54: conn_string << "Password=#{opts[:password]}" if opts[:password] 55: conn_string << "CommLinks=#{opts[:commlinks]}" if opts[:commlinks] 56: conn_string << "ConnectionName=#{opts[:connection_name]}" if opts[:connection_name] 57: conn_string << "CharSet=#{opts[:encoding]}" if opts[:encoding] 58: conn_string << "Idle=0" # Prevent the server from disconnecting us if we're idle for >240mins (by default) 59: conn_string << nil 60: conn_string = conn_string.join(';') 61: end 62: 63: conn = @api.sqlany_new_connection 64: raise LoadError, "Could not connect" unless conn && @api.sqlany_connect(conn, conn_string) == 1 65: 66: if Sequel.application_timezone == :utc 67: @api.sqlany_execute_immediate(conn, "SET TEMPORARY OPTION time_zone_adjustment=0") 68: end 69: 70: conn 71: end
# File lib/sequel/adapters/sqlanywhere.rb, line 73 73: def disconnect_connection(c) 74: @api.sqlany_disconnect(c) 75: end
# File lib/sequel/adapters/sqlanywhere.rb, line 83 83: def execute(sql, opts=OPTS, &block) 84: synchronize(opts[:server]) do |conn| 85: _execute(conn, :select, sql, opts, &block) 86: end 87: end
# File lib/sequel/adapters/sqlanywhere.rb, line 77 77: def execute_dui(sql, opts=OPTS) 78: synchronize(opts[:server]) do |conn| 79: _execute(conn, :rows, sql, opts) 80: end 81: end