See the line
cmd2.CommandText = "UPDATE ToursTbl SET Availability = (Availability-1) WHERE TourName = '@TourName'";
When using parameterized queries the single-quotes are added for you. That line should be
cmd2.CommandText = "UPDATE ToursTbl SET Availability = (Availability-1) WHERE TourName = @TourName";
Your next problem is with
cmd2.Parameters.Add("@TourName", SqlDbType.Char).Value = bookedToursArray[i];
Don't use
Add
- change it to
cmd2.Parameters.AddWithValue("@TourName",bookedToursArray[i]);