These are your options:
1. Restore the iPhoto library from the most recent backup that predates the issue.
Advantages: Always works, if library damage is causing the problem and the backup is intact.
Disadvantages: Impossible if you don't have a backup. All changes made since the backup are lost.
2. Repair or rebuild the library. Be sure to back it up first.
Advantages: May solve the problem with no loss of data.
Disadvantages: May fail. May take a long time if the library is large.
3. Scavenge the library with a third-party application called "iPhoto Library Manager," which you can find in a web search. From the application's menu bar (not the iPhoto menu bar), select Library ▹ Rebuild.
Advantages: All images should be preserved.
Disadvantages: All books, calendars, and slideshows will be lost.