Apex triggers execute before or after insert, update, delete, or undelete operations. Code must always be 'bulkified' to iterate over collections in `Trigger.new` rather than processing single records, and SOQL/DML must NEVER be executed inside loops.
apex
trigger AccountTrigger on Account (before insert, before update) {
for (Account acc : Trigger.new) {
if (acc.BillingCountry == null) {
acc.BillingCountry = 'USA';
}
}
}