http://flask.pocoo.org/docs/tutorial/dbinit/- На этом шаге учебника Flask написано -
Такая схема может быть создана путем передачи файла schema.sql в команду sqlite3 следующим образом: sqlite3 /tmp/flaskr.db Недостатком этого является то, что для этого требуется установить команду sqlite3, что не всегда имеет место в каждой системе. Также необходимо указать путь к базе данных, что оставляет место для ошибок. Рекомендуется добавить в приложение функцию, которая инициализирует для вас базу данных.
Такая схема может быть создана путем передачи файла schema.sql в команду sqlite3 следующим образом:
sqlite3 /tmp/flaskr.db
Недостатком этого является то, что для этого требуется установить команду sqlite3, что не всегда имеет место в каждой системе. Также необходимо указать путь к базе данных, что оставляет место для ошибок. Рекомендуется добавить в приложение функцию, которая инициализирует для вас базу данных.
Необходимы ли оба, передача файла schema.sql и добавление функции, или это альтернативы?
Это альтернативы. Я думаю, что автор предполагает, что когда вы следуете руководству, прокачка sql - это нормально, но когда вы пишете свои собственные реальные приложения, вы должны добавить функцию и использовать ее вместо этого.