sql >> Databáze >  >> RDS >> Oracle

Jak používat google překladač URL v Oracle plsql

Všichni známe google překladač, který může pomoci překládat z jednoho jazyka do druhého.

Prozkoumáme možnost použití funkce google v oracle plsql v databázi oracle k provedení překladu.

  1. Nejprve musíme vytvořit síťový přístupový seznam, který vyžaduje Oracle 11g
BEGIN
DBMS_NETWORK_ACL_ADMIN.CREATE_ACL(
acl => 'google_translatorapi.xml',
description => 'Google Translator Access',
principal => 'SCOTT',
is_grant => true,
privilege => 'connect'
);
DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(
acl => 'google_translatorapi.xml',
principal => 'SCOTT',
is_grant => true,
privilege => 'resolve'
);
DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL(
acl => 'google_translator.xml',
host => 'translate.google.com'
);
COMMIT;
END;
/

2) Další google   URL https://translate.google.com/ je https, takže pro přístup k ní musíme vytvořit peněženku Oracle pro uložení veřejného certifikátu

Stáhněte si veřejný certifikát Google pomocí níže uvedeného postupu

a) Nejjednodušší způsob, jak toho dosáhnout, je použít prohlížeč. Níže uvedený příklad používá prohlížeč IE.

Pomocí prohlížeče přejděte na adresu URL, ke které se pokoušíte získat přístup z PL/SQL. V tomto případě  https://translate.google.com/ Kliknutím na ikonu zámku v adresním řádku zobrazíte identifikaci webu a klikněte na kartu „zobrazit certifikát“.

Klikněte na odkaz „Informace o certifikátu“ a ve výsledném dialogu klikněte na kartu „Cesta k certifikaci“.

Pro kořenový uzel v „Cesta k certifikaci“ označte uzel a klikněte na tlačítko „Zobrazit certifikát“. Ve výsledném dialogovém okně klikněte na kartu „Podrobnosti“ a kliknutím na tlačítko „Kopírovat do souboru…“ uložte informace o certifikátu.

Ve výsledném průvodci proveďte následující.

  • Na uvítací obrazovce klikněte na tlačítko „Další“.
  • Vyberte možnost „Base-64 encoded X.509 (.CER)“ a klikněte na tlačítko „Další“. Jiné formáty fungují, ale zjistil jsem, že tento je nejkonzistentnější.
  • Zadejte vhodný název souboru a klikněte na tlačítko „Další“.
  • Klikněte na tlačítko „Dokončit“.

Důležitá poznámka:V IE můžeme vidět Kopírovat do souboru jako vypnuté. Pokud ano, spusťte IE jako správce a uvidíte, že je povoleno

3)  Vytvořte peněženku Oracle a importujte do ní tento certifikát

$orapki wallet create -wallet /home/oracle -pwd ora1_test

$ orapki wallet add -wallet /home/oracle -trusted_cert -cert /home/oracle/g1.cer -pwd ora1_test
Oracle PKI Tool :Verze 11.2.0.4.0 – Produkce
Copyright (c) 2004 , 2013, Oracle a/nebo její přidružené společnosti. Všechna práva vyhrazena

4) Dále potřebujeme dobrou přeložit URL přes SQL nebo plsql pro překlad textu

$ sqlplus scott/toger

SQL*Plus:Vydání 11.2.0.4.0 Výroba v pondělí 15. září 15:14:32 2014

Copyright (c) 1982, 2013, Oracle. Všechna práva vyhrazena.

Připojeno k:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 – 64bit Production
S možnostmi dělení, automatické správy úložiště, OLAP, dolování dat
a reálného testování aplikací

SQL> nastavit definovat off
SQL> sloupec španělský formát A20
SQL> s t jako (
2 vybrat 'fish' txt z dual union all
vybrat 'dog' txt z dual union all 3
4 select 'cat' txt from dual
5 )
select txt english,
6 7 regexp_substr(tr,']*>(.*)',1,1,'i',1) španělština
8 z (
9 vybrat txt,
10 httpuritype('http://translate.google.com/?hl=cs&layout=1&eotf=1&sl=cs&tl=es&text='||utl_url.escape(txt)||'#').getclob() tr
11 od t
12 )
13 /
CHYBA:
ORA-29273:Požadavek HTTP se nezdařil
ORA-06512:v „SYS.UTL_HTTP“ , řádek 1817
ORA-29024:Chyba ověření certifikátu
ORA-06512:na „SYS.HTTPURITYPE“, řádek 34

Takže takhle to fungovat nebude. Než zavoláme tuto proceduru

, musíme nastavit oracle wallet
SQL> exec UTL_HTTP.SET_WALLET ('file:/home/oracle/','ora1_test');
PL/SQL procedure successfully completed.

SQL> set define off
SQL> column spanish format A20
SQL> with t as (
2 select 'fish' txt from dual union all
3 select 'dog' txt from dual union all
4 select 'cat' txt from dual
)
5 6 select txt english,
7 regexp_substr(tr,'<span id=result_box class="short_text"><span[^>]>(.)</span></span>',1,1,'i',1) spanish
8 from (
9 select txt,
10 httpuritype('http://translate.google.com/?hl=en&layout=1&eotf=1&sl=en&tl=es&text='||utl_url.escape(txt)||'#').getclob() tr
11 from t
12 )
13 /

ANGLICKÁ ŠPANĚLŠTINA
—— ————
rybí peces
pes perro
kočka kočka

Doufám, že se vám líbí tyto kroky v části Jak používat adresu URL překladače Google v Oracle plsql

Související články
Virtuální index v Oracle:Co je virtuální index v Oracle? Použití, omezení, výhody a způsob použití ke kontrole plánu vysvětlení v databázi Oracle, skrytý parametr _USE_NOSEGMENT_INDEXES
Oracle Create table:Tabulky jsou základní jednotkou pro ukládání dat v databázi Oracle. Zabýváme se tím, jak používat příkaz Oracle create table vytvořit tabulku s cizím klíčem /primární klíč
Oracle PLSQL Tables :Podívejte se na tento příspěvek pro podrobný popis tabulek PLSQL. Jak s nimi manipulovat a pracovat s nimi v bloku Oracle PLSQL a výhody
odstranění duplicitních řádků v oracle:Tipy a způsoby, jak odstranit duplicitní řádky z tabulky oracle. K dispozici jsou různé možnosti pro odstranění duplicitních řádků bez jakýchkoli problémů
approx_count_distinct
Funkce Oracle Date:Podívejte se na tento příspěvek pro funkce data Oracle, rozdíl data Oracle v letech, rozdíl data Oracle ve dnech, rozdíl data Oracle v měsíce.


  1. Funkce UPPER() v Oracle

  2. Úlohy hybridní databáze OLTP/Analytics v clusteru Galera využívající asynchronní podřízené jednotky

  3. Jak zobrazit výsledek/výstup rekurzoru v Oracle SQL Developer?

  4. Tipy pro poskytování výkonu databáze MySQL – část první