Zmienna tabelaryczna w Transact-SQL

Specjalne typy danych w Transact-SQL

Typy danych wykorzystywanych w Transact-SQL to te same typy, z którymi mamy do czynienia w zwykłym języku SQL dla SQL Server. Całość typów danych znajdziesz w tym artykule. W T-SQL występują także typy danych specyficzne i możliwe do wykorzystania tylko w programach T-SQL. Przykładem jest tabelaryczny typ danych tzw. Table data type.

Tabela jako zmienna w Transact-SQL

W T-SQL jako zmienną możemy zadeklarować nie tylko liczbę, tekst, bądź datę, ale także tabelę. Warto odróżnić te tabelę od tabel tymczasowych w SQL Server. Zmienna będąca tabelą jest przechowywana  w pamięci komputera, stąd też jest do niej bardzo szybki dostęp. Zmienną przechowującą tabelę należy w T-SQL zadeklarować. Można na niej wykonywać wszelkie operacje DML jak Insert, Update, Delete. Tabela będąca zmienną może także posiadać constrainty.

Istotną różnicą w porównaniu do innych zmiennych jest to, że nie wyświetlimy jej zawartości za pomocą polecenia print. Nie możemy także stosować na niej polecenia SET. Możemy za to wykonać Select, by wyświetlić dane z tej tabeli. By dodać, lub zmodyfikować dane stosujemy polecenia SQL Insert i SQL Update.

Poniżej krótki przykład pokazujący wszystkie wspomniane wcześniej możliwości zmiennej tabelarycznej w Transact-SQL.

--tomaszkenig.pl
USE Northwind
GO

BEGIN
DECLARE @tabTest table (id int identity(1, 1),
MyValue varchar(255));

--PRZYKŁAD INSERT
INSERT into @tabTest
SELECT ContactName
FROM Customers
--PRZYKŁAD UPDATE
UPDATE @tabTest
set MyValue = MyValue + ' dodano do tabeli w dniu ' + convert(varchar(10), GETDATE(),20);

--przykład DELETE 
DELETE FROM @tabTest where id = 10

--wyświetlanie SELECT
select * from @tabTest
END;
Kurs SQL Server - Transact-SQL Zmienna Tabelaryczna
Kurs SQL Server – Transact-SQL Zmienna Tabelaryczna

Przykład z wykorzystaniem zmiennej tabelarycznej możesz znaleźć tutaj: Dane ze stron web do MSSQL.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *