BINARY_CHECKSUM (Transact-sql)
Döner ikili sağlama toplamı değeri tablonun bir satırında veya bir ifadeler listesinde hesaplanır. BINARY_CHECKSUM, bir tablodaki bir satır değişiklikleri algılamak için kullanılabilir.
Transact-SQL Sözdizim Kuralları
Sözdizimi
BINARY_CHECKSUM ( * | expression [ ,...n ] )
Bağımsız değişkenler
*
Hesaplama tablosunun tüm sütunları üzerinde olduğunu belirtir. BINARY_CHECKSUM sütun kendi kuramsal birifadenoncomparable veri türlerinden yoksayar. Birifadenoncomparable veri türleri text, ntext, image, cursor, xmlve birifadenoncomparable ortak dil çalışma zamanı (clr) kullanıcı tanımlı türler.expression
Olan bir ifade türü. BINARY_CHECKSUM birifadenoncomparable veri türleri, Hesaplama ifadeleri dikkate almaz.
Açıklamalar
BINARY_CHECKSUM(*), bir tablonun herhangi bir satırda hesaplanan uzun satır sonradan değişmedi aynı değeri döndürür. BINARY_CHECKSUM(*) çoğu, ancak, tüm değişiklikler için farklı bir değer satır döndürür ve çoğu satır değişiklikleri algılamak için kullanılabilir.
BINARY_CHECKSUM bir ifadeler listesinde üzerinde uygulanabilir ve listesiyle aynı değeri döndürür. İki listelere karşılık gelen elemanları aynı tip ve bayt gösterimi varsa ifadeler iki liste üzerinde uygulanan BINARY_CHECKSUM aynı değeri döndürür. Bu tanım için null değerleri belirli türde aynı bayt gösterimi için kabul edilir.
BINARY_CHECKSUM ve sağlama benzer işlevleri vardır: bir ifadeler listesinde bir sağlama toplamı değeri hesaplamak için kullanılabilir ve ifadeler sonuç değerini etkiler. BINARY_CHECKSUM(*) için kullanılan sütun sırasını, sütun tablo veya Görünüm tanımında belirtilen sıradır. Bunlar, hesaplanan sütunlar içerir.
Sağlama toplamı ve BINARY_CHECKSUM nerede locale dizeleri farklı gösterimi ile eşit karşılaştırmak için neden dize veri türleri için farklı değerler döndürür. Dize veri türleri char, varchar, nchar, nvarchar, veya sql_variant(base, yazarsanız sql_variantbir dize veri türüdür). Örneğin, "McCavity" dizelerini BINARY_CHECKSUM değerleri ve "Mccavity" farklıdır. Buna karşılık, duyarlı bir Server'da sağlama bu dizeleri aynı sağlama değerlerini döndürür. SAĞLAMA değerlerini BINARY_CHECKSUM değerlerle karşılaştırıldığında değil.
Örnekler
Aşağıdaki örnek BINARY_CHECKSUMbir tablonun bir satırında değişiklikleri algılamak için.
USE AdventureWorks2012;
GO
CREATE TABLE myTable (column1 int, column2 varchar(256));
GO
INSERT INTO myTable VALUES (1, 'test');
GO
SELECT BINARY_CHECKSUM(*) from myTable;
GO
UPDATE myTable set column2 = 'TEST';
GO
SELECT BINARY_CHECKSUM(*) from myTable;
GO
USE AdventureWorks2012;
GO
CREATE TABLE myTable (column1 int, column2 varchar(256));
GO
INSERT INTO myTable VALUES (1, 'test');
GO
SELECT BINARY_CHECKSUM(*) from myTable;
GO
UPDATE myTable set column2 = 'TEST';
GO
SELECT BINARY_CHECKSUM(*) from myTable;
GO
Ayrıca bkz.
Başvuru
Toplama işlevleri (Transact-sql)