I want to nickname a shiny sandslash I don't actually have yet. but when I do get it, can I change its nickname?(this is HGSS/DPPt)
No, sadly you cannot.
If the Pokemon you obtain a Pokemon from another person, then it is impossible to nickname it, the game won't let you.