How is your experience with the OutSystems Community?
14
Views
4
Comments
What is the process for restoring data for a specific table as of a particular date?
Application Type
Traditional Web, Mobile, Reactive, Service

What is the process for restoring data for a specific table as of a particular date? 

2026-05-21 04-48-12
Deepa Tiwari

Could you please provide more details about the requirement, specifically:


  1. Is the data currently available in any backup, audit, or recovery point? 
  2. Should the restored data replace the existing data or be restored to a separate table for comparison/recovery?



UserImage.jpg
sanjay kumar

Data is not available and yes restored data would be restored to a separate table for comparison 

2026-01-28 16-57-48
Mihai Melencu
Champion

Hi @sanjay kumar ,

If you’re using OutSystems Cloud, I’d start by contacting OutSystems Support with the environment, entity/module name, and the required date and time, including the timezone. More information here: Temporary OutSystems Cloud database backup - OutSystems 11 Documentation

You could also consider Data Migration Manager (DMM), which supports selective data migration and recovery from an OutSystems database backup.

You would still need an available backup containing the table’s data from the required date. 

2024-01-20 14-53-12
Ahmed Essawy

Hi Sanjay,

Mihai covered OutSystems Cloud. If your environment is self-managed on SQL Server, you can do it yourself, as long as the database is in FULL recovery model and you still have the full backup plus the log backups that cover that date.

  1. Restore the backup as a new database. Don’t touch the original. Get the logical file names first with RESTORE FILELISTONLY, then:

sqlRESTORE DATABASE OS_Restore FROM DISK = 'D:\Backup\outsystems_full.bak'WITH MOVE 'outsystems' TO 'D:\Data\OS_Restore.mdf',     MOVE 'outsystems_log' TO 'D:\Data\OS_Restore_log.ldf',     NORECOVERY;RESTORE LOG OS_Restore FROM DISK = 'D:\Backup\outsystems_log_01.trn'WITH STOPAT = '2026-09-15 18:00:00', RECOVERY;

If you have several log backups, apply them in order with NORECOVERY and put STOPAT and RECOVERY on the last one.

  1. Find the physical table of your entity:

sqlSELECT e.NAME, e.PHYSICAL_TABLE_NAMEFROM OSSYS_ENTITY eJOIN OSSYS_ESPACE s ON s.ID = e.ESPACE_IDWHERE e.NAME = 'YourEntity' AND s.NAME = 'YourModule' AND e.IS_ACTIVE = 1

  1. Copy the data somewhere you can compare it. If you only need it in SSMS, SELECT * INTO dbo.YourEntity_0915 FROM OS_Restore.dbo.OSUSR_xxx_YOURENTITY is enough. If you want it inside OutSystems, create a new entity with the same attributes, publish, and insert into its physical table from the restored one.

With SIMPLE recovery you can only go back to the time of a full or differential backup, not to an exact moment. Drop the restored database when you’re done, and do this together with your DBA.

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.