![]() |
ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ 1 Συνημμένο(α) Γεια σας ! Εμπλουτιζω μια ετοιμη βαση δεδομένων η οποια χρησιμευει σα terminology memory σ' ενα προγραμμα μεταφραστικης μνημης.Το θεμα μου ειναι οτι σε καποιες στηλες στη Lang π.χ περιεχονται οι αριθμοι 9,8, στη στηλη sublang το 1 στην is source to -1 κτλ.Εχω φτασει 65000 ενγραφες ειναι δυσκολο και χρονοβορο να τους περνω εναν εναν .Υπαρχει δυνατοτητα αν κανω ερωτημα ενημερωσης (update) να συμπληρωθουν οι στηλες ? αν ναι τι κρητηριο πρεπει να επιλεξω ; Ειναι προφανες οτι αν υπηρχε το μηδεν στα αδεια κελια θα εκανα ''ευρεση" αντικατασταση το εχω κανει ειδη σε μια στηλη επιτυχως. Ευχαριστω εκ των προτερων για την προσοχη και το χρονο σας. |
Καλησπέρα Χρήστο και καλωσόρισες στη παρέα! Μήπως το κριτήριο που ψάχνεις είναι η τιμή Is Null; Για παράδειγμα: Κώδικας: UPDATE Lemmas SET Lemmas.lang = IIf(Asc([Lemma])>183,8,9)Ελπίζω πάντως να βοηθάω. Φιλικά, Γιάννης |
Γιαννη σ ευχαριστω για αμεση την απαντηση σου θα το δοκιμασω και θα επανελθω με το αποτελεσμα ! Αν εχεις τη καλοσυνη πες μου που ειμαι ασαφης διοτι δε φημιζομαι και για τις καλυτερες περιγραφες :001_smile: .Απλα θελω σε καποιες στηλες που εχουν αριθμους με καποιο τροπο να μπορουν να εμφανιζονται σε ολη τη βαση δεδομενων χωρις να κανω copy paste εναν εναν αριθμο.Εχω επισυναψει τη βαση δεδομενων στο προηγουμενο post ειναι το : Lemma.Eλπιζω να μη γινομαι κουραστικος. Να σαι καλα. |
Φίλε Χρήστο, είναι προφανές ότι η στήλη Lang του πίνακα Lemmas διατηρεί τα κλειδιά της γλώσσας του κειμένου της στήλης Lemma. Όπως λοιπόν προκύπτει από τα δεδομένα του πίνακα, η τιμή 8 αντιστοιχεί στην Ελληνική ενώ η τιμή 9 στην Αγγλική. Παρόλα αυτά, στη βάση που μας έδωσες δεν υπάρχει κάποιος πίνακας με τις αντίστοιχες γλώσσες. Το κείμενο SQL που σου παρέθεσα παραπάνω, συμπληρώνει τις κενές θέσεις της στήλης Lang λαμβάνοντας υπόψη το κείμενο της στήλης Lemma. Εσύ τι ακριβώς αντιγράφεις και σε ποια στήλη; Για να εκτελέσουμε ένα ερώτημα ενημέρωσης (Update) θα πρέπει εκτός από τις εγγραφές που θα ενημερωθούν, να έχουμε διαθέσιμες και τις τιμές με τις οποίες θα ενημερωθούν. Έτσι, το ασαφές για εμένα είναι η προέλευση των τιμών ενημέρωσης της κάθε στήλης του πίνακα Lemmas. Anyway, πιστεύω πως αν μελετήσεις το παραπάνω κείμενο SQL θα σε βοηθήσει να "χτίσεις" το ερώτημα που θέλεις. Ελπίζω να γίνομαι κατανοητός διότι στις περιγραφές... ανήκουμε στην ίδια ομάδα. :biggrin: Φιλικά, Γιάννης Υ.Γ. Νομίζω πως θα δυσκολευτείς πολύ εδώ μέσα για να μας κουράσεις...:028: |
Εγω συμπληρωνω της λεξεις αγγλικα-ελληνικα στη στηλη Lemma η βαση δεδομενων ειναι απο ενα προγραμμα που λεγεται deja vu(μεταφραστικη μνημη) το οποιο χρησιμοποιειται για να χτισεις ενα λεξικο ουσιαστικα και μετεπειτα μια μεταφραστικη μνημη.Το εργαλειο αυτο χρησιμοποιειται απ οτι εχω διαβασει απο επαγγελματιες μεταφραστες για να μειωσουν το χρονο που κανουν μια μεταφραση.Εγω απλα τρεχω τη βαση δεδομενων με την access για να εχω τη δυνατοτητα να κανω μαζικες ενγραφες δεδομενων απο το excel.Ολα αυτα γινονται γιατι καποια στιγμη ευελπιστώ φτανοντας γυρω στις 700000 λεξεις μαζι με τεχνικους ορους της δουλειας μου κτλ να ξεπερασω σε ποιοτητα την περιληψη που βγαζει ενα systran π.χ.Θα μου πεις αφου εχεις το διαδυκτιο προς τι ολη αυτη η ταλαιπωρια ; αν το ειχα στο εργασιακο περιββαλον δε θα καθομουν μπροστα σε ενα pc απο μηδενικης βασης με πενιχρες γνωσεις να το φτιαξω ....θα επαιζα λιγο παραπανω με το γιο μου... Οπως και να εχει σ ευχαριστω που ασχολεισαι . |
Kαλημερα μολις τωρα καταλαβα τι με ρωτας......:wall: .Για να φερει αποτελεσμα η βαση δεδομενων πρεπει οταν περνω καθε ζευγαρι λεξεων στη στηλη Lemma να περασω αντιστοιχα στην στηλη lang οπως πολυ σωστα ανεφερες το 9 για καθε αγγλικη λεξη και το 8 για καθε ελληνικη και επιπροσθετα στη στηλη sublang το 1 και παραλληλα στη στηλη is source to -1 (για καθε λεξη) με δεδομενο οτι εχω βαλει ειδη 60000 λεξεις συν αλλες τοσες η μεταφραση τους ρωτησα αν γινεται με καποιο τροπο να εμφανιζονται οι αριθμοι χωρις να κανω copy-paste π.χ.Εστω και καθυστερημενα το επιασα....:011: |
Φίλε μου Χρήστο, γεια σου και πάλι! Δοκίμασε να τρέξεις το παρακάτω ερώτημα ενημέρωσης στο παράδειγμα που μας έστειλες: Κώδικας: UPDATE Lemmas SET Lemmas.lang = IIf(Asc([Lemma])>183,8,9), Lemmas.SubLang = 1, Lemmas.IsSource = -1με τις τιμές 8 και 9 σύμφωνα με το αν πρόκειται αντίστοιχα για ελληνικό ή λατινικό χαρακτήρα και γεμίζει τα πεδία "SubLang" και "IsSource" με τις τιμές 1 και -1 αντίστοιχα. Αν όμως χρειάζεσαι και κάτι γρήγορο για την πληκτρολόγηση, ο συνδυασμός Ctrl+' αντιγράφει τα περιεχόμενα του ίδιου πεδίου της προηγούμενης εγγραφής. Τώρα που το προσέχω όμως (άσχετο), βλέπω πως όλα τα λήμματα αποθηκεύονται στην ίδια στήλη. Πόσο βοηθάει αυτό στην αναζήτηση, κατηγοριοποίηση και συσχέτιση των λημμάτων; :confused1: Ελπίζω φίλε μου Χρήστο, αυτή τη φορά να έχουμε μια κάποια πρόοδο...:dft009: Φιλικά, Γιάννης |
Αγαπητέ φίλε καλημέρα! Πριν πω αν αυτο που εγραψες δουλευει η οχι ριξε σε παρακαλω μια ματια στα συνημενα μη και κανω εγω καμια πατατα απο μερους μου και σε παιδευω αδικα.Οσο για το ερωτημα που εθεσες ριξε μια ματια αν θελεις στο συνημενο ''δειγμα" στο βαθος αριστερα φαινεται ενα εγγραφο το 100.txt που θελω π.χ να μεταφρασω,και μπροστα στο προσκηνιο φαινεται το terminology Lookup.Οταν μια λεξη προς μεταφραση υπαρχει εκει μεσα(στη βαση δεδομενων που προσπαθω να φτιαξω)απ οσο βλεπω την ταιριαζει (match) και σου εμφανιζει μονο το ζευγαρι που σε ενδιαφερει.Φυσικα δε ξερω τη θα γινει με ολοκληρες προτασεις....6000 λεξεις εχω περασει (χωρις αρθρα ιδιωματισμους κτλ) και δουλευουν, εχουμε δρομο ακομα εχω αλλες 75000 ετοιμες χωρις τα ορισματα στις αλλες στηλες.:icon_idea: Οπως και να εχει σ ευχαριστω που διαθετεις το χρονο σου. |
2 Συνημμένο(α) τα συνημενα :blushing: |
Καλησπέρα στη παρέα! Φίλε Χρήστο, για να δημιουργήσεις το ερώτημα ενημέρωσης, ξεκίνα ένα νέο ερώτημα χωρίς να επιλέξεις πίνακα. Πέρνα σε προβολή SQL και εκεί θα επικολλήσεις το κείμενο SQL που παρέθεσα παραπάνω. Αποθήκευσέ το και στη συνέχεια εκτέλεσέ το. Θα σε προειδοποιήσει σχετικά με την ενημέρωση και τέλος θα σε πληροφορήσει για τα αποτελέσματα. Αν τα αποτελέσματα δεν είναι αυτά που περιμένεις, απλά ενημέρωσέ μας. Σχετικά τώρα με το άσχετο ερώτημά μου, απλά νόμιζα πως ξέρεις τον τρόπο με τον οποίο η εφαρμογή που έχεις (deja vu) εκτελεί την αναζήτηση στα λήμματα. Όμως αφού αυτός είναι ο τρόπος λειτουργίας της και δουλεύει σωστά, δεν μένει παρά να με αγνοήσεις. :whistle: Τα λέμε! Γιάννης |
Καλημερα ! Φιλε Γιαννη εννοειται πως δουλευει ! Σ ευχαριστω πολυ για τη διαθεση που εχεις να δινεις λυση απλοχερα και ανιδιοτελώς ζητηματα αλλων.Εδω δε ξερω καλα-καλα να κανω ερωτημα ενημερωσης για να περασω αυτα που γραφεις,λες να γνωριζω με ποιο τροπο το προγραμμα εκτελει αναζητηση στα λημματα;(Απεχει ετη φωτος απ αυτα που κατεχω).:happy: Εγω νομιζοντας οτι αυτο το προγραμμα ειναι ετοιμο οπως το systran π.χ πηγα και το αγορασα και διαπυστωσα οτι ειναι αδειο και θελει χτισιμο....περασα μερικες λεξεις μεσα απο εκει ενα ενα ζευγος και ψαχνοντας σε forum μεταφραστων βρηκα οτι τα παραξενα αρχεια με καταληξη .dvtdb και .dvmdb που δημιουργει ανοιγουν με την access (ολα αυτα πριν 1 μηνα) και ξεκινησα να μαθαινω την access.....απο μηδενικης βασης για να μη περνω ενα ενα τα ζευγη των λημματων :001_smile: Να σαι καλα.Τωρα εχω μια βαση για δω πως να ενημερωσω τη μεγαλη βαση δεδομενων που εφτιαξα. |
1 Συνημμένο(α) Αγαπητέ Χρήστο, Εγώ θα σταθώ στο πρώτο σου μήνυμα Συμφωνώ με το Γιάννη (nisgia) ότι οι αριθμοί συμβολίζουν κάποια κλειδιά από άλλους πίνακες. Εγώ έθεσα το εξής ερώτημα στον εαυτό μου: Έστω ότι έχω μόνο τον πίνακα “Lemmas”. Από τις 8 στήλες που έχει βλέπω πως μόνο η στήλη “Lemma” έχει διαφορετική τιμή σε κάθε εγγραφή. Στις άλλες στήλες δεν αλλάζουν οι τιμές συχνά. Το ερώτημα είναι, αν υπάρχει τρόπος, αντί που να επεξεργάζεσαι μια εγγραφή, να επεξεργάζεσαι περισσότερες ταυτόχρονα, αλλά οποιαδήποτε στιγμή να μπορείς να ορίσεις ποιες εγγραφές σε ποιες στήλες τις τιμές που θέλεις. Νομίζω πως ένα update-query δεν είναι το κατάλληλο. Δημιούργησα μια φόρμα, η οποία δείχνει ακριβώς τον πίνακα όπως έχει (περίπου σε μορφή του πραγματικού πίνακα) με τη διαφορά ότι επάνω έχει από ένα πεδίο για κάθε στήλη, όπου περνάς τις τιμές με τις οποίες θέλεις να επεξεργαστείς περισσότερες εγγραφές ταυτόχρονα. Τα πεδία αυτά δεν είναι συνδεδεμένα με τον πίνακα και όλα μαζί αποτελούν το input mask. Πως λειτουργεί. Αρχικά προσθέτεις στον πίνακα νέες εγγραφές, επεξεργάζοντας μόνο στη στήλη «Lemma». Μετά ρυθμίζεις τα πεδία με τις τιμές για μαζική επξεργασία. Στη συνέχεια επιλέγεις από αριστερά τις εγγραφές που θέλεις να επεξεργαστείς. Έπειτα πατάς το “update selected rows” και έχεις τελειώσει με τις επιλεγμένες εγγραφές. Όταν ανοίξεις τη φόρμα θα διαπιστώσεις ότι τα πεδία έχουν σαν προεπιλογές το κείμενο “[[nothing]]”. Όσες στήλες έχουν αυτή την τιμή στο input mask δεν επηρεάζονται από τη μαζική επεξεργασία. Μόνο οι στήλες που έχουν διαφορετικές τιμές από “[[nothing]]” στο input mask λαμβάνονται υπόψη. Κάτι ακόμη, μπορείς να επιλέξεις μόνο ένα τμήμα εγγραφών και όχι περισσότερα από ένα, δηλαδή η σύνθετη επιλογή δε δουλεύει. Στα συνημμένα θα βρεις τη βάση δεδομένων που ανέβασες, όμως με τη φόρμα. Έχουν αλλάξει λίγο οι τιμές στο πίνακα "Lemma" κατά την πρόβα. Ελπίζω να μην ενοχλεί αυτό. Θα με ενδιέφερε αν αυτή η λύση σε καλύπτει. Ιδέες από τα υπόλοιπα μέλη πάντα ευπρόσδεκτες. Φιλικά Ανδρέας |
Καλησπερα ! Φιλε Ανδρέα καταρχην σ ευχαριστω πολυ που μπηκες στο κοπο να γραψεις τοσο κωδικα για μενα. Δοκιμασα τη Lemmas batch form που δημιουργησες και εχω μια απορια : Στο input mask στο πεδιο Lang καθε φορα μπορεις να προσθεσεις ενα μονο αριθμο ; (η το 8 η το 9; ) η υπαρχει καποια αλλη δυνατοτητα που δεν εχω βρει ακομα ; .Στα υπολοιπα πεδια η φορμα λειτουργει αψογα. Να σαι καλα. |
Γεια σου Χρήστο, Ναι, κάθε φορά που προσδιορίζεις το input mask μπορείς να ορίσεις ακριβώς μια σταθερή τιμή για κάθε στήλη στη φόρμα που έστειλα. Αν η τιμή αυτή είναι [[nothing]], τότε δε γίνεται ενημέρωση στη συγκεκριμένη (σειρά, στήλη) αλλά παραμένει η προηγούμενη τιμή. Από τα δεδομένα του πίνακα “Lemmas” συμπεραίνω ότι:
Το ρωτάω αυτό, διότι πιστεύω ότι σαν επόμενο βήμα θα μπορούσα να αυτοματοποιήσω τη στήλη Lang έτσι που να μην χρειάζεται να ρυθμίζεις τίποτα εκεί. Ο αλγόριθμος δε θα ξεχωρίζει σε αγγλικά και ελληνικά, αλλά σε ελληνικούς και λατινικούς χαρακτήρες. Με αυτό ως κριτήριο μπορεί να θέσει ένα 8 ή 9 αντίστοιχα στο Lang. Θα εξυπηρετούσε αυτό; Εσύ αποφασίζεις. Αν όμως έρθει και μια Τρίτη γλώσσα π.χ. γερμανικά η οποία χρησιμοποιεί επίσης σε λατινικούς χαρακτήρες, τότε σε αυτή την περίπτωση δε μπορεί να ξεχωρίσει αγγλικά από γερμανικά. Περιμένω την απάντησή σου. Φιλικά Ανδρέας |
Nα μαι και παλι ! Φιλε ανδρεα η συγκεκριμενη βαση ειναι εξ ορισμου για μια γλωσσα μονο, απο αγγλικα σε ελληνικα απλα εγω μεσα απο το περιβαλλον του προγραμματος μεταφραστικης μνημης(deja vu) εβαλα αρχικα ενα ζευγος λεξεων για τη συγκεκριμενη γλωσσα(εχει 120 επιλογες περιπου και για να ξεκινησει να χτιζεται πρεπει να ορισεις ενα ζευγος ) και την εχτισε μονο του. Επειδη ομως ειναι εξαιρετικα χρονοβορο να περνας ενα ενα ζευγος το εψαξα και ειδα οτι ανοιγει με την access(το προγραμμα δημιουργει αρχεια με καταληξη .dvtdb και .dvmdb) και κλασικα τωρα(αφου μελετησα λιγο την access) φτιαχνω τα ζευγη λημματων στο excel και τα περνω στη βαση. Οταν περνας λημματα μεσα απο το προγραμμα χτιζει αυτοματα ολες τις στηλες lemma,sublang,lang και is source, τωρα που το εμπλουτιζω μεσω της access οι στηλες με τα ορισματα αριθμων (sublang,lang& is source)μενουν κενες η με 0 καποιες φορες. Οποτε στο μελλον αν αποφασισω για αλλη γλωσσα απλα φτιαχνω μια αλλη βαση.Σ ευχαριστω για την προθυμια σου ειδη εχεις κανει πολλα ! Μην ειμαι και αχαριστος απο εκει που περασα 10000 περιπου εγγραφες στο χερι μια μια εχω βρεθει με δυο ετοιμες λυσεις και το σημαντικοτερο για μενα ειναι οτι μεσα απ αυτο αρχιζω και ανακαλυπτω τις βασεις δεδομενων. Επισης δεν πρεπει να περνα απαρατηρητο το γεγονος οτι ανθρωποι σαν εσενα και το Γιαννη και πιθανα αρκετους αλλους εδω μεσα ενδιαφερονται να δινουν τα φωτα τους χωρις οι πραξεις αυτες να υπαγορεύονται από το συμφέρον ή το προσωπικό οφελος πραγμα που τεινει να εξαφανιστει.....Φυσικα και με καλυψε η λυση σου τη χρησιμοποιω και αυτη ! |
Αγαπητέ Χρήστο, σ' ευχαριστώ για τα καλά σου λόγια και θα σου ευχηθώ καλή δουλειά παρά πέρα. |
| Η ώρα είναι 18:29. |
Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.