--> First of all, SQL Server uses
Transact SQL[
^] not
PL/SQL[
^]. PL/SQL is used by ORACLE, IBM DB2 etc.
--> SQL Server doesn't have BEFORE INSERT trigger, it has
INSTEAD OF INSERT[
^] trigger for similar (but not same) purpose.
--> Triggers are defined on TABLE/VIEW not on column
--> Surprisingly, your code doesn't contain a BEFORE INSERT trigger, rather it has BEFORE UPDATE trigger. They are different.
If you are looking for
INSTEAD OF UPDATE
trigger in SQL Server check following-
INSTEAD OF UPDATE Triggers[
^]
SQL Server: Instead Of Update Trigger Example[
^]
After Trigger, Instead of Trigger Example[
^]
If your requirement is something different, please let me know.
Hope, it helps :)