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

Jak vložit dlouhý řetězec do datového typu CLOB v Oracle

Níže je uveden jednoduchý příklad vložení dlouhého řetězce do datového typu CLOB v Oracle. Data nemůžete vkládat přímo do datového typu CLOB, musíte použít funkci Empty_Clob() s návratovou klauzulí v příkazu insert a poté použít dbms_lob.write postup zápisu dat. Protože pokud se pokusíte vložit dlouhý řetězec přímo do sloupce CLOB, dostanete ORA-01704:string literal too long error při vkládání dat.

Zde je příklad bloku PL SQL pro vložení dlouhého řetězce do tabulky se sloupcem CLOB.

[code type="SQL"] DECLARE
v_clob   CLOB;
BEGIN
INSERT DO A_CLOB_TABLE (srlno, c_data)
VALUES (123, EMPTY_CLOB ())
VRACENÍ c_data
INTO v_clob;

DBMS_LOB.write (v_clob,
LENGTH ('zde poskytněte nějaký dlouhý řetězec'),
1,
'zde poskytněte nějaký dlouhý řetězec');
COMMIT;
END;[/code]

  1. Postgres nepoužívá index, když je mnohem lepší volba index scan

  2. SQL Firewalling snadno s ClusterControl &ProxySQL

  3. Nastavení vývojového prostředí pro výuku PL/SQL

  4. Maximální délka MySQL a GROUP_CONCAT().