Archive for the ‘ಮಾಹಿತಿ-ತಂತ್ರಜ್ಞಾನ’ Category

ಯಾವ ಮೋಹನ ಮುರಳಿ… ಧಾಟಿಯಲ್ಲಿ ಸಾಫ್ಟ್-ವೇರಿಗನ ಹಾಡು-ಪಾಡು ( ಹೊಸಾ ವರ್ಶನ್ 🙂 )
ಮೊದಲೊಮ್ಮೆ ಬರೆದಿದ್ದೆ, ಅದನ್ನು ಮೂಲ ಸಾಹಿತ್ಯಕ್ಕೆ ಅನುಗುಣವಾಗಿ ಪರಿಷ್ಕರಿಸಿ ತಿದ್ದಿ ತೀಡಿದ ಹಾಡು 🙂


ಯಾವ ಸಾಫ್ಟ್‌ವೇರ್ ಕಂಪನಿ ಕರೆಯಿತು… ಬೆಂಗಳೂರಿಗೆ ನಿನ್ನನು
ಯಾವ ಸಂಬಳದಾಸೆ ಕುಕ್ಕಿತು… ನಿನ್ನ ಆಸೆಯ ಕಣ್ಣನು
ಯಾವ ಸಾಫ್ಟ್‌ವೇರ್ ಕಂಪನಿ ಕರೆಯಿತು… ಬೆಂಗಳೂರಿಗೆ ನಿನ್ನನು
ಯಾವ ಸಂಬಳದಾಸೆ ಕುಕ್ಕಿತು… ನಿನ್ನ ಆಸೆಯ ಕಣ್ಣನು

ಫೋಮು ಹಾಸಿಗೆ ಟೀವಿ ಫ್ರಿಜ್ಜಿದೆ…
ಏ.ಸಿ, ತಂಪಿನ ರೂಮಿದೆ
ಫೋಮು ಹಾಸಿಗೆ ಟೀವಿ ಫ್ರಿಜ್ಜಿದೆ…
ಏ.ಸಿ, ತಂಪಿನ ರೂಮಿದೆ

ಬರಿದೆ ತುಂಬಿಹೆ ಮನೆಯ ಒಳಗೆ
ಆಫೀಸು ಅಲ್ಲವೆ ನಿಮ್ಮನೆ

ಯಾವ ಸಾಫ್ಟ್‌ವೇರ್ ಕಂಪನಿ ಕರೆಯಿತು… ಬೆಂಗಳೂರಿಗೆ ನಿನ್ನನು
ಯಾವ ಸಂಬಳದಾಸೆ ಕುಕ್ಕಿತು… ನಿನ್ನ ಆಸೆಯ ಕಣ್ಣನು

ಹೊಸೂರ್ ರೋಡಿನ ಆಚೆ ಎಲ್ಲೋ…
ನಿನ್ನ ಕಂಪನಿ ಬೇಸಿದೆ
ಟ್ರಾಫಿಕ್ ಜಾಮಿನಲಿ ಸಿಲುಕಿಕೊಂಡಿಹ…
ನಿನ್ನ ಬರುವಿಕೆ ಕಾದಿದೆ

ಯಾವ ಸಾಫ್ಟ್‌ವೇರ್ ಕಂಪನಿ ಕರೆಯಿತು… ಬೆಂಗಳೂರಿಗೆ ನಿನ್ನನು
ಯಾವ ಸಂಬಳದಾಸೆ ಕುಕ್ಕಿತು… ನಿನ್ನ ಆಸೆಯ ಕಣ್ಣನು

ವಿವಶನಾದನು ಜಾಣ… ಹ್ಮಾ…
ವಿವಶನಾದನು ಜಾಣ…
ಪರದೇಶಿಯ ಜೀತ ಜೀವನ…
ವಿವಶನಾದನು ಜಾಣ…
ಪರದೇಶಿಯ ಜೀತ ಜೀವನ…
ಸೃಜನಶೀಲತೆಯ ಬಿಟ್ಟು ಕೆರಿಯರ-ಏಳಿಗೆ
ದುಡಿಮೆಯೇ ಜೀವನಾ

ಯಾವ ಸಾಫ್ಟ್‌ವೇರ್ ಕಂಪನಿ ಕರೆಯಿತು… ಬೆಂಗಳೂರಿಗೆ ನಿನ್ನನು
ಯಾವ ಸಂಬಳದಾಸೆ ಕುಕ್ಕಿತು… ನಿನ್ನ ಆಸೆಯ ಕಣ್ಣನು

(ಗೋಪಾಲಕೃಷ್ಣ ಅಡಿಗರ ಕ್ಷಮೆ ಕೋರಿ)

——————————————————————————-
ಮೂಲ ಹಾಡು ‘ಅಮೇರಿಕಾ ಅಮೇರಿಕಾ’ ಚಿತ್ರದ ‘ಯಾವ ಮೋಹನ ಮುರಳಿ ಕರೆಯಿತು…’
ಕೃಪೆ: kannadalyrics.com
ಸಾಹಿತ್ಯ: ಗೋಪಾಲ ಕೃಷ್ಣ ಆಡಿಗ

ಯಾವ ಮೋಹನ ಮುರಳಿ ಕರೆಯಿತು… ದೂರ ತೀರಕೆ ನಿನ್ನನು
ಯಾವ ಬೃಂದಾವನವು ಸೆಳೆಯಿತು… ನಿನ್ನ ಮಣ್ಣಿನ ಕಣ್ಣನು

ಯಾವ ಮೋಹನ ಮುರಳಿ ಕರೆಯಿತು… ದೂರ ತೀರಕೆ ನಿನ್ನನು
ಯಾವ ಬೃಂದಾವನವು ಸೆಳೆಯಿತು… ನಿನ್ನ ಮಣ್ಣಿನ ಕಣ್ಣನು

ಹೂವು ಹಾಸಿಗೆ ಚಂದ್ರ ಚಂದನ…
ಬಾಹು ಬಂಧನ ಚುಂಬನ
ಹೂವು ಹಾಸಿಗೆ ಚಂದ್ರ ಚಂದನ…
ಬಾಹು ಬಂಧನ ಚುಂಬನ
ಬಯಕೆ ತೋಟದ ಬೇಲಿಯೊಳಗೆ…
ಕರಣ ಗಣದೀ ರಿಂಗಣ

ಯಾವ ಮೋಹನ ಮುರಳಿ ಕರೆಯಿತು… ದೂರ ತೀರಕೆ ನಿನ್ನನು
ಯಾವ ಬೃಂದಾವನವು ಸೆಳೆಯಿತು… ನಿನ್ನ ಮಣ್ಣಿನ ಕಣ್ಣನು

ಸಪ್ತ ಸಾಗರದಾಚೆ ಎಲ್ಲೊ…
ಸುಪ್ತ ಸಾಗರ ಕಾದಿದೆ
ಮೊಳೆಯದಲೆಗಲ ಮೂಕ ಮರ್ಮರ…
ಇಂದು ಇಲ್ಲಿಗೂ ಹಾಯಿತೇ

ಯಾವ ಮೋಹನ ಮುರಳಿ ಕರೆಯಿತು…ದೂರ ತೀರಕೆ ನಿನ್ನನು
ಯಾವ ಬೃಂದಾವನವು ಸೆಳೆಯಿತು…ನಿನ್ನ ಮಣ್ಣಿನ ಕಣ್ಣನು

ವಿವಶವಾಯಿತು ಪ್ರಾಣ… ಹ್ಮಾ…
ವಿವಶವಾಯಿತು ಪ್ರಾಣ…
ಪರವಶವು ನಿನ್ನೀ ಚೇತನ
ವಿವಶವಾಯಿತು ಪ್ರಾಣ…
ಪರವಶವು ನಿನ್ನೀ ಚೇತನ
ಇರುವುದೆಲ್ಲವ ಬಿಟ್ಟು ಇರದುದರೆಡೆಗೆ…
ತುಡಿವುದೇ ಜೀವನ

ಯಾವ ಮೋಹನ ಮುರಳಿ ಕರೆಯಿತು… ದೂರ ತೀರಕೆ ನಿನ್ನನು
ಯಾವ ಬೃಂದಾವನವು ಸೆಳೆಯಿತು… ನಿನ್ನ ಮಣ್ಣಿನ ಕಣ್ಣನು

Advertisements

ಹಿಂದಿನ ಭಾಗ (https://vijaykannantha.wordpress.com/2010/07/26/database/)

ಡೇಟಾಟೈಪ್

ಟೇಬಲ್ಲಿನ ರಚನೆಯನ್ನು ಮಾಡುವಾಗ ಅದರಲ್ಲಿರುವ ಕಾಲಂಗಳನ್ನು ನಿರ್ಧರಿಸಿ, ಅವಗಳಿಗೆ ಹೆಸರನ್ನಿಡುವಂತೆಯೇ ಅದರಲ್ಲಿ ತುಂಬಿಸಿಡುವ ಮಾಹಿತಿಗೆ ಅನುಗುಣವಾಗಿ ಕಾಲಂನ ವಿವಿಧ ಗುಣಲಕ್ಷಣಗಳನ್ನೂ ಸೂಚಿಸಬೇಕಾಗುತ್ತದೆ. ಅಂತಹ ಪ್ರಮುಖ ಲಕ್ಷಣವೆಂದರೆ ಕಾಲಂನ ಡೇಟಾಟೈಪ್. ಹೆಸರೇ ಸೂಚಿಸುವಂತೆ ಅದು ಕಾಲಂನಲ್ಲಿ ಯಾವ ವಿಧದ ಮಾಹಿತಿಯನ್ನು ತುಂಬಿಸಬಹುದು ಅನ್ನುವುದನ್ನು ನಿರ್ಧರಿಸುವ ಅಂಶ. ಉದಾಹರಣೆಗೆ ಉದ್ಯೋಗಿಯ ಹೆಸರನ್ನು ತುಂಬಿಸುವ ಕಾಲಂನಲ್ಲಿ ಬರೀ ಅಕ್ಷರಗಳನ್ನು ಮಾತ್ರ ಶೇಖರಿಸುತ್ತೇವೆ. ಹಾಗೆಯೇ ’ಪ್ರಾಯ’ ಅಥವಾ ವಯಸ್ಸನ್ನು ಸೂಚಿಸುವ ಕಾಲಂ ಬರಿ ಸಂಖ್ಯೆಯನ್ನು ಒಳಗೊಂಡಿದ್ದರೆ ಜನ್ಮದಿನಾಂಕದ ಕಾಲಂನಲ್ಲಿ ತಾರೀಕನ್ನು ಸೂಚಿಸುತ್ತೇವೆ. ಹಾಗಾಗಿ ಕಾಲಂನಲ್ಲಿ ತುಂಬಿಸುವ ಮಾಹಿತಿಯನ್ವಯ ಅದರ ಡೇಟಾಟೈಪನ್ನು ನಿರ್ಧರಿಸಬೇಕಾಗುತ್ತದೆ. Integer (int), char, datetime, varchar, numeric ಮೊದಲಾದುವುಗಳನ್ನು ಡೇಟಾಟೈಪಿಗೆ ಉದಾಹರಣೆಯಾಗಿ ನೀಡಬಹುದು. ಉದ್ಯೋಗಿಯ ಹೆಸರು ಕಾಲಂಗೆ char ಅಥವ varchar ಡೇಟಾಟೈಪ್ ಆದರೆ ಜನ್ಮದಿನಾಂಕಕ್ಕೆ datetime ಡೇಟಾಟೈಪ್ ಸೂಕ್ತವೆನಿಸುತ್ತದೆ.

ಕಾಲಂ ನಲ್ಲೆಬಿಲಿಟಿ, ಡಿಫಾಲ್ಟ್ ವಾಲ್ಯೂ

ಕಾಲಂನ ಇನ್ನೊಂದು ಪ್ರಮುಖ ಲಕ್ಷಣ ಅದರ ನಲ್ಲೆಬಿಲಿಟಿ. ಒಂದು ರೋನಲ್ಲಿ ಉದ್ಯೋಗಿಯ ಮಾಹಿತಿಯನ್ನು ತುಂಬಿಸುವಾಗ ಆ ಕಾಲಂನ್ನು ತುಂಬಿಸುವುದು ಕಡ್ಡಾಯವೇ ಅಲ್ಲವೇ ಅನ್ನುವುದನ್ನು ಇದು ಸೂಚಿಸುತ್ತದೆ. ಕೆಲವೊಮ್ಮೆ ಉದ್ಯೋಗಿಯ ಕುರಿತು ಎಲ್ಲಾ ಮಾಹಿತಿಗಳು ಲಭ್ಯವಿರುವುದಿಲ್ಲ, ಅಥವಾ ಆ ಮಾಹಿತಿಯು ಉದ್ಯೋಗಿಗೆ ಅನ್ವಯವಾಗುವುದಿಲ್ಲ. ಉದಾಹರಣೆಗೆ ಉದ್ಯೋಗಿಯು ಅವಿವಾಹಿತನಾಗಿದ್ದ ಪಕ್ಷದಲ್ಲಿ ’ಮಕ್ಕಳ ಸಂಖ್ಯೆ’ ಅನ್ನುವ ಕಾಲಂ ಆ ಉದ್ಯೋಗಿಗೆ ಅನ್ವಯವಾಗದು!! ಹಾಗಾಗಿ ಅಂತಹ ಕಾಲಂ ನಲ್ಲೆಬಲ್ ಕಾಲಂ ಅಥವಾ ಕಡ್ಡಾಯವಲ್ಲದ ಕಾಲಂ ಅಂದೆನಿಸಿಕೊಳ್ಳುತ್ತದೆ. ಇಂತಹ ನಲ್ಲೆಬಲ್ ಕಾಲಂಗಳಲ್ಲಿ ನೀವು ಮಾಹಿತಿಯನ್ನು ತುಂಬದಿದ್ದರೂ ಡೇಟಾಬೇಸಿನಲ್ಲಿ ಅಂತಹ ಕಾಲಂಗಳ ಮಾಹಿತಿಯ ಸ್ಥಾನದಲ್ಲಿ ‘NULL’ ಅನ್ನುವ ಖಾಲಿಸ್ಥಾನ ಸೂಚಕವನ್ನು ತುಂಬಲಾಗುತ್ತದೆ. ಉದ್ಯೋಗಿಯ ಹೆಸರು ಕಡ್ಡಾಯವಾದ ಕಾಲಂ ಆದ್ದರಿಂದ ಆ ಕಾಲಂ ನಲ್ಲೆಬಲ್ ಎಂದು ಗುರುತಿಸಲಾಗದು

ಕೆಲವೊಂದು ಮಾಹಿತಿಗಳು ಬಹುತೇಕ ಉದ್ಯೇಗಿಗಳಿಗೆ ಸಮಾನವಾಗಿ ಇರುವುದುಂಟು. ಉದಾಹರಣೆಗೆ ಕಂಪೆನಿಯ ೧೦೦೦ ಉದ್ಯೋಗಿಗಳಲ್ಲಿ ೯೦೦ಕ್ಕೂ ಹೆಚ್ಚು ಜನರ ವಿದ್ಯಾರ್ಹತೆ ಬಿ.ಇ. ಅಂತಂದುಕೊಳ್ಳಿ. ಅಂತಹ ಸಂದರ್ಭದಲ್ಲಿ ಮಾಹಿತಿಯನ್ನು ದಾಖಲಿಸುವಾಗ ಪ್ರತಿಬಾರಿಯೂ ವಿದ್ಯಾರ್ಹತೆ ಕಾಲನಲ್ಲಿ ಬಿ.ಇ ಎಂದು ಬರೆಯುವ ಶ್ರಮವನ್ನು ತಪ್ಪಿಸುವ ಸಲುವಾಗಿ, ವಿದ್ಯಾರ್ಹತೆ ಕಾಲಂಗೆ ’ಡಿಫಾಲ್ಟ್’ ವಾಲ್ಯೂವಾಗಿ ’ಬಿ.ಇ’ಯನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆ. ಮಾಹಿತಿಯನ್ನು ದಾಖಲಿಸುವಾಗ ಅದನ್ನು ಖಾಲಿ ಬಿಟ್ಟರೆ, ಆ ಜಾಗದಲ್ಲಿ ’ಡಿಫಾಲ್ಟ್’ ಎಂದು ಸೂಚಿಸಿದ ವಾಲ್ಯೂ ತುಂಬಿಕೊಳ್ಳುತ್ತದೆ. ಬೇರೆ ವಿದ್ಯಾರ್ಹತೆ ಇದ್ದ ಉದ್ಯೋಗಿಗಳ ಮಾಹಿತಿ ತುಂಬಿಸುವಾಗಷ್ಟೇ ಈ ಕಾಲಂನಲ್ಲಿ ಮಾಹಿತಿ ತುಂಬಿಸಿದರಾಯ್ತು, ಮಿಕ್ಕಂತೆ ಅದನ್ನು ಖಾಲಿ ಬಿಟ್ಟರೂ ಆ ಜಾಗದಲ್ಲಿ ’ಬಿ.ಇ’ ಎಂಬ ಮಾಹಿತಿ ತಾನೇತಾನಾಗಿ ತುಂಬಿಸಲ್ಪಡುತ್ತದೆ.

ಪ್ರೈಮರಿ ಕೀ ಕಾಲಂ, ಐಡೆಂಟಿಟಿ ಮತ್ತು ಯುನಿಕ್ ಕೀ ಕಾಲಂ

ನೀವು ಪಬ್ಲಿಕ್ ಪರೀಕ್ಷೆಗಳನ್ನು ಬರೆಯುವಾಗ ನಿಮಗೊಂದು ರಿಜಿಸ್ಟ್ರೇಷನ್ ನಂಬರನ್ನು ಕೊಡುತ್ತಾರಲ್ಲವೆ? ಅದರ ಉದ್ದೇಶ ಅದು ನಿಮ್ಮನ್ನು ಅನನ್ಯವಾಗಿ ಗುರುತಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತದೆ ಎಂದು. ಪರೀಕ್ಷೆಗೆ ಕುಳಿತ ಪ್ರತಿಯೊಬ್ಬರನ್ನೂ ನಿರ್ದಿಷ್ಟವಾಗಿ ಗುರುತಿಸಲು ಸಾಧ್ಯವಾಗುವಂತೆ ಪ್ರತ್ಯೇಕ ಗುರುತಿನ ಸಂಖ್ಯೆ ನೀಡಲಾಗುವ ರೀತಿಯಲ್ಲೇ, ಟೇಬಲ್ಲಿನಲ್ಲಿರುವ ಪ್ರತಿ ’ರೋ’ವನ್ನು ನಿರ್ದಿಷ್ಟವಾಗಿ ಗುರುತಿಸಲು ಸಾಧ್ಯವಾಗಲಿ ಎಂದು ಆ ಟೇಬಲ್ಲಿನ ಕಾಲಂವೊಂದನ್ನು ’ಪ್ರೈಮರಿ ಕೀ ಕಾಲಂ’ ಎಂದು ಆರಿಸಲಾಗುತ್ತದೆ.ಈ ರೀತಿ ಆರಿಸಲ್ಪಡುವ ಕಾಲಂಗೆ ಒಂದು ವಿಶೇಷ ಅರ್ಹತೆ ಇರಬೇಕಾಗುತ್ತದೆ. ಅದೇನೆಂದರೆ ಒಂದು ರೋವಿನಲ್ಲಿರ ಆ ಕಾಲಂನ ಬೆಲೆ ಅಥವಾ ವಾಲ್ಯೂ ಇನ್ಯಾವ ರೋನಲ್ಲಿಯೂ ಮರುಕಳಿಸಬಾರದು. ಅಂತಹ ಅನನ್ಯ ಬೆಲೆಯಿರುವ ಕಾಲಂ ಮಾತ್ರ ಪ್ರೈಮರಿ ಕೀ ಆಗುವ ಯೋಗ್ಯತೆ ಗಳಿಸಿರುತ್ತದೆ. ಉದ್ಯೋಗಿ ಟೇಬಲ್ಲಿನಲ್ಲಿ ’ಉದ್ಯೋಗಿಯ ಗುತು ಸಂಖ್ಯೆ ಅರ್ಥಾತ್ ’ಎಂಪ್ಲಾಯಿ ಐಡಿ’ಅಂತಹ ಯೋಗ್ಯತೆಯಿರುವ ಕಾಲಂ. ಡೇಟಾಬೇಸಿನಲ್ಲಿ ಪ್ರೈಮೆರಿ ಕೀ ಎಂದು ಗುರುತಿಸಿದ ಕಾಲಂನಲ್ಲಿ ಒಂದು ರೋನಲ್ಲಿ ಈಗಾಗಲೇ ದಾಖಲಿಸಿದ ಬೆಲೆಯನ್ನೇ ಪುನಹ ದಾಖಲಿಸಲು ಹೋದರೆ ಪ್ರೈಮರಿ ಕೀ ನಿರ್ಬಂಧವಿರುವ ಕಾರಣ ಅದು ಅಂತಹ ಮಾಹಿತಿಯನ್ನು ತಿರಸ್ಕರಿಸುತ್ತದೆ.ಕೆಲವೊಂದು ಸಂದರ್ಭದಲ್ಲಿ ಒಂದೇ ಕಾಲಂ ಪ್ರೈಮೆರಿ ಕೀ ಅಗುವ ಅರ್ಹತೆಯನ್ನು ಗಳಸದೇ ಇರಬಹುದು. ಅಂತಹ ಸಂದ್ರ್ಭದಲ್ಲಿ ಎರಡು ಅಥವಾ ಅದಕ್ಕಿಂತ ಹೆಚ್ಚು ಕಾಲಂಗಳನ್ನು ಜಂಟಿಯಾಗಿ ಪ್ರೈಮೆರಿ ಕೀ ಎಂದು ಸೂಚಿಸಬಹುದು.

ಬಹುತೇಕ ಸಾಮಾನ್ಯವಾಗಿ ಪ್ರೈಮೆರಿ ಕೀ ಎಂದು ಗುರುತಿಸಲ್ಪಟ್ಟ ಕಾಲಂಗೆ ಇನ್ನೊಂದು ಲಕ್ಷಣವನ್ನೂ ಸೂಚಿಸಲಾಗುತ್ತದೆ. ಅದು ’ಐಡೆಂಟಿಟಿ’. ಇಂತಹ ಕಾಲಂಗಳಿಗೆ ಪ್ರಾರಂಭಿಕ ಬೆಲೆಯೊಂದನ್ನು ಸೂಚಿಸಿ ಜೊತೆಗೆ ಇನ್ಕ್ರಿಮೆಂಟ್ ಬೆಲೆಯನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಉದ್ಯೋಗಿ ಸಂಖ್ಯೆ ಅನ್ನುವ ಕಾಲಂಗೆ ಪ್ರಾರಂಭಿಕ ಬೆಲೆ ಎಂದು ೧೦೦೦ವನ್ನು ಸೂಚಿಸಿ, ಇನ್ಕ್ರಿಮೆಂಟ್ ಬೆಲೆ ೧ ಎಂದು ನಿರ್ಧರಿಸಿದರೆ, ಮಾಹಿತಿಯನ್ನು ದಾಖಲಿಸುವಾಗಿ ಆ ಕಾಲಂನ ಬೆಲೆಯು ೧೦೦೦ದಿಂದ ಆರಂಭವಾಗಿ ೧೦೦೧, ೧೦೦೨ ಎಂದು ತಾನೇ ತಾನಾಗಿ ತುಂಬಿಸಲ್ಪಡುತ್ತದೆ.

ಒಂಡು ಟೇಬಲ್ಲಿನಲ್ಲಿ ಪ್ರೈಮೆರಿ ಕೀ ಅರ್ಹತೆಯನ್ನು ಹೊಂದಿರುವ ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಕಾಲಂಗಳು ಇರಬಹುದು. ಅಥವಾ ಕೆಲವೊಂದು ಸಂದರ್ಭದಲ್ಲಿ ಪ್ರೈಮರಿ ಕೀಯಂತೆಯೇ ಇನ್ನುಳಿದ ಕೆಲವು ಕಾಲಂಗಳು ಕೂಡಾ ಅನನ್ಯ ಬೆಲೆಯನ್ನು ಹೊಂದಿರುವ ಅವಶ್ಯಕತೆ ಇರಬಹುದು. ಉದಾಹರಣೆಗೆ ಉದ್ಯೋಗಿಯ ಪಾಸ್ಪೋರ್ಟ್ ಸಂಖ್ಯೆ ಅಂತಹ ಒಂದು ಕಾಲಂ. ಆ ಸಂದರ್ಭದಲ್ಲಿ ಅಂತಹ ಕಾಲಂಗಳ ಬೆಲೆಗಳು ಅನನ್ಯವಾಗಿರಬೇಕೆಂಬ ನಿರ್ಬಂಧವನ್ನು ವಿಧಿಸಬೇಕಾಗುತ್ತದೆ. ಇಲ್ಲವಾದ ಪಕ್ಷದಲ್ಲಿ ತಪ್ಪಾಗಿ ಇಬ್ಬರು ಉದ್ಯೋಗಿಗಳ ಪಾಸ್ಪೋರ್ಟ್ ಸಂಖ್ಯೆ ಒಂದೇ ಎಂದು ದಾಖಲಿಸಲ್ಪಟ್ಟು ಗೊಂದಲ ಉಂಟಾಗಬಹುದು. ಅದನ್ನು ತಪ್ಪಿಸಲು ಅಂತಹ ಕಾಲಂಗಳನ್ನು ಯುನಿಕ್ ಕೀ ಕಾಲಂಗಳೆಂದು ನಿರ್ಬಂಧವನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆ. ಪ್ರೈಮೆರಿ ಕೀ ಕಾಲಂಗಳಂತೆಯೇ ಒಂದು ರೋನಲ್ಲಿ ಈಗಾಗಲೇ ದಾಖಲಿಸಿದ ಬೆಲೆಯನ್ನೇ ಪುನಹ ದಾಖಲಿಸಲು ಹೋದರೆ ಯುನಿಕ್ ಕೀ ನಿರ್ಬಂಧವಿರುವ ಕಾರಣ ಅದು ಅಂತಹ ಮಾಹಿತಿಯನ್ನು ತಿರಸ್ಕರಿಸುತ್ತದೆ

ಈ ಬಂಧ ಅನುಬಂಧ ರಿಲೇಶನ್ ಶಿಪ್ ಮತ್ತು ಫಾರಿನ್ ಕೀ

ಮಾಹಿತಿಯನ್ನು ೩ ಟೇಬಲ್ಲುಗಳಾಗಿ ವಿಭಜಿಸಿಯಾಯ್ತು. ಹಾಗೇ ಅವು ಪ್ರತ್ಯೇಕವಾಗಿದ್ದರೆ ಅವು ಮಾಹಿತಿಯ ದ್ವೀಪಗಂತಾಗುತ್ತವೆ. ಉದ್ಯೋಗಿಯು ಯಾವ ವಿಭಾಗದಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತಾನೆ, ಯಾವ ಶಾಖೆಯ ಉದ್ಯೋಗಿ ಅನ್ನುವ ಮಾಹಿತಿಯ ಕೊಂಡಿಗಳಿಲ್ಲದೆ ವಿವರ ಅಪೂರ್ಣವಾಗುತ್ತದೆ. ಅದಕ್ಕಾಗಿ ಈ ಪ್ರತ್ಯೇಕ ದ್ವೀಪಗಳನ್ನು ಜೋಡಿಸುವ ಸೇತುಗಳನ್ನು ರಚಿಸಬೇಕಾಗುತ್ತದೆ.ಇಂತಹ ಸೇತು ಬಂಧವೇ ರಿಲೇಶನ್ ಶಿಪ್. ಟೇಬಲ್ಲುಗಳನ್ನು ಡೇಟಾಬೇಸ್ ಡಿಸೈನಿನ ಪರಿಭಾಷೆಯಲ್ಲಿ ’ಎಂಟಿಟಿ’ ಎಂದು ಕರೆಯುತ್ತಾರೆ. ಅಂತಹ ಎಂಟಿಟಿಗಳು ಹಾಗು ಎಂಟಿಟಿಗಳ ನಡುವಿನ ಸಂಬಂಧಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವ ನಕ್ಷೆಯನ್ನು ಎಂಟಿಟಿ-ರಿಲೇಶನ್ ಶಿಪ್ ಡಯಗ್ರಾಮ್ ಅಥವಾ ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಈ-ಆರ್ ಡಯಗ್ರಾಮ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ನಾನಿಲ್ಲಿ ಈ-ಆರ್ ನಕ್ಷೆ ರಚನೆಯ ಸೂತ್ರಗಳನ್ನು ಪಕ್ಕಕ್ಕಿರಿಸಿ, ಸರಳವಾಗಿ ಅರ್ಥೈಸಲು ಅನುಕೂಲವಾಗುವಂತೆ ಸಂಬಂಧವನ್ನು ಸೂಚಿಸುವ ಚಿತ್ರವೊಂದನ್ನು ಈ ಕೆಳಗೆ ರಚಿಸಿದ್ದೇನೆ.

ಈ ಚಿತ್ರದಲ್ಲಿ ನೀವು ಗಮನಿಸುವಂತೆ, ಉದ್ಯೋಗಿ ಟೇಬಲ್ಲಿನಲ್ಲಿ ಶಾಗೆ ಹಾಗು ವಿಭಾಗಗಳ ಸಂಖ್ಯೆಯನ್ನು ಹೊಂದಿರುವ ಕಾಲಂಗಳಿವೆ. ಅಂತೆಯೇ ವಿಭಾಗ ಟೇಬಲ್ಲಿನಲ್ಲಿ ಶಾಖೆಯ ಸಂಖ್ಯೆ ಹೊಂದಿರುವ ಕಾಲಂ ಒಂದಿದೆ.ಎಂಟಿಟಿ ಅಥವಾ ಟೇಬಲ್ಲುಗಳ ಮಧ್ಯದ ಸಂಬಂಧವನ್ನೇ ’ರಿಲೇಶನ್ ಶಿಪ್’ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಇಂತಹ ಸಂಬಂಧವನ್ನು ನಿರ್ಧರಿಸುವ ಕಾಲಂಗಳು ’ಫಾರಿನ್ ಕೀ’ ಕಾಲಂಗಳು. ಉದಾಹರಣೆಗೆ ಉದ್ಯೋಗಿ ಟೇಬಲ್ಲಿನಲ್ಲಿರುವ ಶಾಖೆ ಐಡಿ ಕಾಲಂ ಒಂದು ಫಾರಿನ್ ಕೀ ಕಾಲಂ. ಹೀಗೆ ಫಾರಿನ್ ಕೀಗಳೆಂದು ಗುರುತಿಸಲ್ಪಡುವ ಕಾಲಂಗಳು ಅವಗಳ ಮೂಲದ ಟೇಬಲ್ಲಿನಲ್ಲಿ ಒಂದೋ ಪ್ರೈಮರಿ ಕೀ ಆಗಿರಬೇಕು ಇಲ್ಲವೇ ಯುನಿಕ್ ಕೀ ಕಾಲಂ ಆಗಿರುತ್ತವೆ.

ಫಾರಿನ್ ಕೀ ಕಾಲಂನಲ್ಲಿ ಮೂಲ ಟೇಬಲ್ಲಿನಲ್ಲಿರುವ ಬೆಲೆಗಳನ್ನು ಮಾತ್ರ ನಮೂದಿಸಬಹುದು. ಉದಾಹರಣೆಗೆ ಉದ್ಯೋಗಿ ಟೇಬಲ್ಲಿನ ಶಾಖೆ ಐಡಿ ಕಾಲಂನಲ್ಲಿ ೫ ಎಂದು ನಮೂದಿಸಲಾಗದು. ಯಾಕೆಂದರೆ ಶಾಖೆ ಟೇಬಲ್ಲಿನಲ್ಲಿ ಬರಿ ೧,೨,೩,೪ ಮಾತ್ರ ಇದೆ. ಹಾಗೊಂದು ವೇಳೆ ಯಾವ ಬೆಲೆಯು ಅನ್ವಯವಾಗದ ಪಕ್ಶದಲ್ಲಿ, ಆ ಕಾಲಂ ಕಡ್ಡಾಯವಾಗಿರದೆ ಇದ್ದಲ್ಲಿ ಅದನ್ನು ಹಾಗೆಯೇ ಖಾಲಿ ( NULL)  ಬಿಡಬಹುಡೇ ಹೊರತು, ಮೂಲ ಟೇಬಲ್ಲಿನಲ್ಲಿಲ್ಲದ ಇನ್ಯಾವುದೋ ಬೆಲೆಯನ್ನು ದಾಖಲಿಸಲು ಹೊರಟರೆ, ಫಾರಿನ್ ಕೀ ನಿರ್ಬಂಧವಿರುವ ಕಾರಣ ಆ ದಾಖಲೆಯನ್ನು ಡೇಟಾಬೇಸ್ ತಿರಸ್ಕರಿಸುತ್ತದೆ.

ಈ ಮೇಲಿನ ಚಿತ್ರದಲ್ಲಿ ನೀವು ಇನ್ನೊಂದು ಅಂಶವನ್ನು ಗಮನಿಸಿರಬಹುದು. ಅದೆಂದರೆ ಉದ್ಯೋಗಿ ಟೇಬಲ್ಲಿನ ಒಳಗೇ ಒಂದು ಸಂಬಂಧ ಸೂಚಕ ಕೊಂಡಿಯಿದೆ. ಒಬ್ಬ ಉದ್ಯ್ಗಿಯ ಮೇಲದಿಕಾರಿಯೂ ಕೂಡಾ ಅದೇ ಉದ್ಯೋಗಿ ಟೇಬಲ್ಲಿನ ಭಾಗವಾಗಿರುವ ಕಾರಣ ಮೇಲಧಿಕಾರಿ ಅನ್ನುವ ಕಾಲಂನಲ್ಲಿ, ಮೇಲಧಿಕಾರಿಯ ಉದ್ಯೋಗಿ ಸಂಖ್ಯೆಯನ್ನು ನಮೂದಿಸಲಾಗುತ್ತದೆ. ಇಂತಹ ಸಂಬಂಧಗಳನ್ನು ’ ಸೆಲ್ಫ್ ರೆಲೇಶನ್’ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ.

ದೇಟಾಬೇಸನ್ನು ರೈಲು ಬಂಡಿಯೊಂದಕ್ಕೆ ಹೋಲಿಸಿ ಅದರ ಡಬ್ಬಿಗಳೆಂಬ ಟೇಬಲ್ಲುಗಳ ಬಗ್ಗೆ ಸಂಕ್ಶಿಪ್ತವಾಗಿ ತಿಳಿದುಕೊಂಡೆವು. ಅವುಗಳನ್ನು ಜೋಡಿಸುವ ಸಂಬಂಧದ ಕೊಂಡಿಗಳನ್ನು ಕುರಿತು ಅರಿತುಕೊಂಡಿದ್ದಾಯ್ತು. ಆದರೆ ಈ ರೈಲಿಗೊಂದು ಇಂಜಿನ್ ಇರಬೇಕಲ್ವೇ? ಹಾಗೇಯೇ ನಮ್ಮ ಡೇಟಾಏಸಿಗೂ ಒಂದು ಇಂಜಿನ್ ಇರುತ್ತದೆ. ಆ ಇಂಜಿನ್ನಿನ ಸಹಾಯದಿಂದಲೇ ಡೇಟಾಬೇಸ್ ತನ್ನೆಲ್ಲ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ.ವಿವಿಧ ಕಮಾಂಡುಗಳ ಮೂಲಕವೋ ಅಥವಾ ಡಿಬಿಎಮ್ಮೆಸ್ ಸಾಫ್ಟ್ವೇರಿನ ’ಜಿಯುಐ’ ಅಥವಾ ಗ್ರಾಫಿಕಲ್ ಯೂಸರ್ ಇಂಟರ್ಫೇಸ್ ಮೂಲಕವೋ ಅದು ಪಡೆಯುವ ಸಂಕೇತಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಅದು ತನ್ನ ಕೆಲಸ ನಿರ್ವಹಿಸುತ್ತದೆ.

(ವಿಧವಿಧದ ಕಮಾಂಡ್ ಬಗ್ಗೆ ಮುಂದಿನ ಭಾಗದಲ್ಲಿ ನೋಡೋಣ)

ಡೇಟಾಬೇಸ್ ಕ್ಷೇತ್ರದಲ್ಲಿ ಸರಿಸುಮಾರು 7 ವರ್ಷಗಳಿಂದ ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದೇನೆ. ನನ್ನ ದಿನಚರಿಯ ಸಹಜ ಭಾಗವಾಗಿರುವ ಡೇಟಾಬೇಸ್ ಕುರಿತು ಒಂದಿಷ್ಟು ಪರಿಚಯ ಮಾಡಿಕೊಡೋಣ ಅನ್ನುವ ನನ್ನ ಬಹುದಿನದ ಬಯಕೆಯನ್ನು ಇವತ್ತು ಬರಹ ರೂಪಕ್ಕಿಳಿಸುತ್ತಿದ್ದೇನೆ. ಸಾಕಷ್ಟು ಉದಾಹರಣೆಗಳೊಂದಿಗೆ ವಿಷಯವನ್ನು ಸಾಧ್ಯವಾದಷ್ಟು ಸರಳವಾಗಿ ವಿವರಿಸಲು ಯತ್ನಿಸುತ್ತೇನೆ. ಆಸಕ್ತಿ ಇರುವವರಿಗೆ ಒಂದಿಷ್ಟು ಮಾಹಿತಿ ಸಿಕ್ಕಿದರೆ ನನ್ನ ಪ್ರಯತ್ನ ಸಾರ್ಥಕ

ಮೊತ್ತ ಮೊದಲನೆಯದಾಗಿ   ’ಡೇಟಾ’ ಅಂದರೆ ಏನೆಂದು ತಿಳಿದುಕೊಳ್ಳೋಣ. ಯಾವುದೇ ವಸ್ತು-ಯಾ ವಿಷಯದ ಕುರಿತು ಲಭ್ಯವಿರುವ ಅಂಕಿ-ಅಂಶ, ವಿವರಣೆ ಅಥವಾ ಮಾಹಿತಿಯನ್ನು ’ಡೇಟಾ’ ಎಂದು ಕರೆಯಬಹುದು. ಕನ್ನಡದಲ್ಲಿ ಇದಕ್ಕೆ ’ದತ್ತಾಂಶ’ ಅನ್ನುವ ಪದವನ್ನು ಕೆಲವರು ಬಳಸುತ್ತಾರಾದರೂ ನಾನಿಲ್ಲಿ ವಿವರಣೆಯ ಅನುಕೂಲಕ್ಕಾಗಿ  ’ಮಾಹಿತಿ’ ಅನ್ನುವ ಪದವನ್ನೇ ಬಳಸುತ್ತೇನೆ. ಹೀಗೆ ಲಭ್ಯವಿರುವ ಮಾಹಿತಿಯನ್ನು ಒಂದು ವ್ಯವಸ್ಥಿತ ಕ್ರಮದಲ್ಲಿ ಸಂಗ್ರಹಿಸಿ, ಅದನ್ನು ಸುಲಭವಾಗಿ ಬಳಸಲು ಅನುಕೂಲವಾಗುವಂತೆ ಶೇಖರಿಸಿಟ್ಟಾಗ ಅದನ್ನು ’ಡೇಟಾಬೇಸ್’ಎಂದು ಕರೆಯಬಹುದು. ಒಂದು ಔಷಧದ ಅಂಗಡಿಯ ಉದಾಹರಣೆಯನ್ನು ಗಮನಿಸೋಣ.ಅವರಲ್ಲಿ ವಿವಿಧ ಖಾಯಿಲೆಗಳಿಗೆ ನೀಡುವ, ಅನೇಕ ಕಂಪೆನಿಗಳು ತಯಾರಿಸಿದ ಬಗೆಬಗೆಯ ಮಾತ್ರೆ, ಟಾನಿಕ್ಕು, ಮುಲಾಮು… ಹೀಗೆ ಔಷಧಿಗಳ ಸಂಗ್ರಹವಿರುತ್ತದೆ. ಈ ಔಷಧಿಗಳ ಕುರಿತಾದ ಮಾಹಿತಿಯನ್ನು ವ್ಯವಸ್ಥಿತವಾಗಿ ಪುಸ್ತಕವೊಂದರಲ್ಲಿ ಬರೆದಿರಿಸಲಾಗಿದೆ ಅಂದುಕೊಳ್ಳೋಣ. ಕಂಪೆನಿಯ ಹೆಸರು, ಔಷಧಿಯ ಬೆಲೆ, ಬ್ಯಾಚ್ ನಂಬರ್, ಎಕ್ಸ್ಪೈರಿ ದಿನಾಂಕ.. ಇವೇ ಮೊದಲಾದ ವಿವರಗಳನ್ನು, ಔಷಧಿಯ ಹೆಸರಿನ ಜೊತೆಗೆ ಅಂತಹ ಎಷ್ಟು ಸಂಖ್ಯೆಯ ಮಾತ್ರೆ/ಔಷಧಿ ಅವರ ಬಳಿ ಇದೆ ಎನ್ನುವ ವಿವರಗಳನ್ನು ಒಂದು ನಿರ್ದಿಷ್ಟ ಕ್ರಮದಲ್ಲಿ ದಾಖಲಿಸಿಡಲಾಗಿದೆ. ಇದರ ಜೊತೆಗೆ ಅವರ ದಿನನಿತ್ಯದ ಮಾರಾಟದ ವಿವರಗಳನ್ನು ಕೂಡ ಅದೇ ಪುಸ್ತಕದಲ್ಲಿ ಪ್ರತ್ಯೇಕವಾಗಿ ನಮೂದಿಸಿಡಲಾಗುತ್ತದೆ ಅಂದುಕೊಳ್ಳಿ. ಇಂತಹ ಮಾಹಿತಿಯ ಪುಸ್ತಕವು ಆ ಔಷಧಿ ಅಂಗಡಿಯ ’ಡೇಟಾಬೇಸ್’ ಎಂದೆನಿಸಿಕೊಳ್ಳುತ್ತದೆ.

ಆದರೆ ಈ ರೀತಿಯಾಗಿ ಸಂಗ್ರಹಿಸಿದ ಮಾಹಿತಿಯು ಎಷ್ಟೇ ವ್ಯವಸ್ಥಿತವಾಗಿದ್ದರೂ, ಮಾಹಿತಿಯನ್ನು ತಿದ್ದುಪಡಿ ಮಾಡಬೇಕಾದರೆ ಇಲ್ಲವೆ ಬೇಕಾದ ಮಾಹಿತಿಯನ್ನು ಹುಡುಕಬೇಕಾದರೆ ಸುಲಭವಾಗಿ ಅದನ್ನು ಮಾಡಲಾಗುವುದಿಲ್ಲ. ಅಂಗಡಿಯ ವಾರ್ಷಿಕ ವಹಿವಾಟಿನ ಲೆಕ್ಕಾಚಾರ ಮಾಡಲು ಅನೇಕ ದಿನಗಳೇ ಬೇಕಾಗಬಹುದು. ಗಣಕಯಂತ್ರ(ಕಂಪ್ಯೂಟರ್)ಗಳ ಆವಿಷ್ಕಾರವಾದ ಬಳಿಕ ಈ ಸಮಸ್ಯೆಗಳಿಗೆಲ್ಲಾ ಪರಿಹಾರ ಲಭ್ಯವಾಯ್ತು. ಮಾಹಿತಿಯ ವ್ಯವಸ್ಥಿತ ಶೇಖರಣೆ,ಸುಲಭ ಬದಲಾವಣೆ, ಶೀಘ್ರ ಶೋಧಿಸುವಿಕೆ ಹಾಗು ಮಾಹಿತಿಯ ಸಾರಾಂಶವನ್ನು ಸಲೀಸಾಗಿ ವರದಿಯ ರೂಪದಲ್ಲಿ ಸಿದ್ಧಪಡಿಸುವ ಅನುಕೂಲಕ್ಕಾಗಿ ಅದನ್ನು ಕಂಪ್ಯೂಟರಿನಲ್ಲಿ ಶೇಖರಿಸಿಡುವ ಕ್ರಮ ಮೊದಲಾಯ್ತು. ಇಂತಹ ಉದ್ಧೇಶಗಳಿಗೆಂದೇ ಬಳಸಲಾಗುವ ವಿಶೇಷ ತಂತ್ರಾಂಶಗಳು(ಸಾಫ್ಟ್ವೇರ್) ಸಿದ್ಧವಾದವು. ಈ ತಂತ್ರಾಂಶಗಳೇ ಡೇಟಾಬೇಸ್ ಮ್ಯಾನೇಜ್ಮೆಂಟ್ ಸಿಸ್ಟಮ್ಸ್ ಅಥವಾ ಸಂಕ್ಷಿಪ್ತವಾಗಿ DBMS. ಮೈಕ್ರೋಸಾಫ್ಟ್ SQL ಸರ್ವರ್, ಒರಾಕಲ್, DB2, sybase, My SQL ಮೊದಲಾದುವುಗಳನ್ನು ಇಂತಹ ತಂತ್ರಾಂಶಗಳಿಗೆ ಉದಾಹರಣೆಯಾಗಿ ಹೆಸರಿಸಬಹುದು.

ಡೇಟಾಬೇಸ್ ಕುರಿತು ಇನ್ನಷ್ಟು ತಿಳಿದುಕೊಳ್ಳುವ ಸಲುವಾಗಿ ಡೇಟಾಬೇಸಿಗೆ ಸಂಬಂಧಿಸಿದ ಕೆಲವು ಪದಗಳ ಪರಿಚಯ ಮಾಡಿಕೊಳ್ಳೋಣ. ಡೇಟಾಬೇಸಿನಲ್ಲಿ ಮಾಹಿತಿಯ ವ್ಯವಸ್ಥಿತ ಶೇಖರಣೆಯ ಅನುಕೂಲಕ್ಕಾಗಿ ಅದನ್ನು ಟೇಬಲ್, ರೋ, ಕಾಲಮ್ ಹೀಗೆ ವಿವಿಧ ಸಣ್ಣ ಘಟಕಗಳಾಗಿ ವಿಭಜಿಸಿ ಸಂಗ್ರಹಿಸಿಡಲಾಗುತ್ತದೆ.ಇವುಗಳ ಕುರಿತು ವ್ಯಾಖ್ಯೆ ಅಥವಾ ವಿವರಣೆಗಿಂತ ಸಣ್ಣ ಉದಾಹರಣೆಯೊಂದರ ಮೂಲಕ ಅರ್ಥೈಸಿಕೊಳ್ಳಲು ಯತ್ನಿಸೋಣ. ಒಂದು ಕಂಪೆನಿಯಲ್ಲಿ 1000 ಜನ ಉದ್ಯೋಗಿಗಳು ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದಾರೆ ಅಂದುಕೊಳ್ಳೋಣ. ಆ ಕಂಪೆನಿಯು ಮುಂಬೈ, ಬೆಂಗಳೂರು, ಚೆನ್ನೈ ಮತ್ತು ಮಂಗಳೂರಿನಲ್ಲಿ ಶಾಖೆಗಳನ್ನು ಹೊಂದಿದೆ. ಪ್ರತಿ ಶಾಖೆಯಲ್ಲೂ 4 ವಿಭಾಗಗಳಲ್ಲಿ ಉದ್ಯೋಗಿಗಳು ಕೆಲಸ ಮಾಡುತ್ತಿದ್ದಾರೆ. ಆ ಕಂಪೆನಿಯ ಕೇಂದ್ರ ಕಛೇರಿ ಬೆಂಗಳೂರಿನಲ್ಲಿ ಮಾನವ ಸಂಪನ್ಮೂಲ (ಎಚ್.ಆರ್) ವಿಭಾಗದವರು ಈ ಎಲ್ಲಾ ಮಾಹಿತಿಗಳನ್ನು ಡೇಟಾಬೇಸ್ ಒಂದರಲ್ಲಿ ಸಂಗ್ರಹಿಸಿಟ್ಟುಕೊಂಡಿದ್ದಾರೆ. ಡೇಟಾಬೇಸಿನೊಳಗೆ ’ಟೇಬಲ್’ ಅನ್ನುವ ಪುಟ್ಟ ಘಟಕ ಅಥವಾ ರಚನೆ(Structure)ಯನ್ನು ನಿರ್ಮಿಸಲಾಗುತ್ತದೆ. ಅದರೊಳಗೆ ಈ ಎಲ್ಲಾ ಮಾಹಿತಿಯನ್ನು ತುಂಬಿಸಿಡಲಾಗುತ್ತದೆ. ಡೇಟಾಬೇಸನ್ನು ರೈಲು ಬಂಡಿಯೊಂದಕ್ಕೆ ಹೋಲಿಸಿದರೆ ಟೇಬಲ್ಲುಗಳು ಅದಕ್ಕೆ ಜೋಡಿಸಲ್ಪಟ್ಟ ಬೋಗಿಗಳೆನ್ನುವ ಉಪಮೆ ಸೂಕ್ತವಾದೀತು. ಹೇಗೆ ಎಲ್ಲಾ ಜನರನ್ನು ಒಂದೇ ಬೋಗಿಯೊಳಕ್ಕೆ ತುಂಬಿಸಲಾಗದೋ ಹಾಗೆಯೇ ಎಲ್ಲಾ ಮಾಹಿತಿಯನ್ನು ಒಂದೇ ಟೇಬಲ್ಲಿನೊಳಗೆ ತುರುಕಿಸಿದರೆ ಅದು ಸುವ್ಯವಸ್ಥಿತ ಜೋಡಣೆ ಅನ್ನಿಸದು. ಅದಕ್ಕಾಗಿ ಮಾಹಿತಿಯ ಪ್ರಕಾರ, ಲಕ್ಷಣಗಳನ್ನು ಆಧರಿಸಿ, ಅವನ್ನು ಅನೇಕ ಟೇಬಲ್ಲುಗಳಾಗಿ ವರ್ಗೀಕರಿಸಿ ಶೇಖರಿಸಿಡಬೇಕು. ಮೇಲಿನ ಉದಾಹರಣೆಯಲ್ಲಿ ತೀರಾ ಸರಳವಾಗಿ ಮಾಹಿತಿಯನ್ನು 3 ಟೇಬಲ್ಲುಗಳಾಗಿ ವಿಂಗಡಿಸೋಣ. ’ಉದ್ಯೋಗಿ’, ’ಶಾಖೆ’ ಮತ್ತು ’ವಿಭಾಗ’ – ಇವೇ ಆ 3 ಟೇಬಲ್ಲುಗಳು. ’ಉದ್ಯೋಗಿ’ ಟೇಬಲ್ಲಿನಲ್ಲಿ ಉದ್ಯೋಗಿಯ ಹೆಸರು, ವಯಸ್ಸು, ವಿಳಾಸ, ಹುದ್ದೆ, ಲಿಂಗ, ವಿದ್ಯಾರ್ಹತೆ…ಇವೇ ಮೊದಲಾದ ವಿವರಗಳಿದ್ದರೆ, ’ಶಾಖೆ’ ಟೇಬಲ್ಲಿನಲ್ಲಿ ’ಶಾಖೆ ಇರುವ ಸ್ಥಳ,ವಿಳಾಸ, ಮುಖ್ಯಾಧಿಕಾರಿ,ಒಟ್ಟು ಉದ್ಯೋಗಿಗಳ ಸಂಖ್ಯೆ ಮುಂತಾದ ವಿವರಗಳಿರುತ್ತವೆ. ’ವಿಭಾಗ’ ಟೇಬಲ್ಲಿನಲ್ಲಿ ವಿಭಾಗದ ಹೆಸರು, ಮುಖ್ಯಸ್ಥ, ಒಟ್ಟು ಉದ್ಯೋಗಿಗಳು, ವಿಭಾಗದ ಕುರಿತು ವಿವರಣೆಗಳನ್ನು ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ.

ಈಗ ’ಉದ್ಯೋಗಿ’ ಟೇಬಲ್ಲನ್ನು ಗಮನಿಸೋಣ. ಕಂಪೆನಿಯಲ್ಲಿ ಕೆಲಸ ನಿರ್ವಹಿಸುವ ಪ್ರತಿಯೊಬ್ಬ ಉದ್ಯೋಗಿಯ ಮಾಹಿತಿಯೂ ಈ ಟೇಬಲ್ಲಿನಲ್ಲಿ ಅಡಕವಾಗಿದೆ. ಒಬ್ಬ ಪ್ರತ್ಯೇಕ ವ್ಯಕ್ತಿಯ ವಿವರಗಳನ್ನೊಳಗೊಂಡ ಮಾಹಿತಿಯ ಸಾಲೊಂದನ್ನು ’ರೋ’ ಅಥವಾ ’ಟಪಲ್’ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಇಂತಹ 1000 ’ರೋ’ಗಳು ಸೇರಿ ’ಉದ್ಯೋಗಿ’ ಟೇಬಲ್ ನಿಮಿತವಾಗಿದೆ. ಈಗ ಸುಹಾಸಿನಿ ಎನ್ನುವ ಉದ್ಯೋಗಿಯ ಕುರಿತು ಮಾಹಿತಿಯಿರುವ ಒಂದು ’ರೋ’ವನ್ನು ಗಮನಿಸಿದರೆ ಅದರಲ್ಲಿ ಉದ್ಯೋಗಿಯ ಹೆಸರು, ಪ್ರಾಯ, ಲಿಂಗ, ವಿದ್ಯಾರ್ಹತೆ, ಹುದ್ದೆ…ಹೀಗೆ ಚಿಕ್ಕ ಚಿಕ್ಕ ಮಾಹಿತಿಯ ಘಟಕಗಳು ಸೇರಿ ಆ ಸಾಲು ನಿರ್ಮಿತವಾಗಿದೆ. ಇಂತಹ ಘಟಕಗಳೇ ’ಕಾಲಂ’ಗಳು ಅಥವಾ ’ಎಟ್ರಿಬ್ಯೂಟ್’ಗಳು. ಟೇಬಲ್ಲೊಂದನ್ನು ರಚಿಸುವಾಗ ಅದರಲ್ಲಿ ಸೇರಿಸಬೇಕಾದ ಮಾಹಿತಿಗೆ ಅನುಗುಣವಾಗಿ ಅದರ ಕಾಲಂಗಳನ್ನು ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ.ಟೇಬಲ್ ಗೆ ಹೇಗೆ ’ಉದ್ಯೊಗಿ ಎಂದು ಹೆಸರನ್ನು ಸೂಚಿಸಲಾಗುತ್ತದೆಯೋ ಹಾಗೆ ಪ್ರತಿ ಕಾಲಂನಲ್ಲಿ ತುಂಬಿಸುವ ಮಾಹಿತಿಗೆ ಅನುಗುಣವಾಗಿ ಆ ಕಾಲಂಗಳನ್ನು ಹೆಸರಿಸಲಾಗುತ್ತದೆ.

ಮೇಲೆ ಸೂಚಿಸಿದ 3 ಟೇಬಲ್ಲುಗಳಲ್ಲಿ ಕಾಲ್ಪನಿಕ ಮಾಹಿತಿಯನ್ನು ತುಂಬಿಸಿ ಉದಾಹರಣೆಯಾಗಿ ಕೆಳಗೆ ಕೊಡಲಾಗಿದೆ.  ಮುಂದೆ ಟೇಬಲ್ ಕುರಿತು ಅನೇಕ ವಿವರಣೆಯನ್ನು ಈ ಕೆಳಗಿನ ಉದಾಹರಣೆಯ ಮೂಲಕ ವಿವರಿಸುತ್ತೇನೆ.

ಉದ್ಯೋಗಿ

ಐಡಿ ಹೆಸರು ಪ್ರಾಯ ಲಿಂಗ ವಿದ್ಯಾರ್ಹತೆ ಅನುಭವ ಹುದ್ದೆ ಸಂಬಳ ಮೇಲಧಿಕಾರಿ ಶಾಖೆ ವಿಭಾಗ
1 ಸುಹಾಸಿನಿ 32 ಹೆಣ್ಣು ಎಂಬಿಎ 8 ವರ್ಷ ಮುಖ್ಯಸ್ಥ 50000 2 5
2 ಕಿರಣ್ 32 ಗಂಡು ಎಂಬಿಎ 7 ವರ್ಷ ಮುಖ್ಯಸ್ಥ 45000 1 1
3 ವಿಕಾಸ 28 ಗಂಡು ಬಿಇ 4 ವರ್ಷ ಡಿಸೈನರ್ 30000 2 1 2
4 ನಿಹಾರಿಕ 24 ಹೆಣ್ಣು ಬಿಇ 2 ವರ್ಷ ಡೆವಲಪರ್ 20000 1 2 6
5 ಸುನಯನ 25 ಹೆಣ್ಣು ಎಂಕಾಂ 4 ವರ್ಷ ಮುಖ್ಯಸ್ಥ 35000 1 3

ಶಾಖೆ

ಶಾಖೆ ಐಡಿ ಶಾಖೆಯ ಹೆಸರು ಮುಖ್ಯಸ್ಥ ವಿಳಾಸ ಒಟ್ಟು ಉದ್ಯೋಗಿಗಳು
1 ಬೆಂಗಳೂರು ತರುಣ್ 1/15, ಐಟಿಪಿಎಲ್, ಬೆಂಗಳೂರು 500
2 ಚೆನ್ನೈ ಮಾಳವಿಕ 12/2, ನುಂಗಂಬಾಕ್ಕಂ, ಚೆನ್ನೈ 300
3 ಮುಂಬೈ ಕಾವ್ಯ 1/18 ವರ್ಲಿ, ಮುಂಬೈ 100
4 ಮಂಗಳೂರು ಶಿಶಿರ್ 20/20, ಹಂಪನಕಟ್ಟೆ, ಮಂಗಳೂರು 100

ವಿಭಾಗ

ವಿಭಾಗ ಐಡಿ ವಿಭಾಗದ ಹೆಸರು ಮುಖ್ಯಸ್ಥ ಒಟ್ಟು ಉದ್ಯೋಗಿಗಳು ವಿವರಣೆ ಶಾಖೆ
1 ಮಾನವ ಸಂಪನ್ಮೂಲ ಕಿರಣ್ 20 ಮಾನವ ಸಂಪನ್ಮೂಲ ನಿರ್ವಹಣೆ 1
2 ಸರ್ವಿಸಸ್ ತೇಜಸ್ 440 ಸಾಫ್ಟ್ವೇರ್ ನಿರ್ವಹಣಾ ವಿಭಾಗ 1
3 ಹಣಕಾಸು ಸುನಯನ 10 ಹಣಕಾಸು ನಿರ್ವಹಣೆ 1
4 ಕ್ವಾಲಿಟಿ ಪರಿಣಿತಾ 30 ಸಾಫ್ಟ್ವೇರ್ ಕ್ವಾಲಿಟಿ ನಿರ್ವಹಣೆ 1
5 ಮಾನವ ಸಂಪನ್ಮೂಲ ಸುಹಾಸಿನಿ 10 ಮಾನವ ಸಂಪನ್ಮೂಲ ನಿರ್ವಹಣೆ 2
6 ಸರ್ವಿಸಸ್ ಅರ್ಪಿತ 275 ಸಾಫ್ಟ್ವೇರ್ ನಿರ್ವಹಣಾ ವಿಭಾಗ 2
7 ಹಣಕಾಸು ಪ್ರೇರಣಾ 5 ಹಣಕಾಸು ನಿರ್ವಹಣೆ 2
8 ಕ್ವಾಲಿಟಿ ಶಶಾಂಕ್ 10 ಸಾಫ್ಟ್ವೇರ್ ಕ್ವಾಲಿಟಿ ನಿರ್ವಹಣೆ 2

(ಮುಂದಿನ ಭಾಗದಲ್ಲಿ ಡೇಟಾಟೈಪ್,ಪ್ರೈಮರಿ ಕೀ ಕಾಲಂ, ಐಡೆಂಟಿಟಿ ಕಾಲಂ, ಕಾಲಂ ನಲ್ಲೆಬಿಲಿಟಿ, ಯುನಿಕ್ ಕೀ, ಡಿಫಾಲ್ಟ್ ವಾಲ್ಯೂ, ರಿಲೇಶನ್ ಶಿಪ್, ಫಾರಿನ್ ಕೀ ಮತ್ತು ಕಾರ್ಡಿನಾಲಿಟಿ ಕುರಿತು ತಿಳಿದುಕೊಳ್ಳೋಣ)

 ಬ್ಲಾಗಿನ ಕಡೆ ತಲೆ ಹಾಕಿ ಮಲಗಿ ಸುಮಾರು ದಿನ ಆಯ್ತು. ಅದನ್ನು ಬರೀಬೇಕು ಇದನ್ನು ಬರೀಬೇಕು ಅಂತ ಯೋಚನೆ ಮಾಡ್ತಾ ಕೊನೆಗೆ ಯಾವದನ್ನೂ ಬರೆಯದೆ ತುಂಬಾ ದಿನ ಕಳೆದು ಹೋಯ್ತು. ಕಡೆಗೂ ಈ ಕಾಯಿಲೆಗೆ ಮದ್ದು ಅಂದ್ರೆ ಈ ಕ್ಷಣಕ್ಕೆ ಏನು ತೋಚುತ್ತದೋ ಅದನ್ನೇ ಬರೆಯೋದು ಅಂತ ನಿರ್ಧರಿಸಿ ಪೆನ್ನು ಹಿಡಿದು… ಅಲ್ಲಲ್ಲ ಕೀಬೋರ‍್ಡ್ ಕುಟ್ಟುತ್ತಾ ಕುಳಿತಿದ್ದೇನೆ. ಸೋ ಕಾಲ್ಡ್ ಸಾಫ್ಟ್‌ವೇರ್ ಇಂಜಿನಿಯರ್ ಅನ್ನಿಸಿಕೊಂಡ ತಪ್ಪಿಗೆ ಕಳೆದ ಆರೂವರೆ ವರ್ಷಗಳಿಂದ ಡೇಟಾಬೇಸ್ ಡಿಸೈನರ್ ಆಗಿ ಮಣ್ಣು ಹೊತ್ತದ್ದಕ್ಕೆ ಆ ಕುರಿತು ಏನಾದ್ರೂ ಬರೆದರೆ ಹೇಗೆ ಅಂತ ನನ್ನ ಟ್ಯೂಬ್‌ಲೈಟ್ ತಲೆಯಲ್ಲಿ ಮಿಂಚು ಹೊಡಿತು. ಅದರ ಫಲವೇ ಈ ಲೇಖನ. ಓದೋದು ನಮ್ಮ ಜನ್ಮಾಂತರದ ಕರ್ಮಫಲವೇನೋ ಅಂತ ತಿರುಗಿ ಪ್ರಶ್ನೆ ಕೇಳೋ ಹಾಗಿಲ್ಲ ಅಂತ ಬ್ಲಾಗೇಶ್ವರನ ಮೇಲೆ ಆಣೆ ಮಾಡ್ಬಿಟ್ಟಿದ್ದೀನಿ 🙂

ಡೇಟಾಬೇಸ್ ಅನ್ನುವ ಪದ ಸಾಫ್ಟ್‌ವೇರ್ ಕ್ಷೇತ್ರದ ಹೊರಗೂ (ಸಾಫ್ಟ್‌ವೇರ್ ಯುಗಕ್ಕೂ ಬಹಳ ಮುಂಚೆಯೇ) ಬಳಕೆಯಲ್ಲಿ ಇರುವ ಕಾರಣ ಇದರ ಬಗ್ಗೆ ಸ್ಥೂಲವಾಗಿ ನಿಮಗೊಂದು ಕಲ್ಪನೆ ಇದೆ ಅಂದುಕೊಳ್ತೀನಿ. ಆದರೂ ಒಂಚೂರು ಈ ಬಗ್ಗೆ ತಿಳಿದುಕೊಳ್ಳೋಣ. ಬೇಕೆಂದಾಗ ಕ್ಷಿಪ್ರವಾಗಿ ಮಾಹಿತಿಯನ್ನು ಹೊರತೆಗೆಯಲು, ಇರುವ ಮಾಹಿತಿಯನ್ನು ಸುಲಭವಾಗಿ ಬದಲಾಯಿಸಲು ಮತ್ತು ಹೊಸ ಮಾಹಿತಿಯನ್ನು ಸೇರಿಸಲು ಅನುಕೂಲವಾಗುವಂತೆ ಒಂದು ವ್ಯವಸ್ಥಿತ ಕ್ರಮದಲ್ಲಿ ಜೋಡಿಸಲ್ಪಟ್ಟ ಮಾಹಿತಿ ಸಂಗ್ರಹವೇ ಡೇಟಾಬೇಸ್. ಹೀಗೆ ಹೇಳಿದ್ರೆ ಯಾರಿಗೆ ಸ್ವಾಮಿ ಅರ್ಥವಾಗ್ತದೆ ಅಂತೀರಾ? ಒಂದು ಸರಳ ಉದಾಹರಣೆ ನೋಡೋಣ. ನಿಮ್ಮ ಬಳಿ ಅನೇಕ ವ್ಯಕ್ತಿಗಳ ಕಾಂಟ್ಯಾಕ್ಟ್ ವಿವರಗಳಿದೆ ಅಂತಿಟ್ಟುಕೊಳ್ಳಿ. ಅದನ್ನು ಅಂದು ನೋಟ್‌ಬುಕ್‌ನಲ್ಲಿ ಉದ್ದಕ್ಕೂ ಬರೆದಿಟ್ಟುಕೊಂಡಿದ್ದರೆ ಬೇಕೆಂದಾಗ ಮಾಹಿತಿ ಹುಡುಕಲು, ಹೊಸದನ್ನು ಸೇರಿಸಲು ಇಲ್ಲ ಇರುವ ಮಾಹಿತಿಯನ್ನು ಬದಲಾಯಿಸಲು ಎಷ್ಟು ಕಷ್ಟ ಅಲ್ವಾ? ಅದೇ ಕಾಂಟ್ಯಾಕ್ಟ್ ವಿವರಗಳು ನಿಮ್ಮ ಮೊಬೈಲ್‌ನ ಫೋನ್‌ಬುಕ್‌ನಲ್ಲಿ ಇದ್ದರೆ ಮಾಹಿತಿಯ ನಿರ್ವಹಣೆ ಎಷ್ಟು ಸುಲಭವಾಗುತ್ತೆ ನೋಡಿ. ವಾಸ್ತವದಲ್ಲಿ ಉದಾಹರಣೆ ಕೊಡುವ ಅನುಕೂಲಕ್ಕೆ ಡೇಟಾಬೇಸನ್ನು ಫೋನ್‌ಬುಕ್‌ಗೆ ಹೋಲಿಸಿದೆ ಅಷ್ಟೆ. ಡೇಟಾಬೇಸ್‌ನ ಪರಿಕಲ್ಪನೆ ಇದಕ್ಕಿಂತ ಬಹಳ ವಿಶಾಲವಾಗಿದೆ.

ಡೇಟಾಬೇಸ್ ಅಂದ್ರೆನು ಅಂತ ಗೊತ್ತಾಯ್ತು. ಅದರಲ್ಲಿ ವ್ಯವಸ್ಥಿತವಾಗಿ ಮಾಹಿತಿ ಜೋಡಿಸೋದು ಅಂದ್ರೆ ಏನು ಅಂತ ನೋಡೋಣ. ಇದನ್ನು ಅರ್ಥ ಮಾಡಿಕೊಳ್ಳಲು ಸುಲಭವಾಗುವಂತೆ ಉದಾಹರಣೆಯೊಂದನ್ನು ಗಮನಿಸೋಣ. ಫ್ಯಾಮಿಲಿ ಅರ್ಥಾತ್ ಕುಟುಂಬ ಅನ್ನೋದು ಒಂದು ಡೇಟಾಬೇಸ್ ಅಂದುಕೊಳ್ಳಿ. ಅದರಲ್ಲಿ ಪೇರೆಂಟ್ಸ್, ಚಿಲ್ಡ್ರನ್ ಮತ್ತು ಫ್ರೆಂಡ್ಸ್ ಹೀಗೆ ಮೂರು ವಿಭಾಗಳ ಮಾಹಿತಿ ನಮ್ಮ ಬಳಿ ಇದೆ. ಈ ಮಾಹಿತಿಯನ್ನು ವ್ಯವಸ್ಥಿತವಾಗಿ ಜೋಡಿಸುವ ಅನುಕೂಲಕ್ಕಾಗಿ ‘ಟೇಬಲ್’ ಅನ್ನುವ ವಿಶಿಷ್ಟ ಮಾಹಿತಿ ಸಂಗ್ರಹಣಾ ರಚನೆಯು ಡೇಟಾಬೇಸ್‌ನಲ್ಲಿ ಇರುತ್ತದೆ. ಈ ಎಲ್ಲಾ ಮಾಹಿತಿಗಳನ್ನು ಮೂರು ಟೇಬಲ್ ಪೇರೆಂಟ್, ಚೈಲ್ಡ್, ಫ್ರೆಂಡ್ ಗಳಲ್ಲಿ ಶೇಖರಿಸಲಾಗುತ್ತದೆ.

ಈಗ ಪೇರೆಂಟ್ ಟೇಬಲ್ ಅನ್ನು ಗಮನಿಸೋಣ. ಅದರಲ್ಲಿ ವ್ಯಕ್ತಿಯ ಹೆಸರು, ವಯಸ್ಸು, ಉದ್ಯೋಗ, ಲಿಂಗ… ಹೀಗೆ ಅನೇಕ ಮಾಹಿತಿಗಳು ಇರುತ್ತವೆ. ಹೀಗೆ ಒಬ್ಬ ವ್ಯಕ್ತಿಯ ಎಲ್ಲಾ ವಿವರಗಳು ಇರುವ ಟೇಬಲ್‌ನ ಒಂದು ಸಾಲನ್ನು ‘ರೋ’ ಅಥವಾ ‘ಟಪಲ್’ ಅಂತ ಕರೆಯುತ್ತಾರೆ. ಪೇರೆಂಟ್  ಟೇಬಲ್‌ನಲ್ಲಿ ಪ್ರತೀ ವ್ಯಕ್ತಿಯ ವಿವರಗಳು ಇರುವ ಇಂತಹ ಅನೇಕ ಸಾಲುಗಳು ಇರುತ್ತವೆ. ಒಂದು ಸಾಲಿನಲ್ಲಿ (ರೋ) ಇರುವ ವ್ಯಕ್ತಿಯ ಕುರಿತಾದ ಚಿಕ್ಕ ಚಿಕ್ಕ ಮಾಹಿತಿಯ ಘಟಕಗಳನ್ನು ( ಹೆಸರು, ವಯಸ್ಸು, ಲಿಂಗ…) ‘ಕಾಲಮ್ಸ್’ ಅಥವಾ ‘ಆಟ್ರಿಬ್ಯೂಟ್’ ಅಂತ ಕರೆಯುತ್ತಾರೆ.

ಈ ಪೇರೆಂಟ್ ಟೇಬಲ್‌ನ ಪ್ರತಿಯೊಂದು ಸಾಲನ್ನು ವಿಶಿಷ್ಟವಾಗಿ ಗುರುತಿಸುವ ಅನುಕೂಲಕ್ಕಾಗಿ ಅದರಲ್ಲಿನ ಒಂದು ಘಟಕ(ಕಾಲಮ್) ಅನ್ನು ‘ಪ್ರೈಮರಿ ಕೀ’ ಅಂತ ಗುರುತಿಸುತ್ತಾರೆ. ಪ್ರೈಮರಿ ಕೀ ಆಗಲು ಆ ಕಾಲಮ್‌ಗೆ ಇರಬೇಕಾದ ಅರ್ಹತೆ ಅಂದರೆ, ಪ್ರತಿ ಸಾಲಿನಲ್ಲೂ ಬೇರೆಯದೇ ವಾಲ್ಯೂ(ಡೇಟಾ)ವನ್ನು ಅದು ಹೋದಿರಬೇಕು. ಉದಾಹರಣೆಗೆ ‘ಹೆಸರು’ನ್ನು ತೆಗೆದುಕೋಡರೆ ಇದು ಪ್ರೈಮರಿ ಕೀ ಆಗುವ ಯೋಗ್ಯತೆ ಹೊಂದಿಲ್ಲ. ಯಾಕೆಂದರೆ ಇಬ್ಬರು ವ್ಯಕ್ತಿಗಳು ಒಂದೇ ಹೆಸರನ್ನು ಹೊಂದಿರುವ ಸಾಧ್ಯತೆ ಇದೆಯಷ್ಟೇ? ಹೀಗೆ ಒಂದು ಟೇಬಲ್‌ನಲ್ಲಿ ಯಾವುದೇ ಕಾಲಮ್‌ಗೆ ಪ್ರೈಮರಿ ಕೀ ಆಗುವ ಅರ್ಹತೆ ಇಲ್ಲದ ಸಂದರ್ಭದಲ್ಲಿ ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಕಾಲಮ್‌ಗಳ ಸಮೂಹವನ್ನು ಪ್ರೈಮರಿ ಕೀ ಅಂತ ಹೆಸರಿಸಲಾಗುತ್ತದೆ. ಬಹಳಷ್ಟು ಸಂದರ್ಭಗಳಲ್ಲಿ ಸುಲಭ ನಿರ್ವಹಣೆಯ ಅನುಕೂಲಕ್ಕಾಗಿ ಒಂದು ಅನುಕ್ರಮ ಸಂಖ್ಯೆಯ ಕಾಲಮ್(ಐಡೆಂಟಿಟಿ) ಅನ್ನು ಹೆಚ್ಚುವರಿಯಾಗಿ ಟೇಬಲ್‌ಗೆ ಸೇರಿಸಲಾಗುತ್ತದೆ. ಮೇಲಿನ ಉದಾಹರಣೆಯಲ್ಲಿ ಅಂತಹ ಒಂದು ಕಾಲಮ್(‘ಪೇರೆಂಟ್ ಐಡಿ’) ಅನ್ನು ಪೇರೆಂಟ್ ಟೇಬಲ್ಲಿಗೆ ಸೇರಿಸೋಣ.

ನಿಮ್ಮ ಬ್ಯಾಂಕ್ ಖಾತೆಯ ಉದಾಹರಣೆ ತೆಗೆದುಕೊಂಡರೆ ನಿಮ್ಮ ಅಕೌಂಟ್ ಸಂಖ್ಯೆಯು ಪ್ರೈಮರಿ ಕೀ ಆಗಲು ಯೋಗ್ಯ ಕಾಲಮ್. ಪ್ರೈಮರಿ ಕೀ ಕಾಲಮ್‌ನ ಉಪಯೋಗ ಅಂದರೆ ಮಾಹಿತಿಯನ್ನು ಹುಡುಕುವ ಸಂದರ್ಭದಲ್ಲಿ ಇದನ್ನು ಬಳಸಿ ಒಂದು ನಿರ್ದಿಷ್ಟ ಸಾಲಿನ ಮಾಹಿತಿಯನ್ನು ಸುಲಭವಾಗಿ ಹೊರತೆಗೆಯಬಹುದು.

ಹೀಗೆ ಟೇಬಲ್‌ಗಳಲ್ಲಿ ಮಾಹಿತಿ ಶೇಖರಿಸಿದ್ದೇನೋ ಆಯ್ತು. ಆದರೆ ಈ ಟೇಬಲ್‌ಗಳ ನಡುವೆ ಇರುವ ಸಂಬಂಧವನ್ನು ಸೂಚಿಸುವುದು ಹೇಗೆ?  ಎರಡು ಯಾ ಅದಕಿಂತ ಹೆಚ್ಚು ಟೇಬಲ್‌ಗಳ ನಡುವೆ ಇರುವ ಸಂಬಂಧವನ್ನು ಸೂಚಿಸಲು ಇರುವ ಪದ ‘ರಿಲೇಶನ್‌ಶಿಪ್’.  ಯಾವುದೇ ಎರಡು ಟೇಬಲ್‌ಗಳ ನಡುವೆ ಸಂಬಂಧ ಸೂಚಿಸಲು ಆ ಎರಡು ಟೇಬಲಗಳ ಮಧ್ಯೆ ಸೇತುವೆಯಾಗಿ ಕಾಲಮ್ ಒಂದು ಇರಲೇಬೇಕು. ಅಂತಹ ಕಾಲಮನ್ನು ‘ಫಾರಿನ್ ಕೀ’ ಎಂದು ಕರೆಯುತ್ತಾರೆ. ಮೇಲಿನ ಉದಾಹರಣೆಯಲ್ಲಿ ‘ಪೇರೆಂಟ್’ ಟೇಬಲ್ ಮತ್ತು ‘ಚೈಲ್ಡ್’ ಟೇಬಲ್ ಮಧ್ಯೆ ಇರುವ ಈ ಸಂಬಂಧ ಯಾವುದು? ಚೈಲ್ಡ್ ಟೇಬಲ್‌ನಲ್ಲಿ ‘ಪೇರೆಂಟ್ ಐಡಿ’ಯನ್ನು ಫಾರಿನ್ ಕೀಯಾಗಿ ಸೇರಿಸಿ ಈ ಸಂಬಂಧವನ್ನು ಸ್ಥಾಪಿಸಬಹುದು.

ಉದಾಹರಣೆಗೆ ರಮೇಶ ಅನ್ನುವ ವ್ಯಕ್ತಿಯ ಪೇರೆಂಟ್ ಐಡಿ ೧೦ ಅಂತಿಟ್ಟುಕೊಂಡರೆ, ಮಹೇಶ ಮತ್ತು ಗಿರೀಶ ಅನ್ನುವವರು ರಮೇಶನ ಮಕ್ಕಳು ಅಂತಿಟ್ಟುಕೊಂಡರೆ, ಚೈಲ್ಡ್ ಟೇಬಲ್‌ನಲ್ಲಿ ಮಹೇಶ ಮತ್ತು ಗಿರೀಶರ ಪೇರೆಂಟ್ ಐಡಿ ೧೦ ಆಗಿರುತ್ತದೆ. ಈಗ ನಮಗೆ ರಮೇಶನ ವಿವರಗಳ ಜೊತೆಗೆ ರಮೇಶನ ಮಕ್ಕಳ ವಿವರವೂ ಬೇಕಾದಲ್ಲಿ ಈ ಎರಡು ಟೇಬಲ್‌ಗಳ ನಡುವಿನ ಕೊಂಡಿಯಾದ ಪೇರೆಂಟ್ ಐಡಿಯನ್ನು ಬಳಸಿ ನಮಗೆ ಬೇಕಾದ ಮಾಹಿತಿಯನ್ನು ಸುಲಭವಾಗಿ ಪಡೆಯಬಹುದು. ಹೀಗೆ ಎರಡು ಯಾ ಅದಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಟೇಬಲ್‌ಗಳಲ್ಲಿರುವ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯಲು ಅವಗಳ ನಡುವಿನ ಸಂಬಂಧ ಹೊಂದಿರುವ ಕಾಲಮ್ ಬಳಸಿ ಜೋಡಿಸುವ ಪ್ರಕ್ರಿಯೆಯೇ ‘ಜಾಯ್ನ್’

ಈ ರಿಲೇಶನ್‌ಶಿಪ್‌ನ ವಿಷಯಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಹಾಗೆ ಇನ್ನೊಂದು ಪದವಿದೆ. ಅದು ಕಾರ್ಡಿನಾಲಿಟಿ. ಒಂದು ಟೇಬಲ್‌ನ ಒಂದು ಸಾಲು ಇನ್ನೊಂದು ಟೇಬಲ್‌ನ ಎಷ್ಟು ಸಾಲುಗಳ ಜೊತೆ ಸಂಬಂಧ ಹೊಂದಬಹುದು ಅನ್ನುವುದನ್ನು ಇದು ನಿರ್ಧರಿಸುತ್ತದೆ. ಕಾರ್ಡಿನಾಲಿಟಿಯನ್ನು ಸೂಚಿಸಲು ೧:೧, ೧:ಎನ್ ಅಥವಾ ಎಮ್:ಎನ್ ಅನ್ನುವ ಗುರುತನ್ನು ಬಳಸುತ್ತಾರೆ. ೧:೧ ಅಂದರೆ ಒಂದು ಟೇಬಲ್‌ನ ಒಂದು ಸಾಲು ಇನ್ನೊಂದು ಟೇಬಲ್‌ನ ಒಂದು ಸಾಲಿನೊಂದಿಗೆ ಮಾತ್ರ ಸಂಬಂಧ ಹೊಂದಬಹುದು. ( ಒಂದು ತಮಾಶೆಯ ಉದಾಹರಣೆ ಕೊಡುವುದಾದರೆ ಗಂಡು ಮತ್ತು ಹೆಣ್ಣು ಅನ್ನುವ ಎರಡು ಟೇಬಲ್‌ಗಳ ಮಧ್ಯೆ ಇರುವ ಸಂಬಂಧದ ಕಾರ್ಡಿನಾಲಿಟಿ ೧:೧ ಇರಭೇಕು ಅನ್ನೋದು ಏಯ್ಡ್ಸ್ ಜಾಹಿರಾತಿನ ಸೂಚನೆ). ಈಗ ನಿಮಗೊಂದು ಪ್ರಶ್ನೆ… ಮೇಲಿನ ಮೂರೂ ಟೇಬಲ್‌ಗಳ ನಡುವಿನ ಸಂಬಂಧದ ಕಾರ್ಡಿನಾಲಿಟಿ ಏನು ಅಂತ ಹೇಳ್ತೀರಾ?

ಡೇಟಾಬೇಸ್‌ನ ಇನ್ನೊಂದು ಮಹತ್ವದ ಪರಿಕಲ್ಪನೆ ಅಂದ್ರೆ ‘ಇಂಡೆಕ್ಸಿಂಗ್’. ಟೇಬಲ್‌ಗಳಲ್ಲಿ ತೀರಾ ಕಡಿಮೆ ಮಾಹಿತಿಯಿದ್ದರೆ ಮಾಹಿತಿಯನ್ನು ಹುಡುಕುವುದು ಸುಲಭ. ಆದರೆ ಲಕ್ಷಾಂತರ ಸಾಲುಗಳಿರುವ ಟೇಬಲ್‌ಗಳಿಂದ ಮಾಹಿತಿ ಹುಡುಕುವುದು ತುಂಬಾ ಸಮಯವನ್ನು ತೆಗೆದೆಕೊಳ್ಳುತ್ತದೆ. ಅದಕ್ಕಾಗಿಯೇ ಟೇಬಲ್‌ನ ಕಾಲಮ್‌ಗಳ ಮೇಲೆ ‘ಇಂಡೆಕ್ಸ್’ ಅನ್ನು ರಚಿಸಲಾಗುತ್ತದೆ. ಇದಕ್ಕೆ ಅತ್ಯುತ್ತಮ ಉದಾಹರಣೆಯೆಂದರೆ ಪುಸ್ತಕಗಳಲ್ಲಿರುವ ಇಂಡೆಕ್ಸ್ ಪೇಜ್. ಅದರಲ್ಲಿ ಯಾವ ಮಾಹಿತಿ ಯಾವ ಪುಟದಲ್ಲಿದೆ ಅಂತ ನಮೂದಿಸಿದ್ದನ್ನು ಅನುಸರಿಸಿ ಸುಲಭವಾಗಿ ನಾವು ನಮಗೆ ಬೇಕಾದ ಮಾಹಿತಿ ಪಡೆಯುತ್ತೇವಲ್ಲವೇ? ಹಾಗೆಯೇ ಡೇಟಾಬೇಸ್‌ನ ಈ ಇಂಡೆಕ್ಸ್ ಕೂಡಾ.

ಇಂತಿಪ್ಪ ಡೇಟಾಬೇಸ್ ಜೊತೆ ವ್ಯವಹರಿಸೋದು ಹೇಗೆ? ಅದಕ್ಕೆಂತಲೇ ವಿಶೇಷವಾಗಿ ನಿರ್ಮಿಸಲ್ಪಟ್ಟ ಸಾಫ್ಟ್‌ವೇರುಗಳಿರುತ್ತವೆ. ಅದನ್ನು ಡೇಟಾಬೇಸ್ ಮ್ಯಾನೇಜ್‌ಮೆಂಟ್ ಸಿಸ್ಟಮ್ ಅಥವಾ ಸಂಕ್ಷಿಪ್ತವಾಗಿ ಡಿಬಿಎಮ್‌ಎಸ್ ಅಂತ ಕರೆಯುತ್ತಾರೆ. ಮೈಕ್ರೋಸಾಫ್ಟ್ ಎಸ್‌ಕ್ಯುಎಲ್ ಸರ್ವರ್, ಒರಾಕಲ್, ಮೈ ಎಸ್‌ಕ್ಯುಎಲ್ ಮೊದಲಾದವುಗಳು ಇಂತಹ ಸಾಫ್ಟ್‌ವೇರುಗಳು. ಇವಗಳನ್ನು ಬಳಸಿ ಡೇಟಾಬೇಸುಗಳನ್ನು ರಚಿಸುವುದು, ಅವುಗಳಲ್ಲಿ ಮಾಹಿತಿಗಳನ್ನು ಶೇಖರಿಸುವುದು, ಮಾಹಿತಿ ನಿರ್ವಹಣೆಗೆ ಪ್ರೋಗ್ರಾಮುಗಳನ್ನು ಬರೆಯುವುದು, ಮಾಹಿತಿಯ ಬ್ಯಾಕ್‌ಅಪ್.. ಹೀಗೆ ಎಲ್ಲವನ್ನೂ ಸುಲಭವಾಗಿ ಮಾಡಬಹುದು.

ಈ ಮಾಹಿತಿ ನಿಮಗೆಷ್ಟು ಉಪಯುಕ್ತವಾಯಿತೋ ಗೊತ್ತಿಲ್ಲ. ಅಲ್ಲದೇ ಕೆಲವೊಂದು ಅಂಶಗಳನ್ನು ಸರಳೀಕರಿಸುವ ಸಲುವಾಗಿ ತೀರಾ ಸ್ಥೂಲವಾಗಿ ವಿವರಿಸಿದ್ದೇನೆ. ನಿಮಗೆ ಈ ಲೇಖನ ಮೆಚ್ಚುಗೆಯಾದರೆ ನಾಲ್ಕು ಸಾಲು ಬರೆಯಿರಿ… ಮೆಚ್ಚುಗೆಯಾಗದಿದ್ದರೂ ಕೂಡಾ 🙂

ಈ ಪ್ರಶ್ನೆಯನ್ನು ಇಲ್ಲಿಯವರೆಗೆ ಕಡಿಮೆಯೆಂದರೂ ನೂರು ಜನರಾದರೂ ನನ್ನ ಬಳಿ ಕೇಳಿದ್ದಾರೆ. ಅದೆಂತದೋ ಪ್ರಾಜೆಕ್ಟ್ ಅಂತಾರಲ್ಲ, ಕೋಡ್ ಬರೆಯೋದು ಹಾಗಂದ್ರೇನು, ಪ್ರೋಗ್ರಾಮ್ ಅಂದ್ರೆ ಏನು… ಹೀಗೆ ಸಾಫ್ಟ್‌ವೇರ್ ಜಗತ್ತಿನ ಬಗ್ಗೆ ಕುತೂಹಲದಿಂದ ಪ್ರಶ್ನೆ ಕೇಳಿದವರು ಅನೇಕ ಮಂದಿ ಇದ್ದಾರೆ. ಅಸಲಿಗೆ ಹಗಲು-ರಾತ್ರಿ ಕೆಲಸ ಕೆಲಸ ಅಂತ ಸಾಫ್ಟ್‌ವೇರ್ ಮಂದಿ ಮಾಡುವ ಕೆಲಸ ಯಾವ ಸ್ವರೂಪದ್ದು ಅನ್ನುವ ಕುರಿತಾದ ಬಹುತೇಕರ ಪ್ರಶ್ನೆಗೆ ಸರಳವಾಗಿ ವಿವರಿಸಲು ಯಾಕೆ ಪ್ರಯತ್ನಿಸಬಾರದೆಂದು ಇದನ್ನು ಬರೆಯಲು ಹೊರಟಿದ್ದೇನೆ. ಆದಷ್ಟು ಕಡಿಮೆ ತಾಂತ್ರಿಕ ಪದಗಳನ್ನು ಬಳಸಲು ಯತ್ನಿಸಿದ್ದೇನೆ.

ಇದನ್ನು ಬರೀ ವಾಕ್ಯಗಳಲ್ಲಿ ವಿವರಿಸುವುದಕ್ಕಿಂತ, ಒಂದು ಸರಳ ಉದಾಹರಣೆಯೊಂದಿಗೆ ನೋಡಿದರೆ ಅರ್ಥೈಸಿಕೊಳ್ಳಲು ಸುಲಭ. ಒಂದು ಇನ್ಶೂರೆನ್ಸ್ ಕಂಪೆನಿಯ ಉದಾಹರಣೆ ಗಮನಿಸೋಣ. ಇಲ್ಲಿಯ ತನಕ ಅವರ ವಿವಿಧ ಯೋಜನೆಗಳು, ಅದರ ಪ್ರೀಮಿಯಂ ನಿರ್ಧಾರ… ಮೊದಲಾದ ಕಾರ್ಯಗಳೆಲ್ಲಾ ಲೆಡ್ಜರ್‌ಗಳಲ್ಲಿ ಮಾಹಿತಿ ಸಂಗ್ರಹಿಸುವುದರ ಮೂಲಕ ಹಾಗೂ ಪೆನ್ನು, ಪೇಪರ್, ಕ್ಯಾಲ್ಕುಲೇಟರ್ ಬಳಸಿ ಲೆಕ್ಕ ಹಾಕುವುದರ ಮೂಲಕ ನಿರ್ವಹಿಸುತ್ತಿದ್ದರು. ಈಗ ತನ್ನ ವ್ಯವಹಾರಗಳನ್ನೆಲ್ಲ ಸುಗಮವಾಗಿ ನಿರ್ವಹಿಸಲು ಒಂದು ಕಂಪ್ಯೂಟರ್ ಸಾಫ್ಟ್‌ವೇರ್ ಬೇಕೆಂದು ನಿರ್ಧರಿಸಿತು ಅಂತಿಟ್ಟುಕೊಳ್ಳೋಣ. ಅದಕ್ಕಾಗಿ ಅನೇಕ ಸಾಫ್ಟ್‌ವೇರ್‌ ಕಂಪೆನಿಗಳನ್ನು ಸಂಪರ್ಕಿಸಿ, ಯಾರು ಅತೀ ಕಡಿಮೆ ಅವಧಿಯಲ್ಲಿ, ಅತೀ ಕಡಿಮೆ ಖರ್ಚಿನಲ್ಲಿ ಅಂತಹ ಸಾಫ್ಟ್‌ವೇರ್ ನಿರ್ಮಿಸಿಕೊಡಲು ಒಪ್ಪುತ್ತಾರೋ ಅವರಿಗೆ ಈ ಕೆಲಸ ವಹಿಸಿಕೊಡಲಾಗುತ್ತದೆ.    (ಕೆಲವೊಮ್ಮೆ ನಿರ್ಮಾಣ ವೆಚ್ಚ ಹೆಚ್ಚಾಗಿದ್ದರೂ ಕೂಡಾ ಕಂಪೆನಿಯ ‘ಬ್ರ್ಯಾಂಡ್ ನೇಮ್’ ನೋಡಿ ನಿರ್ಧಾರವಾಗುವುದೂ ಇದೆ). ಹೀಗೆ ಕಸ್ಟಮರ್ ಒಬ್ಬರಿಂದ ಸಾಫ್ಟ್‌ವೇರ್ ಕಂಪೆನಿ ಪಡೆಯುವ ಈ ಕೆಲಸದ ಆರ್ಡರೇ ‘ಪ್ರಾಜೆಕ್ಟ್’. ಈ ಪ್ರಾಜೆಕ್ಟ್ ಮುಗಿಸಿಕೊಡುವ ಕೊನೆಯ ದಿನಾಂಕದ ಕುರಿತು ಮೊದಲೇ ಕರಾರು ನಡೆದಿರುತ್ತದೆ. ಹಾಗಾಗಿಯೇ ಸಾಫ್ಟ್‌ವೇರ್ ಮಂದಿ ಸದಾ ಈ ‘ಡೆಡ್‌ಲೈನ್‌’ನ ಬಿಸಿಗೆ ‘ಕುಂಡೆಸುಟ್ಟ ಬೆಕ್ಕಿನಂತೆ ಆಡುವುದು.

ಈಗ ಪ್ರಾಜೆಕ್ಟ್ ಏನೋ ಬಂತು. ಅದನ್ನು ಯಶಸ್ವಿಯಾಗಿ ಪೂರೈಸುವುದು ಹೇಗೆ? ಮೊಟ್ಟ ಮೊದಲನೆಯದಾಗಿ ಇನ್ಶೂರೆನ್ಸ್ ಕಂಪೆನಿಯು ತನ್ನ ಸಾಫ್ಟ್‌ವೇರ್‌ನಲ್ಲಿ ಯಾವ ಯಾವ ಅಂಶಗಳು ಇರಲು ಬಯಸುತ್ತದೆ ಅನ್ನುವುದನ್ನು ಸರಿಯಾಗಿ ತಿಳಿದುಕೊಳ್ಳಬೇಕಲ್ಲ. ಹಾಗಾಗಿ ಅವರ ಬೇಡಿಕೆ ಯಾ ಅಗತ್ಯಗಳ (ರಿಕ್ವಾಯರ್‌ಮೆಂಟ್) ಕುರಿತು ಮಾಹಿತಿ ಸಂಗ್ರಹಿಸುವುದು ಪ್ರಾಜೆಕ್ಟ್‌ನ ಮೊದಲ ಹಂತ. ಈ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿಯೇ ಪರಿಣಿತರಾಗಿರುವ ‘ರಿಕ್ವಾಯರ್‌ಮೆಂಟ್ ಅನಲಿಸ್ಟ್’ ಅಥವಾ ‘ಬ್ಯುಸಿನೆಸ್ ಅನಲಿಸ್ಟ್’ಗಳು ಈ ಕಾರ್ಯಕ್ಕೆ ನಿಯೋಜಿಸಲ್ಪಡುತ್ತಾರೆ. ಇನ್ಶೂರೆನ್ಸ್ ಕಂಪೆನಿಯ ಅಧಿಕಾರಿಗಳೊಂದಿಗೆ ವಿಚಾರ ವಿನಿಮಯ ನಡೆಸಿ, ಅವರು ನೀಡುವ ಮಾಹಿತಿಗಳನ್ನು, ಅವರ ಬೇಡಿಕೆಗಳನ್ನೆಲ್ಲಾ ವ್ಯವಸ್ಥಿತವಾಗಿ ದಾಖಲಿಸಲಾಗುತ್ತದೆ. ಒಂದು ಪ್ರಾಜೆಕ್ಟ್‌ನ ಯಶಸ್ಸಿನಲ್ಲಿ ಈ ಹಂತ ತುಂಬಾ ಪ್ರಮುಖವಾಗಿದ್ದು, ಇಲ್ಲೇನಾದರೂ ತಪ್ಪು ನುಸುಳಿಕೊಂಡರೆ ಗಣೇಶನನ್ನು ಮಾಡಲು ಹೋಗಿ ಅವರಪ್ಪನನ್ನು ಮಾಡಿದಂತಾಗುತ್ತದೆ. ಹಾಗಾಗಿ ಇಡೀ ಪ್ರಾಜೆಕ್ಟ್‌ನ ಒಟ್ಟು ಅವಧಿಯಲ್ಲಿ ಕಾಲು ಭಾಗ ಈ ಪ್ರಕ್ರಿಯೆಗೇ ಮೀಸಲಾಗಿರುತ್ತದೆ.

ಕೆಲವೊಮ್ಮೆ ಈ ಪ್ರಕ್ರಿಯೆಗೆ ಪೂರಕವಾಗಿ ಅಂತಿಮ ಹಂತದಲ್ಲಿ ಆ ತಂತ್ರಾಂಶವು ಹೇಗೆ ಕಾಣಿಸುತ್ತದೆ ಅನ್ನೋದನ್ನು ತೋರಿಸಲು ‘ಪ್ರೊಟೋಟೈಪ್’ ಒಂದನ್ನು ಸಿದ್ಧಪಡಿಸಿ ಕಸ್ಟಮರ್‌ಗೆ ತೋರಿಸಲಾಗುತ್ತದೆ. ಇದಕ್ಕೊಂದು ಸಾದೃಶ್ಯ ಕೊಡುವುದಾದರೆ, ಮನೆ ಕಟ್ಟುವ ಮುನ್ನ ಅದು ಹೇಗೆ ಕಾಣಿಸಬಹುದೆಂದು ಅದರ ಪುಟ್ಟ ಪ್ರತಿಕೃತಿ ಅಥವಾ ಡ್ರಾಯಿಂಗ್ ಅನ್ನು ಇಂಜಿನಿಯರ್ ತೋರಿಸ್ತಾರಲ್ಲ ಹಾಗೆ.

ಹೀಗೆ ಮಾಹಿತಿ/ಬೇಡಿಕೆ/ಅಗತ್ಯಗಳನ್ನೆಲ್ಲಾ ಕಲೆಹಾಕಿ ದಾಖಲಿಸಿಟ್ಟ ಬಳಿಕ ಅನಾಲಿಸಿಸ್ ಮತ್ತು ಡಿಸೈನ್ ಶುರುವಾಗುತ್ತೆ. ಮೊದಲ ಈ ಕ್ರಿಯೆಯಲ್ಲಿ ವಿಶೇಷ ಪರಿಣತಿಯುಳ್ಳ ತಂಡವೊಂದು ಈ ಕೆಲಸಕ್ಕಾಗಿ ನಿಯೋಜಿಸಲ್ಪಡುತ್ತದೆ. ಸಿದ್ಧಪಡಿಸಬೇಕಾದ ಸಾಫ್ಟ್‌ವೇರ್‌ನಲ್ಲಿರಬೇಕಾದ ಅಂಶಗಳು, ಲಕ್ಷಣಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಅದನ್ನು ವಿವಿಧ ವಿಭಾಗಗಳಾಗಿ ವಿಂಗಡಿಸಿ, ಪ್ರತೀ ವಿಭಾಗವೂ ಮಾಡುವ ಕೆಲಸ, ಅದನ್ನು ರಚಿಸುವುದು ಹೇಗೆ ಅನ್ನುವುದನ್ನು ಈ ಹಂತದಲ್ಲಿ ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ. ಇನ್ಶೂರೆನ್ಸ್ ಕಂಪೆನಿಯ ಉದಾಹರಣೆಯನ್ನು ಗಮನಿಸುವುದಾದರೆ ಅದರಲ್ಲಿ ಗ್ರಾಹಕರನ್ನು ಸೇರಿಸಲು/ತೆಗೆದು ಹಾಕಲು ಒಂದು ವಿಭಾಗ, ಪ್ರಿಮಿಯಂ ಲೆಕ್ಕ ಹಾಕಲು ಒಂದು ವಿಭಾಗ, ಕಟ್ಟಿದ ಪ್ರಿಮಿಯಂಗಳ ದಾಖಲಾತಿಗೆ ಒಂದು… ಹೀಗೆ ಅನೇಕ ವಿಭಾಗಗಳನ್ನಾಗಿ ವಿಂಗಡಿಸಿ, ಪ್ರತೀ ವಿಭಾಗವು ಮಾಡುವ ಕೆಲಸ, ಆ ವಿಭಾಗವನ್ನು ಹೇಗೆ ರಚಿಸಬೇಕು ಅನ್ನುವುದನ್ನು ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ. ಈ ಕಾರ್ಯದಲ್ಲಿ ಇದಕ್ಕೆಂದೇ ರಚಿತವಾದ ಅನೇಕ ವಿಶೇಷ ತಂತ್ರಾಶ(ಸಾಫ್ಟ್‌ವೇರ್)ಗಳನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಡೆಸೈನ್ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸ್ಥೂಲವಾಗಿ ಕಟ್ಟಡದ ನೀಲನಕ್ಷೆ ಹಾಗು ಅದಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಡ್ರಾಯಿಂಗ್‌ಗಳಿಗೆ ಹೋಲಿಸಬಹುದು. ಈ ಹಂತಕ್ಕೂ ಕೂಡಾ ಹೆಚ್ಚು ಕಡಿಮೆ ಕಾಲು ಭಾಗದಷ್ಟು ಸಮಯ ಮೀಸಲಾಗಿರುತ್ತದೆ.

ಡಿಸೈನ್ ಹಂತ ಮುಗಿಯುವಷ್ಟರಲ್ಲಿ (ಕೆಲವೊಮ್ಮೆ ಮೊದಲೇ) ಈ ಸಾಫ್ಟ್‌ವೇರ್ ನಿರ್ಮಾಣದಲ್ಲಿ ಬಳಸಬೇಕಾದ ತಂತ್ರಜ್ಞಾನ, ತಂತ್ರಾಂಶಗಳನ್ನು ನಿರ್ಧರಿಸಲಾಗುತ್ತದೆ. ಇದರಲ್ಲಿ ಸ್ಥೂಲವಾಗಿ ಎರಡು ವಿಭಾಗಗಳಿರುತ್ತವೆ. ಮಾಹಿತಿ ಸಂಗ್ರಹಣೆಗೆ ಬಳಸುವ ಡೇಟಾಬೇಸ್ ಮತ್ತು ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಕಂಪ್ಯೂಟರ್‌ಗೆ ಆದೇಶ ನೀಡಲು ಬಳಸುವ ಭಾಷೆ. (ವಾಸ್ತವವಾಗಿ ಇದು ಇಲ್ಲಿ ಹೇಳಿದಷ್ಟು ನೇರ ಮತ್ತು ಸರಳವಾಗಿಲ್ಲ. ಸುಮ್ಮನೆ ಸ್ಥೂಲವಾಗಿ ವಿವರಿಸಿದ್ದೇನೆ ಅಷ್ಟೆ)

ಈ ಭಾಷೆಯನ್ನು ‘ಪ್ರೊಗ್ರಾಮಿಂಗ್ ಲಾಂಗ್ವೇಜ್’ ಎಂದೂ, ಇದನ್ನು ಬಳಸಿ ಬರೆಯುವ ಸಂಕೇತ/ಆದೇಶಗಳ ಸಮೂಹವನ್ನು ‘ಪ್ರೋಗ್ರಾಮ್’ / ಕೋಡ್’ ಎಂದೂ ಕರೆಯಲಾಗುತ್ತದೆ.

ಈ ಕೆಲಸವನ್ನು ನಿರ್ವಹಿಸಲು ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಲ್ಲಿ ಪರಿಣತಿಯನ್ನು ಪಡೆದ ತಂಡವನ್ನು ಕಟ್ಟಲಾಗುತ್ತದೆ. ತಂಡದ ವಿವಿಧ ಸದಸ್ಯರಿಗೆ ಡಿಸೈನ್‌ನಲ್ಲಿ ಸೂಚಿಸಿದ ಪ್ರಕಾರ ವಿವಿಧ ವಿಭಾಗಗಳನ್ನು ನಿರ್ಮಿಸಲು ಕೊಡಲಾಗುತ್ತದೆ. ಈ ಪ್ರಕ್ರಿಯೆಗೆ ‘ಕೋಡಿಂಗ್’ ಅಂತ ಹೆಸರು. ತಮಗೆ ನಿಗದಿಪಡಿಸಿದ ಅವಧಿಯೊಳಗೆ, ಡಿಸೈನ್‌ಗೆ ಅನುಗುಣವಾಗಿ ಮಾಡ್ಯುಲ್‌(ಘಟಕ)ಗಳನ್ನು ಮುಗಿಸಬೇಕಾಗುತ್ತದೆ. ಪ್ರತಿಯೊಬ್ಬನೂ ತಾನು ನಿರ್ಮಿಸಿದ ಪ್ರೋಗ್ರಾಂ/ಘಟಕವನ್ನು ಬಿಡಿ ಬಿಡಿಯಾಗಿ ಟೆಸ್ಟ್ ಮಾಡುತ್ತಾನೆ. ಉದಾಹರಣೆಗೆ ಇನ್ಶೂರೆನ್ಸ್ ಕಂಪೆನಿಯ ಪ್ರಿಮಿಯಂ ಲೆಕ್ಕ ಹಾಕುವ ಮಾಡ್ಯೂಲನ್ನು ಗಮನಿಸಿದರೆ, ಅದು ಕೊಟ್ಟ ಮಾಹಿತಿಗಳನ್ನೆಲ್ಲಾ ಬಳಸಿ, ಸರಿಯಾದ ಪ್ರಿಮಿಯಂ ಲೆಕ್ಕ ಹಾಕಿ ಕೊಡಬೇಕು. ಅದನ್ನು ಇನ್ಶೂರೆನ್ಸ್ ಕಂಪೆನಿ ನೀಡಿದ ಮಾಹಿತಿಯೊಂದಿಗೆ ತಾಳೆ ಹಾಕಿ ತಪ್ಪಿದ್ದಲ್ಲಿ ಅದನ್ನು ಹುಡುಕಿ ಸರಿಪಡಿಸಬೇಕು.

ಹೀಗೆ ಬಿಡಿಬಿಡಿಯಾಗಿ ರಚಿತವಾದ ಮಾಡ್ಯೂಲ್‌ಗಳನ್ನೆಲ್ಲಾ ಒಟ್ಟಾಗಿಸಿ ಒಂದೇ ಸಾಫ್ಟ್‌ವೇರ್ ಘಟಕವನ್ನಾಗಿಸಲಾಗುತ್ತದೆ. ಇದಕ್ಕೆ ಇಂಟಿಗ್ರೇಶನ್ ಅನ್ನುತ್ತಾರೆ. ಹೀಗೆ ತಯಾರಾದ ಸಾಫ್ಟ್‌ವೇರ್ ಇನ್ನೆರಡು ಹಂತದ ಟೆಸ್ಟಿಂಗ್‌ಗೆ ಒಳಗಾಗುತ್ತದೆ. ಅದೆಂದರೆ ‘ಇಂಟಿಗ್ರೇಶನ್ ಟೆಸ್ಟಿಂಗ್’ಹಾಗೂ ‘ಸಿಸ್ಟಮ್ ಟೆಸ್ಟಿಂಗ್’. ‘ಸಿಸ್ಟಮ್ ಟೆಸ್ಟಿಂಗ್’ ಹಂತದಲ್ಲಿ ಕಸ್ಟಮರ್ ಸಲ್ಲಿಸಿದ ಬೇಡಿಕೆಗನುಗುಣವಾಗಿ ತಂತ್ರಾಂಶವು ಕಾರ್ಯ ನಿರ್ವಹಿಸುತ್ತಿದೆಯೇ ಅನ್ನುವುದನ್ನು ಪರೀಕ್ಷಿಸಲಾಗುತ್ತದೆ. ಈ ಯಾವುದೇ ಹಂತದಲ್ಲಿ ದೋಷಗಳೇನಾದರೂ ಬಂದಲ್ಲಿ ಅದನ್ನು ಸರಿಪಡಿಸಿ ಮತ್ತೆ ಪರೀಕ್ಷೆಗೊಳಪಡಿಸಲಾಗುತ್ತದೆ.

ಇಷ್ಟೆಲ್ಲಾ ಮುಗಿದ ಬಳಿಕ ಸಾಫ್ಟ್‌ವೇರ್ ಬಳಕೆಗೆ ನೆರವಾಗುವ ಕೈಪಿಡಿಯೊಂದನ್ನು ಸಿದ್ಧಪಡಿಸಿ, ಅದನ್ನು ಕಸ್ಟಮರ್‌ಗೆ ರವಾನಿಸಲಾಗುತ್ತದೆ. ಈ ಪ್ರಕ್ರಿಯೆಗೆ ‘ಡೆಲಿವರಿ’ ಅನ್ನಲಾಗುತ್ತದೆ. ಹೀಗೆ ರಚಿತವಾದ ಸಾಫ್ಟ್‌ವೇರ್‌ನ ಕಾರ್ಯವಿಧಾನವನ್ನು ಇನ್ಶೂರೆನ್ಸ್ ಕಂಪೆನಿಯವರು ಪರೀಕ್ಷೆಗೆ ಒಳಪಡಿಸಿ ದೋಷವಿದ್ದರೆ, ಅಥವಾ ಬದಲಾವಣೆ ಬೇಕಿದ್ದರೆ ಅದನ್ನು ಸೂಚಿಸುತ್ತಾರೆ. ಅವರು ಸೂಚಿಸಿದ ಬದಲಾವಣೆಗಳನ್ನು, ಗುರುತಿಸಿದ ದೋಷಗಳಿಗೆ ಅನುಗುಣವಾಗಿ ಸೂಕ್ತವಾದ ಬದಲಾವಣೆ ಮಾಡಿ ಪುನಃ ಕಸ್ಟಮರ್ ಬಳಿ ಸಾಫ್ಟ್-ವೇರನ್ನು ಕಳಿಸಲಾಗುತ್ತದೆ. ಈ ಪ್ರಕ್ರಿಯೆಯು ಕಸ್ಟಮರ್‌ಗೆ ಅದರ ಕಾರ್ಯವಿಧಾನದ ಕುರಿತು ತೃಪ್ತಿಯಾಗುವವರೆಗೆ ಪುನರಾವರ್ತನೆಯಾಗುತ್ತಲಿರುತ್ತದೆ.

ಅಂತೂ ಕೊನೆಗೂ ಸಾಫ್ಟ್‌ವೇರ್ ಬಳಕೆಗೆ ಸಿದ್ಧವಾಗುತ್ತದೆ. ಬಳಕೆ ಶುರುವಾದ 3-6 ತಿಂಗಳವರೆಗೆ ಕರಾರಿನಂತೆ ಅದರ ನಿರ್ವಹಣೆ (ಮೇಂಟೆನೆನ್ಸ್) ಜವಾಬ್ದಾರಿಯಿರುತ್ತದೆ. ಬಳಕೆಯ ವೇಳೆ ಯಾವುದಾದರೂ ದೋಷ ಬಂದಲ್ಲಿ ಅದನ್ನು ಸರಿಪಡಿಸಿ ಅಂತೂ ಕೊನೆಗೂ ಸಾಫ್ಟ್‌ವೇರ್ ರಚನೆಯ ಪ್ರಕ್ರಿಯೆ ಮುಕ್ತಾಯವಾಗುತ್ತದೆ.

ಇದು ನೋಡಿ ಸ್ವಾಮಿ ನಾವು ಮಾಡೋ ಕೆಲಸದ ಒಂದು ಕಿರು ಪರಿಚಯ. ಇಲ್ಲಿ ಮಾಹಿತಿಯನ್ನು ಸರಳಗೊಳಿಸುವ ಸಲುವಾಗಿ ಮುಖ್ಯವಾದ ಅಂಶಗಳನ್ನಸ್ಟೇ ಇಲ್ಲಿ ಹೇಳಿದ್ದೇನೆ. ಇದು ಪೂರ್ಣವಾದ ಪರಿಚಯ ಅಲ್ಲವಾದರೂ ಸಾಫ್ಟ್‌ವೇರ್ ಜಗತ್ತಿನ ಬಗ್ಗೆ ಒಂದು ಇಣುಕು ನೋಟ ನಿಮಗೆ ಸಿಕ್ಕಿದಲ್ಲಿ ನಾನು ಬರೆದಿದ್ದೂ ಸಾರ್ಥಕ.

ಕೊನೆಯಲ್ಲೊಂದು ವ್ಯಂಗ್ಯ ಸಾಫ್ಟ್-ವೇರ್ ಕುರಿತು. ಕೃಪೆ: ಇಂಟರ್ನೆಟ್

SDLC_(P2)