WRITETEXT (Transact-sql)
Varolan minimal oturum, etkileşimli güncelleştirme izin text, ntext, ya imagesütun. WRITETEXT etkilediğini sütununda varolan verilerin üzerine yazılır. WRITETEXT üzerinde kullanılamaz text, ntext, ve imagegörünümlerde sütunlar.
Önemli |
---|
Bu özellik Microsoft SQL Server'ın ilerideki bir sürümünde kaldırılacaktır. Yeni geliştirme işlerinde bu özelliği kullanmaktan kaçının ve bu özelliği kullanmakta olan uygulamalarda değişiklik yapmayı planlayın.Büyük değer veri türleri kullanın ve .Yazma yan güncelleştirme deyimi yerine. |
Transact-SQL Sözdizim Kuralları
Sözdizimi
WRITETEXT [BULK]
{ table.column text_ptr }
[ WITH LOG ] { data }
Bağımsız değişkenler
BULK
İkili veri akışı yüklemek için araçlar sağlar yükleyin. Akış, tds protokol düzeyinde aracı tarafından sağlanmalıdır. Veri akışı olmadığında sorgu işlemci bulk seçeneği yoksayar.Önemli bulk seçeneği olarak kullanılmaması öneririz SQL Server-tabanlı uygulamaları. Bu seçenek değiştirilebilir veya, gelecekteki bir sürümüne kaldırıldı SQL Server.
table**.**column
Tablo adı ve text, ntext, ya imagesütunu güncelleştirmek için. Tablo ve sütun adlarını gerekir uymak için kurallar ile tanımlayıcıları. Sahibinin adı ve veritabanı adı belirtmek isteğe bağlıdır.text_ptr
İşaretçi saklar bir değer text, ntext, ya imageveri. text_ptrolması gereken binary(16).Metin işaretçisi oluşturmak için bir Ekle veya güncelleştirme ifadesi null olmayan veriler ile text, ntext, veya imagesütun.GÜNLÜK İLE
Tarafından göz ardı SQL Server. Günlük, geçerli veritabanı için kurtarma modeli tarafından belirlenir.data
Gerçek olduğunu text, ntextya imageveri depolamak için. databir harf veya bir parametre olabilir. WRITETEXT ile etkileşimli olarak eklenebilen metin maksimum uzunluğu ise yaklaşık 120 kb text, ntext, ve imageveri.
Açıklamalar
Yerine WRITETEXT kullanmak text, ntext, ve imageveri ve updatetext değiştirmek için text, ntext, ve imageveri. updatetext daha esnek bir parçası değiştirdiği bir text, ntext, ya imagesütun sütunun tamamını yerine.
Önerilir en iyi performans için text, ntext, ve imageverilerini eklenmiş veya 8040 bayt katları olan öbek boyutlarda güncelleştirilmiş.
Veritabanı kurtarma modelini veya toplu oturum ise text, ntext, ve imageWRITETEXT kullanan işlemler vardır en az oturum işlemleri yeni veri eklenmiş ya da eklenmemiş. Daha fazla bilgi için, bkz. Operations That Can Be Minimally Logged.
[!NOT]
Varolan değerleri güncelleştirildiğinde Minimal günlüğü kullanılır.
Düzgün çalışması WRITETEXT için sütun zaten geçerli metin imleci içermesi gerekir.
Tablo satır metin, yoksa SQL Servertarafından değil başlatılıyor alanından tasarruf textaçık veya örtülü null değerleri de eklendiğinde sütunlar textsütunları Ekle ve hiçbir metin imleci için tür değerlere elde edilemiyor. Başlatmak için textsütunlar NULL, update deyimi kullanın. Tablo satır metin varsa, metin sütun için boş değerlere başlatmak gerekmez ve her zaman bir metin imleci alabilirsiniz.
odbc SQLPutDataişlevi daha hızlıdır ve WRITETEXT daha az dinamik bellek kullanır. Bu işlev en çok 2 gigabayt ekleyebilirsiniz text, ntext, ya imageveri.
De SQL Server, satır metin işaretçiler text, ntext, ya imageverileri bulunabilir ancak geçerli olmayabilir. Hakkında bilgi text in rowseçeneği, bakın sp_tableoption (Transact-sql). Metin işaretçiler geçersiz kılmalarını hakkında daha fazla bilgi için bkz: sp_invalidate_textptr (Transact-sql).
İzinler
Belirtilen tablo update izni gerektirir. GÜNCELLEŞTİRME izni transfer edildiğinde izni devredilemez.
Örnekler
Aşağıdaki örnek metin imleci yerel değişken koyar @ptrvalve WRITETEXTyeni metin dizesi tarafından işaret satıra yerleştirir @ptrval.
[!NOT]
Bu örneği çalıştırmak için önce yüklemeniz gerekir pubsörnek veritabanı.
USE pubs;
GO
ALTER DATABASE pubs SET RECOVERY SIMPLE;
GO
DECLARE @ptrval binary(16);
SELECT @ptrval = TEXTPTR(pr_info)
FROM pub_info pr, publishers p
WHERE p.pub_id = pr.pub_id
AND p.pub_name = 'New Moon Books'
WRITETEXT pub_info.pr_info @ptrval 'New Moon Books (NMB) has just released another top ten publication. With the latest publication this makes NMB the hottest new publisher of the year!';
GO
ALTER DATABASE pubs SET RECOVERY SIMPLE;
GO
USE pubs;
GO
ALTER DATABASE pubs SET RECOVERY SIMPLE;
GO
DECLARE @ptrval binary(16);
SELECT @ptrval = TEXTPTR(pr_info)
FROM pub_info pr, publishers p
WHERE p.pub_id = pr.pub_id
AND p.pub_name = 'New Moon Books'
WRITETEXT pub_info.pr_info @ptrval 'New Moon Books (NMB) has just released another top ten publication. With the latest publication this makes NMB the hottest new publisher of the year!';
GO
ALTER DATABASE pubs SET RECOVERY SIMPLE;
GO
Ayrıca bkz.
Başvuru
DECLARE @local\_variable (Transact-SQL)