codesix Δημοσ. 29 Οκτωβρίου 2013 Δημοσ. 29 Οκτωβρίου 2013 Έχω τον παρακάτω πίνακα και θέλω τα ID να έχουν αυτόματη αρίθμηση. Δουλεύει καλά όμως όταν διαγράψω κάποιονπελάτη τότε το id του αποθηκεύεται , και έτσι όταν βάζω νέο Row έχει id ένα >μεγαλύτερο από τον προηγούμενο.. Κάνω κάτι λάθος στον πίνακα ? CREATE TABLE `customers` ( `id` INT(3) NOT NULL AUTO_INCREMENT, `name` VARCHAR(35) NULL DEFAULT NULL, `lname` VARCHAR(35) NULL DEFAULT NULL, `address` VARCHAR(35) NULL DEFAULT NULL, `phone` VARCHAR(10) NULL DEFAULT NULL, `mail` VARCHAR(255) NULL DEFAULT NULL, PRIMARY KEY (`id`) ) COLLATE='greek_general_ci' ENGINE=InnoDB AUTO_INCREMENT=4;
defacer Δημοσ. 29 Οκτωβρίου 2013 Δημοσ. 29 Οκτωβρίου 2013 Όχι, έτσι δουλεύει το auto increment. Και αυτό δε θα πρέπει να έχει σημασία για σένα -- αν έχει, τότε ετοιμάζεσαι να το χρησιμοποιήσεις λάθος. Το PK είναι για να ξεχωρίζεις εγγραφές μεταξύ τους, χωρίς να σημαίνει κάτι η τιμή του (σαν τον αριθμό ταυτότητας ας πούμε) -- τίποτα λιγότερο και τίποτα περισσότερο. Αν θέλεις κάποια στήλη με συγκεκριμένη σημασία (π.χ. από 1 ως Ν χωρίς κενά) θα πρέπει να το φροντίσεις μόνος σου. 2
codesix Δημοσ. 5 Νοεμβρίου 2013 Μέλος Δημοσ. 5 Νοεμβρίου 2013 Ωραίος , ευχαριστώ αν έχω δύο πίνακες πχ έναν tbl_users και έναν tbl_banned πως μπορώ να συσχετίσω τους χρήστες που είναι banned ? Πώς μπορώ να ελέγχξω ποιο χρήστες είναι banned ? Πρέπει να φτιάξω και άλλον πίνακα που να συσχετίζει τα `id` των χρηστών με τα `id` των banned ? Ευχαριστώ
kalogeros Δημοσ. 5 Νοεμβρίου 2013 Δημοσ. 5 Νοεμβρίου 2013 Ο πίνακας tbl_banned, θα κάνει τη συσχέτιση. στην ουσία ο πίνακας αυτός θα έχει δύο πεδία 1) Το id του το οποίο θα είναι auto_increment και 2) Το user_id, το οποίο θα είναι ξένο κλειδί στο id του πίνακα tbl_users. Πάντως, αν απλά θέλεις να κρατάς ποιοι χρήστες είναι banned, μπορείς να βάλεις απλά ένα επιπλέον πεδίο στον πίνακα tbl_users, το οποίο θα παίρνει δύο τιμές, π.χ. 0 και 1. Η τιμή 0 θα είναι η default τιμή των χρηστών και θα σημαίνει ότι δεν είναι banned, ενώ όταν ο χρήστης γίνεται banned, η τιμή αυτή θα αλλάζει σε 1.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα