Yii2: It is impossible to create a comment to a field. MSSQL

Created on 12 Mar 2018  Β·  5Comments  Β·  Source: yiisoft/yii2

What steps will reproduce the problem?

$ yii migrate

What is the expected result?

$ yii migrate
Yii Migration Tool (based on Yii v2.0.14.1)

Total 1 new migration to be applied:
m180312_073238_review_table.php

Apply the above migration? (yes|no) [no]:y
* applying m180312_073238_review_table

create table foo ... done (time: 0.054s)
* applied m180312_073238_review_table (time: 0.073s)

1 migration was applied.

Migrated up successfully.

What do you get instead?

Apply the above migration? (yes|no) [no]:y
* applying m180312_073238_review_table

create table review ...Exception: SQLSTATE[42000]: [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Π’ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π΅ "sp_updateextendedproperty" ΡƒΠΊΠ°Π·Π°Π½ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΈΠ»ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.
The SQL being executed was: sp_updateextendedproperty @name = N'MS_Description', @value = 'id ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ', @level1type = N'Table', @level1name = [review], @level2type = N'Column', @level2name = [user_id] (/home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/db/Schema.php:664)

0 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/db/Command.php(1260): yii\db\Schema->convertException(Object(PDOException), 'sp_updateextend...')

1 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/db/Command.php(1072): yii\db\Command->internalExecute('sp_updateextend...')

2 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/db/Migration.php(326): yii\db\Command->execute()

3 /home/xandr/Projects/vipishinew/console/migrations/m180312_073238_review_table.php(18): yii\db\Migration->createTable('review', Array)

4 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/db/Migration.php(114): m180312_073238_review_table->safeUp()

5 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/console/controllers/BaseMigrateController.php(725): yii\db\Migration->up()

6 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/console/controllers/BaseMigrateController.php(199): yii\console\controllers\BaseMigrateController->migrateUp('m180312_073238_...')

7 [internal function]: yii\console\controllers\BaseMigrateController->actionUp(0)

8 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)

9 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/base/Controller.php(157): yii\base\InlineAction->runWithParams(Array)

10 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/console/Controller.php(148): yii\base\Controller->runAction('', Array)

11 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/base/Module.php(528): yii\console\Controller->runAction('', Array)

12 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/console/Application.php(180): yii\base\Module->runAction('migrate', Array)

13 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/console/Application.php(147): yii\console\Application->runAction('migrate', Array)

14 /home/xandr/Projects/vipishinew/vendor/yiisoft/yii2/base/Application.php(386): yii\console\Application->handleRequest(Object(yii\console\Request))

15 /home/xandr/Projects/vipishinew/yii(31): yii\base\Application->run()

16 {main}

* failed to apply m180312_073238_review_table (time: 0.029s)

0 from 1 migrations were applied.

Migration failed. The rest of the migrations are canceled.

Additional info

use yii\db\Migration;

/**

  • Class m180312_073238_review_table
    /
    class m180312_073238_review_table extends Migration
    {
    /
    *

    • {@inheritdoc}

      */

      public function safeUp()

      {

      $this->createTable('review', [

      'id' => $this->primaryKey(),

      'user_id' => $this->integer()->comment('id ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ'),

      'content' => $this->text()->comment('содСрТимоС')

      ]);

}

/**
 * {@inheritdoc}
 */
public function safeDown()
{
    $this->dropTable('review');
}

}

| Q | A
| ---------------- | ---
| Yii version | 2.0.14.1
| PHP version | 7.0.25
| Operating system | Ubuntu 16.04

MSSQL bug

Most helpful comment

@sergeymakinen, ΠΏΡ€ΠΈΠ²Π΅Ρ‚!
У мСня:
Microsoft SQL Server 2017 (RTM-CU4) (KB4056498) - 14.0.3022.28 (X64) Feb 9 2018 19:39:09 Copyright (C) 2017 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 16.04.4 LTS)

Π― Π½Π°Ρ‡Π°Π» Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ добавлСния коммСнтария ΠΏΡ€ΠΈ MSSQL, Π² строкС 259 ΡƒΠΊΠ°Π·Π°Π½ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ sp_updateextendedproperty.

  1. "sp_updateextendedproperty" Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π° "sp_addextendedproperty", Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Ρ‰Π΅ Π½Π΅ создано property, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ.
  2. НуТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π²Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° для ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ "sp_addextendedproperty", Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ @level0type = N'Schema', @level0name = N'dbo',
    ОписаниС Ρ‚ΡƒΡ‚
  3. НуТно ΠΏΠ΅Ρ€Π΅ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ "addCommentOnTable", скорСС всСго ΠΎΠ½ Ρ‚ΠΎΠΆΠ΅ Π½Π΅ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ.
  4. Π•Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ссли я Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π·Π°Ρ…ΠΎΡ‡Ρƒ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρƒ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ)

К Ρ‚Π°ΠΊΠΈΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ я ΠΏΡ€ΠΈΡˆΠ΅Π». Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ я Π³Π΄Π΅-Ρ‚ΠΎ ошибся.

All 5 comments

@t3mnikov спасибо Π·Π° сообщСниС ΠΎΠ± ошибкС. Π₯ΠΎΡ‚Π΅Π»ΠΈ Π±Ρ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ ΠΏΡ€ΠΈΡΠ»Π°Ρ‚ΡŒ Pull Request?

Π”ΠΌΠΈΡ‚Ρ€ΠΈΠΉ, спасибо Π·Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ спасибо Π·Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅. На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρƒ мСня Π½Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π― сообщу Π’Π°ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Ρ€Π°Π½ΡŒΡˆΠ΅ мСня Π½Π΅ сдСлаСт этот фикс.

А какая вСрсия MSSQL?

@sergeymakinen, ΠΏΡ€ΠΈΠ²Π΅Ρ‚!
У мСня:
Microsoft SQL Server 2017 (RTM-CU4) (KB4056498) - 14.0.3022.28 (X64) Feb 9 2018 19:39:09 Copyright (C) 2017 Microsoft Corporation Developer Edition (64-bit) on Linux (Ubuntu 16.04.4 LTS)

Π― Π½Π°Ρ‡Π°Π» Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ добавлСния коммСнтария ΠΏΡ€ΠΈ MSSQL, Π² строкС 259 ΡƒΠΊΠ°Π·Π°Π½ Π²Ρ‹Π·ΠΎΠ² ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ sp_updateextendedproperty.

  1. "sp_updateextendedproperty" Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π° "sp_addextendedproperty", Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Ρ‰Π΅ Π½Π΅ создано property, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ.
  2. НуТно Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π²Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° для ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ "sp_addextendedproperty", Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ @level0type = N'Schema', @level0name = N'dbo',
    ОписаниС Ρ‚ΡƒΡ‚
  3. НуТно ΠΏΠ΅Ρ€Π΅ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ "addCommentOnTable", скорСС всСго ΠΎΠ½ Ρ‚ΠΎΠΆΠ΅ Π½Π΅ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ.
  4. Π•Ρ‰Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½Π° Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ссли я Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π·Π°Ρ…ΠΎΡ‡Ρƒ ΠΏΠ΅Ρ€Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρƒ Ρ‚ΠΎΠΉ ΠΆΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ)

К Ρ‚Π°ΠΊΠΈΠΌ Π²Ρ‹Π²ΠΎΠ΄Π°ΠΌ я ΠΏΡ€ΠΈΡˆΠ΅Π». Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ я Π³Π΄Π΅-Ρ‚ΠΎ ошибся.

@t3mnikov, ΠΏΡ€ΠΈΠ²Π΅Ρ‚! Бпасибо Π·Π° ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚.
ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π», ΠΏΠΎΡ‡ΠΈΡ‚Π°Π» https://stackoverflow.com/questions/9018518/how-to-add-a-comment-to-an-existing-table-column-in-sql-server (особСнно ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΎΡ‚Π²Π΅Ρ‚Π°ΠΌ): ΠΏΠΎΡ…ΠΎΠΆΠ΅, Ρ‡Ρ‚ΠΎ всё ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ.

Was this page helpful?
0 / 5 - 0 ratings