Notice that using a ULN2803 to drive 8 relays is much more simpler and cheaper compare to using 8 transistors. R1-R8 (current limit resistor) and D1-D8 (flywheel diode) can be eliminate when use with ULN2803 since the ULN2803 is already built-in with resistor & diode as shown in figure below.