Fix #20479: Fix issue with MSSQL related to char and nchar

This commit is contained in:
Craig London
2025-08-26 15:05:11 -04:00
committed by GitHub
parent 1ce35f98b0
commit 005d9f21fb
3 changed files with 7 additions and 3 deletions

View File

@ -504,9 +504,12 @@ class QueryBuilder extends \yii\db\QueryBuilder
}
$dbType = $column->dbType;
if (in_array($dbType, ['char', 'varchar', 'nchar', 'nvarchar', 'binary', 'varbinary'])) {
if (in_array($dbType, ['varchar', 'nvarchar', 'binary', 'varbinary'])) {
$dbType .= '(MAX)';
} elseif (in_array($dbType, ['char', 'nchar'])) {
$dbType .= "($column->size)";
}
if ($column->dbType === Schema::TYPE_TIMESTAMP) {
$dbType = $column->allowNull ? 'varbinary(8)' : 'binary(8)';
}