Anda bisa gunakan SQLCLR untuk memanggil enkripsi dari C#, meskipun ini adalah pendekatan yang salah. Jika Anda perlu melakukan algoritme khusus, Anda harus merangkumnya ke dalam fungsi SQLCLR sehingga dapat digunakan dalam pernyataan UPDATE atau bahkan INSERT atau SELECT atau di mana saja. Sesuatu seperti:
public class SP
{
[Microsoft.SqlServer.Server.SqlFunction(IsDeterministic = true)]
public static SqlString EncryptByAES(SqlString TextToEncrypt)
{
return DoSomething(TextToEncrypt.Value);
}
}
Kemudian Anda dapat menggunakan fungsi tersebut sebagai berikut:
UPDATE tb
SET tb.FieldA = EncryptByAES(tb.FieldA)
FROM dbo.TableName tb
WHERE tb.FieldA some_test_to_determine_that_FieldA_is_not_alreay_encrypted;
TAPI , sebelum Anda menulis algoritme enkripsi khusus, Anda mungkin ingin memeriksa beberapa fungsi ENCRYPTBY / DECRYPTBY yang dipasangkan dan mungkin melakukan apa yang Anda butuhkan: