Friday, January 23, 2009

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

SQL என்பதன் விரிவு என்ன?
Structured Query Language

SQLன் பயன்கள் யாவை?

Databaseன் தகவல்களைத் தேடி எடுப்பது,
புதிய தகவலை ஏற்றுவதற்கு,
பழைய விவரங்களை மாற்றுவதற்கு,
அழிப்பதற்கு மற்றும் இன்னும் நிறைய விசயங்களுக்கு SQL பயன்படுகிறது.
Database களில் இருக்கும் தகவல்களை எடுக்க / கொடுக்க SQL உதவுகிறது.

Query என்றால் கேள்வி, விசாரணை, தேடுதல் என அர்த்தம் கொள்ளலாம்.


சரி எடுத்த எடுப்பில் Database என ஆரம்பித்துவிட்டேன்.
அது என்ன Database?

பாய்ஸ் படத்தில் நடிகர் செந்தில், மணிகண்டனுடன் ஒரு கையடக்க நோட்டுப்புத்தகத்தை வைத்துக்கொண்டு ”எந்தக் கோவிலில் எந்த நேரத்தில் என்ன கொடுப்பார்கள்”? என புள்ளிவிவர அறிக்கை விடுவார்.

ஒரு வசனம் பேசுவார் - Information, Information is Wealth என்பார். அது யாரோ எழுதிக்கொடுத்த வசனம் அல்ல. எழுத்தாளர் சுஜாதா பாய்ஸ் படத்துக்காக எழுதிக்கொடுத்த வசனம்தான். இது ஒரு நகைச்சுவை உதாரணம்.

கீழே ஒரு எளிய Table வடிவம் ஒன்றைத் தருகிறேன்.

ஒவ்வொரு வகுப்பறைக்கும், ஒரு வருகைப்பதிவேடு வைத்திருப்பார்கள்.
அதில் மாணவர் பெயர், தேதி போன்றவை இருக்கும். அதில் தினமும் மாணவர் வந்திருக்கிறாரா? இல்லையா எனக் குறித்துக்கொள்வார்கள்.

மாத இறுதியில் ஒரு குறிப்பிட்ட மாணவர் எத்தனை நாட்கள் வந்திருந்தார்? அல்லது எத்தனை நாட்கள் வரவில்லை எனக் கணக்கிட்டுக்கொள்ளலாம்.

இதில் மாணவர் பெயர், தேதி முதலியவற்றை Field அல்லது Column எனலாம்.
மாணவரின் பெயர் எழுத்து வடிவில் இருக்கும்.
அதனை String / Character / Variable character என்போம்.

தேதி என்பது month-date-year அல்லது date/month/year போன்ற ஒரு வடிவில் அமைந்திருக்கும். இது இரண்டாவது Field ஆகும்.

மாணவர் பெயர் ---> character(50)
தேதி ---> datetime

ஒரு மாணவருக்காக எவ்வளவு எழுத்துகளை அதிகபட்சமாக ஒதுக்குகிறோம் என்பதே அடைப்புக்குறிக்குள் தரப்படுகிறது.

உதாரணமாக மாணவரின் பெயர் ‘Babu’ எனக் கொண்டால் அவருடைய பெயரின் எழுத்துக்களின் எண்ணிக்கை 4.
’valpaiyan @ Arun The Hero’ எனக் கொண்டால் அவருடைய பெயரின் ஒட்டுமொத்த எழுத்துக்களின் எண்ணிக்கை 25.

இப்படி ஒவ்வொருவரின் பெயரில் உள்ள எழுத்துக்களின் எண்ணிக்கை வித்தியாசப்படுகிறது. ஆகவே நாமாகவே ஒரு உச்சமதிப்பு ஒன்றை கொடுத்துவிடவேண்டும். இங்கே character(50) எனக் கொடுத்தால் Name என்கிற Field / Column ல் அதிகபட்சமாக 50 எழுத்துக்களைப் பதிவுசெய்ய இயலும் எனக் கொள்க.


மாணவர் பெயர் ---> character(50)
தேதி ---> datetime இவை இரண்டும் இரண்டு Column எனக் கொண்டால், இவற்றினை ஒட்டுமொத்தமாக ஒரு Table எனலாம்.

ஒரு Table என்பது பல Field களின் தொகுப்பு.

ஒரு Field என்பது குறிப்பிட்ட ஒரே மாதிரியான தகவலின் தொகுப்பு.

ஒவ்வொரு Fieldலும் நாம் பதிவு செய்யப்போகிற தகவலின் அடிப்படையில், எந்த மாதிரியான தகவலைப் பதிவு செய்யப் போகிறோம் என்பதை அதன் Data Type மூலம் நிர்ணயிக்கலாம்.

மாணவரின் பெயரை character(50) என்றோம். இங்கே 50 என்பது எத்தனை எழுத்துக்கள் என்பதைக் குறிக்கிறது. character என்பது ஒரு Data Type ஆகும்.

தேதி --> datetime இங்கு datetime என்பது மற்றொரு வகை Data Type ஆகும்.

எழுத்துக்களைப் பதியும்போது character, எண்களைப்பதியும்போது numbers (int,bigint,decimal,float). தேதியைக் குறிக்கும்போது datetime என ஒவ்வொரு வகையான தகவலுக்கும் ஒவ்வொரு DataType உள்ளது.

ஆகவே Data Type என்பது தகவலின் வகையைக் குறிப்பதாகும்.

SQL வாயிலாக ஒரு Table ஐ உருவாக்க / மாற்ற / அழிக்க / தகவலைத் தேட இயலும்.

Table என்பதில் பல Columns இருக்கும். ஒவ்வொரு Columnன் தகவலின் வகையை DataType மூலம் நிர்ணயிக்கலாம். எவ்வளவு எழுத்துகள் என்பதை அடைப்புக்குறிக்குள் சொல்கிறோம்.

உங்கள் கணினியில் SQL கட்டளைகளை இயக்கிப் பார்ப்பதற்காக Microsoft SQL Server 2005 Express Edition மென்பொருளை இலவசமாகத் தரவிறக்கி உங்கள் கணினியில் நிறுவிக்கொள்ளவும்.

பின் குறிப்பு : வாரத்திற்கு 2 முறையாவது இந்த எளிய தமிழில் SQL என்கிற தொடர் பதிவுகளை அளிக்கலாம் என முன்வந்துள்ளேன். உங்கள் ஆதரவு தேவை.

பல பதிவுகளை பிற ஆங்கில வலைப்பூக்களில் இருந்து மொழிபெயர்த்துப் போட்டிருக்கிறேன். அதற்கு ஆதரவளித்த அன்புள்ளங்களுக்கு நன்றி. அதுபோல இந்தத் தொடரின் வெற்றி உங்கள் கையில்தான் உள்ளது.

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

இங்கே இனிவரும் காலங்களில் நான் கொடுக்கப்போகும் உதாரணங்களை இயக்கிப் பார்க்க இந்த இலவச மென்பொருளை உங்கள் கணினியில் நிறுவிக்கொள்ளவும்.

http://www.microsoft.com/downloads/details.aspx?FamilyID=220549b5-0b07-4448-8848-dcc397514b41&DisplayLang=en

எனது நோக்கம் என்னவெனில் இந்தத் தொடரின் மூலம் புதியவர்களுக்கு Database பற்றியும், SQL பற்றியும் அறிந்துகொள்ளும் ஒரு வாய்ப்பை உருவாக்கித் தருவதே.

நன்றிகளுடன்,

தமிழ்நெஞ்சம்.

36 comments:

முகவை மைந்தன் said...

அருமையா இருக்கு! வாழ்த்துகள் தமிழ் நெஞ்சம். அடிக்கடி வர்றேன்.

ஜி என் said...

தேவையான பதிவு பலருக்கு பயனளிக்கும். வாழ்த்துக்கள் தொடருங்கள்.

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

நன்றி தமிழ்நெஞ்சம்.

Unknown said...

hai its very helpfull for tamil medium people

great post keep on post

Tech Shankar said...

Thanks to : i, வடுவூர் குமார் , ஜி என் ,முகவை மைந்தன்

gowrisankar said...

it is very useful artical

Tech Shankar said...

Thanks to : gowri

Anonymous said...

தமிழில் XML சொல்லிக்கொடுத்தா உங்களுக்கு புண்ணியமாப் போகும்

ஜீவா said...

தமிழ் நண்பருக்கு,வாழ்த்துக்கள். மிக நன்றாக உள்ளது மற்றும் பயனுள்ளதும் கூட, once again thanks to you

ஜீவா said...

சில பேருக்கு தான் தோன்றுகிறது ,தான் கற்றதை மற்றவர்களுக்கும் சொல்லி தருவதற்கு

இது போல perl, unix shell கற்றுக்கொள்ள தங்களுக்கு தெரிந்த தளங்கள் இருந்தால் சொல்லவும்

M.Rishan Shareef said...

மிகவும் பயனுள்ள பதிவு நண்பரே..தொடர்ந்து வருகிறேன். நன்றி !

subramanian said...

excellent idea execution. i appreciate your efforts and shall try to absorb all that you have to offer. thanks. nat yet proficinet in typing in tamil.

Tech Shankar said...

Thanks to : மகா, ஜீவன் & ஜீவன்,எம்.ரிஷான் ஷெரீப், subramanian

sridhar6886 said...

thanks i follow u.....................

Tech Shankar said...

Thanks to : sridhar6886

tamilnadu revolution said...

very nice,,,,, keep it up.....

Tech Shankar said...

Thanks : tamilnadu revolution

Unknown said...

Thank you. I was thinking about to learn, and this article motivated me to learn. I have taken as wonderful opportunity to learn.

Tech Shankar said...

Thanks to : prabu

yagneswar said...

Really good effort.

velumani

Tech Shankar said...

Thanks to : yagneswar @ velumani

rajaraman_ecs said...

தமிழ்நெஞ்சம் அவர்களுக்கு எனது நன்றி,

மேலும் Microsoft SQL Server 2005 Express Edition install செய்யும் முறையினை தமிழில் முழுமையாக விளக்கினாள் நன்றாக இருக்கும்.

அன்புடன்

G.ராஜாராமன் சவுதி அரேபியா

Tech Shankar said...

Hi, G.ராஜாராமன் சவுதி அரேபியா

Now We are into SQL Server 2008 Expression Edition

Thanks

rajaraman_ecs said...

மிகவும் அழகாகவும், தெளிவாகவும் இத்தொடரை அளித்துக்கொண்டு இருக்கின்ற தமிழ்நெஞ்சத்தர்க்கு எனது மனமார்ந்த நன்றி மேலும் இதற்க்கு பயன்டுத்தப்படும் sql software install செய்யும் முறையினை பற்றி ஒரு தனி பதிப்பாக வெளியிட்டாள் நன்றாக இருக்கும் என்பது எனது தாழ்மையான கருத்து....

நன்றியுடன்

G. ராஜாராமன் சவுதி அரேபியா

Tech Shankar said...

Hi G. ராஜாராமன் சவுதி அரேபியா

I will try to post it soon. Thanks

Tech Shankar said...


எளிய ஆங்கிலத்தில் இருக்கிறது. முயற்சித்துப் பாருங்கள். திரு. G. ராஜாராமன் சவுதி அரேபியா

Unknown said...

thanx tamizh

Tech Shankar said...

Thanks to : dubeer

rajaraman_ecs said...

என் இனிய நண்பர் தமிழ்நெஞ்சத்தார்க்கு நன்றி கலந்த வணக்கம்,

உங்கள் அனைத்து தொடர்கலும் மிகவும் அழகாக இருக்கிறது நான் புதியதாக sotware developing ல் இறங்க உங்கள் தொடர் ஒரு வரப்பிரசாதமாக கருதுகிறேன்.

நன்றியுடன்

G. ராஜாராமன், சவுதி அரேபியா

Tech Shankar said...

Thanks to : G. ராஜாராமன், சவுதி அரேபியா

Sharah said...

Good Work ...

Tech Shankar said...

Thanks to : Spice

Unknown said...

Continue you, Your service to this Passage......We are support to you.....by Paul.

Unknown said...

My Thanks to you...continue to your service in this passage....we are all support to you..by paul

Kalifa said...

Thanks,, வாழ்த்துக்கள் தொடருங்கள். தான் கற்றதை மற்றவர்களுக்கும் சொல்லி தருவதற்கு நண்பருக்கு,வாழ்த்துக்கள். மிக நன்றாக உள்ளது மற்றும் பயனுள்ளதும் கூட

Raghu said...

அருமையா இருக்கு! வாழ்த்துகள் தமிழ் நெஞ்சம்.

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

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