archive-gr.com » GR » D » DOTNETZONE.GR

Total: 987

Choose link from "Titles, links and description words view":

Or switch to "Titles and links view".
  • Οι περιπέτειες του Ζαχαρία Δεντοφτιάχνω : Προτεραιότητες: Ενας (ακόμα) σύντομος οδηγός
    Εξορκιστή σε οποιονδήποτε 7 Αν κατά τη διάρκεια επίλυσης ενός επείγοντος δεχθείς τηλεφωνική κλήση από το αφεντικό τότε υποχρεούσαι να σταματήσεις να επιχειρείς να διασώσεις το server από βέβαιο crash εντός των επόμενων 5 νανοδευτερολέπτων και να απαντήσεις στην επείγουσα ερώτηση Πώς μπορώ να κάνω share κάτι στο facebook χωρίς να το δει κανείς επισκεπτόμενος αμέσως μετά το διπλανό μπαρ πίνοντας το stock που διατηρεί ο μπάρμαν για το μήνα και καταδικάζοντας τους υπόλοιπους θαμώνες σε κατανάλωση φυσικών χυμών για την υπόλοιπη βραδιά Πού θα βρεις μπαρ ανοιχτό Παντού Για κοίταξε καλύτερα το ρολόι σου Οι νεαρούλες που βλέπεις να περνούν ντυμένες με εξώπλατα και στρας ΔΕΝ πηγαίνουν σε βάφτιση Share Δημοσίευση στην κατηγορία Bits and Pieces Ενημέρωση για Σχόλια Αν θα θέλατε να λαμβάνετε ένα e mail όταν γίνονται ανανεώσεις στο περιεχόμενο αυτής της δημοσίευσης παρακαλούμε γίνετε συνδρομητής εδώ Παραμείνετε ενήμεροι στα τελευταία σχόλια με την χρήση του αγαπημένου σας RSS Aggregator και συνδρομή στη Τροφοδοσία RSS με σχόλια Σχόλια Konstantinos Chatziamallos said Ζαχαρία είσαι πρώτος 16 Μαΐου 11 at 5 53 μμ Nikos said Ζαχαρία ξέχασες να γράψεις για τα αιτήματα της συζύγου και της γκόμενας του αφεντικού πόσο επείγοντα είναι χαχαχα καλό 20 Μαΐου 11 at 6 43 μμ Aleister said Μας παρακολουθείς έτσι δεν είναι D 23 Ιουνίου 11 at 1 53 πμ CyberWalker said ΧααχαχχαχαΑΧχαΑΧ Θεός 23 Ιουνίου 11 at 1 52 μμ Sigamitopo said Aleister Είναι σίγουρο ότι μας παρακολουθεί νομίζω ότι τον βλέπω πίσω απ την πλάτη μου 16 Νοεμβρίου 11 at 7 20 μμ Vasilis said Ποιός είναι το αφεντικό σου ο Γιακούμπ Δεν υπάρχουν επέιγοντα email Μπαίνεις στον mail server και τα σβήνεις Μόνο επέιγοντα τηλέφωνα Εκεί πλέον απαντώ Πέθανε κανένας Όχι Ευτυχώς Πάρε με σε 5 σκοτώνω κάτι τρίποδα σαυροειδή από το Αλφα του Κενταύρου κάνω LvLUp και θα σε

    Original URL path: http://www.dotnetzone.gr/cs/blogs/zaxarias/archive/2011/05/05/65558.aspx (2015-07-15)
    Open archived version from archive


  • Οι περιπέτειες του Ζαχαρία Δεντοφτιάχνω : Διάσημες φράσεις #6: "Εσύ αποφασίζεις"
    ατομικών επιχειρήσεων που βλέπουν τον προϊστάμενό τους κοιτώντας στον καθρέφτη και όλο παραπονιούνται για το chain of command προσπαθώντας να ξορκίσουν από πάνω τους το κακό Αλλοι υποψήφιοι λοιπόν είναι οι παρακάτω Η απόφαση είναι δική σου γιατί εγώ δεν πληρώνομαι τόσα ωστε να παίρνω αποφάσεις Θα υλοποιήσω οποιαδήποτε ηλίθια ιδέα σου όσο πιο ηλίθια τόσο το καλύτερο Μετά θα μπορώ να σε κατηγορήσω άμεσα σε περίπτωση αποτυχίας και να κρύψω έντεχνα το γεγονός ότι είμαι τόσο άχρηστος που δεν θα μπορούσα ούτε γαλλικό καφέ να φτιάξω χωρίς λεπτομερείς οδηγίες με διαγράμματα καθώς και το οτι όταν καλούμαι να κάνω εντελώς απλά πράγματα όπως το να διαλέξω το μεσημεριανό μου γεύμα από τον κατάλογο του delivery έχω κάνει συνήθως την επιλογή μου την ώρα του βραδινού γιατί αν τολμήσω εγώ να αποφασίσω θα με πιάσει αυτομάτως μεγαλοϊδεασμός θα παραιτηθώ από το μαγαζί σου και θα ανοίξω το δικό μου αφού προηγουμένως σου κλέψω όσους πελάτες μπορώ Για το καλό σου το κάνω βρε κουτό γιατί σε ΜΙΣΩ και θέλω να σε δω να σέρνεσαι στο πάτωμα εκλιπαρώντας τον οίκτο του ΔΣ μετά την παταγώδη αποτυχία που θα επιφέρει η απόφασή σου στο project και μετά θα παραθέσω τη δική μου εκδοχή θα πάρω προαγωγή και θα μου καθαρίζεις την οθόνη κάθε πρωι προκειμένου να αποσπάσεις την εύνοιά μου φυσικά μια και στόχος μου θα είναι να ενθαρρύνω την λήψη πρωτοβουλιών θα σε αφήσω να αποφασίζεις ΕΣΥ αν θα χρησιμοποιήσεις το κόκκινο ή το πράσινο πανάκι Η συγκεκριμένη διάσημη φράση ενδέχεται να αποτελέσει πηγή για δημιουργικό διάλογο και εκδηλώσεις αμοιβαίας αγάπης μεταξύ προϊσταμένων και υφισταμένων γι αυτό μετρήστε μέχρι το 10 σκεπτόμενοι χαρούμενα προβατάκια με στολή αστροναύτη που κάνουν bungee jumping από τον πύργο του Eiffel πριν αφήσετε το πικρόχολό σας σχόλιο Φυσικά μπορείτε και να μην μετρήσετε Εσείς αποφασίζετε Share Δημοσίευση στην κατηγορία Bits and Pieces Ενημέρωση για Σχόλια Αν θα θέλατε να λαμβάνετε ένα e mail όταν γίνονται ανανεώσεις στο περιεχόμενο αυτής της δημοσίευσης παρακαλούμε γίνετε συνδρομητής εδώ Παραμείνετε ενήμεροι στα τελευταία σχόλια με την χρήση του αγαπημένου σας RSS Aggregator και συνδρομή στη Τροφοδοσία RSS με σχόλια Σχόλια Johnnyxp64 said χαχαχα πολυ καλο οντος σεβαστές και πραγματικές και οι 2 απόψεις πάντα 1 προβατάκι 2 3 4 23 Απριλίου 11 at 10 29 πμ Markos said Αφού ΕΓΩ αποφασίζω από αύριο κύριοι Linux PHP και MySql Και σ όποιον αρέσει Έτσι έρχονται τα πάνω κάτω Όχι με ημίμετρα 23 Απριλίου 11 at 10 50 πμ Rayden said Αφού εγώ αποφασίζω απο αύριο κύριοι θα χρησιμοποιούνται μόνο ανανεώσιμες πηγές ενέργειας θα σταματήσει η παιδική καταναγκαστική εργασία η ραδιενέργεια στην Φουκουσίμα θα εξαφανιστεί το trafficking θα παψει να υφίσταται η Ελλάδα θα ξεχρεώσει το ΔΝΤ η Kim Cardasian θα με ερωτευτει μα αφήστε με επιτέλους γιατί με πίανεται δεν την φοράνε έτσι τη ζακέτα κυριέ μου ανάποδα πάτε να μου τη βάλετε Μα αφήστε με επιτέλους 26 Απριλίου 11 at 1 22 μμ Markos said Rayden Η Kim Cardasian σού κανε τη ζημιά Όλα τ άλλα τα έχουν πει κι

    Original URL path: http://www.dotnetzone.gr/cs/blogs/zaxarias/archive/2011/04/23/6-quot-quot.aspx (2015-07-15)
    Open archived version from archive

  • Οι περιπέτειες του Ζαχαρία Δεντοφτιάχνω : ΕΠΕΙΣΟΔΙΟ 37: Τα θέλω όλα όπως τα θέλω εγώ!
    η φράση διακόπτης μισό λεπτό μισό λεπτό κάνοντας κάθε ώρα του γεμάτη από 120 μισόλεπτα τα οποία περνούν γρήγορα πολύ γρήγορα αλλά στο τέλος καταλήγει στο απόλυτο συμπέρασμα το οποίο φυσικά αποτελεί και μέρος του ονόματός του τυχαία νομίζετε ονομάστηκε έτσι ΔΤΦ Με ψυχραιμία που μπορεί να συγκριθεί μόνο με αυτή ενός Βουδιστή μοναχού που διαλογίζεται μέσα σε trance dance club Λαμβάνοντας υπόψη τις βασικές σας τουλάχιστον απαιτήσεις ως minimum καθώς και την απαίτηση μηδενικού κόστους όπως σας ανέφερα και στην προηγούμενή μας συνάντηση δεν ήταν εφικτο να βρω μία συγκεκριμένη εφαρμογή που να καλύπτει όλο σας το φάσμα Ομως θα μπορούσα να σας προτεινω ένα συνδυασμό εφαρμογών που καλύπτουν ΦΑΝ Μισό λεπτό μισό λεπτό Εννοείτε ότι θα πρέπει να εγκαταστήσουμε διαφορετικές εφαρμογές και να τις κάνουμε να επικοινωνούν μεταξύ τους ΔΤΦ Ψύχραιμος σαν πατάτα Λιγο πολύ ναι Ο συνδυασμός αυτός θα ΦΑΝ Μισό λεπτο μισό λεπτό Δηλαδή θέλετε να μου πείτε ότι θα πρέπει να εκπαιδεύσουμε το προσωπικό μας στη χρήση διαφορετικών εφαρμογών ΔΤΦ Αγωνιωδώς ψύχραιμος σαν βραστή πατάτα Κοιτάξτε το κόστος εκπαίδευσης δεν θα ειναι σημαντικό μια και θα εκπαιδευθούν μόνο στα στοιχεία εκείνα της κάθε εφαρμογής που ενδιαφέρουν το ΦΑΝ Μισό λεπτό μισο λεπτό Και εκτός αυτού θα πρέπει να επωμισθούμε το κόστος της ανάπτυξης συστήματος επικοινωνίας μεταξύ των εφαρμογών ΔΤΦ Παλεύοντας να κρατηθεί λίγο ακόμα ψύχραιμος με έκφραση που θυμίζει τηγανιτή καμμένη πατάτα Εεε αναγκαστικά μια και το κόστος ανάπτυξης μιας νέας εφαρμογής με μηδενικό κόστος δεν είναι ιδιαίτερα εφικ ΦΑΝ Μισό λεπτό μισό λεπτό Ειστε απόλυτα σίγουρος οτι δεν μπορεί να επιτευχθεί με άλλον τρόπο το ζητούμενο αποτέλεσμα ΔΤΦ Προσπαθώντας σκληρά να δείξει οτι σκέφτεται ακόμα πιό σκληρά Μάλλον όχι ΦΑΝ Μισό λεπτό μισό λεπτό ΔΤΦ Ναι ΦΑΝ Οχι τίποτα ΔΤΦ ξεφυσώντας καθησυχασμένος Α Λοιπόν όπως έλ ΦΑΝ Μισό λεπτό μισό λεπτό Οπως μας περιγράφετε την κατάσταση μας καλείτε να υιοθετήσουμε μια λύση αμφιβόλου πιστότητας ΔΤΦ έχοντας την αίσθηση ότι συμμετέχει σε πολιτικό τηλεοπτικό panel με 40 παράθυρα στα 39 εκ των οποίων εδρεύουν κατ επάγγελμα διακόπτοντες δημοσιογράφοι κλώνοι του κ Ανυπόμονου Εεε ειμαι ΑΝΑΓΚΑΣΜΕΝΟΣ να προτείνω μια τέτοια λύση δεδομένου ΦΑΝ Μισό λεπτό μισό λεπτό Με ποιό σκεπτικό προτείνετε αυτό το είδος λύσης Εμείς είμαστε σοβαρή εταιρία ξέρετε ΔΤΦ έχοντας χάσει και τα τελευταία ψίχουλα υπομονής που θα μπορούσαν να είχαν απομείνει σε μαθητή του Δαλάϊ Λάμα μετά από τριετή διαλογισμό σε στάση λωτού επάνω σε κίτρινες πινέζες πασπαλισμένες με αλάτι Ακούστε Εχετε πάει ποτέ διακοπές σε ελεύθερο camping ΦΑΝ Μάλιστα ΔΤΦ Αρα ΓΝΩΡΙΖΕΤΕ τη διαφορά του να πληρώσετε για δωμάτιο με μπάνιο και τουαλέτα σε σχέση με το απλα να στήσετε μια σκηνή κάτι που είναι εντελώς δωρεάν αν έχετε ΗΔΗ τη σκηνή ΦΑΝ Μάλιστα ΔΤΦ Και φυσικά ΓΝΩΡΙΖΕΤΕ ότι παρότι δωρεάν οι διακοπές σας όταν έρθει η ώρα να χρησιμοποιήσετε τη ΦΥΣΗ για να κάνετε αυτό που επί ΠΛΗΡΩΜΗ θα κάνατε στην αναπαυτική τουαλέτα του ξενοδοχείου σας ο ΜΕΓΙΣΤΟΣ χρόνος που μπορειτε να πάρετε μια συγκεκριμένη στάση του σώματός σας πριν πάθετε κράμπα είναι ΦΑΝ Μισό λεπτό μισό λεπτό ΔΤΦ ΑΚΡΙΒΩΣ τόσος

    Original URL path: http://www.dotnetzone.gr/cs/blogs/zaxarias/archive/2011/04/12/65130.aspx (2015-07-15)
    Open archived version from archive

  • Οι περιπέτειες του Ζαχαρία Δεντοφτιάχνω : Ζουν ανάμεσά μας #6: Ο Σελίγος
    κάναμε deploy έχει ένα major bug και κάνει διπλές χρεώσεις Απάντηση Το κοιτάω ήδη θα σας ενημερώσω Στην πραγματικότητα ο Σελίγος ασχολείται για αδιευκρίνιστο διάστημα μεταξύ του το κοιτάω και του ήδη με την αγορά εξωτικών ψαριών από sites δημοπρασιών με στόχο να δημιουργήσει το υπέρτατο case mod με κωδική ονομασία Ποσειδώνας το οποίο θα διαθέτει υδρόψυξη από ενυδρείο Θα φαίνεται πολύ cool πάνω στο γραφείο του τι Οι διπλές χρεώσεις Σιγά Ωσπου να λυθεί το bug ήδη οι πελάτες θα έχουν προχωρήσει στη μείωση όλων των τιμών στο 50 problem solved Πρόβλημα Ο server τα έφτυσε και δεν έχουμε δεύτερο backup για τα projects των 10 τελευταίων ετών Απάντηση Το βλέπω αμέσως Η λέξη αμέσως είναι μια λέξη που για τον Σελίγο έχει λεπτές διαβαθμίσεις Τόσο λεπτές όσο μια τσιμεντόπλακα θεμελίων μαζί με την υποστηριζόμενη πολυκατοικία Ητοι μία από τις ερμηνείες της είναι το επόμενο δευτερόλεπτο ενώ μια άλλη λεπτή διαβάθμιση είναι στον επόμενο εργοδότη Φιλική συμβουλή ΠΟΤΕ μην αναθέσετε σε έναν Σελίγο το ρόλο του project manager Θα καταδικαστείτε σε αιώνια due tasks Share Δημοσίευση στην κατηγορία Bits and Pieces Ενημέρωση για Σχόλια Αν θα θέλατε να λαμβάνετε ένα e mail όταν γίνονται ανανεώσεις στο περιεχόμενο αυτής της δημοσίευσης παρακαλούμε γίνετε συνδρομητής εδώ Παραμείνετε ενήμεροι στα τελευταία σχόλια με την χρήση του αγαπημένου σας RSS Aggregator και συνδρομή στη Τροφοδοσία RSS με σχόλια Σχόλια Μάρκος said Πω Πω Μήπως πρόκειται για άσκηση αυτογνωσίας που απευθύνεται στον καθένα μας χωριστά Κάτι μου λέει ότι όταν ολοκληρωθεί ο κύκλος των χαρακτήρων θα μας βάλεις να δηλώσουμε σε ποιον απ όλους βρισκόματε πιο κοντά Τελείως προαιρετικά βέβαια ΥΓ Δεν θα ανεχτώ σχόλια του τύπου Όποιος έχει τη μύγα μυγιάζεται έτσι 06 Απριλίου 11 at 1 43 πμ cap said Λοιπον φίλε μου αυτή είναι μια ΠΟΛΥ ωραία ιδέα Προσεχώς στο facebook group της γειτονιάς σας 06 Απριλίου 11 at 11 33 πμ Johnnyxp64 said ε βρε μανια με το facebook το poll πρεπει να ειναι στο dnz gr βρε παιδια οχι σε facebook ντε και καλα παντος οσοι απο εμας δηλωσουν οτι ειναι ποιο κοντα στον σε λιγο υπαρχουν ατομα που ειναι σε λιγο διοτι ειναι μιρασμένα σε τοσα task που αν και θα ηθελαν να βοηησουν τους παντες αμεσως και παντα απλα καταλιγει σε seligos personality 06 Απριλίου 11 at 12 37 μμ cap said Δεν ξέρω τι λες εσύ Johnny αλλά θέλεις να σου δώσω τα analytics πριν και μετά τη δημιουργία του νέου facebook group που θυμίζουν τους σεισμογράφους πριν και κατά τη διάρκεια του σεισμού στην Ιαπωνία To facebook μπορεί να το βρίζουμε όμως τελικά όλοι εκεί καταλήγουν 06 Απριλίου 11 at 12 52 μμ Johnnyxp64 said pote LEAD dont Follow my friend 07 Απριλίου 11 at 12 10 πμ cap said Σε κόβω να γράφεις σε Lisp σε λίγο καιρό 07 Απριλίου 11 at 1 46 πμ Johnnyxp64 said the peis telika facebook nai nai seligo LISP lol pote loop for i from 1 to n do print sqrt i LET I 1 TEMP N TAGBODY

    Original URL path: http://www.dotnetzone.gr/cs/blogs/zaxarias/archive/2011/04/06/64993.aspx (2015-07-15)
    Open archived version from archive

  • Dot Net Rules : Using Second Level Cache in Entity Framework 6.1 applications
    3 Φεβρουάριος 2009 2 Δεκέμβριος 2008 3 Νοέμβριος 2008 10 Σεπτέμβριος 2008 1 Αύγουστος 2008 1 Ιούλιος 2008 9 Ιούνιος 2008 10 Using Second Level Cache in Entity Framework 6 1 applications In this post I am going to provide you with a hands on example on how to use second level caching with Entity Framework 6 0 version Second Level Caching is one of the features that is not present out of the box in Entity Framework Second level cache is a query cache The results of SQL commands are stored in the cache so that the same SQL commands retrieve their data from the Cache rather than executing the query again against the underlying provider This can have a performance boost for your application and results in less activity against your database at the cost of increased memory There is currently a project in codeplex EntityFramework Cache that enables us caching of query results for EF 6 1 applications Entity Framework is an object relational mapping ORM framework for the NET Framework EF addresses the problem of Object relational impedance mismatch I will not be talking about that mismatch because it is well documented in many sites on the Internet Through that framework we can program against a conceptual application model instead of programming directly against a relational schema model By doing so we can decrease the amount of code we do write to access a data storage and thus decrease maintenance time You can find many posts regarding Entity Framework in this blog 1 I will create an empty ASP Net Application Web Forms Application and I give it the name EFSecondLevelCaching I am using Visual Studio 2013 Ultimate edition 2 I add a new web forms page in the application Leave the default name Αdd a Gridview control to the web form 3 I will use the AdventureWorks2014 database You can download it here for this application and more specifically the Person Person table I have installed SQL Server 2014 Enterprise edition in my machine SQL Express edition will work fine 4 I will add a class library project to the solution namely DataAccess I will add an ADO Net Entity data model using Database First to the class library project Follow the wizzard steps create the connection string and then import into the conceptual model the Person Person table which will become an entity in the domain model In the am going to install the EntityFramework Cache from the Nuget Library in this project 5 I will write a sql statement to acquire rows from the Person Person table Connect to your SQL Server instance Type the following query SELECT FROM AdventureWorks2014 Person Person WHERE FirstName Rob This query after execution will return 5 rows 6 In the webform1 aspx cs file public partial class WebForm1 I will create a new method that returns the persons with FirstName Rob private static List Person SelectAll AdventureWorks2014Entities ctx new AdventureWorks2014Entities var query from p in ctx People

    Original URL path: http://www.dotnetzone.gr/cs/blogs/dotnetrules/archive/2015/06/28/using-second-level-cache-in-entity-framework-6-1-applications.aspx (2015-07-15)
    Open archived version from archive

  • Dot Net Rules
    255 City VARCHAR 255 SET IDENTITY INSERT Persons ON GO this will insert the value BEGIN TRAN INSERT Persons P Id LastName FirstName Address City VALUES 1 Steven Gerrard 123 liverpool street liverpool GO SELECT FROM Persons this will rollback the transaction ROLLBACK TRAN Hope it helps Posted Τετάρτη 4 Δεκεμβρίου 2013 7 11 μμ από το μέλος nikolaosk 0 σχόλια Looking into Temp database usage in SQL Server I have been delivering a certified course in MS SQL Server 2012 recently and I was asked several questions about Tempdb usage and temporary objects In this post I will try to shed light on this particular issue Temporary tables and table variables make use of the system tempdb database There is only one tempdb system database per SQL Server instance so if there is a huge usage of temporary objects in this database it can be the point of contention When you create an entry in database it needs to allocate space This is also valid for the tempdb database There are three types of pages involved in the allocation process in the tempdb data file Page Free Space PFS Shared Global Allocation Map SGAM Global Allocation Map GAM When there is a great page allocation contention in tempdb the whole allocation process can suffer and we can experience with PAGELATCH waits In order to address the issue above you can have a number of tempdb data files that are equal to the number of cores For example if you have a system with less than 8 cores e g 6 you should add set up 6 data files for the tempdb If you have a system with more than 8 cores you should add 8 data files for the tempdb and then if the contention is still big you can add 4 more data files By saying cores in this post I mean logical cores and not physical cores So if you have 8 physical cores then you have 16 logical cores and 32 logical cores if hyper threading is enabled I will provide some demos in order to show you what tempdb contention might look like and what are the main wait latches that occur I have installed SQL Server 2012 Enterprise edition in my machine but you can use the SQL Server 2012 2008 Express edition as well I am connecting to my local instance through Windows Authentication and in a new query window I type you can copy paste In this snippet I create a new database and then create a new table with some constraints CREATE DATABASE mytempdbcontention GO USE mytempdbcontention GO CREATE TABLE dbo footballer FootballerID INT IDENTITY NOT NULL PRIMARY KEY lastname varchar 15 NOT NULL firstname varchar 15 NOT NULL shirt no tinyint NOT NULL position played varchar 30 NOT NULL GO ALTER TABLE dbo footballer ADD CONSTRAINT CK Footballer Shirt No CHECK shirt no 1 AND shirt no 11 GO ALTER TABLE dbo footballer ADD CONSTRAINT CK Footballer Position CHECK position played IN goalkeeper defender midfielder striker GO Now I need to populate the table with 50 000 rows This is the script you need to execute in order to make this happen You can download it here Rename the insert footballer doc to insert footballer sql and execute the script in a new query window Now I need to create a script that will create tempdb contention This is the script that creates a temporary object footballer populates the footballer from the footballer table and then selects from it Finally it drops the temporary object USE mytempdbcontention GO SET NOCOUNT ON GO WHILE 1 1 BEGIN IF OBJECT ID tempdb footballer IS NOT NULL DROP TABLE footballer CREATE TABLE footballer FootballerID INT IDENTITY NOT NULL PRIMARY KEY lastname varchar 15 NOT NULL firstname varchar 15 NOT NULL shirt no tinyint NOT NULL position played varchar 30 NOT NULL INSERT INTO footballer lastname firstname shirt no position played SELECT TOP 4000 lastname firstname shirt no position played FROM dbo footballer SELECT lastname FROM footballer DROP TABLE footballer END GO Now I am going to create a cmd file where I will create contention to the tempdb You can download it here Rename the temp sql cmd doc to temp sql cmd Make sure you execute it by double clicking it This will create lots of contention to the tempdb We need to see exactly what this contention is and the wait latches that have occurred Execute the script below USE tempdb go SELECT session id wait duration ms wait type resource description from sys dm os waiting tasks where wait type like PAGE LATCH and resource description like 2 As you can see from the picture below I have PAGEIOLATCH SH wait types This wait type occurs when a task is waiting on a latch for a buffer that is in an I O request The latch request is in Shared mode I have one tempdb data file the default configurations I have 8 cores in this machine so I will add 7 mores tempdb data files of equal size MS recommendation Execute the script below USE master GO ALTER DATABASE tempdb MODIFY FILE NAME N tempdev SIZE 500 MB FILEGROWTH 100 MB GO ALTER DATABASE tempdb ADD FILE NAME N tempdev2 FILENAME N d DATA tempdb2 ndf SIZE 500 MB FILEGROWTH 100 MB GO ALTER DATABASE tempdb ADD FILE NAME N tempdev3 FILENAME N d DATA tempdb3 ndf SIZE 500 MB FILEGROWTH 100 MB GO ALTER DATABASE tempdb ADD FILE NAME N tempdev4 FILENAME N d DATA tempdb4 ndf SIZE 500 MB FILEGROWTH 100 MB GO ALTER DATABASE tempdb ADD FILE NAME N tempdev5 FILENAME N d DATA tempdb5 ndf SIZE 500 MB FILEGROWTH 100 MB GO ALTER DATABASE tempdb ADD FILE NAME N tempdev6 FILENAME N d DATA tempdb6 ndf SIZE 500 MB FILEGROWTH 100 MB GO ALTER DATABASE tempdb ADD FILE NAME N tempdev7 FILENAME N d DATA tempdb7 ndf SIZE 500 MB FILEGROWTH 100 MB GO Now run the query again and observe the results USE tempdb go SELECT session id wait duration ms wait type resource description from sys dm os waiting tasks where wait type like PAGE LATCH and resource description like 2 You will see that there are no wait types hence no tempdb contention Stop now the temp sql cmd file so the contention of the tempdb stops Hope it helps Posted Τετάρτη 4 Δεκεμβρίου 2013 1 42 μμ από το μέλος nikolaosk 0 σχόλια Ownership chain in SQL Server I have been delivering a certified course in MS SQL Server 2012 recently and I was asked a very interesting question about SQL Server stored procedures and ownership chain Security is a big thing in SQL Server and can be implemented in various levels Before we move on we should define some basic terms that are very important when we talk about security in SQL Server The principal access data It should be authenticated by SQL Server which basically means that the principal should prove that it is whom it claims to be Principal is a user a group or an application granted permission to access securables So what is a securable Securable is an object to which access privileges are granted Privilege is an action that a principal is allowed to perform an a securable I want to show you an example where we want to deny a user to the actual table data but grant him access through a view or a stored procedure UserA is the owner of tableA and creates StoredProcA that gets data from tableA Then if the UserB is granted permission to execute the StoredProcA even though he does not have direct access to tableA he will be able to get access indirectly to the table This is the concept of ownership chaining I have installed SQL Server 2012 Enterprise edition in my machine but you can use the SQL Server 2012 2008 Express edition as well I am connecting to my local instance through Windows Authentication and in a new query window I type you can copy paste USE master GO Create a sample database CREATE DATABASE mysampledb GO create a login CREATE LOGIN login1 WITH PASSWORD login1 CHECK POLICY OFF USE mysampledb go Create a User for that login CREATE USER thelogin1 FOR LOGIN login1 see the user that you are now dbo SELECT user create table and populate it with sample data CREATE TABLE dbo person id INT IDENTITY 1 1 firstname varchar 40 lastname VARCHAR 50 go INSERT dbo person VALUES nick kenteris maria negri apostolis kaperis kostas gekas CREATE PROCEDURE dbo getpersons AS SELECT id firstname lastname FROM dbo person go give permissions to execute the procedure to the thelogin1 user GRANT EXECUTE ON dbo getpersons TO thelogin1 change the current user as thelogin1 EXECUTE AS USER thelogin1 check if we are indeed thelogin1 user SELECT USER fails SELECT FROM dbo person works EXECUTE dbo getpersons get back to the dbo user REVERT see if the user is indeed dbo SELECT USER we change the stored proc to use dynamic sql ALTER PROCEDURE dbo getpersons AS EXEC SELECT id firstname lastname FROM dbo person GO change the current user as thelogin1 EXECUTE AS USER thelogin1 check to see if indeed the user is now thelogin1 SELECT USER this will fail EXECUTE dbo getpersons get back to the dbo user REVERT check to see if we are dbo user SELECT user this will work ALTER PROCEDURE dbo getpersons WITH EXECUTE AS OWNER AS EXEC SELECT id firstname lastname FROM dbo person GO EXECUTE AS USER thelogin1 check to see if we are dbo user SELECT USER this will work EXECUTE dbo getpersons Let me explain what I am doing in this bit of code I am creating a database in line 6 I create a login in line 11 I create a user thelogin1 for that login in line 17 I create a new table in lines 23 30 Then I populate the table dbo person in lines 32 Then I create a procedure dbo getpersons in lines 34 36 Then I grant permissions to the stored procedure to the user thelogin1 Then I execute the statements like user thelogin1 If I try to access the table directly then I fail That makes sense Then I execute the stored procedure as user thelogin1 in lines 55 Then I revert back to the dbo user Then I make a change in lines 67 70 to the stored procedure I use in the body of stored procedure dynamic sql Then I change the user to thelogin1 in lines 74 Then I execute the stored procedure in line 82 This will fail The dynamic SQL statement causes a break in the ownership chain Then I revert back to line 85 as the dbo user In the lines 93 97 I change the stored procedure again WITH EXECUTE AS OWNER Then I change the user to thelogin1 in lines 99 Finally I execute the stored procedure again in lines 107 and it works Hope it helps Posted Πέμπτη 28 Νοεμβρίου 2013 9 23 μμ από το μέλος nikolaosk 0 σχόλια Tables with no clustered indexes or no indexes at all in SQL Server databases I have been delivering a certified course in MS SQL Server 2012 recently and I was asked a very interesting question If there is a way to find using T SQL tables in a database that have no clustered indexes or no indexes at all I have answered that this is possible and I provided with some scripts There a lot of tasks that we cannot perform through the GUI of SSMS So we have to search through the object metadata to get our answers We can query the catalog views and get all the information we want I have installed SQL Server 2012 Enterprise edition in my machine but you can use the SQL Server 2012 2008 Express edition as well I am connecting to my local instance through Windows Authentication and in a new query window I type you can copy paste SELECT DB NAME DB ID AdventureWorksLT2012 OBJECT SCHEMA NAME t object ID t NAME AS tables without clustered index FROM sys tables t WHERE OBJECTPROPERTY object id TableHasClustIndex 0 AND OBJECTPROPERTY object id IsUserTable 1 ORDER BY tables without clustered index If you execute this bit of code you will see all the tables in the AdventureWorksLT2012 database that have not go a clustered index As you can see I query the sys tables view You can use this script to query your own database for tables without a clustered index If I want to find all the tables in the AdventureWorksLT2012 database or any other database for tables that have not indexes you can execute the following script SELECT DB NAME DB ID AdventureWorksLT2012 OBJECT SCHEMA NAME t object ID t NAME AS tables without an index FROM sys tables t WHERE OBJECTPROPERTY object id TableHasIndex 0 AND OBJECTPROPERTY object id IsUserTable 1 ORDER BY tables without an index Hope it helps Posted Δευτέρα 18 Νοεμβρίου 2013 3 09 μμ από το μέλος nikolaosk 1 σχόλια Looking into SQL Server page types I have been delivering a certified course in MS SQL Server 2012 recently and I was asked a very interesting question about SQL Server pages and what types of pages exist I had to explain to them about SQL Server architecture first Each data file is divided internally into pages Each page has a size of 8 kbytes In each of these pages data metadata indexes are stored 8 continuous pages of 8kbytes make up one extent which is 64kbytes If you make the calculations 16 extents make up 1 mbyte Extents are divided into 2 categories Uniform 8 pages belong to the same object e g table Mixed 8 pages do not belong to the same object The first 96 bytes of the page are also reserved for the page header Page header includes information like Page number Page type Free space per page The greatest size in bytes I can have in a page is 8060 bytes So the maximum record length I can have in a table is 8060 bytes If I have a table that its record length is 100 bytes that means I can have 80 records per page If I have 200 records I need 3 pages Each record belongs to only one page You cannot have half record in one page and another half in another Ι was asked to provide an example where we will see the various SQL Server page types and what happens when the row size is larger than 8060 bytes I have installed SQL Server 2012 Enterprise edition in my machine but you can use the SQL Server 2012 2008 Express edition as well I am connecting to my local instance through Windows Authentication and in a new query window I type you can copy paste USE tempdb GO CREATE TABLE largetable col1 VARCHAR 2000 col2 VARCHAR 8000 col3 VARCHAR max INSERT INTO largetable VALUES REPLICATE SQL Server 2012 will provide Mission Critical Confidence with greater uptime blazing fast performance and enhanced security features for mission critical workloads 12 REPLICATE SQL Server 2012 533 REPLICATE SQL Server indexes 1000 SELECT FROM largetable Shows types of pages available inside SQL Server SELECT OBJECT NAME object id AS tablename rows type desc AS page types SQL FROM sys partitions part INNER JOIN sys allocation units alloc ON part partition id alloc container id WHERE object id object id largetable Let me explain what I am doing in this bit of code I make the tempdb the current database I create a new table called largetable in the tempdb database As you can see the record length is much larger than 8060 bytes Insert some values into the table I insert thousands of rows using the REPLICATE function Finally I execute a SELECT JOIN statement from the sys partitions and sys allocation units table The results are tablename rows page types SQL largetable 1 IN ROW DATA largetable 1 LOB DATA largetable 1 ROW OVERFLOW DATA As you can see I have one row of data Each of these types of pages is called an Allocation Unit IN ROW DATA refers to the situation where we have the whole row size staying within the 8 060 byte limit LOB DATA refers to LOB data type columns in this case the NVARCHAR MAX column and its values ROW OVERFLOW DATA refers to the data that could not be stored to single page for a single row and that is why it is using an overflow page Hope it helps Posted Δευτέρα 18 Νοεμβρίου 2013 12 50 πμ από το μέλος nikolaosk 0 σχόλια Significance of order of columns in an index I have been delivering a certified course in MS SQL Server 2012 recently and I was asked a very interesting question Does the order of the column in an index matter Let s give some basic definitions first and make some analogies A single column index is straightforward Think of it as an index in the back of the book Let s say you want to learn about DBCC FREEPROCCACHE You look for that command in the index of the book The index does not have the information It has a pointer to the page where the command is described You turn to that page and read about it This is a good analogy for a single column non clustered index In SQL Server you can also create an index that contains more than one column This is known as the composite index A good analogy for a composite index is the telephone book A telephone book lists everyone who has publicly available a telephone number in an area It is organised not by one column but by two last name and first name To look up someone in the telephone book we first navigate to the last name and then the first name To find John Smith you first locate Smiths and then John Composite indexes contain more than 1 column and can reference up to 16 columns from a single table or view Back to our question I have answered this question with the demo below I have installed SQL Server 2012 Enterprise edition in my machine but you can use the SQL Server 2012 2008 Express edition as well I am connecting to my local instance through Windows Authentication and in a new query window I type you can copy paste USE tempdb GO create a sample table CREATE TABLE Customers Customer ID INT NOT NULL IDENTITY 1 1 Last Name VARCHAR 20 NOT NULL First Name VARCHAR 20 NOT NULL Email Address VARCHAR 50 NULL create a clustered index on Customer ID and a non clustered composite index on the Last Name and First Name CREATE CLUSTERED INDEX ix Customer ID ON Customers Customer ID CREATE NONCLUSTERED INDEX ix Customer Name ON Customers Last Name First Name when we issue a query to SQL Server that retrieves data from the Customers table the SQL Server query optimiser will consider the various retrieval methods at its disposal and select one it deems most appropriate insert test row INSERT INTO customerS VALUES Smith John js smith com use SQL Data Generator to create sample data 10000 rows SELECT FROM customers DBCC DROPCLEANBUFFERS removes all buffers from the buffer pool DBCC freeproccache removes all entries from the procedure cache DBCC dropcleanbuffers DBCC freeproccache when we run this query and see the execution plan we have an index seek on the nonclustered index to locate the rows selected by the query we also have a key lookup to find the values for the email to retrieve the non indexed columns SELECT last name first name email address FROM customers WHERE Last Name Smith AND First Name John what happens in this case where we have the WHERE statement in different order than the index order it will use the same execution plan SELECT last name first name email address FROM customers WHERE First Name John AND Last Name Smith and what happens in this case where we use only last name the same plan is used SELECT last name first name email address FROM customers WHERE Last Name Smith what happens in this case when we use only first name the index cannot be used an index cannot be used to seek rows of data when the first column of the index is not specified in the WHERE clause INSERT INTO customers VALUES kantzelis nikos nikolaosk hotmail com SELECT last name first name email address FROM customers WHERE First Name nikos SET STATISTICS IO on DBCC dropcleanbuffers DBCC freeproccache SELECT last name first name email address FROM customers WHERE Last Name kantzelis now lets drop the index to see what happens DROP INDEX ix Customer Name ON customers and rerun the query we see a huge increase in logical reads without the index we have in this case in the absence of the index a clustered index scan which means that each row of the table had to be read SELECT last name first name email address FROM customers WHERE Last Name kantzelis Let me explain what I am doing in this bit of code I make the tempdb the current database I create a new table called Customers I create a clustered index on the table ix Customer ID on Customer ID I insert a test row to the table Then I use a third party generator tool to create 10 000 records Then I just use a simple statement to make sure all the rows were inserted Then I remove all buffers from the buffer pool and all entries from the procedure cache Then I activate the actual execution plan and execute the Select query in line 43 We have an index seek on the non clustered index and a key lookup to get the values for the email column Then I execute the Select statement in lines 54 The order of the columns in the WHERE clause are different than the index order Still the same execution plan is used Then I execute the Select statement in lines 65 We have just the last name column in the WHERE clause The same plan is used Then in line 76 I insert a new value in the table Then I execute another Select statement lines 78 where just the first name column is in the WHERE clause In this case the index cannot be used An index cannot be used to seek rows of data when the first column of the index is not specified in the WHERE clause Then in line 84 I set statistics IO on so i can investigate the logical reads when having or not the index In line 89 I run a Select query again and make a note of the logical reads which is 4 in my case Then I drop the index and rerun the query line 103 This time the logical reads are 77 So you can see that the performance of the query without the index has been dramatically decreased Hope it helps Posted Κυριακή 17 Νοεμβρίου 2013 11 38 μμ από το μέλος nikolaosk 0 σχόλια SQL Server SET options and index creation I have been delivering a certified course in MS SQL Server 2012 recently and I have found something that was really impressive regarding SET options in SQL Server and index creation I will look into the SET QUOTED IDENTIFIER and SET ANSI NULLS options and how their values can affect index creation I have installed SQL Server 2012 Enterprise edition in my machine but you can use the SQL Server 2012 2008 Express edition as well I am connecting to my local instance through Windows Authentication and in a new query window I type you can copy paste sourcecode language sql USE tempdb GO create a sample table CREATE TABLE Customers Customer ID INT NOT NULL IDENTITY 1 1 Last Name VARCHAR 20 NOT NULL First Name VARCHAR 20 NOT NULL Email Address VARCHAR 50 NULL Fullname AS first name last name SET QUOTED IDENTIFIER OFF SET ANSI NULLS OFF create a clustered index on Customer ID and a non clustered composite index on the fullname index failed CREATE NONCLUSTERED INDEX ix Customer fName ON Customers Fullname SET QUOTED IDENTIFIER ON SET ANSI NULLS ON successful index creation CREATE NONCLUSTERED INDEX ix Customer fName ON Customers Fullname sourcecode Let me explain what I am doing in this bit of code I make the tempdb the current database I create a new table called Customers I have a computed column in Fullname in the table Customers Then I set QUOTED IDENTIFIER and ANSI NULLS to OFF Then I create a non clustered index on the computed column It failed with this error CREATE INDEX failed because the following SET options have incorrect settings ANSI NULLS QUOTED IDENTIFIER Verify that SET options are correct for use with indexed views and or indexes on computed columns and or filtered indexes and or query notifications and or XML data type methods and or spatial index operations Then I set QUOTED IDENTIFIER and ANSI NULLS to ON Then I create a non clustered index on the computed column again This time works just fine Hope it helps Posted Κυριακή 17 Νοεμβρίου 2013 11 38 μμ από το μέλος nikolaosk 0 σχόλια Looking into the MERGE T SQL statement I have been delivering a certified course in MS SQL Server 2012 recently and I was asked to provide a demo about the MERGE statement I will provide you with a demo in this post trying to explain more about the MERGE T SQL statement and its use This statement was introduced back to SQL Server 2008 We can use a MERGE statement to modify data in a target table based on data in a source table The statement joins the target to the source by using a column common to both tables such as a primary key You can then insert modify or delete data from the target table all in one statement according to how the rows match up as a result of the join You need to have SELECT permissions on the source and INSERT UPDATE DELETE permissions on the target In this example I will create two tables one source and one target table I will use the WHEN MATCHED THEN clause to update rows in the target table that match rows in the source table I have installed SQL Server 2012 Enterprise edition in my machine but you can use the SQL Server 2012 2008 Express edition as well I am connecting to my local instance through Windows Authentication and in a new query window I type you can copy paste sourcecode language sql USE master GO CREATE DATABASE mergedata GO USE mergedata GO IF OBJECT ID CarsStock U IS NOT NULL DROP TABLE dbo CarsStock this is our target table CREATE TABLE dbo CarsStock CarID INT NOT NULL PRIMARY KEY CarModel NVARCHAR 100 NOT NULL Quantity INT NOT NULL CONSTRAINT Qt Df 1 DEFAULT 0 IF OBJECT ID CarsOrders U IS NOT NULL DROP TABLE dbo CarsOrders this is the souce table CREATE TABLE dbo CarsOrders CarID INT NOT NULL PRIMARY KEY CarModel NVARCHAR 100 NOT NULL Quantity INT NOT NULL CONSTRAINT Qt Df 2 DEFAULT 0 INSERT CarsStock VALUES 1 BMW Cabrio 12 2 Ford Focus 13 3 LexusLS460 2 5 KIA Preggio 1 6 Citroen Picasso 1 8 Ford escape 4 INSERT CarsOrders VALUES 1 BMW Cabrio 4 3 LexusLS460 1 4 Citroen Picasso 4 5 KIA Preggio 5 7 KIA optima 8 Implementing the WHEN MATCHED Clause The first MERGE clause we ll look at is WHEN MATCHED You should use this clause when you want to update or delete rows in the target table that match rows in the source table MERGE CarsStock cs USING CarsOrders co ON cs CarID co CarID WHEN MATCHED THEN UPDATE SET cs Quantity cs Quantity co Quantity SELECT FROM CarsStock sourcecode Let me explain what I am doing in this bit of code I make the master database the current database I create a new database mergedata I create a table called CarsStock I create a table called CarsOrders I insert values in the CarsStock table target table I insert values in the CarsOrders table source table Then I use the WHEN MATCHED THEN clause with the MERGE statement because I want to update rows quantity column in the target table that match rows in the source table Then I select the contents of the CarsStock table and see the values updated Quantity column where the values of the CarID is the same in the two tables joined column values are the same I will let you investigate the WHEN NOT MATCHED BY TARGET clause WHEN NOT MATCHED BY SOURCE clause Hope it helps Posted Σάββατο 16 Νοεμβρίου 2013 3 11 πμ από το μέλος nikolaosk 0 σχόλια An introduction to Performance Monitor part 1 In my last SQL Server 2012 administration seminar I used Performance Monitor to analyse and troubleshoot issues regarding SQL Server It is built into Windows and many administrators used it a lot in the old days when some of the tools we have now in our disposal did not exist So this is a free tool that you do not need to download Performance Monitor or PerfMon for short can be used to monitor performance real time capture various metrics and you can select what you want to monitor and for how long You can capture information about the hardware the operating system SQL Server and more So it is not a tool for troubleshooting SQL Server only The whole process is automated and so is the data collection With PerfMon we can track nearly every type of system performance Disk Memory Cpu network The overhead of using PerfMon is minimal in most cases but you should be careful when selecting the sampling interval One good advice is not to use too many counters and not sampling intervals less than one second Sometimes it is better to use DMVs Trace SQL Server profiler and Extended Events You should use PerfMon when you need to collect OS and hardware resource counters as well as SQL Server counters The performance data generated by a system component is represented by a performance object A performance object provides counters that represent specific aspects of a component such as Processor Time for a Processor object PerfMon allows real time data to be viewed and analysed in multiple ways In this post I am going to present some of the main SQL Server counters that can be monitored through Performance Monitor and some none SQL Server related counters You do not require to have any previous knowledge You can start PerfMon by going to Start Run perfmon or you can go Control Panel All Control Panel Items Administrative Tools and then start Performance Monitor When I start PerfMon I see the Processor counter counter I will add some more Have a look at the picture below I click on the green cross icon and I add some counters for the PhysicalDdisk object I will add the Avg Disk Sec Read counter and the Avg Disk Sec Write select them and add them to the counters area Have a look at the picture below Avg Disk Sec Read average time in ms to read from disk a good value for this counter is average value 10 ms Avg Disk Sec Write average time in ms to write to disk a good value for this counter is average value 10 ms Now I am going to add some more counters from the Memory object I will add Available bytes free physical memory I will also add an SQL Server related counter Batch Requests per second from the SQL Server SQL Statistics Then I install attach the AdventureWorks2012 database You can use any database you want I need to generate some workload so I can get values for the counters I use the free tool SQL Load Generator from codeplex to generate multiple reads and writes Once more I observe the counters and see analyse the results I will show you some common options in the PerfMon GUI You can change the colour of the counter Have a look at the picture below You can also change the view that you see the results You can select e g the Report view Have a look at the picture below You can also change the Sample interval 1 second and the Duration default 100 sec Have a look at the picture below You can also add a counter highlight a counter and freeze the display There will be more posts on Performance monitor Hope it helps Posted Παρασκευή 15 Νοεμβρίου 2013 1 23 πμ από το μέλος nikolaosk 0 σχόλια Looking into SQL Traces in SQL Server In this post I will talk about SQL Server Traces what they are and how we can use them An SQL Trace is a low level server side event inside SQL Server that can be used to audit activity troubleshoot performance debug T SQL statements and stored procedures With SQL Traces we can have a real time or offline analysis of data We can capture more than 150 events It was introduced back in SQL Server 6 0 We can create a SQL Trace using the SQL Server Profiler Alternatively you can use the sp trace create with the required parameters to create a new trace Then you need to setup sp trace setevent with the required parameters to select the events and columns to trace We can start traces manually or as a part of a scheduled job Obviously as with all tools of such nature there is an overhead so you have to be careful You should not add too many events in the same trace I have installed SQL Server 2012 Enterprise edition in my machine but you can use any other version of SQL Server I will connect to the local instance of SQL Server with windows authentication Then I go to Tools SQL Server Profiler i connect to my local instance of SQL Server I start with a blank template Have a look at the picture below Then I select some events for the trace From the Stored Procedures event group I select RPC Completed SP Completed SP StmtCompleted From the TSQL event group I select SQL BatchCompleted SQL StmtCompleted Have a look at the picture below Then I hit the Run button and immediately stop the trace hitting the red square Then under File Export I select Script Trace definition For SQL Server 2005 SQL11 and save the file in folder in my hard disk Have a look at the picture below This will be an sql file Then I open the file in new query window in SSMS In my case this is the trace script that was generated sourcecode language sql Created by SQL Server 2012 Profiler Date 11 14 2013 10 48 57 PM Create a Queue declare rc int declare TraceID int declare maxfilesize bigint set maxfilesize 5 Please replace the text InsertFileNameHere with an appropriate filename prefixed by a path e g c MyFolder MyTrace The trc extension will be appended to the filename automatically If you are writing from remote server to local drive please use UNC path and make sure server has write access to your network share exec rc sp trace create TraceID output 0 N InsertFileNameHere maxfilesize NULL if rc 0 goto error Client side File and Table cannot be scripted Set the events declare on bit set on 1 exec sp trace setevent TraceID 10

    Original URL path: http://www.dotnetzone.gr/cs/blogs/dotnetrules/default.aspx (2015-07-15)
    Open archived version from archive

  • Rocking with Knowledge for .NET programming : Auditing Reports Execution in SSRS
    Ιούνιος 2015 1 Σεπτέμβριος 2014 1 Ιούνιος 2014 2 Μάρτιος 2014 2 Φεβρουάριος 2014 4 Ιανουάριος 2014 5 Δεκέμβριος 2013 1 Σεπτέμβριος 2013 2 Αύγουστος 2013 5 Ιούλιος 2013 1 Ιούνιος 2013 1 Μάιος 2013 3 Απρίλιος 2013 4 Μάρτιος 2013 3 Φεβρουάριος 2013 3 Ιανουάριος 2013 7 Νοέμβριος 2012 2 Οκτώβριος 2012 6 Σεπτέμβριος 2012 7 Αύγουστος 2012 7 Ιούλιος 2012 7 Ιούνιος 2012 2 Μάιος 2012 1 Ιανουάριος 2012 1 Νοέμβριος 2011 5 Οκτώβριος 2011 4 Σεπτέμβριος 2011 5 Μάρτιος 2011 1 Ιανουάριος 2011 1 Μάρτιος 2010 1 Φεβρουάριος 2010 1 Ιανουάριος 2010 1 Δεκέμβριος 2009 1 Νοέμβριος 2009 5 Οκτώβριος 2009 1 Αύγουστος 2009 2 Ιούλιος 2009 1 Ιούνιος 2009 3 Σεπτέμβριος 2008 1 Αύγουστος 2008 1 Ιούλιος 2008 1 Φεβρουάριος 2008 2 Ιανουάριος 2008 5 Δεκέμβριος 2007 4 Ιούλιος 2007 1 Μάιος 2007 1 Δεκέμβριος 2006 1 Οκτώβριος 2006 1 Auditing Reports Execution in SSRS Ένα από τα services του SQL Server είναι τα Reporting Services τα οποία παρέχουν ένα εξαιρετικά ευέλικτο τρόπο να μεταδίδεται η πληροφορία στους τελικούς χρήστες Η χρήση τους από τις εταιρίες και τους οργανισμούς έχει αυξηθεί σε υπερθετικό βαθμό και κανείς θα βρει μεγάλο αριθμό από reports να εκτελούνται καθημερινά στις

    Original URL path: http://www.dotnetzone.gr/cs/blogs/antonch/archive/2015/06/23/auditing-reports-execution-in-ssrs.aspx (2015-07-15)
    Open archived version from archive

  • Rocking with Knowledge for .NET programming
    το χρειαστεί http www sqlschool gr blog how to find cpu expensive queries 961 aspx Posted Τετάρτη 12 Φεβρουαρίου 2014 9 30 μμ από το μέλος Antonios Chatzipavlis 0 σχόλια Filtering data on joins or to where clause Ένα ερώτημα που όλους κάποια στιγμή έχει απασχολήσει και έχει δημιουργήσει ενδιαφέρουσες συζητήσεις είναι το που είναι καλύτερο να βάλω τα φίλτρα μου σε ένα join query να τα βάλω στο where όπως θα έκανα ή να τα βάλω στο join http www sqlschool gr blog filtering data on joins or to where clause 960 aspx Posted Τρίτη 11 Φεβρουαρίου 2014 6 38 μμ από το μέλος Antonios Chatzipavlis 0 σχόλια Update Statistics and Trace Flag 2371 Σαν DBA καθημερινά ερχόμαστε αντιμέτωποι με κάποιες περιπτώσεις δεν είναι εύκολο άμεσα να εντοπιστούν τα αίτια που τις δημιούργησαν Εδώ έρχεται αυτό που χρόνια λέω και γράφω ότι πρέπει να γνωρίζουμε τα εσωτερικά του εργαλείου Πρόσφατα δέχθηκα μια ερώτηση από έναν συνάδελφο που απετέλεσε το ερέθισμα για το post αυτό http www sqlschool gr blog update statistics and trace flag 2371 958 aspx Posted Δευτέρα 13 Ιανουαρίου 2014 7 03 μμ από το μέλος Antonios Chatzipavlis 0 σχόλια Do you use an ORM Please learn how to use it properly Τα τελευταία χρόνια έχει μεγάλη κουβέντα και μεγάλη χρήση από αρκετούς στην χρήση ORMs Υπάρχουν αρκετά πλέον στην αγορά EF ΝHibernate κ α και έτσι ο καθένας μπορεί να επιλέξει αυτό που του ταιριάζει Αρκετές φορές έχω βρεθεί σε συζητήσεις σχετικά με αυτά και από αυτές έχω αποκτήσει την φήμη ότι είμαι από αυτούς που τα κατακρίνουν και στέκονται απέναντι τους http www sqlschool gr blog do you use an orm please learn how to use it properly 957 aspx Posted Πέμπτη 9 Ιανουαρίου 2014 10 56 μμ από το μέλος Antonios Chatzipavlis 0 σχόλια The answer on question Which is the best database is It depends Ένα ερώτημα που μου έχει τεθεί τόσες φορές που έχω χάσει πλέον τον αριθμό Αλήθεια υπάρχει απάντηση σε αυτό http www sqlschool gr blog the answer on question which is the best database is it depends 956 aspx Posted Κυριακή 5 Ιανουαρίου 2014 3 36 μμ από το μέλος Antonios Chatzipavlis 0 σχόλια The effects of SET NOCOUNT ON Αρκετοί φαντάζομαι γνωρίζετε το SET NOCOUNT ON setting Θα έχετε πιθανώς διαβάσει ή ακούσει ότι όταν είναι ΟΝ έχουμε καλύτερη απόδοση κυρίως στα action queries INSERT UPDATE DELETE αν όχι μπορείτε να το δείτε στα BOL Αυτό που θέλω είναι να σας δείξω το πόσο βελτίωση έχουμε και για αυτό θα κάνουμε ένα benchmark http www sqlschool gr blog the effects of set nocount on 955 aspx Posted Παρασκευή 3 Ιανουαρίου 2014 1 11 μμ από το μέλος Antonios Chatzipavlis 0 σχόλια SQL Server Services Ports that each DBA and Developer must know Καλή Χρονιά με υγεία πάντα σε όλες και όλους Πρώτο post για την χρονιά αυτή και θα ξεκινήσω με κάτι απλό που πρέπει να γνωρίζουν όλοι είτε είναι DBAs είτε είναι Developers Ο SQL Server είναι

    Original URL path: http://www.dotnetzone.gr/cs/blogs/antonch/default.aspx (2015-07-15)
    Open archived version from archive



  •