If you would had debugged then you would had found that execution does enter in For-Loop. Your Insert query is not correct.
You need to use:
CheckBoxList1.Items[i].Text
Try:
string sql = "Insert into LibManAddBook(Category,BookTitle,Feature,SubCategory)values('" + DDLCategory.SelectedItem.Text + "','" + TxtBooktitle.Text + "','" + CheckBoxList1.Items[i].Text + "','" + DDLSubcategory.SelectedItem.Text + "')";
Just use DEBUGGER and see how things are working and you should be able to resolve such issues easily.