Module: Sequel::MSAccess::DatasetMethods
- Includes:
- Dataset::UnsupportedIntersectExcept
- Defined in:
- lib/sequel_core/adapters/shared/ms_access.rb
Constant Summary collapse
- SELECT_CLAUSE_ORDER =
%w'limit distinct columns from with join where group order having union'.freeze
Instance Method Summary collapse
- #complex_expression_sql(op, args) ⇒ Object
- #full_text_search(cols, terms, opts = {}) ⇒ Object
- #literal(v) ⇒ Object
- #multi_insert_sql(columns, values) ⇒ Object
-
#nolock ⇒ Object
Allows you to do .nolock on a query.
- #quoted_identifier(name) ⇒ Object
Methods included from Dataset::UnsupportedIntersectExcept
Instance Method Details
#complex_expression_sql(op, args) ⇒ Object
55 56 57 58 59 60 61 62 |
# File 'lib/sequel_core/adapters/shared/ms_access.rb', line 55 def complex_expression_sql(op, args) case op when :'||' super(:+, args) else super(op, args) end end |
#full_text_search(cols, terms, opts = {}) ⇒ Object
64 65 66 |
# File 'lib/sequel_core/adapters/shared/ms_access.rb', line 64 def full_text_search(cols, terms, opts = {}) filter("CONTAINS (#{literal(cols)}, #{literal(terms)})") end |
#literal(v) ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/sequel_core/adapters/shared/ms_access.rb', line 68 def literal(v) case v when Time literal(v.iso8601) when Date, DateTime literal(v.to_s) when TrueClass 'TRUE' when FalseClass 'FALSE' else super end end |
#multi_insert_sql(columns, values) ⇒ Object
83 84 85 86 |
# File 'lib/sequel_core/adapters/shared/ms_access.rb', line 83 def multi_insert_sql(columns, values) values = values.map {|r| "SELECT #{expression_list(r)}" }.join(" UNION ALL ") ["INSERT INTO #{source_list(@opts[:from])} (#{identifier_list(columns)}) #{values}"] end |
#nolock ⇒ Object
Allows you to do .nolock on a query
89 90 91 |
# File 'lib/sequel_core/adapters/shared/ms_access.rb', line 89 def nolock clone(:with => "(NOLOCK)") end |
#quoted_identifier(name) ⇒ Object
93 94 95 |
# File 'lib/sequel_core/adapters/shared/ms_access.rb', line 93 def quoted_identifier(name) "[#{name}]" end |