In my opinion, as soon as you have the corresponding database code that your unit under test depends on go ahead and also add integration tests that use the real repository. Faking and stubbing things out make unit testing easier and allows you to concentrate on a particular aspect of your code without getting frustrated by external dependencies and setting them up correctly. However, at the end of the day, you're not shipping products with stubs, fakes, and mocks. The shipped product has real dependencies and components that all must work together. Therefore, whenever you run your tests, you need to know if parts of your applications are working together or not. If a part of my application is not able to persist changes to the database, I would like to know it as soon as possible. So if your external dependency, database in your case, is at a level where it is providing some level of functionality and value to your code, go ahead and add a suite of integration tests.
Note that running integration tests will usually take longer than unit tests. So you may want to run just the unit tests during your CI builds. That way, you get a feedback on the health of your build and codebase quicker. However, you should include integration tests in your nightly build so that you know how your code is working in reality.