Re: Using a Makefile during database development
От | Tom Lane |
---|---|
Тема | Re: Using a Makefile during database development |
Дата | |
Msg-id | 5071.1074453027@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Using a Makefile during database development (Bill Moran <wmoran@potentialtech.com>) |
Ответы |
Re: Using a Makefile during database development
|
Список | pgsql-general |
Bill Moran <wmoran@potentialtech.com> writes: > The problem I'm hitting is this: how can I teach make to know when a > particular file is newer than the data in the database? AFAIK there's no direct way to do that; all of make's decisions are based on existence and mod times of files, so you can't persuade it to test directly for SQL-level conditions. However, this sort of problem comes up in many contexts, and make users have developed a standard solution: you create or touch an empty "timestamp" file when you do an action such as updating the database from a particular collection of source files. The mod time of the timestamp file can then serve as the comparison value telling make whether to do it again. A typical rule would look like: db_update.stamp: somefile.sql someotherfile.sql psql mydb -f somefile.sql psql mydb -f someotherfile.sql touch db_update.stamp You make one stamp file for each action you might or might not need to do, and then user-level targets look like update: db_update.stamp ... regards, tom lane
В списке pgsql-general по дате отправления: