sql >> Database teknologi >  >> RDS >> PostgreSQL

Samtidig problem med psycopg2, Redshift og unittest

Du bruger DROP med CASCADE-indstillingen. Så enhver dråbe tabeller med referentiel integritet vil også droppe den underordnede tabel, der er knyttet til den overordnede tabel.

For at fejlfinde, hvis det faktisk er det, der sker, skal du, før du kører din kode, tage et øjebliksbillede af eksisterende tabeller med deres OID (jeg tror, ​​pg_tables eller pg_relations skal have denne information). Kør koden, og kontroller OID'et for fejlmeddelelsen med øjebliksbilledet for tabelnavnet.

Edit:Det kan være fordi, hvordan planer cachelagres i PostgreSQL (altså i Redshift) for funktioner. Dette er en dokumenteret fejl indtil 8.2, så du vil måske søge efter en rettelse til den. Planen vil blive cachelagret i henhold til den første udførelse af funktionen, men for den anden udførelse ville nogle af objekterne have fået nye OID'er på grund af at blive genskabt.http://merlinmoncure.blogspot.ie/2007/09/as-previously-stated-postgresql-8.html

http://www.postgresql.org/exampleage-id.org/mes @sqldat.com




  1. Sådan opretter du forbindelse til MySQL ved hjælp af RIDE

  2. mysql Vælg en kolonne to gange fra den samme tabel med forskellige datoer i where-sætningen

  3. MySQL til MySQL klon med PHP

  4. oprettelse af triggere for After Insert, After Update og After Delete i SQL