Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public function minimizarSGMail()
- {
- $conn = oci_connect(IC::get('database.username'), IC::get('database.password'), IC::get('database.tns'));
- $linhas = 5;
- $dias = 90;
- $erro = array();
- // Prepara o sql de insert
- $stid = oci_parse($conn, "INSERT INTO TB100442_MAIL_BACKUP (
- SELECT * FROM (
- SELECT * FROM TB100442_MAIL WHERE
- DATA_INSERCAO <= TO_DATE(SYSDATE-{$dias}) AND
- ROWNUM <= {$linhas}
- ORDER BY ID_MAIL DESC
- )
- )"
- );
- $r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
- if (!$r) {
- $e = oci_error($stid);
- array_push($erro, htmlentities($e['message'] . '. Linha: ' . __LINE__));
- }
- // Prepara o sql de exclusao
- $stid = oci_parse($conn, "DELETE FROM TB100442_MAIL WHERE ID_MAIL IN (
- SELECT ID_MAIL FROM (
- SELECT ID_MAIL FROM TB100442_MAIL WHERE
- DATA_INSERCAO <= TO_DATE(SYSDATE-{$dias})
- AND ROWNUM <= {$linhas}
- ORDER BY ID_MAIL DESC
- )
- )"
- );
- $r = oci_execute($stid, OCI_NO_AUTO_COMMIT);
- if (!$r) {
- $e = oci_error($stid);
- array_push($erro, htmlentities($e['message'] . '. Linha: ' . __LINE__));
- // Rollback das mudancas em ambas as tabelas
- oci_rollback($conn);
- }
- // Commita as mudancas em ambas as tabelas
- $r = oci_commit($conn);
- if (!r) {
- $e = oci_error($conn);
- array_push($erro, htmlentities($e['message'] . '. Linha: ' . __LINE__));
- }
- echo '<pre>';
- print_r($erro);
- die;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement