Προς το περιεχόμενο
  • 0
thanospr

oracle sql απορια

Ερώτηση

Γεια σας.Ειμαι αρχαριος σχετικα με βασεις δεδομενων.Θελω να φτιαξω ενα trigger σε μια βαση στην oracle η οποια να βρισκει ποσα στοιχεια του πινακα εχουν μια συγκεκριμενη τιμη σε μια στηλη τους και να το αποθηκευω προσωρινα την ωρα που εκτελειται το trigger σε μια μεταβλητη number.Το θεμα μου ειναι οτι τρεχω αυτην την εντολη SELECT COUNT(1) FROM table WHERE table_Col=15 και μου εμφανιζει το αποτελεσμα αλλα ειναι σε μορφη πινακα και δεν μπορω να το καταχωρησω στην μεταβλητη.Υπαρχει καποιος τροπος που  μπορει να γινει αυτο;

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

3 απαντήσεις σε αυτή την ερώτηση

Προτεινόμενες αναρτήσεις

  • 0

Θα πρέπει να γράψεις κάτι της μορφής:

declare
   my_variable NUMBER;  -- Εδώ δηλώνεις τη μεταβλητή σου
begin
   select count(1) into my_variable  -- Πρέπει να ξέρεις τι κάνει το `select ... into` τότε μπορείς να το χρησιμοποιήσεις με μεταβλητές
       from table
       where table_Col=15;
   exception when no_data_found then  -- exception σε triggers/procedures καθώς εκεί που τρέχουν συνήθως δεν κοιτάει κανένας οπότε ότι περισσότερο ελέγχεις τόσο καλύτερα
       my_variable := 0;

   dbms_output.put_line(my_variable);  -- Για να σου εκτυπώσει την μεταβλητή σου  
end;

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες
  • 0

Δεν θα δουλέψει ; :

UPDATE MyTable

SET MyCountField = (SELECT COUNT(1) FROM MyOtherTable WHERE MyOtherTable.MyOtherField=15)

 

Εκτός κι αν κάτι το κατάλαβα λάθος.

Κοινοποιήστε αυτήν την ανάρτηση


Σύνδεσμος στην ανάρτηση
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε έναν λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι εύκολο!

Εγγραφείτε για έναν νέο λογαριασμό

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
×
×
  • Δημιουργία νέου...

Χρήσιμες πληροφορίες

Με την περιήγησή σας στο insomnia.gr, αποδέχεστε τη χρήση cookies που ενισχύουν σημαντικά την εμπειρία χρήσης.