Direi di no, perchè non consideri altri caratteri che in SQL hanno un significato (come ad esempio l'underscore _ ), e soprattutto perchè è scorretto filtrare dei caratteri quando puoi farne l'escape.

Un esempio concreto: se filtri l'apice, un tizio che si chiama "D'Amico" non può firmare il tuo guestbook usando il suo nome e puoi trovare esempi analoghi per tutti gli altri caratteri: se hai ad esempio un campo di testo libero.. dovrà essere veramente libero! Discorso diverso per campi specifici tipo il CAP o il codice fiscale.. e li vai di espressioni regolari