@Published(tag="architect") public class SqlServerDialect extends DefaultDialect
| Modifier and Type | Class and Description | 
|---|---|
protected static class  | 
SqlServerDialect.SqlServerResultSetConvertor
SQLServer用のResultSet変換クラス。
 
 このクラスでは、 
varbinary(max)で定義されたカラムの場合、
 ヒープを圧迫しないようにResultSet.getBinaryStream(int)の結果を返す。 | 
| Constructor and Description | 
|---|
SqlServerDialect()  | 
| Modifier and Type | Method and Description | 
|---|---|
java.lang.String | 
convertCountSql(java.lang.String sql)
SQL文をレコード数取得用のSQL文に変換する。 
 | 
java.lang.String | 
getPingSql()
ping用のSQL文を返す。
 
 データベースへの死活チェックを行うための、ping用SQL文を生成する。 
 | 
ResultSetConvertor | 
getResultSetConvertor()
ResultSetから値を取得するための変換クラスを返却する。 | 
boolean | 
isDuplicateException(java.sql.SQLException sqlException)
SQL例外が一意制約違反による例外か否か。
  
 | 
boolean | 
isTransactionTimeoutError(java.sql.SQLException sqlException)
SQL例外がトランザクションタイムアウトと判断すべき例外か否か。 
 | 
boolean | 
supportsIdentity()
IDENTITY(オートインクリメントカラム)が使用できるか否か。
  
 | 
buildSequenceGeneratorSql, convertCountSql, convertPaginationSql, supportsIdentityWithBatchInsert, supportsOffset, supportsSequencepublic boolean supportsIdentity()
trueを返す。supportsIdentity in interface DialectsupportsIdentity in class DefaultDialectfalseを返す。public boolean isDuplicateException(java.sql.SQLException sqlException)
isDuplicateException in interface DialectisDuplicateException in class DefaultDialectsqlException - SQL例外falseを返す。public boolean isTransactionTimeoutError(java.sql.SQLException sqlException)
isTransactionTimeoutError in interface DialectisTransactionTimeoutError in class DefaultDialectsqlException - SQL例外falseを返す。public ResultSetConvertor getResultSetConvertor()
ResultSetから値を取得するための変換クラスを返却する。
 
 全てのカラムをResultSet.getObject(int)で取得するコンバータを返す。
 
varbinary(max)で定義されたカラムの場合は、ResultSet.getBinaryStream(int)の結果を返す、
 ResultSetの変換クラスを返却する。getResultSetConvertor in interface DialectgetResultSetConvertor in class DefaultDialectpublic java.lang.String convertCountSql(java.lang.String sql)
SELECT COUNT(*) COUNT_ FROM ('引数のSQL') SUB_
 SQLServerは、インラインビュー内にORDER BYを記述することが出来ない。
 このため、レコード数取得のSQLに変換する際にSQLの一番最後に存在しているORDER BYを削除後に
 件数取得用のSQLに変換する。convertCountSql in interface DialectconvertCountSql in class DefaultDialectsql - SQL文public java.lang.String getPingSql()
DefaultDialectgetPingSql in interface DialectgetPingSql in class DefaultDialect