проще создавать подобный ключ через
['id' => Schema::TYPE_UPK]
не совсем понятно зачем вам нужно название, ведь обратная миграция будет
dropTable('tableName')
в mysql - название ключа всегда соответствует названию поля:
PRIMARY KEY (`id`)
для получения информации по названию через запрос можно использовать запрос ниже. Но в mysql - он возращает PRIMARY, возможно в mssql будет то, что вам нужно
SELECT CONSTRAINT_NAME FROM INFORMATION_SCHEMA . KEY_COLUMN_USAGE where CONSTRAINT_SCHEMA='db_name' AND TABLE_NAME='table_name' AND CONSTRAINT_NAME="PRIMARY"
для использования запросов используется
$this->db->createCommand($sql = null, $params = [])