sql >> Database >  >> RDS >> Oracle

SQL*Plus-script tweemaal uitgevoerd

Laat je script een van beide doen;

DELETE FROM f2020.SOCIETES
/

of

DELETE FROM f2020.SOCIETES;

zonder de schuine streep.

Uit de documentatie :

en in het voorbeeld verderop:

... en dat is precies wat je ziet.

Anders in die documenten :

Zoals veel klanten behandelt SQL*Plus de puntkomma aan het einde van uw SQL-instructie als een scheidingsteken voor instructies - het is niet een deel van de instructie zelf (wat enige verwarring veroorzaakt voor bijvoorbeeld dynamische SQL- en JDBC-aanroepen) - en wanneer hij deze ziet, voert hij de opdracht uit. Het uitgevoerde statement blijft in de commandobuffer; en als je list om de huidige opdrachtbuffer te zien, wordt die puntkomma niet weergegeven. Wanneer u een schuine streep plaatst, wordt de buffer opnieuw uitgevoerd.

Dingen zijn iets anders voor PL/SQL; daar moet het PL/SQL-blok worden afgesloten met een puntkomma, wat is deel van het blok, en verschijnt in de buffer. U moet een schuine streep gebruiken om een PL/SQL-blok uitvoeren .



  1. Time-out PostgreSQL-verbinding Operationele fout op Django en nieuwe server

  2. Wanneer u NetBeans gebruikt om PHP-scripts te debuggen om tabelrecords te wijzigen, verandert 'affected_rows' van 1 in -1

  3. Op sessie gebaseerde globale variabele in Postgresql opgeslagen procedure?

  4. PostgreSQL meerdere transacties op dezelfde verbinding