GETDELETED Statements
You can issue the GETDELETED query to retrieve all records deleted from the live data for the time range specified. This query accepts a datetime value as a filter, as shown in the following example:
GETDELETED FROM <table_name> WHERE <search_condition>
<search_condition> ::=
{
<expression> { = | < | <= | > | >= } [ <expression> ]
} [ { AND | OR } ... ]
<expression> ::=
| @ <parameter>
| ?
| <literal>
C#
String connectionString = "InitiateOAuth=GETANDREFRESH;OAuthClientID=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;Tenant=USProduction;ZuoraService=DataQuery;"; using (ZuoraConnection connection = new ZuoraConnection(connectionString)) { ZuoraCommand cmd = new ZuoraCommand("GETDELETED FROM SampleTable_1 WHERE TimeModified >= '2013-01-01'", connection); ZuoraDataReader rdr = cmd.ExecuteReader(); while (rdr.Read()) { Console.WriteLine(rdr["Id"].ToString()); } }
VB.NET
Dim connectionString As [String] = "InitiateOAuth=GETANDREFRESH;OAuthClientID=MyOAuthClientId;OAuthClientSecret=MyOAuthClientSecret;Tenant=USProduction;ZuoraService=DataQuery;" Using connection As New ZuoraConnection(connectionString) Dim cmd As New ZuoraCommand("GETDELETED FROM SampleTable_1 WHERE TimeModified >= '2013-01-01'", connection) Dim rdr As ZuoraDataReader = cmd.ExecuteReader() While rdr.Read() Console.WriteLine(rdr("Id").ToString()) End While End UsingNote: By putting a CACHE command in front of the query, you can update the cache to remove all values that have been deleted from the data source, as shown in the following example:
CACHE GETDELETED FROM [TableName] WHERE TimeModified >= '2013-01-01' AND TimeModified <= '2013-02-01'