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

Νέος στην SQL


sotsak

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

Δημοσ.

Είμαι νέος στην sql και το προβλημα που αντιμετωπίζω είναι πως πχ θέλω να φτιάξω ένα προγραμμα που να "ρουφάει" δεδομένα απο μία access db.Εχω μάθει μερικές απλές εντολες (select,from,where κτλ) αλλα το πρόβλημα μου είναι το πού τις γράφω!!!Υπάρχει κάποιος editor,compiler ή οτιδήποτε άλλο??(σε επίπεδο windows παντα)

Αν μπορεί κανείς να με διαφωτίσει,μπάς και καταφέρω να κάνω πράξη την θεωρία!!

Ευχαριστώ εκ των πρωτέρων!

Δημοσ.

Αφου το πρόγραμμα σου θα παίρνει δεδομένα από μια βάση δεδομένων της Access γιατι δεν χρησιμοποιήσεις την ίδια την Access για τα queries σου?Σε μια βάση της επιλογής σου (όσο απλή και αν είναι) φτιάξε ένα query και χρησιμοποίησε την Sql view (είναι στο εικονίδιο κάτω από το File) για να θέτεις απ' ευθείας ερωτήματα στην βάση σου.Θα ανοίξει ένα νέο παράθυρο (μοιάζει με text editor) όπου θα μπορείς να γράψεις το ερωτημα σου και να πάρεις τα απότελέσματα σε πίνακες.

Ελπίζω να βοήθησα! :)

 

Ξαναδιάβασα το post σου και διορθώνω:η παραπάνω διαδικασία είναι για να θέτεις απ' ευθείας ερωτήματα στη βάση σου (π.χ. να ελέγχεις τα απότελέσματα μιας εντολής SELECT πριν την συμπεριλάβεις στον κώδικα σου).Αν θες να γράψεις κώδικα για να διαβάζεις τα δεδομένα από τη βάση δώσε μας περισσότερες πληροφορίες σχετικά με το ποια γλώσσα χρησιμοποιείς και σε τι περιβάλλον αφού το πιο πιθανόν είναι να υπάρχουν έτοιμες βιβλιοθήκες για πρόσβαση σε βάσεις.Πάντως η διαδικασία που περιγράφω παραπάνω θα σε βοηθήσει να μάθεις την SQL και κατα συνέπεια να την χρησιμοποίησεις στον κωδικά σου σχεδόν χωρίς καμμια αλλαγή.

Δημοσ.

Thanx daidalus αλλά δεν πολυκατάλαβα τι παίζει ακριβώς και θέτω ένα πρακτικό ερώτημα για να γίνει πιό κατανοητό αυτό που ρωτάω:

Θέλω απο έναν πίνακα test,απο την στήλη onomata ,ολα τα george.

Σε sql γραφω:

SELECT onomata

FROM test

WHERE george

Kαλά μεχρι έδώ.Αυτό που δέν καταλαβαίνω είναι πού τα γράφω??

(αυτό που θέλω είναι επειδή άλλο η θεωρία και άλλο η πράξη,να φτιάξω μερικά προγραμματα πολύ απλα,σε sql για να καταλάβω πως δουλεύει)

Δημοσ.

Δεν αναφέρεις γλώσσα προγραμματισμού και περιβάλλον οπότε υποθέτω ότι απλώς θες να υποβάλλεις ένα ερώτημα σε μια βάση απ' ευθείας (δηλαδή όχι μέσα από κώδικα).

Κάνε τα εξής βήματα:

1.Φόρτωσε στην Access την βάση σου.

2.Όταν φορτώσει επέλεξε Insert->Query

3.Επέλεξε Design View->OK

4.Επέλεξε τον πίνακα (ή τους πίνακες) που θες να χρησιμοποιήσεις στο ερώτημα σου και πάτα Add και αφού προσθέσεις τον πινακα (ή τους πίνακες) που θες πάτα Close

5.Κάνε κλίκ στο εικονίδιο κάτω από το File και θα εμφανιστεί ένα dropdown menu.Από αυτό το menu επέλεξε SQL View.

6.Στο παράθυρο που θα ανοίξει γράψε το ερώτημα

>
SELECT onomata
FROM test
WHERE onomata = "george";

7.Πάτα το θαυμαστικό (!) από την μπάρα εργαλείων για να εκτελέσεις το Query σου.

 

Τώρα για να γίνει όλη αυτή η διαδικασία από το πρόγραμμα σου (μέσω κώδικα δηλαδη) πρέπει να κάνεις ουσιαστικά 4 βήματα:

1.Κάνε σύνδεση με την βάση σου

2.Θέσε τα ερωτήματα σε SQL (σχεδόν αυτούσια)

3.Αποθήκευσε κάπου τα αποτελέσματα που θα πάρεις από τα ερωτήματα

4.Κλείσε την συνδεση σου με την βάση

 

Το πως θα τα κάνεις αυτά εξαρτάται από την βάση που θα χρησιμοποιησείς (π.χ. Access,Oracle) και από την γλώσσα που θα χρησιμοποιησεις (π.χ. C++,Java) και τις βιβλιοθήκες που αυτή σου παρέχει.

Δημοσ.

Τώρα σε έπιασα!Δηλαδή πχ στην c++ καλώ κάποια βιβλιοθήκη και έτσι στον κώδικα του προγραμματος που φτιαχνω μπορώ να ενσωματώσω sql???

Oπως πχ στην vb μπορώ να φτιάξω μία φορμα και απο εκεί να τραβάει την db μέσω sql κώδικα???

Τhanx,αρχίζω και μπαίνω στο νόημα!!

Δημοσ.

Ακριβώς έτσι!Ψάξε στη τεκμηρίωση της γλώσσας που θες να χρησιμοποιήσεις και θα βρείς, πιστεύω, κάτι εύκολο για αρχή, για να πειραματιστείς.Εκεί που πιθανόν να συναντήσεις δυσκολίες είναι όταν π.χ. επιστρέφονται παραπάνω από μια τιμές (δηλαδή ολόκληροι πίνακες με δεδομένα) και πρέπει να τα αποθηκεύσεις σε ορισμένες δομές που πρέπει εσύ να φτιάξεις.Κατα τα άλλα όλα τα ερωτήματα (SELECT,UPDATE,CREATE,DELETE) εφαρμόζονται έτσι ακριβώς όπως θα τα έγραφες στην Access (ή με πολύ λίγες διαφορές).

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...