Friday, January 30, 2009

எளிய தமிழில் SQL - பாகம் 8

How to install Sql Server 2005 Expression Edition?


ஏழாவது பாகத்தில் Relational operators, மற்றும் Logical Operators ஆகியவற்றைப் பார்த்தோம்.

Relational Operatorsல் <, >, >=, <=, =, != , <> போன்றவை வரும்.
Logical Operatorsல் AND, OR, NOT போன்றவை வரும்.

ஒரு குறிப்பிட்ட மதிப்பானது அதிகமா, குறைவா, சமமா, சமமில்லையா என சோதித்தறிய Relational Operators பயன்படுத்தலாம்.

ஒன்றுக்கு மேற்பட்ட கட்டுப்பாடுகளைத் தொடர்புபடுத்தி விடைகாண்பதற்கு Logical Operators பயன்படுத்தலாம்.

கணிதச் சமன்பாடுகளை, கூட்டல்,கழித்தல்,வகுத்தல்,பெருக்கல் போன்ற கணக்குகளைச் செய்வதற்காக Arithmetic Operators உள்ளன.

அவை :
+ கூட்டல் (Addition)
- கழித்தல் (Subtraction)
* பெருக்கல் (Multiplication)
/ வகுத்தல் (Division)

உதாரணம்:

DECLARE @a int
DECLARE @b int
DECLARE @c int

SET @a = 100
SET @b = 150
SET @c = @a + @b

PRINT @c

மேலே ஒரு எளிய T-SQL நிரல் (Program) ஒன்றைக் கொடுத்துள்ளேன்.
@a, @b, @c ஆகியவை Variable எனப்படும். அதாவது மாறிகள். ஒவ்வொரு மாறிகளுக்கும் தனித்தனி மதிப்புகளைக் கொடுக்கிறோம். அதற்கு SET என்னும் keyword பயன்படும்.
SET @c = @a + @b என்பதில் a, மற்றும் b ஆகிய இரண்டின் மதிப்பையும் + என்கிற கூட்டல் (Addition - Arithmetic Operator) அடையாளத்தைப் பயன்படுத்திக் கூட்டிக் கிடைக்கின்ற விடையை @c மூன்றாவது மாறியில் போட்டுவிடு - என அர்த்தம்.

PRINT @c எனக் கொடுத்ததும் cன் மதிப்பு 250 எனத் திரையில் காட்டும்.

மேற்கூரிய எளிய நிரலில் + எனப்படும் ஒரு Arithmetic Operator பயன்படுத்தியுள்ளோம்.
இது போல எளிய நிரல்களை எழுதிப் பாருங்கள்.

இந்த நிரல்களை எழுதி விடை காண SQL Server Expression Edition 2005ல் நாம் என்ன செய்ய வேண்டும். அதன் வழிமுறைகளைக் காண்போம்.

உங்கள் Authentication எதுவாக இருக்கிறதோ அதைத் தேர்வு செய்தபிறகு, Connect ஐ அழுத்தவும்.
திரையில் Object Explorer என்னும் ஒரு Window தெரியும்.

அதில் பாகம்-5ல் நாம் ஏற்கனவே உருவாக்கிய Test எனப்படும் Database ஐத் தேர்வுசெய்யவும்.

File ==> New ==> Query with New Connection இதைக் கிளிக்கவும்.

உடனே ஒரு வெள்ளைத் திரை கண் முன்னர் நிற்கும். இதுதான் T-SQLக்கான Editor. இதில் நாம் நிரல்களை எழுதிப் பழகலாம்.

நிரல் எனப்படும் Programஐ எழுதிய பிறகு அதை இயக்கிப் பார்க்க F5 விசையை அழுத்தவும்.

இந்த Programன் விடை கீழே உள்ள சட்டத்தில் 250 எனக் காட்சியளிக்கும்.



இந்த programல் சில இடங்களில் நான் வேண்டுமென்றே தவறு செய்கிறேன். பிழைச்செய்தி எப்படி வருகிறது என்பதைக் காண்பதற்காகத்தான்.
DECLARE @a int
DECLARE @b int
DECLAR @c int ---> தவறு (1) ஒரு E எழுத்தை விட்டுவிடுகிறேன்.

SET @a = 100
SET @b = 150
SET @c = @a + @b

PRINTT @c ----> தவறு (2) ஒரு T எழுத்தை அதிகமாகக் கொடுக்கிறேன்.

இப்போது F5 key ஐ அழுத்தி விடையை எதிர்பார்த்தால் என்ன கிடைக்கிறது?

Msg 102, Level 15, State 1, Line 3
Incorrect syntax near 'DECLAR'.
Msg 137, Level 15, State 1, Line 6
Must declare the scalar variable "@b".
Msg 137, Level 15, State 2, Line 7
Must declare the scalar variable "@b".


எந்தெந்த வரிகளில் பிழைகள் என்பதைக் கீழே உள்ள சட்டத்தில் காட்டிவிடும். பிழைகளைச் சரிசெய்தபிறகுதான் விடை கிடைக்கும்.

இன்றையத் தேதி என்னவென்பதை T-SQL வாயிலாக எப்படிக் கண்டுபிடிப்பது?

DECLARE @today datetime
SET @today = getdate()
PRINT @today

இங்கே @today என்பது ஒரு மாறி (Variable). அதனுடைய Data Type ஆனது datetime வகையைச் சேர்ந்தது.

getdate( ) என்பதை Function என்போம். இந்த Function ஆனது இன்றைய தேதிநேரத்தைக் கண்டறிய உதவும். அதை @today ல் பதிந்துவிடும்.


PRINT @today எனக் கொடுத்ததும் கிடைத்த விடை :
Jan 30 2009 11:32PM

இதை மிகச் சுருக்கமாக : PRINT getdate( ) என்றும் கொடுக்கலாம்.


குறிப்பு : எழுதிய program ஐ இயக்கி / ஓட்டி / run / execute செய்து பார்ப்பதற்கு F5 விசையை keyboardல் அழுத்த வேண்டும்.

4 comments:

நசரேயன் said...

நல்ல முயற்சி வாழ்த்துக்கள்

Tech Shankar said...

Thanks to : நசரேயன்

வடுவூர் குமார் said...

sql 2008 யில் default function ஆன GETDATE மட்டும் போட்டால் பிழைச்செய்தி வரும்.
() தேவை.

வடுவூர் குமார் said...

ஒரு column யில் தேதி-மாதம்-வருடம் என்று இருப்பதற்கு எந்த மாதிரியான ஆப்பரேட்டர்/Function தேவை?

எளிய தமிழில் SQL - பாகம் 17

பாகம் 15ல் திரு G. ராஜாராமன், சவுதி அரேபியா அவர்கள் கீழ்க்கண்ட கேள்வியை எழுப்பி இருந்தார். அவருக்கு விடையளிக்கும் விதமாக இந்தப்பதிவு அமைகிற...