change access scope:  private[driver] def addForeignKey