SQLSRV 定数

このトピックでは、SQL Server Driver for PHP で定義されている定数を示します。

ERR 定数

次の表に、sqlsrv_errors がエラー、警告、またはその両方のいずれを返すかを指定するために使用される定数を示します。

説明

SQLSRV_ERR_ALL

最後の sqlsrv 関数の呼び出しで生成されたエラーと警告が返されます。これが既定値です。

SQLSRV_ERR_ERRORS

最後の sqlsrv 関数の呼び出しで生成されたエラーが返されます。

SQLSRV_ERR_WARNINGS

最後の sqlsrv 関数の呼び出しで生成された警告が返されます。

FETCH 定数

次の表に、sqlsrv_fetch_array から返される配列の種類を指定するために使用される定数を示します。

SQLSRV 定数 説明

SQLSRV_FETCH_ASSOC

sqlsrv_fetch_array で、データの次の行が連想配列として返されます。

SQLSRV_FETCH_BOTH

sqlsrv_fetch_array で、データの次の行が数値キーと連想キーの両方を持つ配列として返されます。これが既定値です。

SQLSRV_FETCH_NUMERIC

sqlsrv_fetch_array で、データの次の行が数値インデックス付き配列として返されます。

これらの定数の使用方法の詳細については、「データを配列として取得する方法」を参照してください。

ログ記録の定数

このセクションでは、sqlsrv_configure でログ記録の設定を変更するために使用される定数を示します。アクティビティのログ記録の詳細については、「アクティビティのログ記録」を参照してください。

次の表に、LogSubsystems 設定の値として使用できる定数を示します。

SQLSRV 定数 (かっこ内は等価の整数) 説明

SQLSRV_LOG_SYSTEM_ALL (-1)

すべてのサブシステムのログを有効にします。

SQLSRV_LOG_SYSTEM_CONN (2)

接続のアクティビティのログを有効にします。

SQLSRV_LOG_SYSTEM_INIT (1)

初期化のアクティビティのログを有効にします。

SQLSRV_LOG_SYSTEM_OFF (0)

ログを無効にします。

SQLSRV_LOG_SYSTEM_STMT (4)

ステートメントのアクティビティのログを有効にします。

SQLSRV_LOG_SYSTEM_UTIL (8)

エラー関数のアクティビティ (handle_errorhandle_warning など) のログを有効にします。

次の表に、LogSeverity 設定の値として使用できる定数を示します。

SQLSRV 定数 (かっこ内は等価の整数) 説明

SQLSRV_LOG_SEVERITY_ALL (-1)

エラー、警告、および通知をログに記録するように指定します。

SQLSRV_LOG_SEVERITY_ERROR (1)

エラーをログに記録するように指定します。

SQLSRV_LOG_SEVERITY_NOTICE (4)

通知をログに記録するように指定します。

SQLSRV_LOG_SEVERITY_WARNING (2)

警告をログに記録するように指定します。

Nullable 定数

次の表に、列で NULL 値が許容されるかどうか、またはその情報が不明であるかを判断するために使用できる定数を示します。sqlsrv_field_metadata から返される Nullable キーの値を比較して、列で NULL 値が許容されるかどうかを判断できます。

SQLSRV 定数 (かっこ内は等価の整数) 説明

SQLSRV_NULLABLE_YES (0)

列で NULL 値が許容されます。

SQLSRV_NULLABLE_NO (1)

列で NULL 値が許容されません。

SQLSRV_NULLABLE_UNKNOWN (2)

列で NULL 値が許容されるかどうか不明です。

PARAM 定数

次の表に、sqlsrv_query または sqlsrv_prepare を呼び出す際にパラメーターの方向を指定するための定数を示します。

SQLSRV 定数 説明

SQLSRV_PARAM_IN

入力パラメーターであることを示します。

SQLSRV_PARAM_INOUT

双方向パラメーターであることを示します。

SQLSRV_PARAM_OUT

出力パラメーターであることを示します。

PHPTYPE 定数

次の表に、PHP データ型を記述するために使用される定数を示します。PHP データ型の詳細については、「PHP 型」を参照してください。

SQLSRV 定数 PHP データ型

SQLSRV_PHPTYPE_INT

Integer

SQLSRV_PHPTYPE_DATETIME

Datetime

SQLSRV_PHPTYPE_FLOAT

Float

SQLSRV_PHPTYPE_STREAM(<encoding>1)

Stream

SQLSRV_PHPTYPE_STRING(<encoding>1)

String

1. SQLSRV_PHPTYPE_STREAM および SQLSRV_PHPTYPE_STRING では、ストリームのエンコードを指定するパラメーターを使用できます。次の表に、パラメーターとして使用できる SQLSRV 定数と、対応するエンコードの説明を示します。

SQLSRV 定数 説明

SQLSRV_ENC_BINARY

エンコードまたは変換は実行されず、データが生のバイト ストリームとしてサーバーから返されます。

SQLSRV_ENC_CHAR

システムで設定された Windows ロケールのコード ページでの指定に従って、データが 8 ビット文字として返されます。マルチバイト文字またはこのコード ページにマップされていない文字は、1 バイトの疑問符 (?) 文字に置き換えられます。

"UTF-8"

データは UTF-8 エンコードで返されます。この定数は、SQL Server Driver for PHP Version 1.1 で追加されました。UTF-8 サポートの詳細については、「組み込みの UTF-8 サポートを使用して UTF-8 データを送信および取得する方法」を参照してください。

注意

SQLSRV_PHPTYPE_STREAM または SQLSRV_PHPTYPE_STRING を使用する場合、エンコードの指定は必須です。パラメーターを指定しないとエラーが返されます。

これらの定数の詳細については、「PHP データ型を指定する方法」および「文字データをストリームとして取得する方法」を参照してください。

SQLTYPE 定数

次の表に、SQL Server データ型を記述するために使用される定数を示します。一部の定数では、有効桁数、小数点以下桁数、長さなどに対応するパラメーターが必要です。SQL Server データ型の詳細については、「データ型 (Transact-SQL)」を参照してください。有効桁数、小数点以下桁数、および長さの詳細については、「有効桁数、小数点以下桁数、および長さ (Transact-SQL)」を参照してください。

SQLSRV 定数 SQL Server データ型

SQLSRV_SQLTYPE_BIGINT

bigint

SQLSRV_SQLTYPE_BINARY

binary

SQLSRV_SQLTYPE_BIT

bit

SQLSRV_SQLTYPE_CHAR($charCount)

char

SQLSRV_SQLTYPE_DATE

date4

SQLSRV_SQLTYPE_DATETIME

datetime

SQLSRV_SQLTYPE_DATETIME2

datetime24

SQLSRV_SQLTYPE_DATETIMEOFFSET

datetimeoffset4

SQLSRV_SQLTYPE_DECIMAL($precision, $scale)

decimal

SQLSRV_SQLTYPE_FLOAT

float

SQLSRV_SQLTYPE_IMAGE

image1

SQLSRV_SQLTYPE_INT

int

SQLSRV_SQLTYPE_MONEY

money

SQLSRV_SQLTYPE_NCHAR($charCount)

nchar

SQLSRV_SQLTYPE_NUMERIC($precision, $scale)

numeric

SQLSRV_SQLTYPE_NVARCHAR($charCount)

nvarchar

SQLSRV_SQLTYPE_NVARCHAR('max')

nvarchar(MAX)

SQLSRV_SQLTYPE_NTEXT

ntext2

SQLSRV_SQLTYPE_REAL

real

SQLSRV_SQLTYPE_SMALLDATETIME

smalldatetime

SQLSRV_SQLTYPE_SMALLINT

smallint

SQLSRV_SQLTYPE_SMALLMONEY

smallmoney

SQLSRV_SQLTYPE_TEXT

text3

SQLSRV_SQLTYPE_TIME

time4

SQLSRV_SQLTYPE_TIMESTAMP

timestamp

SQLSRV_SQLTYPE_TINYINT

tinyint

SQLSRV_SQLTYPE_UNIQUEIDENTIFIER

uniqueidentifier

SQLSRV_SQLTYPE_UDT

UDT

SQLSRV_SQLTYPE_VARBINARY($byteCount)

varbinary

SQLSRV_SQLTYPE_VARBINARY('max')

varbinary(MAX)

SQLSRV_SQLTYPE_VARCHAR($charCount)

varchar

SQLSRV_SQLTYPE_VARCHAR('max')

varchar(MAX)

SQLSRV_SQLTYPE_XML

xml

  1. これは varbinary(max) 型にマップされるレガシ型です。
  2. これは新しい nvarchar 型にマップされるレガシ型です。
  3. これは新しい varchar 型にマップされるレガシ型です。
  4. この型のサポートは、SQL Server Driver for PHP Version 1.1 で追加されました。

次の表に、パラメーターを使用できる SQLTYPE 定数と、パラメーターで許容される値の範囲を示します。

SQLTYPE パラメーター パラメーターで許容される範囲

SQLSRV_SQLTYPE_CHAR、

SQLSRV_SQLTYPE_VARCHAR

charCount

1 - 8000

SQLSRV_SQLTYPE_NCHAR、

SQLSRV_SQLTYPE_NVARCHAR

charCount

1 - 4000

SQLSRV_SQLTYPE_BINARY、

SQLSRV_SQLTYPE_VARBINARY

byteCount

1 - 8000

SQLSRV_SQLTYPE_DECIMAL、

SQLSRV_SQLTYPE_NUMERIC

precision

1 - 38

SQLSRV_SQLTYPE_DECIMAL、

SQLSRV_SQLTYPE_NUMERIC

scale

1 - precision

トランザクション分離レベルの定数

sqlsrv_connect と共に使用される TransactionIsolation キーは、次のいずれかの定数を受け付けます。

  • SQLSRV_TXN_READ_UNCOMMITTED
  • SQLSRV_TXN_READ_COMMITTED
  • SQLSRV_TXN_REPEATABLE_READ
  • SQLSRV_TXN_SNAPSHOT
  • SQLSRV_TXN_SERIALIZABLE

カーソルおよびスクロールの定数

次の定数は、結果セットで使用できるカーソルの種類を指定します。

  • SQLSRV_CURSOR_FORWARD
  • SQLSRV_CURSOR_STATIC
  • SQLSRV_CURSOR_DYNAMIC
  • SQLSRV_CURSOR_KEYSET

次の定数は、結果セット内でどの行を選択するかを指定します。

  • SQLSRV_SCROLL_NEXT
  • SQLSRV_SCROLL_PRIOR
  • SQLSRV_SCROLL_FIRST
  • SQLSRV_SCROLL_LAST
  • SQLSRV_SCROLL_ABSOLUTE
  • SQLSRV_SCROLL_RELATIVE

これらの定数の使用方法の詳細については、「カーソルの種類の指定と行の選択」を参照してください。

参照

その他のリソース

API リファレンス (SQL Server Driver for PHP)