# File lib/sequel/adapters/sqlanywhere.rb, line 53 def connect(server) opts = server_opts(server) unless conn_string = opts[:conn_string] conn_string = [] conn_string << "Host=#{opts[:host]}#{":#{opts[:port]}" if opts[:port]}" if opts[:host] conn_string << "DBN=#{opts[:database]}" if opts[:database] conn_string << "UID=#{opts[:user]}" if opts[:user] conn_string << "Password=#{opts[:password]}" if opts[:password] conn_string << "CommLinks=#{opts[:commlinks]}" if opts[:commlinks] conn_string << "ConnectionName=#{opts[:connection_name]}" if opts[:connection_name] conn_string << "CharSet=#{opts[:encoding]}" if opts[:encoding] conn_string << "Idle=0" # Prevent the server from disconnecting us if we're idle for >240mins (by default) conn_string << nil conn_string = conn_string.join(';') end conn = @api.sqlany_new_connection raise LoadError, "Could not connect" unless conn && @api.sqlany_connect(conn, conn_string) == 1 if Sequel.application_timezone == :utc @api.sqlany_execute_immediate(conn, "SET TEMPORARY OPTION time_zone_adjustment=0") end conn end
Closes given database connection.
# File lib/sequel/adapters/sqlanywhere.rb, line 80 def disconnect_connection(c) @api.sqlany_disconnect(c) end
# File lib/sequel/adapters/sqlanywhere.rb, line 91 def execute(sql, opts=OPTS, &block) synchronize(opts[:server]) do |conn| _execute(conn, :select, sql, opts, &block) end end
Returns number of rows affected
# File lib/sequel/adapters/sqlanywhere.rb, line 85 def execute_dui(sql, opts=OPTS) synchronize(opts[:server]) do |conn| _execute(conn, :rows, sql, opts) end end
# File lib/sequel/adapters/sqlanywhere.rb, line 97 def execute_insert(sql, opts=OPTS) synchronize(opts[:server]) do |conn| _execute(conn, :insert, sql, opts) end end
# File lib/sequel/adapters/sqlanywhere.rb, line 103 def freeze @conversion_procs.freeze super end