sqlschool.gr logo

search results

searching on site content

21 Oct 2016

Move a database file (data or log file) to another location

Αρκετές φορές έχω ερωτηθεί για το πώς μπορεί κάποιος να μεταφέρει μια βάση ή ένα αρχείο της (data / log file) από ένα σημείο (disk/folder/…) σε άλλο.

18 Jun 2014

Database Design Counts

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

03 Apr 2020

How to discover nested views

Για όσους θυμούνται από το δημοτικό το Ανθολόγιο και το κείμενο του Δ. Ψαθά, "Η τσάντα και το τσαντάκι" που υπήρχε σε αυτό πιθανώς θα γελάσουν, και καλά θα κάνουν

08 Mar 2020

Don't forget to Indexing Foreign Keys

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

13 Jan 2020

What you need to know when using MERGE statement

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

08 Sep 2019

How to not make a disaster view

Όλοι γνωρίζουμε ότι ένα view είναι ένα stored query expression το οποίο ορίζει τι θα επιστρέφει το συγκεκριμένο view. Με απλά λόγια είναι ένα SELECT statement. Όμως τις φτιάχνουμε σωστά ώστε να δουλεύουν και σωστά;

06 May 2019

Create re-usable temp table using dynamic T-SQL

Δεν είναι λίγες οι φορές που χρειάζεται να δημιουργήσουμε ένα temp table δυναμικά καθώς δεν γνωρίζουμε εξ’ αρχής την δομή του είτε σε μια stored procedure είτε σε ένα script.

18 Dec 2018

What is the correct size for the most used fields?

Πάντα σχεδόν σε μια database έχουμε πεδία όπως email, phone, country κ.α, και πάντα αναρωτιέστε αν είναι σωστή η επιλογή του μεγέθους.

09 Aug 2018

The Last Page Insert Problem

Ένα διαφορετικού τύπου άρθρο, που αντί για διάβασμα έχει video είναι ένα video blog post και αφορά ένα αρκετά ενδιαφέρον θέμα του SQL Server

24 May 2018

The money data type

Σήμερα είχα μια ερώτηση από ένα συνάδελφο σχετικά με το συγκεκριμένο data type αφού πρώτα είχαμε κάνει μια εσωτερική εκπαίδευση πριν από αρκετές μέρες και σε αυτή είχαμε μιλήσει για τα data types που έχει ο SQL Server.

10 Feb 2018

Monitoring CREATE INDEX Progress

Όσοι από εμάς έχουν περάσει ή είναι DBA σε μεγάλες databases καθημερινά έρχονται αντιμέτωποι με πολλά ενδιαφέροντα θέματα. Ένα από αυτά είναι η συντήρηση και η δημιουργία των indexes σε μεγάλου όγκου databases. Ειδικότερα αυτό που ένας τέτοιος DBA ζητάει είναι να γνωρίζει το progress ώστε να είναι σε θέση να εκτιμήσει την ολοκλήρωση της εργασίας.

04 Jan 2018

About LSNs in SQL Server

Πολλά πράγματα μέσα στον SQL Server γίνονται με βάση το LSN (Log Sequence Number). Αρκετές πάλι είναι οι ερωτήσεις που δέχομαι για αυτό και κυρίως αφορούν πως αυτό μεταφράζεται. Μέσα από αυτό το άρθρο θα προσπαθήσω να το εξηγήσω όσο καλύτερα και ευκολότερα γίνεται.

16 Oct 2017

Find missing indexes on foreign key constraints

Τα foreign keys όπως είναι γνωστό δεν φτιάχνουν κάποιον index στο reference table. Επίσης είναι γνωστό ότι καλό (αλλά όχι πάντα απαραίτητο) να φτιάχνουμε nonclustered index στο reference table στo field(s) που εμπλέκονται στο FK constraint.

25 Apr 2017

Why you must choose correctly the size of each field in a table

Κάθε φορά κατά την διάρκεια ενός μαθήματος ή μιας παρουσίασης που κάνω με θέμα το σχεδιασμό μιας database και των tables αυτής όταν επίμονα τονίζω ότι πρέπει να επιλέγουμε με πραγματικά κριτήρια το μέγεθος κάθε field που θα βάλουμε στο table και όχι με την λογική βάλε κάτι μεγάλο γιατί δεν ξέρεις τι θα γίνει στο μέλλον, με κοιτάνε αρκετοί περίεργα.

07 Oct 2016

Calculate the row size per table in a database

Σε συνέχεια από το άρθρο μου για τα Row Overflow Page έφτιαξα μια stored procedure που υπολογίζει το μέγεθος του row ανά table

21 Sep 2016

The sql_variant Data type

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

01 Sep 2016

To Shrink or Not to Shrink a database?

Μπορεί ο τίτλος στο συγκεκριμένο άρθρο μου να είναι άκρως Σαιξπηρικός αλλά αντικατοπτρίζει πλήρως την σύγχυση που υπάρχει γύρω από το αν πρέπει ή όχι να γίνεται shrink σε μια database. Δεν είναι λίγες οι φορές που έχω κατηγορηθεί για την επιμονή μου ότι κάτι τέτοιο δεν είναι καλό να γίνεται. Δεν είναι επίσης λίγες οι φορές που στην δουλειά μου έχω αρνηθεί να κάνω κάτι τέτοιο. Όπως επίσης δεν είναι λίγες οι φορές που έχω χαρακτηριστεί απόλυτος στο συγκεκριμένο θέμα. Τέλος είναι αμέτρητες οι φορές που έχω ερωτηθεί για την άποψη μου σχετικά με αυτό.

11 Jul 2016

Moving a table to another filegroup

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

09 May 2016

Why each database must have more than one data file?

Σε κάθε άνθρωπο που ασχολείται με τον SQL Server είναι γνωστό ότι μια database αποτελείται αρχικά από δύο αρχεία. Το ένα είναι το primary data file και είναι αυτό που έχει το .mdf extension και το transaction log file που είναι αυτό που έχει το .ldf extension.

04 Apr 2016

An easy way to have a database documentation

Όλοι θέλουμε να έχουμε ένα documentation για κάθε database που παραλαμβάνουμε από άλλους. Μάλιστα εκφράζουμε την δυσαρέσκεια μας όταν κάτι τέτοιο δεν υπάρχει, αλλά αν μας ζητήσουν να φτιάξουμε εμείς κάτι τέτοιο για την database που φτιάχνουμε τότε διαμαρτυρόμαστε ότι αυτό είναι χάσιμο χρόνου ή ότι δεν είναι η δουλεία μας κάτι τέτοιο. Μπορώ να καταλάβω τις διαφωνίες καθώς οι περισσότεροι θεωρούν ότι θα πρέπει να γράψουν καντάρια κειμένου. Αλήθεια πόσοι από εσάς έχετε πάρει τόμους τεκμηρίωσης στα χέρια σας και τα έχετε διαβάσει όλα;

15 Jan 2016

Converting numbers in a string with various format

Μερικές φορές κάποια πράγματα που επαναλαμβάνονται δίνουν κάποιο σημάδι που δεν πρέπει κανείς να αγνοεί. Ίσως είναι η πρώτη φορά που μου συμβαίνει κάτι τέτοιο καθώς μέσα σε διάστημα 12 ώρων μου τέθηκε πάνω από 10 φορές (σε παραλαγγές) η παρακάτω ερώτηση.

18 Nov 2015

List all CHECK constraints in your database

Συνεχίζουμε με τα χρήσιμα metadata queries και σε αυτό θα δούμε ακόμα ένα με το οποίο μπορούμε να πάρουμε μια συγκεντρωτική εικόνα όλων των check constraints που έχω στην database μου.

17 Nov 2015

List all DEFAULT Constraints in your database

Ακόμα ένα χρήσιμο metadata query για όσους θέλουν να έχουν συγκεντρωτική πληροφορία αυτή φορά για τα default constraints που έχουν στην βάση τους.

16 Nov 2015

List all IDENTITY Columns in your database

Συνεχίζοντας από το τελευταίο μου άρθρο σήμερα θα σας παρουσιάσω ακόμα ένα metadata query με το οποίο θα μπορώ να γνωρίζω τα tables που έχουν IDENTITY column, το data type που έχουν αυτές οι columns όπως επίσης από που ξεκινάνε (seed) πως μεγαλώνει η τιμή του (increment) και ποια είναι η τρέχουσα τιμή του.

20 Aug 2015

The Database Developer Role

Πρόσφατα συμμετείχα σε μια συζήτηση στην οποία αναφέρθηκε ο ρόλος του DB Developer. Μέσα από αυτή την συζήτηση διαπίστωσα ότι οι απόψεις για το τι είναι και κυρίως τι κάνει ένας DB Developer δεν είναι ξεκάθαρες. Θεωρώντας ότι είναι χρήσιμο να γνωρίζουμε τι είναι ο DB Developer ρόλος και πως αυτός τοποθετείτε στην αγορά εργασίας (ζήτηση/αμοιβή) τόσο στην χώρα μας όσο και στο εξωτερικό, αποφάσισα να γράψω το συγκεκριμένο άρθρο.  

22 Apr 2014

SQL Server 2014 and Windows Azure Blob Storage Service: Better Together - White paper

SQL Server 2014 introduces significant new features toward a deeper integration with Microsoft Azure, thus unlocking new scenarios and provide more flexibility in the database space for IaaS data models. This technical article will cover in depth SQL Server 2014 Data Files on Azure Blob storage service, starting from step-by-step configuration, then providing guidance on scenarios, benefits and limitations, best practices and lessons learned from early testing and adoption. Additionally, a fully featured example of a new (Windows Server Failover Clustering) - like feature will be introduced to demonstrate the power of Microsoft Azure and SQL Server 2014 when combined together.

22 Apr 2014

Introducing Microsoft Business Intelligence (BI) Tools - White paper

The intent of this article is to assist you with choosing the business intelligence (BI) tools that meet your organization’s BI needs. Microsoft provides a variety of BI tools that can address key workloads. The article discusses the workloads and the tools that best support each workload.

22 Apr 2014

Idle Connection Resiliency - White Paper

Describes the idle connection resiliency feature, which allows ODBC and SqlClient data access applications to maintain their connections to SQL Server 2014 or an Azure SQL Database

10 Apr 2014

SQL Server Protocols

Κατά την διάρκεια του χθεσινού μου μαθήματος είχα μια ερώτηση που επαναλαμβάνεται με μαθηματική ακρίβεια και αφορά τα sql protocols και πως αυτά χρησιμοποιούνται. Επειδή έχω δει ότι υπάρχει ένα σύννεφο γύρω από αυτό το θέμα γράφω αυτό το άρθρο φιλοδοξώντας να διώξω το σύννεφο αυτό. Όταν μια εφαρμογή επικοινωνεί με το SQL Server  Database Engine τα APIs που παρέχονται από τo protocol layer ελέγχουν την επικοινωνία αυτή χρησιμοποιώντας ένα format που έχει φτιάξει η Microsoft και το οποίο ονομάζετε Tabular data stream (TDS) packet.

20 Feb 2014

CREATE DATABASE Secrets

Όλοι κάποια στιγμή έχουμε φτιάξει μια database είτε με το γραφικό περιβάλλον είτε με DDL statement (CREATE DATABASE). Για αυτούς που είναι λάτρεις του κώδικα και φτιάχνουν μια database με script υπάρχουν κάποια κρυφά μυστικά που είναι καλό να γνωρίζουν ;-)

05 Jan 2014

The answer on question "Which is the best database?" is "It depends"

Ένα ερώτημα που μου έχει τεθεί τόσες φορές που έχω χάσει πλέον τον αριθμό. Αλήθεια υπάρχει απάντηση σε αυτό;

13 Aug 2013

FILESTREAM Best Practices from usage and experience

Από τον SQL Server 2008 υπάρχει ένα feature που είναι ιδανικό για BOL fields μέσα στην βάση. Αναφέρομαι φυσικά στο filestream. Προσωπικά το έχω χρησιμοποιήσει σε μεγάλο βαθμό σε μια εφαρμογή στην οποία αποθηκεύονται έγγραφα, φωτογραφίες υψηλής ανάλυσης. Θα ήθελα να προσθέσω μερικά ακόμα tips τα οποία προέρχονται 100% από την χρήση του σε μία βάση που το μέγεθος της είναι πολύυυυυυυυυυ μεγάλο.

11 Jun 2013

Adding new field in a table with default value is an online operation in SQL Server 2012 (another not popular feature)

Αν και πριν λίγες μέρες σας έγραφα για κάποια από τα νέα χαρακτηριστικά που έρχονται στον SQL Server 2014, δεν θα πρέπει να ξεχνάμε ότι έχουμε αυτή την στιγμή διαθέσιμα και τα οποία μας λύνουν ήδη τα χέρια στο SQL Server 2012. Ένα από αυτά που είναι διαθέσιμο στην Enterprise Edition του SQL Server 2012 (μόνο) και δεν έχει σχεδόν καθόλου πάρει την δημοσιότητα που του αρμόζει αν και λύνει αρκετά θέματα τόσο διαχείρισης όσο και απόδοσης είναι ότι όταν βάζουμε ένα νέο field σε ένα πίνακα στο οποίο θέλουμε να έχει default value αυτό είναι ένα απλό metadata operation.

16 Mar 2013

1979, Γεννηθήτω RDBMS

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

11 Mar 2013

Parameter Sniffing – What is and How to deal with it

Ένα από τα θέματα που σε κάποιες περιπτώσεις μας έχει ταλαιπωρήσει ιδιαίτερα αν δεν το γνωρίζουμε είναι το parameter sniffing.Επειδή όμως δεν ήθελα απλά να το περιγράψω σε ένα ίσως μακροσκελές κείμενο αποφάσισα να το κάνω ένα web cast.

08 Feb 2013

Database Lifecycle Management (DLM)

Για όλους εμάς που είμαστε data geeks και οι databases είναι τρόπος έκφρασης και ζωής αλλά και κάτι που όλοι χρησιμοποιούν είτε τους αρέσει είτε όχι έχουμε βασανιστεί πάμπολες φορές για το πώς να μεταφέρουμε αλλαγές από το development στο production αλλά και γενικότερα να έχουμε ένα db lifecycle management.

27 Jan 2013

TPC-VMS New Benchmark from TPC.ORG

TPC-VMS is the first specification in the industry that enables comparison of performance workloads running enterprise database applications across several virtual machines, TPC-VMS references current TPC specifications and, as a result, offers the industry a rapid means of running and reporting performance metrics for virtualized environments

03 Aug 2012

Your database in numbers

Πρωινή συζήτηση με συνάδελφο η οποία έφτασε να αξιολογούμε βάσεις και να μετράμε αντικείμενα σε αυτές. Κάποια στιγμή γράφω το παρακάτω query για να δω ανά object type τι πλήθος αντικειμένων έχω σε αυτό και ο συνάδελφος εντυπωσιάστηκε. Αν ποτέ το χρειαστείτε είναι το παρακάτω...

16 Jul 2012

Converting SQL Server Applications from OLE DB to ODBC

Όπως εδώ και καιρό έχει γίνει γνωστό από την ανακοίνωση της Microsoft ο SQL Server 2012 θα είναι η τελευταία έκδοση που θα υποστηρίζει τον SQL Server Native Client OLE DB provider καθώς αυτός θα πρόκειται να σταματήσει να αναπτύσσεται. Ο αντικαταστάτης του θα είναι ένας παλιός γνώριμος το ODBC...

14 Jun 2012

Using CONTEXT_INFO function–Another useful usage scenario

Αυτό που με εξιτάρει περισσότερο στην δουλειά μου και στην ενασχόληση μου με τον SQL Server είναι να βρίσκω λύση σε προβλήματα, αλλά και σε ποιον δεν αρέσει αυτό;

29 May 2012

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

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

06 Mar 2012

MVP Summit 2012 Summary

Έχοντας πλέον επιστρέψει από ένα εξαιρετικό MVP Summit αυτό του 2012 θα ήθελα να μοιραστώ μαζί σας την εμπειρία μου αυτή. Ξεκινώντας την Καθαρά Δευτέρα για το ταξίδι αυτό και έχοντας τις εμπειρίες μου από το προηγούμενο summit που είχα παρακολουθήσει το 2010 γνώριζα καλά τι με περιμένει. Αλλά αυτό το summit ήταν πραγματικό εξαιρετικό ιδιαίτερα για τους MVPs του SQL Server. Ήταν πολύ παραπάνω από τις προσδοκίες μου...

1 2 

|< < > >| 

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-2024 All rights reserved

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