As someone that does a lot of quoting, I’m embarrassed to say I had to look up the grammer usage rule for a colon vs a comma when giving a quotation for my grade 5 class. I’m posting here for future reference.
There are few different rules but the main thing to keep in mind are these two rules which will help you get it right most of the time:
Rule 1: Complete sentence: “quotation.” (If you use a complete sentence to introduce a quotation, use a colon (:) just before the quotation.)
Rule 2: Someone says, “quotation.” (If the word just before the quotation is a verb indicating someone uttering the quoted words, use a comma. Examples include the words “says,” “said,” “states,” “asks,” and “yells.” But remember that there is no punctuation if the word “that” comes just before the quotation, as in “the narrator says that.”)
Rule 3: If Rules 1 and 2 do not apply, do not use any punctuation between your words and the quoted words.
And remember that a semicolon (;) never is used to introduce quotations.