Zip file with password – script

RoutineName = „ZipFileWithPass“

  If source_file = '' Then Return(0)
  If target_file = '' Then Return(0)
  If password = '' Then Return(0)



  *ShellType = 'DOS'
  OsType = 'NT'
  OsDelim = '\'
  NonOsDelim = '/'
  OsCmd = '"zip " ':target_file:' ':source_file:' -r -j -e -P ':password

Call DSLogInfo(‚Komprimuji soubor ‚:source_file ,RoutineName)

Call DSExecute(OsType,OsCmd,OsOutput,OsStatus)

If OsStatus Then
     Call DSLogWarn('The zip command (':OsCmd:') returned status':OsStatus:':':@FM:OsOutput, RoutineName)
  End Else
     Call DSLogInfo('Komprimovany soubor ':target_file:' s heslem ':password:' vytvoren',RoutineName)
  End

  Ans = OsStatus
Rubriky: IBM Datastage, Rutiny | Komentáře nejsou povolené u textu s názvem Zip file with password – script

Aktuální locked session – short script

SELECT
O.OBJECT_NAME,
S.SID,
S.SERIAL#,
P.SPID,
S.PROGRAM,
SQ.SQL_FULLTEXT,
S.LOGON_TIME
FROM
V$LOCKED_OBJECT L,
DBA_OBJECTS O,
V$SESSION S,
V$PROCESS P,
V$SQL SQ
WHERE
L.OBJECT_ID = O.OBJECT_ID
AND L.SESSION_ID = S.SID
AND S.PADDR = P.ADDR
AND S.SQL_ADDRESS = SQ.ADDRESS;

Rubriky: Admin scripts, Oracle SQL | Komentáře nejsou povolené u textu s názvem Aktuální locked session – short script

Aktivní rollback

select username, osuser,
t.start_time, r.name, t.used_ublk "ROLLB BLKS",
decode(t.space, 'YES', 'SPACE TX',
decode(t.recursive, 'YES', 'RECURSIVE TX',
decode(t.noundo, 'YES', 'NO UNDO TX', t.status)
)) status
from sys.v_$transaction t, sys.v_$rollname r, sys.v_$session s
where t.xidusn = r.usn
and t.ses_addr = s.saddr

Rubriky: Admin scripts, Oracle SQL | Komentáře nejsou povolené u textu s názvem Aktivní rollback

Disconnect session / alternativa ke KILL

ALTER SYSTEM DISCONNECT SESSION '502,46833' IMMEDIATE;

Rubriky: Admin scripts, Oracle SQL | Komentáře nejsou povolené u textu s názvem Disconnect session / alternativa ke KILL

Procedura na smazání tabulky a potlačení chyby, když neexistuje

CREATE OR REPLACE PROCEDURE dropexist(tablename varchar2)
IS
BEGIN
EXECUTE IMMEDIATE 'DROP TABLE ' || tablename;
EXCEPTION
WHEN OTHERS THEN
IF SQLCODE != -942 THEN
RAISE;
END IF;
END;

Volání standardně v PL: begin dropexist('tmp_test_dummy'); end;

Rubriky: Oracle SQL, User scripts | Komentáře nejsou povolené u textu s názvem Procedura na smazání tabulky a potlačení chyby, když neexistuje

Zapomenuté / expirované heslo na Oracle SQL (linux)

Je třeba se přihlásit jako root.

Poté se přepnout na oracle usera : su oracle

Připojit se na sqlplus* : sqlplus / as sysdba

a zmenit heslo : alter user sys identified by new_password;

Pro kontrolu seznam useru : select username, account_status, EXPIRY_DATE from dba_users

Pokud je user locknutý stačí odemknout : alter user username account unlock;

Rubriky: Oracle SQL | Komentáře nejsou povolené u textu s názvem Zapomenuté / expirované heslo na Oracle SQL (linux)

Script pro oříznutí textu dle opakovaného znaku (_)

select substr('RAZ_DVA_TRI_CTYRI_PET_SEST_SEDM_OSM',1,instr('RAZ_DVA_TRI_CTYRI_PET_SEST_SEDM_OSM','_',1,4)-1) AS orez from dual
Rubriky: Oracle SQL, User scripts | Komentáře nejsou povolené u textu s názvem Script pro oříznutí textu dle opakovaného znaku (_)

Scripty pro práci s datumem a časem

— Poslední den předchozího měsíce

 select to_char( ADD_MONTHS((LAST_DAY(SYSDATE)),-1),'yyyymmdd') as last_day_before from dual

– Výpis dnů od 1.1.2017 do 24.1.2017

SELECT   to_date('1.1.2017','dd.mm.yyyy')+(LEVEL-1) DATUM
FROM DUAL
CONNECT BY LEVEL <= to_date('24.1.2017','dd.mm.yyyy') - to_date('1.1.2017','dd.mm.yyyy') + 1

— Výpis dnů v aktuálním měsíci

SELECT   TO_CHAR (TRUNC (SYSDATE, 'MM'), 'YYYYMMDD')+(LEVEL-1) DATUM
FROM DUAL
CONNECT BY LEVEL < to_char(trunc(last_day(sysdate)),'dd')+1

— Převod vteřin na formát hh:mm:ss

select to_char(to_date(3661,'sssss'),'hh24:mi:ss') as time from dual

— Zjištění datumu poslední neděle

select to_char(next_day(trunc(sysdate,'IW'),'NEDĚLE')-7,'yyyymmdd') as last_sunday from dual

— Zjištění počátku roku dle uběhlého celého měsíce – pro měsíční souhrn (reportů)

select trunc((TRUNC(to_date('sysdate'),'month')-1),'year') as rok from dual /* 1.1.-31.1. hodi lonsky rok, 1.2.+ hodi aktualni rok */
Rubriky: Oracle SQL, User scripts | Komentáře nejsou povolené u textu s názvem Scripty pro práci s datumem a časem

Script pro vymazání duplikací v tabulce dle zadaných podmínek

delete FROM tabulka_jedna a
WHERE EXISTS( SELECT 1
FROM tabulka_jedna b
WHERE a.cislo = b.cislo
AND a.login_name = b.login_name
and a.datum=b.datum
and a.platba=b.platba
AND a.rowid < b.rowid )
Rubriky: Oracle SQL, User scripts | Komentáře nejsou povolené u textu s názvem Script pro vymazání duplikací v tabulce dle zadaných podmínek

Script pro výpis aktuálního přístupu k objektům

select owner,object,type,con_id from V$ACCESS 
where owner not in ('SYS','DBSNMP','GSMADMIN_INTERNAL','PUBLIC','SYSTEM','XDB')
group by owner,object,type,con_id
order by owner, object
Rubriky: Admin scripts, Oracle SQL | Komentáře nejsou povolené u textu s názvem Script pro výpis aktuálního přístupu k objektům