Använd metoden
SQLConnection.attach()
om du vill öppna en anslutning till ytterligare en databas på en
SQLConnection
-instans som redan har en öppen databas. Du namnger den bifogade databasen med namnparametern i
attach()
-metodanropet. När du skriver satser som gör att databasen ändras, kan du använda det namnet i ett prefix (med formatet
database-name.table-name
) för att kvalificera alla tabellnamn i dina SQL-satser så att tabellen kan hittas i den namngivna databasen i körningen.
Du kan köra en enskild SQL-sats som innefattar tabeller från flera databaser som är anslutna till samma SQLConnection-instans. Om du skapar en transaktion på SQLConnection-instansen tillämpas den transaktionen för alla SQL-satser som körs med SQLConnection-instansen. Detta gäller oavsett vilken bifogad databas satsen körs på.
Du kan också skapa flera SQLConnection-instanser i ett program, vilka är anslutna till en eller flera databaser. Men om du använder flera anslutningar till samma databas måste du tänka på att en databastransaktion inte delas mellan olika SQLConnection-instanser. Om du ansluter till samma databasfil med flera SQLConnection-instanser kan du därför inte förlita dig på att båda anslutningarnas dataändringar tillämpas på förväntat sätt. Om till exempel två
UPDATE
- eller
DELETE
-satser körs mot samma databas via olika SQLConnection-instanser och ett programfel uppstår när en åtgärd körs, kan databasdata hamna i ett mellanläge som inte kan återställas och som kan påverka databasens integritet (och följaktligen även programmet).
|
|
|