Tuesday, February 18, 2014

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

இதன்மூலம் Front End, back end போன்றவற்றைத் தெரிந்துகொள்வதுடன் அவை எதற்காகப் பயன்படுகின்றன என்பதையும் அறிந்துகொள்வீர்கள்.

கேள்வி :

மிகவும் அழகாக தொடரை வழங்கிக் கொண்டு இருக்கின்ற நண்பருக்கு மிக்க நன்றி. நண்பரே எனக்கு ஒரு சந்தேகம் உள்ளது. அதனை தாங்கள் தீர்ப்பீர்கள் என நம்புகிறேன்.

எனது அலுவலகத்தில் Inventory Sotware பயன்படுத்துகின்றனர். இந்த Inventory sotware ஐ கணிப்பொறியில் C அல்லது D ஏதேனும் ஒரு கோலனில் ( partition) copy & paste செய்துள்ளனர். பிறகு இதற்க்காக oracle developer 6i மற்றும் Power builder 5 ஐ install செய்துள்ளனர். பிறகு Paste செய்துள்ள Inventory software ல் உள்ள inventory.exe எனும் file ஐ click செய்தாள் inventory வேலை செய்கிறது. மேலும் இதன் மூலம் உள்ளீடு செய்யப்படுகின்ற தகவல் அனைத்தும் எங்கள் அலுவலகத்தில் தனியாக வைத்துள்ள server ல் பதிவாகிறது. இந்த Inventory software ஆனது network ல் system ல் மட்டும் வேலை
செய்கிறது.

எனது சந்தேகம் Oracle, Power Builder மற்றும் எங்களது Inventory software இவை மூன்றுக்கும் என்ன தொடர்பு?

எங்கள் அலுவலகத்தில் Inventory software எந்த software பயன்படுத்தி Create பண்ணியுள்ளனர். மேலும் நாம் பார்துவரும் sql serverக்கும் நான் மேலே கூரியவைகளுக்கும் ஏதேனும் தொடர்பு உள்ளதா? sql server ஐ பயன்படுத்தி table மட்டும் தான் create பண்ணமுடியுமா அப்படியன்றாள் MS-Access ஐ பயன்படுத்தியே இதனை செய்யலாமே, மேலும் sql server ல் Inventory software ஐ உருவாக்கமுடியுமா?

நண்பரே நான் எழுப்பியுள்ள சந்தேகத்தை நீங்கள் தீர்ப்பீர்கள் என அதனை நான் இங்கே வைத்துள்ளேன்.

 பதில் :

Inventory Software ஐ Power Builder பயன்படுத்திச் செய்து Inventory.EXE ஐ உருவாக்கி இருப்பார்கள்.

அதன் முகப்புத்தோற்றங்கள் அனைத்தையும் Power Builder வழியாக எளிதாகச் செய்திருப்பார்கள்.

Power Builder, Visual Basic போன்றவற்றை Front End Tools என்போம். நீங்கள் அந்த பயன்பாட்டை இயக்கும்போது உங்கள் கண்முன்னே தெரியும் Textbox, combobox, Grid, dialog box இப்படி என்னவெல்லாம் கண்முன் தெரிகிறதோ அவையனைத்தையுமே ஒரு Front End ஐ வைத்தே உருவாக்கி இருப்பார்கள்.

உங்களிடம் இருந்து User Name, Password ஆகியவற்றை வாங்குவதற்காக உங்கள் கண்முன் தெரிகிறதே TextBox இவற்றை உருவாக்க உதவுவது Front End Tool.


ஆனால் உங்கள் User Name, Password போன்றவை எங்கே பதிவாகி இருக்கும்? அது ஒரு Back End ல் பதிவாகி இருக்கும். Back End tool க்கு உதாரணம்தான் Oracle, Sybase, MySQL, SQL Server எல்லாம்.

உங்களிடமிருந்து தகவலை வாங்குவதற்கு உதவும் முகப்புத்திரைகளை Front End Tool வாயிலாகச் செய்தபின், தகவல்கள் அனைத்தையும் பதிந்து வைப்பதற்காக Back End பயன்படுகிறது.

உங்கள் கணினியில் Power Builder இனிமேல் தேவைப்படாது. எப்போது? எந்தத் தவறுகளும் இல்லாத ஒரு Application ஐ உருவாக்கிய பிறகு அதன் Codings அனைத்தையும் சுருக்கி ஒரே கோப்பாகவோ, அல்லது Installation Package ஆகவோ கொடுப்பார்கள்.

அந்த Installation Package அல்லது ஒரு EXE ஐ வேறு ஒரு கணினியில் நிறுவியபிறகு (Install) Front End Tool தேவைப்படாது (உங்கள் கருத்துப்படி Power Builder).

ஆனால் அனைத்துத்தகவல்களையும் உங்கள் கருத்துரைப்படி Oracle ல் பதிவதால் Oracle கண்டிப்பாக Install செய்யப்பட்டு இருக்கவேண்டும்.

எப்போதெல்லாம் பழைய தகவல்கள் தேவைப்படுகிறதோ, அப்போதெல்லாம் அந்த EXE ஆனது Database உடன் தொடர்புகொண்டு தகவல்களை எடுத்துக்கொண்டுவந்து திரையில் காண்பிக்கும்.

எனது சந்தேகம் Oracl, Power Builder மற்றும் எங்களது Inventory software இவை 3 ற்க்கும் என்ன தொடர்பு?

நன்றாக நினைவில் கொள்ளவும் :
1) கண்முன்னே காணப்படும் திரைகளை, திரையில் தெரியும் தகவல்கள் அல்லாத பிற அம்சங்களை உருவாக்கத்தான் Power Builder.
2) Inventory.exe ஐ இயக்கியபிறகு அது கேட்கும் தகவல்களை நீங்கள் கொடுப்பீர்கள். அல்லது நீங்கள் கேட்கும் தகவல்களை அது கொடுக்கும். ஆக அனைத்துத்தகவல்களும் உங்களுடைய Oracle databaseல் இருந்துதான் வருகிறது.
3) எதை நீங்கள் பதிந்தாலும் உங்களது Oracleல் தான் பதிவாகும்.
4) எதை நீங்கள் எடுத்தாலும் உங்களது Oracleல் இருந்துதான் எடுப்பீர்கள்.

Inventory.EXEஐ உருவாக்கிய பிறகும் எதற்காக மீண்டும் PowerBuilder ஐ நிறுவுகிறார்கள்.

இந்த Application ல் எந்த விதமான பிழைகளும் இல்லாமல் இருப்பின் Power Builder ஐ நிறுவவேண்டிய அவசியம் இல்லை.
ஏதேனும் பிழைகளோ அல்லது புதிய அம்சங்களை உங்களது Inventory Applicationல் சேர்க்கவேண்டிய கட்டாயமோ இருப்பின் PowerBuilder ஐ ஒரு ஓரமாக நிறுவிக்கொள்வார்கள்.
புதிய அம்சங்களை, புதிய மேம்பாடுகளை உங்கள் Applicationல் உருவாக்குவதற்காக Power Builderல் புதிய நிரல்களை எழுதுவார்கள்.

ஏற்கனவே எழுதிய நிரல்களின் தொகுப்புதான் ஒரு Inventory.exe இதை நினைவில் வைக்கவும்.

புதிதாகச் சேர்க்கப்படவேண்டிய புதிய அம்சங்கள், மேம்பாடுகள் (Updates) போன்றவற்றை உருவாக்குவதற்காக PowerBuilder மூலம் ஏற்கனவே உள்ள codingஉடன் புதிதாக coding எழுதி அனைத்தையும் ஒருங்குபடுத்தி (Integrate) மீண்டும் ஒரு புதிய Inventory.exe ஐ உருவாக்குவார்கள். அல்லது புதிய Installation package உருவாக்குவார்கள்.

ஒவ்வொரு முறையும் உங்களது தேவைக்கேற்றபடி Applicationல் மாற்றங்கள் செய்யப்படவேண்டும் என்றால் - ஒவ்வொரு முறையும் புதிது புதிதாக coding எழுதவோ அல்லது ஏற்கனவே எழுதப்பட்ட Coding ல் மாறுதல் செய்யவோதான் Power Builderஐ பயன்படுத்துகிறார்கள். எல்லா மாற்றங்களும் , மேம்பாடுகளும் செய்யப்பட்ட பிறகு கிடைக்கக்கூடிய புதிய EXE ஐ உங்களுக்கு வழங்குவார்கள்.

Oracleக்குப் போட்டியாளர் மென்பொருள்தான் SQL Server.
PowerBuilder க்குப் பதிலாக Visual Basic, C#, VC++ போன்றவற்றைப் பயன்படுத்தி Front End உருவாக்கலாம்.

MS-Access என்பது ஒரு மிகச்சிறிய அளவிலான தகவல்களைக் கையாள்வதற்குப் பயன்படும் Database தான்.

மிகப்பிரமாண்டமான அளவில் இருக்கும் தகவல்களைக் கையாள்வதற்கு Oracle, SQL Server போன்றவற்றைப் பயன்படுத்தலாம்.

MS-Access ஐப் பயன்படுத்தியும் Inventory Applicationஐச் செய்யலாம். ஆனால் அதன் மூலம் மிக அதிக அளவிலான தகவல்களைக் கையாள இயலாது.

Table என்பதை வெறும் Table எனத்தப்புக் கணக்குப் போட்டுவிடவேண்டாம். அனைத்துத் தகவல்களுமே இந்த Tableகளில்தான் Row by Row ஆகப் பதிவாகி இருக்கின்றன என்பதை மறந்துவிடவேண்டாம்.

இத்தனை மில்லியன் தகவல்களில் குறிப்பிட்ட தகவலைத் தேடி எடுக்கவே Query பயன்படுகிறது. இந்த queryகளை எழுத SQL உதவுகிறது.

SQL Server என்பது ஒரு பயன்பாடு. இதன் மூலம் பல Databaseகளை உருவாக்கிக்கொள்ளலாம். ஒவ்வொரு Databaseகளிலும் பல்வேறு Tableகளையும் ஒவ்வொரு Tableலும் ஏராளமான Rows இருக்கும்.

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




நன்றி :இணையம்

No comments:

Post a Comment