sqlschool.gr logo

search results

searching on site content

18 Jan 2011

Uniqueidentifier data type as table primary key or clustered index

Περιμένοντας να έρθουν συγγενείς και φίλοι σπίτι να μου ευχηθούν για την γιορτή μου, σκεφτόμουν πώς να ευχαριστήσω όλους που σήμερα είτε με email είτε με μηνύματα στο facebook ή στο messenger μου ευχήθηκαν χρόνια πολλά. Στο μυαλό μου ήρθε κάτι το οποίο το είδα πάλι να χρησιμοποιείται αλλά όχι και τόσο καλά το αντίθετο θα έλεγα. Aυτό δεν είναι από το sql server data type uniqueidentifier σαν primary key σε table.

15 Nov 2015

List All Primary Keys and Foreign Keys in your database

Δεν είναι λίγες οι φορές που θέλεις να μάθεις πράγματα για το database schema σε μια database που είτε είχες φτιάξει στο παρελθόν είτε είναι μια database που στην έχουν φέρει να την διαχειριστείς και από documentation πάσχει.Για όλους τους παραπάνω λόγους θα πρέπει να ψάξεις, αλλά πρέπει να ψάξεις χωρίς να κουραστείς και το να ψάχνεις με το γραφικό περιβάλλον του SSMS είναι κουραστικό οπότε πρέπει να καταφύγεις σε metadata queries.

23 Jul 2011

Ενδιαφέρουσες αλλαγές στα μηνύματα λάθους

Με αφορμή την ενασχόληση μου με την επιμέλεια των ελληνικών μηνυμάτων λαθών στον SQL Server DENALI, διαπίστωσα ότι έχουν γίνει αρκετά ενδιαφέρουσες αλλαγές σε αυτά.

29 Aug 2022

Resumable add table constraints - SQL Server 2022 - What's New

Episode #70 with Antonios Chatzipavlis

08 Mar 2020

Don't forget to Indexing Foreign Keys

Στο SQL Server κάθε φορά που δημιουργούμε ένα Primary Key δημιουργείται και ένας index αλλά αυτό δεν γίνεται όταν φτιάχνουμε ένα Foreign Key και θα πρέπει να το δημιουργούμε εμείς ξεχωριστά. Το γιατί και ποιο είναι το όφελος το παρουσιάζω στο άρθρο αυτό.

18 Jun 2014

Database Design Counts

Δεν είναι σπάνιο το φαινόμενο να πέφτω πάνω σε databases που έχουν σχεδιαστεί στην κυριολεξία στο πόδι. Σε πολλές από αυτές, άλλοτε εύκολα, άλλοτε  με σχετικά μη επώδυνο τρόπο,  κατάφερα να αλλάξω τον σχεδιασμό τους. Υπάρχουν όμως  αρκετές που αυτό δεν ήταν εφικτό. Το μήνυμα που θέλω να περάσω μέσα από το post αυτό είναι ότι πρέπει να επενδύουμε χρόνο στον σχεδιασμό της database, ακόμα και αν γνωρίζουμε ότι δεν πρόκειται να έχουμε μεγάλο όγκο δεδομένων, καθώς έτσι θα δημιουργήσουμε μια συνήθεια που δύσκολα θα κοπεί με αποτέλεσμα να έχουμε σωστά σχεδιασμένες databases.

17 Feb 2015

Getting Started : Writing T-SQL (Part 1)

Αυτή η σειρά από posts, έχει σκοπό να βοηθήσει κάποιον να κάνει τα πρώτα του βήματα στην χρήση του Microsoft SQL Server και να κάνει μια γνωριμία με την Τransact-SQL.

13 Jan 2020

What you need to know when using MERGE statement

Στο SQL Server 2008 παρουσιάστηκε για πρώτη φορά το MERGE statement το οποίο απλοποιούσε τις διαδικασίες insert/update/delete ιδιαίτερα σε ETL διαδικασίες και από όσο έχω δει έχει αγαπηθεί από αρκετούς και μέσα σε αυτούς είμαι και εγώ.

11 Jul 2016

Moving a table to another filegroup

Στο πρόσφατα ολοκληρωμένο σεμινάριο (20462) στο οποίο μιλάμε και για filegroups, έδειχνα στους μαθητές μου πως μπορούν αν εκμεταλλευτούν αυτά ώστε να επωφεληθούν από αυτά τόσο σε maintenance όσο και σε performance. Αφού μέσα από τα δικά μου παραδείγματα που δεν υπάρχουν στο βιβλίο τους έχω βάλει το μικρόβιο να θέλουν σαν τρελοί να τα χρησιμοποιήσουν η αναμενόμενη επόμενη ερώτηση είναι πως μπορούν σε ήδη δημιουργημένες databases να κάνουν αυτό. Η απάντηση πάντα από μένα στο μάθημα είναι μέσω παραδείγματος καθώς κάτι τέτοιο δεν το έχει το σεμινάριο. Σήμερα κατά μια διαβολεμένη σύμπτωση ένας καλός συνάδελφος από μια εξωτερική εταιρεία ήθελε να κάνει κάτι αντίστοιχο και επειδή μέχρι τώρα δεν το είχα γράψει σαν άρθρο θεώρησα ότι κάποια δύναμη θέλει να γίνει αυτό πραγματικότητα οπότε …

28 Jul 2010

Πως μπορώ να μετρήσω το μέγεθος των δεδομένων που έχω μέσα σε ένα blob field?

Σημέρα ένας αγαπητός συνάδελφος έρχεται στο γραφείο μου και μου κάνει την εξής ερώτηση: «Υπάρχει κανένας τρόπος με τον οποίο μπορώ να δω το μέγεθος των πραγματικών δεδομένων που έχουν αποθηκευτεί στην βάση μου σε ένα πεδίο τύπου image;» Σίγουρα η πρώτη σκέψη όλων μας θα πάει στην LEN(), αλλά αυτή όμως δεν παίζει με πεδία τύπου image, text, ntext.

28 Oct 2013

Taking database backups from SQL Server 2014 to Windows Azure Storage (Part I)

Σαν DBA πρέπει να έχω μια σωστή πολιτική backup που να ταιριάζει με τις εκάστοτε ανάγκες της database. Πέρα όμως από αυτή την πολιτική πρέπει να φροντίζω να φυλάσσω τα backup αυτά σε χώρους εκτός κτηρίου / περιοχής για τον φόβο των Ιουδαίων. Από το CU2 του SQL Server 2012 μας δόθηκε η δυνατότητα να μπορούμε να εκτελούμε backups απευθείας σε azure storage. Πλέον αυτή η δυνατότητα στον SQL Server 2014 (CTP2) έχει μεγαλώσει και δίνει περισσότερες δυνατότητες.

22 Feb 2016

Dealing with replication error 20598 - The row was not found at the Subscriber when applying the replicated command

Το συγκεκριμένο άρθρο είναι για αυτούς που έχουν στο περιβάλλον τους υλοποιημένο SQL Server Transactional Replication και τους δείχνει πως να αντιμετωπίσουν την περίπτωση που θα αρχίσει αυτό να βγάζει το error message που αναφέρεται στο τίτλο του άρθρου.

30 Mar 2012

Data Warehouse Physical Design Guide.

Αφού έχουμε σχεδιάσει λογικά και σύμφωνα με τις επιχειρησιακές απαιτήσεις το DW μας, φτάνει η στιγμή που πρέπει να το κάνουμε πραγματικότητα υλοποιώντας το φυσικά. Όπως έχω αναφέρει σε όλα τα προηγούμενα post αυτής της σειράς θα πρέπει φυσικά να υλοποιήσω το DW λαμβάνοντας σοβαρά υπόψη μου τους εξής παράγοντες που δεν είναι άλλοι από τους performance, scalability, manageability. Με αυτούς σαν πυξίδα θα πρέπει να Tips for Database Files...

28 Mar 2012

Data Warehouse Logical Design, How To.

Συνεχίζοντας την σειρά των post που αφορούν την υλοποίηση ενός DW για την κάλυψη των αναγκών μιας BI λύσης θα ασχοληθούμε σε αυτό με τον logical design του DW. Όπως έχω ήδη αναφέρει σε παλαιότερα post ένα DW είναι ο θεμέλιος λίθος καθώς σε αυτό γίνονται τα ερωτήματα που θα δώσουν τις απαντήσεις σε αυτούς που πρέπει να λάβουν αποφάσεις. Έτσι αυτό θα πρέπει σαν Νούμερο Ένα Απαίτηση να είναι έτσι φτιαγμένο ώστε να υποστηρίζει γρήγορο διάβασμα (optimized for data read operations).

29 May 2012

Another Example Why you must avoid Implicit Conversions in T-SQL

Αν και δεν είμαι αρκετά σίγουρος ότι όλοι έχουν καταλάβει ότι θα πρέπει να αποφεύγουν όπως ο διάολος το λιβάνι τα implicit conversions εντούτοις αυτό είναι κάτι γνωστό και πηγή δεινών αν αυτό γίνεται στην T-SQL. Υπάρχουν αρκετά άρθρα που το αναφέρουν αυτό και με αυτό το post θα συμπληρώσω και εγώ ακόμα ένα παράδειγμα με σκοπό μήπως και κάποιοι συνετιστούν και σταματήσουν να το κάνουν.

28 Mar 2012

Designing and Implementing Time Dimensions

Είναι σπάνιο το φαινόμενο σε μια λύση BI και σε ένα DW να μην ζητείται ανάλυση και reporting των δεδομένων με βάση κάποια χρονική περίοδο. Το σύνηθες είναι να έχω τουλάχιστον μία διάσταση χρόνου. Για το λόγο αυτό σε αυτό το post θα δούμε πως μπορούμε να σχεδιάσουμε και υλοποιήσουμε σε μια BI λύση μια τέτοια διάσταση. Για αρχή θα ξεκινήσουμε να δούμε την λογική με την οποία θα σχεδιάσουμε ένα time dimension. Σχεδιάζοντας ένα Time Dimension...

20 Sep 2017

Backup to URL for Large Databases

Εδώ και χρόνια ( από τον SQL Server 2012 SP1 CU2) υπάρχει η δυνατότητα για SQL Server backups σε Azure Blob storage με το γνωστό (υποθέτω σε όλους μας)  backup to URL. Αρκετοί το έχουν υλοποιήσει, μεταξύ αυτών και ένας πελάτης μου αλλά κάποια στιγμή άρχισε να μην δουλεύει. Σε αυτό το άρθρο σας δείχνω το γιατί και πως λύνεται το πρόβλημα.

17 Jul 2012

DBCC EXTENTINFO – Another undocumented/documented useful dbcc command

Αρκετές φορές έχω αναφέρει κατά την διάρκεια των μαθημάτων και των παρουσιάσεων που κάνω για την αρχιτεκτονική μιας βάσης, ότι τα data files χωρίζονται σε σελίδες των 8K, κάθε 8 τέτοιες σελίδες αποτελούν ένα extent και ότι υπάρχουν δύο είδη extent τα uniform και τα mixed...

12 Jun 2012

DBCC OPTIMIZER_WHATIF

Για άλλη μια φορά σήμερα ευλογώ τον Θεό που μου έχει δώσει την δυνατότητα να κάνω αυτή την δουλειά καθώς μου δίνει την δυνατότητα σε τακτά χρονικά διαστήματα να μαθαίνω κάτι νέο. Αυτό που έμαθα σήμερα κατά την καθημερινή μου ενασχόληση με τον SQL Server θα ήθελα να το μοιραστώ μαζί σας, και είμαι αρκετά χαρούμενος για αυτό, καθώς το αγαπημένο μου προϊόν ο SQL Server μου χαρίζει αυτές τις συγκινήσεις.

03 Nov 2016

When the filtered indexes saves

Η παλαιότερη και πιο συνηθισμένη ερώτηση που γίνεται είναι αυτή που αφορά το query performance. Για αυτή την ερώτηση έχουν γραφτεί εκατομμύρια γραμμές σε άρθρα και έχουν γίνει χιλιάδες παρουσιάσεις. Συγκεκριμένη απάντηση δεν θα βρει κανείς πουθενά και είναι απόλυτα λογικό καθώς η κάθε περίπτωση είναι διαφορετική και χρειάζεται διαφορετική λύση. Αυτό που μπορώ με σιγουριά να πω είναι ότι για να δώσει κάποιος λύση στο εκάστοτε πρόβλημα θα πρέπει να έχει γνώση των εσωτερικών δομών και αρχιτεκτονική του SQL Server πάνω από καλώς.

21 Sep 2016

The sql_variant Data type

Με αφορμή για όμορφη κουβέντα που είχα με τους μαθητές μου στο σεμινάριο που κάνω αυτό το διάστημα αποφάσισα να γράψω αυτό το άρθρο ώστε να φωτίσω όσο το δυνατόν περισσότερο την ύπαρξη αλλά και την χρήση του sql_variant data type.

26 Apr 2015

Getting Started : Writing T-SQL (Part 2)

Σε αυτό το post θα βάλουμε δεδομένα στους πίνακες που δημιουργήσαμε στο 1o μέρος και θα δούμε τα DML statements.

17 Sep 2012

How to create system object in SQL Server

Αρκετές φορές σαν DBA θέλουμε να έχουμε κάποια objects (tables, stored procedures) σε ένα σημείο από όπου να μπορούμε να τα καλούμε από οποιαδήποτε βάση μας χωρίς να χρειάζεται να αναφερόμαστε σε αυτούς με qualified name (πχ db_name.schema_name.obj_name). Να είναι τρόπο τινά system object.

03 Jan 2019

Cosmos DB for a Relational database user

Σε προηγούμενο άρθρο μου έκανα μια εισαγωγή στην Cosmos DB. Επειδή οι περισσότεροι έρχονται από τον κόσμο των Relational Databases καλό θα είναι να ξεκαθαρίσουμε λίγο ακόμα το πεδίο.

22 Mar 2016

Date Correlation in SQL Server

Είναι πολλές οι φορές που στο business logic μίας εφαρμογής, υπάρχουν ημερομηνίες οι οποίες συνδέονται λογικά μεταξύ τους. Ο SQL Server έχει την δυνατότητα να υπολογίζει το correlation μεταξύ τέτοιων ημερομηνιών και θα δούμε σε αυτό το post με ποιον τρόπο μπορούμε να το χρησιμοποιήσουμε στα δεδομένα μας.

26 Aug 2009

Πώς εκτελείται λογικά ένα sql query;

Τόσα χρόνια στον χώρο της πληροφορικής έχω μάθει να προσπαθώ να καταλάβω τι γίνεται πίσω από την σκηνή με αυτό που ασχολούμαι. Ο SQL Server είναι ένα από αυτά, και στο οποίο έχω αφιερώσει αρκετές τρίχες της κεφαλής μου. Σήμερα θα σας πάρω λίγο από τον πολύτιμο χρόνο σας για να σας μεταφέρω μια γνώση που θα σας φανεί αρκετά χρήσιμη.

03 Jan 2014

The effects of SET NOCOUNT ON

Αρκετοί φαντάζομαι γνωρίζετε το SET NOCOUNT ON setting. Θα έχετε πιθανώς διαβάσει ή ακούσει ότι όταν είναι ΟΝ έχουμε καλύτερη απόδοση κυρίως στα action queries (INSERT/UPDATE/DELETE), αν όχι μπορείτε να το δείτε στα BOL.Αυτό που θέλω είναι να σας δείξω το πόσο βελτίωση έχουμε και για αυτό θα κάνουμε ένα benchmark.

15 Aug 2013

How to localize Reports in SQL Server Reporting Services

Επειδή στην σημερινή εποχή τα reports μας μπορούν να τα βλέπουν χρήστες που δεν έχουν απαραίτητα το ίδιο culture με εμάς, είναι σκόπιμο να τους δίνουμε αυτό την εμπειρία καθώς έτσι θα κάνουν καλύτερα την δουλειά τους και εμείς θα έχουμε ένα χρήστη λιγότερο πάνω από το κεφάλι μας.

18 Feb 2021

The WITH SCHEMABINDING option: What you are missing by not using it

Το WITH SCHEMABINDING είναι διαθέσιμο από το SQL Server 2000 αλλά η χρήση του είναι ελάχιστη με αποτέλεσμα να υπάρχουν business continuity issues αλλά και να μην εκμεταλλεύονται τα performance gains που προσφέρει σε κάποιες περιπτώσεις.

15 Aug 2020

Sizing SQL Server instance

"Έχω ένα σύστημα με Χ Cores, Y RAM, Z storage είναι καλό για να βάλω SQL Server;" Αυτή είναι η συνηθέστερη ερώτηση που πρέπει συχνά να απαντήσω και αφορά το sizing ενός SQL Server instance.

17 Jun 2020

The OUTPUT Clause in DML statements

Σε αυτό το άρθρο δείχνουμε το πως μπορούμε να εκμεταλευτούμε το OUTPUT clause στα DML statements

14 Apr 2020

Encrypting SQL Server Backup & Restore with Certificate

Στην σημερινή εποχή η ασφάλεια των δεδομένων είναι και πρέπει να αποτελεί υψηλή προτεραιότητα για κάθε DBA/IT Pro.

11 Apr 2020

How Clustered Index keeps key order in a page

Όπως όλοι γνωρίζεται όταν υπάρχει clustered index στο table τα δεδομένα τοποθετούνται στην σειρά με βάση το field/key που έχει χρησιμοποιηθεί για τον clustered index, όμως πόσο αλήθεια είναι αυτό.

10 Aug 2021

Explain Ghost Records in SQL Server

Κάθε φορά που εκτελούνται delete operations τα rows δεν διαγράφονται άμεσα αλλά χαρακτηρίζονται σαν rows προς διαγραφή και η ονομασία που έχει δοθεί σε αυτά είναι ghost(ed) records και σε αυτό το άρθρο θα δούμε τα internals τους.

09 Jun 2020

Calendar Dimension table for BI projects

Σε αυτό το άρθρο παρέχεται ένα script με το οποίο μπορείτε να δημιουργήσετε ένα calendar dimension table για χρήση σε BI και Power BI projects. Στο τελικό αποτέλεσμα έχουμε ένα table που περιέχει Calendar, Fiscal και ΙSO years με τις επιμέρους αναλύσεις τους, αλλά και τις επίσημες αργίες για την Ελλάδα τις ΗΠΑ και τις υπηρεσίες της ΕΕ.

06 Jan 2019

Cosmos DB Indexes

Όπως σε όλες τις relational databases έτσι και στην Cosmos DB οι indexes έχουν κυρίαρχη θέση καθώς είναι η κηροζίνη των ερωτημάτων και πρέπει να γνωρίζουμε για αυτούς.

05 Oct 2018

Smart backups in SQL Server 2017

Σε αυτό το επεισόδιο SQL Server in Greek θα θούμε την δυνατότητα που έχουμε για να υλοποιήσουμε έξυπνα backups στον SQL Server 2017 και μετά.

22 Jun 2018

SQL Server Database Structures

SQL Saturday #731, Athens June 16, 2018

12 Sep 2011

DBCC LOGINFO

Για ακόμα μια φορά θα πρέπει να ασχοληθούμε με το transaction log. Καθημερινά αντιμετωπίζω περιστατικά τα οποία μου δείχνουν ότι υπάρχει θέμα κατανόησης με την αξία, την λειτουργία αλλά και την χρήση του transaction log.

1 

|< < > >| 

Categories

Labels

0-9

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Σ

Become a member

If you want to receive updates from us become a member to our community.

Connect

Explore

Learn


sqlschool.gr © 2010-2023 All rights reserved

This site uses cookies for operational and analytics purposes only. By continuing to browse this site, you agree to their use.