| Module | Sequel::MSSQL::DatabaseMethods |
| In: |
lib/sequel/adapters/shared/mssql.rb
|
| AUTO_INCREMENT | = | 'IDENTITY(1,1)'.freeze | ||
| SERVER_VERSION_RE | = | /^(\d+)\.(\d+)\.(\d+)/.freeze | ||
| SERVER_VERSION_SQL | = | "SELECT CAST(SERVERPROPERTY('ProductVersion') AS varchar)".freeze | ||
| SQL_BEGIN | = | "BEGIN TRANSACTION".freeze | ||
| SQL_COMMIT | = | "COMMIT TRANSACTION".freeze | ||
| SQL_ROLLBACK | = | "IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION".freeze | ||
| SQL_ROLLBACK_TO_SAVEPOINT | = | 'IF @@TRANCOUNT > 0 ROLLBACK TRANSACTION autopoint_%d'.freeze | ||
| SQL_SAVEPOINT | = | 'SAVE TRANSACTION autopoint_%d'.freeze | ||
| DECIMAL_TYPE_RE | = | /number|numeric|decimal/io | The types to check for 0 scale to transform :decimal types to :integer. |
| mssql_unicode_strings | [RW] | Whether to use N’’ to quote strings, which allows unicode characters inside the strings. True by default for compatibility, can be set to false for a possible performance increase. This sets the default for all datasets created from this Database object. |
The version of the MSSQL server, as an integer (e.g. 10001600 for SQL Server 2008 Express).
# File lib/sequel/adapters/shared/mssql.rb, line 31
31: def server_version(server=nil)
32: return @server_version if @server_version
33: @server_version = synchronize(server) do |conn|
34: (conn.server_version rescue nil) if conn.respond_to?(:server_version)
35: end
36: unless @server_version
37: m = SERVER_VERSION_RE.match(fetch(SERVER_VERSION_SQL).single_value.to_s)
38: @server_version = (m[1].to_i * 1000000) + (m[2].to_i * 10000) + m[3].to_i
39: end
40: @server_version
41: end