微软MSSQL的操作和MYSQL的操作方法基本一致,下面列举出一些有所不同的使用方式。
## MSSQL的参数化安全过滤的格式
> 请参考:https://msdn.microsoft.com/zh-cn/library/cc296184.aspx
## 存储过程配置文件
return array(
'DbProc' => array(
'存储过程名' => array(
'params' => array(
array('name'=>'aaa','direction'=>'out','sql_type'=>'varchar','length'=>50),
)
)
)
);
| 配置项名 | 描述 |
| -- | -- |
| name | 参数名 |
| direction | 方向。可选值:in/out/inout |
| sql_type | sql字段类型,具体见下表 |
| length | 长度,可空 |
| php_type | php字段类型,可空,具体见下表 |
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 |



