A method and apparatus accepts a query to update or delete rows in a
temporal table of a database. The query may describe which rows are to be
updated, a calculation for the value to be used to update each row of the
table, and a period of validity, during which the changes are to take
place. The method and apparatus creates a sequence of queries and SQL
program elements that together can make up an SQL program that will
execute the query received. The SQL program can split any row of the table
to be updated into multiple rows so that each of the multiple rows of the
table to be changed have an effective period during which no changes occur
in the table to be changed or any other tables referenced in the query
received and no effective periods span the beginning or the end of the
period of validity. The specified change may then be made to the resulting
rows, and rows that are adjacent in time with identical values may be
collapsed into a single row. The result is inserted into the table to be
changed and the corresponding original rows in the table to be changed are
deleted. The method and apparatus operates for queries received to update
or delete a table.
Метод и прибор признавают query для уточнения или для того чтобы уничтожить рядков в височной таблице базы данных. Query может описать которые рядки должны быть уточненным, вычисление для значения, котор нужно использовать для уточнения каждого рядка таблицы, и срок действия, во время которого изменения должны осуществить. Метод и прибор создают последовательность элементов queries и программы sql совместно могут сделать вверх программу sql исполнит полученный query. Программа sql может разделить любой рядок таблицы, котор нужно уточнить в множественные рядки так, что каждый из множественных рядков таблицы, котор нужно изменить будет иметь эффективный период во время никакие изменения не происходят в таблице, котор нужно изменить или все другие таблицы снабженные ссылками в полученном query и никакие эффективные периоды span начало или конец срок действия. Определенное изменение может после этого быть сделано к приводя к рядкам, и рядки которые смежны в времени с идентичными значениями могут быть обрушены в одиночный рядок. Результат введен в таблицу, котор нужно изменить и уничтожены соответствуя первоначально рядки в таблице, котор нужно изменить. Метод и прибор работают для queries полученных для уточнения или для того чтобы уничтожить таблицы.