1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
# frozen-string-literal: true
require_relative '../shared/mssql'
module Sequel
module JDBC
module MSSQL
module DatabaseMethods
include Sequel::MSSQL::DatabaseMethods
private
# Get the last inserted id using SCOPE_IDENTITY().
def last_insert_id(conn, opts=OPTS)
statement(conn) do |stmt|
sql = opts[:prepared] ? 'SELECT @@IDENTITY' : 'SELECT SCOPE_IDENTITY()'
rs = log_connection_yield(sql, conn){stmt.executeQuery(sql)}
rs.next
rs.getLong(1)
end
end
# Primary key indexes appear to start with pk__ on MSSQL
def primary_key_index_re
/\Apk__/i
end
end
end
end
end
|