Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Hashing lebih dari 8000 byte di SQL Server

Anda dapat menulis fungsi SQL CLR:

[Microsoft.SqlServer.Server.SqlFunction]
public static SqlBinary BigHashBytes(SqlString algorithm, SqlString data)
{
    var algo = HashAlgorithm.Create(algorithm.Value);

    var bytes = Encoding.UTF8.GetBytes(data.Value);

    return new SqlBinary(algo.ComputeHash(bytes));
}

Dan kemudian dapat dipanggil dalam SQL seperti ini:

--these return the same value
select HASHBYTES('md5', 'test stuff')
select dbo.BigHashBytes('md5', 'test stuff')

BigHashBytes hanya diperlukan jika panjangnya lebih dari 8k.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Temukan kolom yang hanya berisi nol

  2. Alat Pemulihan Cadangan SQL untuk Memperbaiki Cadangan SQL yang Rusak - Ulasan Produk - Posting tamu oleh Daniel Jones

  3. Microsoft SQL Server - Siapa yang membuat Prosedur Tersimpan?

  4. Ubah tabel &Tambahkan kunci UNIK menghasilkan kesalahan

  5. SCOPE_IDENTITY() untuk GUID?