The problem is that the BOOK_NAME has an apostrophe (single quote) in it, which is the SQL string delimiter, causing the rest of your insert to be misaligned. To escape the default behavior you need to replace the single quote ' with two single quotes '' on any strings you insert into the database. For example:
"... '" + txtBookName.Text.Replace("'", "''") + "' ..."
However, using parameters as Espen Harlinn recommended, is safer and will do this automatically for you.