I recently helped my wife make digital backups of her 30 years of creative writing. She had about 15,000 pages written in longhand in hundreds of small notebooks.
We tried using a flatbed scanner, but the notebooks don't lay flat, her scanner takes up to 60 seconds to scan a page, and some notebooks were larger, and didn't fit on her letter-size flatbed scanner. I know bigger, faster scanners exist, but it was still too clumsy and time-consuming.
We ended up with a digital camera mounted on a small tripod, pointing straight down at a table where the book is laying open. Use the camera's AC adapter, so you can go for hours without needing to change batteries. Some cameras can even be operated from a GUI on the computer, so you don't risk moving it by pressing the controls. If you get this all set up conveniently, you can flip pages rapidly and take a photo every few seconds. This solution was a lot faster.
We found it was best to take all the photos for a book, and then as a separate task, offload them to the computer and categorize and archive them. Just because it would slow us down to change from the camera UI to the cataloging UI for every page.
Most people don't bother to store large images in an RDBMS, they just store the image's filename as a string and then add columns for other attributes like title, date, and keywords. The exception is if you need the images to obey ACID transactions and such, which probably doesn't apply in your case.
If you aren't going to do OCR, I can't think of a way to detect keywords automatically. You'll have to enter them manually or choose them from a list. But again, this is best done as a "post-processing" task after you've captured the images.