Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak wykonać kwerendę przekazującą UPDATE w programie SQL Server

W SQL Server, OPENQUERY funkcja zestawu wierszy umożliwia wykonanie zapytania przekazującego na połączonym serwerze.

OPENQUERY jest często przywoływany w FROM klauzula zapytania tak, jakby była tabelą, ale można się do niej odwoływać również jako tabelę docelową INSERT , UPDATE lub DELETE oświadczenie.

Ten artykuł przedstawia przykład użycia OPENQUERY zrobić UPDATE zapytanie przekazujące.

Przykład

Załóżmy, że połączony serwer o nazwie Homer ma tabelę w Pets baza danych o nazwie Cats z następującymi danymi.

SELECT * FROM OPENQUERY (
    Homer, 
    'SELECT * FROM Pets.dbo.Cats'
    );

Wynik:

+---------+-----------+
| CatId   | CatName   |
|---------+-----------|
| 1       | FluffDupp |
| 2       | Scratch   |
| 3       | Long Tail |
+---------+-----------+

I powiedzmy, że chcemy zaktualizować imię jednego z kotów.

Możemy to zrobić za pomocą UPDATE zapytanie przekazujące do połączonego serwera, tak jak to.

UPDATE OPENQUERY (
    Homer, 
    'SELECT CatName FROM Pets.dbo.Cats WHERE CatId = 3'
    )
SET CatName = 'Short Tail';

Wynik:

(1 row affected)

Sprawdź wyniki

Możemy teraz uruchomić SELECT zapytanie przekazujące, aby zobaczyć wyniki.

SELECT * FROM OPENQUERY (
    Homer, 
    'SELECT * FROM Pets.dbo.Cats'
    );

Wynik:

+---------+------------+
| CatId   | CatName    |
|---------+------------|
| 1       | FluffDupp  |
| 2       | Scratch    |
| 3       | Short Tail |
+---------+------------+

Zgodnie z oczekiwaniami trzeci wiersz został zaktualizowany.

Jedną rzeczą, na którą powinienem zwrócić uwagę, jest to, że OPENQUERY nie akceptuje zmiennych dla swoich argumentów.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak mogę skrócić datę i godzinę w programie SQL Server?

  2. Czy są jakieś darmowe narzędzia do generowania skryptów 'INSERT INTO' w MS SQL Server?

  3. Instalacja i konfiguracja dzienników serwera SQL i przywracanie po awarii -1

  4. Przewodnik:konfigurowanie wysokiej dostępności programu SQL Server

  5. Jak zaimportować plik DBF do SQL Server