определенно определяя столбцы, потому что SQL Server не должен будет делать поиска на столбцах для получения по запросу их. Если Вы определяете столбцы, то SQL может пропустить тот шаг.
Вы можете попробовать просмотреть исходные коды Mercurial, написанного на Python.
Они используют os.environ
для чтения значений переменных среды HGEDITOR
, VISUAL
и EDITOR
, по умолчанию vi. Затем они используют os.system
для запуска редактора для временного файла, созданного с помощью tempfile.mkstemp
. Когда редактор закончит, они читают файл. Если в нем есть реальный контент, операция продолжается, в противном случае она прерывается.
Если вы хотите увидеть, как Mercurial это делает, подробности можно найти в ui.py и util .py .
Subversion и другие используют переменную среды $ EDITOR, чтобы определить, какую программу использовать для редактирования текстовых файлов. Конечно, $ EDITOR будет работать, только если вы используете платформу unixy в оболочке. Вам нужно будет сделать что-то другое для Windows ( cmd / c start tempfile.txt
) или Mac OS X ( open tempfile.txt
).
Но, по сути, это то, что сказано в ответах и связанных ответах на ваш другой вопрос.
Если вы просто хотите иметь возможность «отменить» редактирование, сделайте временную копию файла и вызовите для этого свой редактор. Затем ваша программа может скопировать содержимое временного файла в настоящий файл или, если пользователь отменит, не делать этого. По сути, Subversion и делает это.