Megosztás a következőn keresztül:


OLVASD SZÖVEGET (Transact-SQL)

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

Szöveg-, ntext- vagy képértékeket olvas egy szöveg-, ntext- vagy képoszlopból. Elkezdi a megadott eltolásból az olvasást, és a megadott bájtszámot olvassa.

Fontos

Ez a funkció az SQL Server egy későbbi verziójában lesz eltávolítva. Ne használja ezt a funkciót az új fejlesztési munkában, és tervezze meg a funkciót jelenleg használó alkalmazások módosítását. Használd helyette a SUBSTRING függvényt.

Transact-SQL szintaxis konvenciók

Szemantika

READTEXT { table.column text_ptr offset size } [ HOLDLOCK ]  

Arguments

asztal.oszlop
Egy táblázat és oszlop neve, amelyből olvasni kell. A tábla- és oszlopneveknek teljesíteniük kell az azonosítók szabályait. A táblázat- és oszlopnevek megadása szükséges; azonban az adatbázis és tulajdonos neveinek megadása opcionális.

text_ptr
Érvényes szövegmutató. text_ptrbinárisnak kell lennie(16).

ellensúlyoz
A bájtok száma, amikor a szöveg - vagy képadattípusokat használják. Ez lehet a bájtok száma is a karakterekhez, amikor az ntext adattípust használjuk az átugrásra, mielőtt elkezdi olvasni a szöveget, képet vagy ntext adatot.

méret A bájtok száma, amikor a szöveg - vagy képadattípusokat használják. Ez lehet a bájtok száma is a karakterekhez, amikor az ntext adattípust használják az adatok olvasásához. Ha a méret 0, 4 KB adatot olvasnak.

HOLDLOCK
Ez okozza, hogy a szövegérték olvasás esetén zárolódik a tranzakció végéig. Más felhasználók olvashatják az értéket, de nem módosíthatják.

Megjegyzések

Használd a TEXTPTR függvényt érvényes text_ptr érték eléréséhez. A TEXTPTR visszaad egy mutatót a megadott sorban lévő szöveg-, ntext- vagy képoszlophoz . A TEXTPRT vissza tud küldeni egy intort vagy a szöveg, ntextvagy kép oszlopot az utolsó sorban, ha a lekérdezés több sort is visszaad. Mivel a TEXTPTR 16 bájtos bináris stringet ad vissza, javasoljuk, hogy deklaráljunk egy helyi változót a szövegmutató tárolására, majd használjuk a változót a READTEXT segítségével. További információért a lokális változó deklarálásával lásd: DECLARE @local_variable (Transact-SQL).

Az SQL Serverben sorbeli szövegmutatók létezhetnek, de nem feltétlenül érvényesek. További információért a sorban lévő szöveg opcióról lásd a sp_tableoption (Transact-SQL). További információért a szöveges mutatók érvénytelenítéséről lásd a sp_invalidate_textptr (Transact-SQL) oldalt.

A @@TEXTSIZE függvény értéke felülírja a READTEXT által megadott méretet, ha az kisebb, mint a READTEXT által megadott méret. A @@TEXTSIZE függvény meghatározza a visszaküldött adatbájtok számát a SET TEXTSIZE utasítással beállítva. További információért a TEXTSIZE session beállításáról lásd: SET TEXTSIZE (Transact-SQL).

Permissions

A READTEXT jogosultságok alapértelmezetként azoknak a felhasználóknak szólnak, akiknek SELECT jogosultságuk van a megadott táblán. Az engedélyek átvihetők, amikor a SELECT jogosultságokat áthelyezik.

Példák

A következő példa a táblázat oszlopának másodiktól a 26. karakteréig pr_infopub_info terjedő jeleit olvasza.

Megjegyzés:

A példához telepítened kell a pubs mintaadatbázist.

USE pubs;  
GO  
DECLARE @ptrval VARBINARY(16);  
SELECT @ptrval = TEXTPTR(pr_info)   
   FROM pub_info pr INNER JOIN publishers p  
      ON pr.pub_id = p.pub_id   
      AND p.pub_name = 'New Moon Books'  
READTEXT pub_info.pr_info @ptrval 1 25;  
GO  

Lásd még:

@@TEXTSIZE (Transact-SQL)
FRISSÍTÉS SZÖVEG (Transact-SQL)
WRITETEXT (Transact-SQL)