title: django-admin dbshell CommandError: You appear not to have the 'sqlite3' program installed or on your path
body: <p>I use two sqlite databases in my django project . One for default and another for customer_data.</p>
  
  <p>This is my settings.py</p>
  
  <pre><code>DATABASES = {
  'default': {
      'ENGINE': 'django.db.backends.sqlite3',
      'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
  },
  
  'customers': {
      'NAME': 'customer_data',
      'ENGINE': 'django.db.backends.sqlite3',
      'USER': 'db2',
      'PASSWORD': 'db2password'
  }
  </code></pre>
  
  <p>}</p>
  
  <pre><code>DATABASE_ROUTERS = ['theapp.routers.CustomerRouter',]
  </code></pre>
  
  <p>This is my routers.py</p>
  
  <p>class CustomerRouter:
      """
      A router to control all database operations on models in the
      auth application.
      """
      def db_for_read(self, model, **hints):
          """
          Attempts to read auth models go to auth_db.
          """
          if model._meta.app_label == 'customer':
              return 'customer_data'
          return None</p>
  
  <pre><code>def db_for_write(self, model, **hints):
      """
      Attempts to write auth models go to auth_db.
      """
      if model._meta.app_label == 'customer':
          return 'customer_data'
      return None
  
  def allow_relation(self, obj1, obj2, **hints):
      """
      Allow relations if a model in the auth app is involved.
      """
      if obj1._meta.app_label == 'customer' or \
         obj2._meta.app_label == 'customer':
         return True
      return None
  
  def allow_migrate(self, db, app_label, model_name=None, **hints):
      """
      Make sure the auth app only appears in the 'auth_db'
      database.
      """
      if app_label == 'customer':
          return db == 'customer_data'
      return None
  </code></pre>