sqlschool.gr logo

search results

searching on site content

15 May 2020

Count words in a string variable or table column

Σε αυτό το άρθρο παρέχουμε μια user defined function με την οποία μπορούμε να αριθμήσουμε το πλήθος των λέξεων που υπάρχει σε ένα string variable ή table field, με θεωρούμε αρκετά βέλτιστο τρόπο.

14 Sep 2015

Monitor Connection Pooling as SQL Server DBA

Το connection pooling είναι μια cache από database connections που σκοπό έχει αυτά που είναι ελεύθερα στην cache αυτή να μπορούν να επαναχρησιμοποιηθούν κάθε φορά που κάποιος ζητάει να κάνει connect στην database.Η χρησιμότητα του connection pooling είναι αρκετά σημαντική στην εκτέλεση διαδικασιών πάνω στην database από το application καθώς με αυτό τον τρόπο γίνεται αφενός γρηγορότερη επικοινωνία αφετέρου καταναλώνονται λιγότεροι πόροι.

03 Sep 2012

T-SQL Split Function

Αν και πιστεύω ότι αρκετοί θα έχετε υλοποιήσει κάτι τέτοιο εντούτοις σας παραδίδω και την δικιά μου εκδοχή που κάνει parse ένα string με delimiters και επιστρέφει ένα πίνακα με τα αποτελέσματα της εκτέλεσης.

23 Feb 2011

When dynamic SQL might be the BEST way!

Πριν μερικές μέρες είχα δημοσιεύσει ένα άρθρο “Dynamic SQL ή μήπως μπορώ και αλλιώς;”. Σήμερα διάβασα το παρακάτω άρθρο της Kimberly Trip το οποίο καλύπτει μια άλλη πτυχή την οποία δεν είχα καλύψει στο δικό μου.

28 May 2014

PARSENAME T-SQL Function

Σαν DBA αλλά και DB Developer έχεις την ανάγκη να διαβάσεις metadata για να κάνεις την δουλειά σου. Αρκετές είναι οι φορές που τo όνομα του object που παίρνεις είναι full qualified name δηλαδή περιέχει server, database, schema, και φυσικά το όνομα του και ανά περίπτωση θέλεις να πάρεις κάποιο από αυτά. Μην ψάχνεις να δεις πως θα τα κάνεις…

13 Jan 2013

AlwaysOn Availability Groups Vs Database Mirroring

Ποιο θεωρείς ότι είναι το μεγαλύτερο ατού των AlwaysOn Availability Groups; Για μένα ήταν οι πολλαπλές replicas και το ότι μπορείς να τρέχεις OLTP jobs στην primary και reporting στις secondaries. Μετά όμως άρχισα να καταλαβαίνω ότι αυτό μπορούσες να το υλοποιήσεις  και πριν τον 2012 με το database mirroring  και manual configuration του backup ή reporting στους secondaries. Άρα; Υπάρχει κάποιο αυτόματο brokering ή απλά γλυτώνει ο administrator άπειρο χρόνο σε ρυθμίσεις και στο να είναι σίγουρος ότι αυτό που έστησε δουλεύει;

06 Sep 2012

How to clear HTML/XML Tags from a string

Σε αυτό το post θα σας παρουσιάσω ένα θέμα το οποίο είναι κάτι που αντιμετωπίζουν οι web developers και ιδιαίτερα αυτοί που ασχολούνται με Content Management Systems (CMS). Όπως είναι γνωστό σε αυτά αποθηκεύουμε το περιεχόμενο που βάζουμε στα sites μας, είτε σαν HTML, είτε σαν XML ή κάτι άλλο. Αρκετές είναι οι περιπτώσεις που χρειαζόμαστε να αντλήσουμε από αυτά μόνο το καθαρό περιεχόμενο αγνοώντας δηλαδή τα διάφορα HTML/XML tags.

03 Feb 2012

The SQL Server Browser service

Αν και είμαι σχεδόν σίγουρος ότι αρκετοί γνωρίζουν το συγκεκριμένο services, εντούτοις έχω εντοπίσει ότι υπάρχουν κενά στην γνώση γύρω από το συγκεκριμένο. Καθημερινά το βλέπω αυτό σε αρκετές εγκαταστάσεις...

25 Jun 2017

Using LINQ to parse Extended Event Files

Ξεκινώντας από την έκδοση 2012 του SQL Server η Microsoft προσφέρει μαζί με τα SQL Server Management Objects και το Extended Events Reader API το οποίο περιέχει το Microsoft.SqlServer.XEvent.Linq dll το οποίο μας δίνει την δυνατότητα να ανοίξουμε ένα connection προς ένα event file (.xem, .xel) και να διαβάσουμε, αναλύσουμε και παρουσιάσουμε τα δεδομένα που έχουμε κάνει capture με ένα extended event session.

01 Jan 2010

Connection strings for SQL Server 2008

Για τους αγαπητούς μου developers και όχι μόνο ;-) στο παρακάτω Link υπάρχουν παραδείγματα για το πως να φτιάξουν το connection string με το οποίο θα συνδέσουν την εφαρμογή τους με τον SQL Server 2008.

09 Jan 2019

Cosmos DB Querying and Manipulate data

Σε κάθε database το βασικό και πρακτικό ερώτημα είναι το πως διαβάζω και επεξεργάζομαι δεδομένα και αυτά παρουσιάζονται στο άρθρο αυτό.

21 Aug 2009

“SQL Server Setup unexpectedly failed. For more information, review the Setup summary log file...". Μήνυμα κατά την στιγμή της εγκατάσταση του SQL Server 2005 Express σε Windows XP με SP3.

Σήμερα αντιμετώπισα ένα μήνυμα λάθους που δεν το είχα ξαναδεί μέχρι τώρα Ο φίλος Νίκος Κοασίδης από την Θεσσαλονίκη προσπαθούσε να στήσει την Express έκδοση του SQL Server 2005 σε windows xp ελληνικά με sp3. Βέβαια αυτό μπορεί να συμβεί και στις άλλες εκδόσεις. Με το που ξεκινούσε την εγκατάσταση εμφάνιζε το μήνυμα λάθους “SQL Server Setup unexpectedly failed. For more information, review the Setup summary log file..." ...

23 Jan 2016

In-sync databases backups and restores

Για τους περισσότερους ένα application έχει μια database. Αυτό απολοποιεί σε μεγάλο βαθμό κάποια πράγματα και ένα από αυτά είναι και το backup της database. Ακόμα και σε αυτή την περίπτωση όμως πρέπει να ληφθούν σοβαρά όλες οι παράμετροι όπως το RPO και το RTO. Τα πράγματα όμως παίρνουν μια άγρια ομορφιά όταν πίσω από την εφαρμογή σου υπάρχουν περισσότερες από μια databases. Σενάρια για μια τέτοια κατάσταση υπάρχουν αρκετά όπως για παράδειγμα να έχεις μια OLTP database που ενημερώνει μια MIS database ή να έχεις δύο OLTP databases που ενημερώνονται παράλληλα κατά την διάρκεια των transactions που υλοποιούνται από το application.

18 Jul 2015

Introduction to Relational Algebra pt2: Βασικοί σχεσιακοί τελεστές

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

18 Jul 2014

Add/Remove Leading/Trailing Zero with T-SQL and SSIS

Στο περιβάλλον εργασίας μου υπάρχουν αρκετές διαδικασίες που ανταλλάσσουν δεδομένα μεταξύ ετερογενών συστημάτων. Κάποια από αυτά είναι legacy και ενώ έχει γίνει μια φανταστική δουλειά να μιλάνε τα συστήματα αυτά μέσω services, εντούτοις υπάρχουν κάποιες μικρές ιδιαιτερότητες. Μια από αυτές είναι με τα νούμερα που τα legacy θέλουν συγκεκριμένο πλήθος ψηφίων με leading zero και φυσικά δίνουν τα αποτελέσματα με αυτό το format.

22 Oct 2012

How to write scripts for SQL Server Reporting Services RS.EXE utility using Visual Studio

Δεν είναι λίγες οι φορές που θέλουμε να αυτοματοποιήσουμε διαδικασίες ή να κάνουμε εργασίες μαζικά χωρίς να μπλέκουμε με το UI στα SQL Server Reporting Services. Για να κάνουμε κάτι τέτοιο πολλές φορές θα χρειαστεί να γράψουμε κάποιο script σε Visual Basic .NET το οποίο θα πρέπει να εκτελεστεί με το rs.exe utility που έχουν τα SSRS.

07 Dec 2009

Implement Database Mirroring in SQL Server 2008

Ένα από τα πράγματα τα οποία προσωπικά θεωρώ από τα διαμάντια του SQL Server που έχουμε διαθέσιμα από την έκδοση του SQL Server 2005 (Standard & Enterprise) SP1 είναι το Database Mirroring. Μέχρι την εμφάνιση του για να έχω αυτό που όλοι θέλουμε και δεν είναι άλλο από το database availability έπρεπε να καταφύγουμε σε κάποιες λύσεις όπως...

18 Jun 2014

Database Design Counts

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

28 Apr 2013

How to concatenate the values of a field to one column for all records of a table

Αν και δεν είναι κάτι το συνηθισμένο εντούτοις κάποια στιγμή θα σας έχει έρθει ή θα σας έρθει η ανάγκη για κάτι σαν αυτό που θα σας δώσω σαν tip στο συγκεκριμένο post. Έχω ένα πίνακα που έχει Ν πλήθος εγγραφών και θέλω σε ένα πεδίο του να πάρω όλες τις τιμές του από αυτές τις εγγραφές και να τις έχω σαν ένα πεδίο. Με άλλα λόγια θέλω να κάνω string concatenate

31 Dec 2012

2012 Review

Τελευταίο post για το 2012 και όπως συνηθίζεται σε αυτό γίνεται ένας απολογισμός της χρονιάς που πέρασε. Μια χρονιά που όλους μας ταλαιπώρησε είτε περισσότερο είτε λιγότερο.

09 Aug 2017

Show execution progress to SSMS message tab during stored procedure execution

Σήμερα έφτιαξα μια αρκετά περίπλοκη stored procedure η οποία έκανε μια μεγάλη σε διάρκεια διαδικασία και αυτή την επικοινώνησα με συναδέλφους για να τους εξηγήσω τι ακριβώς κάνει. Ένας συνάδελφος εντυπωσιάστηκε με το γεγονός ότι στο SSMS Message tab εμφανίζονταν διάφορα μηνύματα με τα οποία μπορούσε να ελέγξει το execution progress και φυσικά ρώτησε πως αυτό το έχω φτιάξει. Η απάντηση είναι εξής

05 Jul 2009

Παρουσίαση του Activity Monitor στον SQL Server 2008

Πριν ξεκινήσω να περιγράφω το συγκεκριμένο εργαλείο, οφείλω να καταθέσω την άποψη μου γι’ αυτό. ΕΙΝΑΙ ΚΑΤΑΠΛΗΚΤΙΚΟ!!!. Όσοι έχετε ασχοληθεί από παλία με τον SQL Server, προσωπικά ασχολούμαι από την έκδοση 6.0 (1996), θα έχετε παρακολουθήσει την εξέλιξη του συγκεκριμένου εργαλείου. Σε κάθε έκδοση είχαμε κάποιες βελτιώσεις. Όμως στην έκδοση του SQL Server 2008 πιστεύω ότι έχουμε τις περισσότερες αλλά και τις σημαντικότερες βελτιώσεις.

17 Feb 2015

Getting Started : Writing T-SQL (Part 1)

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

15 Aug 2013

How to localize Reports in SQL Server Reporting Services

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

04 Jan 2012

5 Tips for a Smooth SSIS Upgrade to SQL Server 2012

ΚΑΛΗ ΧΡΟΝΙΑ ΜΕ ΥΓΕΙΑ ΣΕ ΟΛΕΣ ΚΑΙ ΟΛΟΥΣ. Για ακόμα μια χρονιά και εγώ όπως και αρκετοί ακόμα έλαβα το email που με ενημέρωνε ότι συνεχίζω να είμαι MVP στον SQL Server. Τι καλύτερο να γιορτάσω την ανανέωση αυτή με ένα post.

27 Aug 2009

Παρουσίαση του Resource Governor στον SQL Server 2008.

Μέσα σε έναν οργανισμό θα συναντήσουμε πολλές batabase οι οποίες περιέχουν business-critical data. Πάνω από αυτές θα βρούμε applications τα οποία διαχειρίζονται τα δεδομένα αυτά. Καθώς ο όγκος των δεδομένων γεωμετρικά αυξάνετε, αλλά και ο αριθμός των χρηστών που ζητούν πρόσβαση σε αυτά μεγαλώνει, είναι κατανοητό σε όλους ότι η διαθεσιμότητα των δεδομένων πρέπει να είναι αδιάλειπτη, όπως επίσης και η ταχύτητα απόκρισης στα ερώτημα και στα transactions των χρηστών πρέπει να είναι μεγάλη και σταθερή. ...

07 Oct 2017

SOME T-SQL IMPLICIT CASTING TRAPS

Είναι γνωστό ότι τα implicit casts κρύβουν κινδύνους και ειδικά μέσα στα queries μας τα αποφεύγουμε. Παρόλα αυτά είναι καλό να ξέρουμε πως συμπεριφέρονται στον SQL Server και τι να περιμένουμε στο αποτέλεσμα.

19 Jan 2021

Dynamic Data Masking

Tο Dynamic Data masking (DDM) είναι μια αναδυόμενη τεχνολογία που στοχεύει στην κάλυψη δεδομένων σε πραγματικό χρόνο (on the fly) των δεδομένων παραγωγής και αλλάζει τη ροή δεδομένων έτσι ώστε ο αιτών(Non-Privileged User) να μην έχει πρόσβαση στα ευαίσθητα δεδομένα, ενώ δεν πραγματοποιούνται φυσικές αλλαγές στα πραγματικά δεδομένα μιας παραγωγικής βάσης.

07 Mar 2020

A lazy man solution

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

08 Nov 2012

Export data to Excel File using pure T-SQL (New Version)

Πριν από τρία χρόνια είχα γράψει ένα post με αυτό το θέμα. Το συγκεκριμένο post είναι από τα δημοφιλή θα έλεγα και έχει αρκετούς, από όσο γνωρίζω που έχουν χρησιμοποιήσει την συγκεκριμένη πρόταση.Παρόλα αυτά όμως το παλαιό post χρειάζεται ένα refactoring καθώς από τότε που γράφτηκε μέχρι σήμερα έχουν μεσολαβήσει αρκετές αλλαγές που σε αρκετές περιπτώσεις δεν θα δουλέψει. Για αυτό σε αυτό δίνω μια νέα βελτιωμένη εκδοχή.

01 Sep 2012

Implementing Fuzzy string matching/comparing

Πολλές φορές χρειαζόμαστε σε strings να κάνουμε συγκρίσεις για το αν αυτά είναι όμοια ή πόσο κοντά είναι το ένα στο άλλο. Αυτό όπως καταλαβαίνει κανείς εγκυμονεί αρκετούς κινδύνους, παραδοχές και πολλά ακόμα που πρέπει να λάβουμε υπόψη, ειδικά αν δεν έχουμε βάλει αυστηρούς ελέγχους στο τι πληκτρολογεί ο χρήστης. Παρ’ ότι στον SQL Server έχουμε την SOUNDEX και την DIFFERENCE υπάρχουν περιπτώσεις που δεν μας είναι αρκετές για ικανοποιήσουμε τις ανάγκες μας. Για αυτές τις περιπτώσεις θα πρέπει να δράσουμε κάπως διαφορετικά και θα πρέπει να δημιουργήσουμε εμείς κάτι το οποίο να καλύπτει τις ανάγκες αυτές

08 Oct 2020

Monitoring Disk Free Space for all SQL Server volumes

Είναι πραγματικά άδικο, σαν DBA, να ξεκινάει η μέρα σου με προβλήματα που αφορούν την χωρητικότητα των volumes που περιέχουν τα αρχεία των database που έχεις σε ένα SQL Server instance.

27 Aug 2020

Remove non printable chars from a string

Η καταχώρηση δεδομένων σε μία εφαρμογή πάντα πρέπει να περιλαμβάνει κανόνες για να εξασφαλιστεί η ποιότητα των δεδομένων και η σωστή μελλοντική επεξεργασία τους.

21 May 2020

Convert a Number to Time

Η προγραμματιστική λογική είναι εξαιρετική αρκεί να ακολουθεί το χρυσό κανόνα της απλότητας.

06 Dec 2020

SQL Server resultset as formatted Excel spreadsheet attachment in ANSI format.

Αφού ρυθμίσουμε το Database Mail στο SQL Server έχουμε τη δυνατότητα χρησιμοποιόντας την εντολή sp_send_dbmail να στείλουμε ηλεκτρονικά μηνύματα με τη σύνταξη που ορίζει η Microsoft. Συμπεριλαμβάνονται φυσικά και τα συννημένα αρχεία (attachments) αλλά σε ότι αφορά τα υπολογιστικά φύλλα του Excel συναντώνται 2 προβλήματα.

12 Jun 2020

The NULLIF expression

Σε αυτό το άρθρο ασχολούμαστε με το NULLIF expression, το οποίο αν χρησιμοποιηθεί κατάλληλα, μπορεί να δώσει πολλαπλά κέρδη τόσο στην απλότητα του query όσο και στην απόδοση του. Υποστηρίζεται σε SQL Server, Azure SQL Database, Azure Synapse Analytics (SQL DW) και Parallel Data Warehouse.

24 May 2018

The money data type

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

14 Aug 2011

How to execute an SSIS Package form a .NET Application.

Συχνά έχω την ερώτηση από μαθητές μου αλλά και από συνεργάτες που ήταν συνηθισμένοι με τα SQL Server 2000 DTS όπου υπήρχε η δυνατότητα να κάνουν export αυτά σε VB code module και να τα καλούν μέσα από τις εφαρμογές τους, πως μπορούν να κάνουν το ίδιο ή σχεδόν το ίδιο με τα SSIS packages.

14 Jun 2020

The QUOTENAME and CONCAT_WS string functions

Αν και είναι ένα μικρό άρθρο αυτό, εντούτοις θεώρησα ότι πρέπει να το γράψω καθώς βλέπω ότι κάποιοι ταλαιπωρούνται αδίκως όταν γράφουν κώδικα ειδικά όταν αυτός πρέπει να περιέχει object names πχ tables, fields, views, stored procedures.

15 Jan 2016

Converting numbers in a string with various format

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

06 Jan 2019

Cosmos DB Indexes

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

26 Apr 2015

Getting Started : Writing T-SQL (Part 2)

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

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.