Изменение данных через представление

Изменить данные столбца базовой таблицы можно в SQL Server 2012 с помощью Среда SQL Server Management Studio или Transact-SQL.

В этом разделе

  • Перед началом работы выполните следующие действия.

    Ограничения

    Безопасность

  • Изменение данных таблицы с помощью представления с использованием следующих средств:

    Среда SQL Server Management Studio

    Transact-SQL

Перед началом

Ограничения

Безопасность

Разрешения

Необходимы разрешения UPDATE, INSERT или DELETE для целевой таблицы в зависимости от выполняемого действия.

Значок стрелки, используемый со ссылкой «В начало»[Top]

Использование среды SQL Server Management Studio

Изменение данных таблицы с помощью представления

  1. В обозревателе объектов разверните базу данных, содержащую представление, а затем разверните Представления.

  2. Щелкните правой кнопкой мыши представление и выберите Изменить 200 верхних строк.

  3. Может потребоваться изменение инструкции SELECT на панели SQL для получения строк, которые необходимо изменить.

  4. На панели Результаты найдите строку для изменения или удаления. Чтобы удалить строку, щелкните правой кнопкой мыши строку и выберите Удалить. Чтобы изменить данные в одном или нескольких столбцах, измените данные в столбце.

    Важное примечаниеВажно!

    Нельзя удалить строку, если представление ссылается на несколько базовых таблиц. Можно обновлять только те столбцы, которые принадлежат к одной базовой таблице.

  5. Чтобы вставить строку, прокрутите строки вниз до конца и вставьте новые значения.

    Важное примечаниеВажно!

    Нельзя вставить строку, если представление ссылается на несколько базовых таблиц.

Значок стрелки, используемый со ссылкой «В начало»[Top]

Использование Transact-SQL

Обновление данных таблицы с помощью представления

  1. В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере изменяется значение в столбцах StartDate и EndDate для определенного сотрудника путем создания ссылки на столбцы в представлении HumanResources.vEmployeeDepartmentHistory. Это представление возвращает значения из двух таблиц. Эта инструкция была выполнена успешно, потому что изменялись столбцы только одной из базовых таблиц.

    USE AdventureWorks2012 ; 
    GO
    UPDATE HumanResources.vEmployeeDepartmentHistory
    SET StartDate = '20110203', EndDate = GETDATE() 
    WHERE LastName = N'Smith' AND FirstName = 'Samantha'; 
    GO
    

Дополнительные сведения см. в разделе UPDATE (Transact-SQL).

Вставка данных таблицы с помощью представления

  1. В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.

  2. На стандартной панели выберите пункт Создать запрос.

  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере выполняется вставка новой строки в базовую таблицу HumanResouces.Department путем указания соответствующих столбцов в представлении HumanResources.vEmployeeDepartmentHistory. Эта инструкция была выполнена успешно, поскольку были указаны только столбцы из одной базовой таблицы, а другие столбцы в базовой таблице имеют значения по умолчанию.

    USE AdventureWorks2012 ;
    GO
    INSERT INTO HumanResources.vEmployeeDepartmentHistory (Department, GroupName) 
    VALUES ('MyDepartment', 'MyGroup'); 
    GO
    

Дополнительные сведения см. в разделе Инструкция INSERT (Transact-SQL).

Значок стрелки, используемый со ссылкой «В начало»[Top]