�x���¹�������ֱ�ӳ���
�gӭ���R�ЈD�W Ո | ע��
> >>
������ϵ�y���A�̳�

���] ������ϵ�y���A�̳�

���ߣ�ʷ�Ι��g
�����磺���A��W����������r�g��2006-06-26
�_���� 16�_ 퓔��� 332
�� �D �r:¥14.7(4.1��) ���r  ¥36.0 ��䛺�ɿ������T�r
��ܰ��ʾ��5�����ˆD����Ҫ�������β؛���󲿷֞�ȫ�£����ܷ�/�o�ܷ⣩�����e�D��Ʒ��8-9�������п�
�Є�����ӛ����P�ȸ�����ȫԔ��Ʒ���f��>>
������Ǖ�����>

������ϵ�y���A�̳� �����Ϣ

������ϵ�y���A�̳� ���ݺ���

������������˹̹����W��λ������Ӌ��C�W�ߣʣ��ģ��գ������ͣʣ��ף�������W��������˾����Ļ����̲���(A First Course in Database Systems)Jeffrey D. Ullman, Jennifer Widom �� ʷ�Ι� �g������Ĕ����켼�g�ǽ���픵���켼�g�l(f��)չ����Ҫ����͟��c��Ŀǰ�����ѷe�O�_չ��ԓ�I����Ŀ��й��������ڽ̲����Пo��ӳ����˼������P�Ľ̲�������������ѩ����̿�������Ԯ�ǰ�����������졪���Pϵ���������A���Ԕ�����ϵ�y��*�������ݡ�����������OӋ�c���̞����c�������M�������I���*�³ɹ���������������Ĕ����켼�g�����c��ϵ�y���U���˔����콨ģ���Pϵ���������Փ���OӋ���Y������ԃ�Z��SQL����*�µĘ˜�SQL2��SQL3���U�����f�w��ԃ��*�ƒ������؄e�����ஔ���ƪ���U���������󔵓���Č����x�Z��ODL�͌����ԃ�Z��OQL����������Ҫ���c���·f���S����ϵ�y���������є����켼�g��*�³ɹ�Ѹ�ٷ�ӳ���̲��С�

������ϵ�y���A�̳̔�����ϵ�y���A�̳� ǰ��

�����Ǐ�˹̹����W�ġ����������T��(CS145)���n�̹Pӛ��׃��������CS145�����Tϵ���n�̵�**�T����������T�ǣ� ������ϵ�yԭ����������ϵ�y���F�Ĺ���Ӗ�����„պͷֲ�ʽ���������Լ���������Փ������Arthur Keller�H�Є�(chu��ng)����v����ʹ�@�T�n�𲽰l(f��)չ�������ڔ�������OӋ�;��̵��n�������@�ɷ�����݌�Ӌ��C�ƌW���I(y��)�Ĵ�����W�����f��*���õġ��@�T�n߀����һ�����ݏV���������L�ӵ��n�⹤���Ŀ�����W���OӋ�����Fһ�����w�Ĕ����쑪�����cԓ�����Ŀ���P�����I(y��)�������n�����I(y��)���y��Լ������n���Y�϶����ԏı���������ϵõ���Ո��醡��f�S�W(World Wide Web)�ϵ�֧�֡������� �� �� �� ʹ �� �����m�����v��һ�W�ڵ��n���������CS145�@�Ӱ��ķ�֮һ�W��(�gע��ÿ�W��֞��ČW�����@�N�ƶȵ�һ�W��)���n�́��������Ͳ��ò�ʡ�Ի����^���е�ijЩ������*���ɽ̎��Լ��Q�����p��Щ�����������ƒ����@Ȼ�ǿ������p�ģ����PDatalog�IJ�����SQL���̵ĸ߼������Լ�SQL3�ļ���(ji��)������ ����n���а����˲����L�ӵĹ����Ŀ����ô�������v��SQL�Z�䲿���Ǻ���Ҫ�ġ������ƺ��v�ڵă��ݰ��������PDatalog�IJ�������5�º͵�6�µ�SQL3�����Լ���3�µ�ijЩ��Փ����(���ǣ�����W�������_ʼ�M��SQL����֮ǰ�����OӋ����(y��u)����Pϵģʽ��Ԓ����������ҪҎ(gu��)������֪�R�����S߀��Ҫ��ֵ��ه��֪�R)�� �A �� ֪ �R �҂��ѱ�����λ�ڡ��A�ӡ�ˮƽ�������꼉�������͵��꼉�о���ˮƽ���@�T�n����Ҏ(gu��)���A��֪�R�ஔ�ڴ�W���꼉��ˮƽ��(1) �����Y�����㷨���xɢ���W��(2)ܛ��ϵ�y��ܛ�����̺;����Z�ԡ��W���������ƒ�������Ҫ�г������˽⣺�����ı��_ʽ�Ͷ�����߉݋�����������Y��(��������)��������ľ��̸����Լ����̭h(hu��n)�����҂����������յ��͵�Ӌ��C�ƌW���I(y��)�Ľ̌WӋ��������W���꼉�Y���r���W�����϶������г�ֵı���֪�R�� ���� ���������෽��ľ������׺�ÿ��(ji��)�������҂��ѱ��^�y�ľ��������б��^�y�IJ������@�@̖(!)�˳���*�y�ľ������p�@�@̖(!!)�˳��� ��һЩ����������ijЩ���֘�����̖(*)�������@Щ�������҂����M��ͨ�^����������ṩ������@Щ����ǹ��_�ģ������������ҙz�y��ע�⣺��ijЩ��r��������BҪ��������һ������A�Ľ���M���޸Ļ���M�����A��ijЩ�ض������н������ôB����������Ҳ���н���� �f�S�W�ϵ�֧�� ����������ǣ� http://www��db.stanford.edu/��ullman/fcdb.html �@���Ў���̖�ľ����Ľ�������Ѱl(f��)�F�ĕ�����ӡˢ�e�`�Ŀ��`���Լ��o���̲����҂�ϣ��ÿһ�����҂�һ���v��CS145�n�̵��˶��ܫ@���@Щ�n�̹Pӛ�������n�����I(y��)�����͹����Ŀ�����I(y��)�� ���x �؄e���xBobbie Cochrane��Linda DeMichiel�����x������SQL3�˜ʷ���o��Ď�����߀�������S���ˎ����҂���У�ָ��������ǣ�Donald Aingworth��Jonathan Becker��Larry Bonham��Christopher Chan��Oliver Duschka��Greg Fichtenholtz��Bart Fisher��Meredith Goldsmith��Steve Huntsberry��Leonard Jacobson��Thulasiraman Jeyaraman��dwight Joe��Seth Katz��Brian Kulman��Le��Wei Mo��Mark Mortensen��Ramprakash Narayanaswami��Torbjorn Norbye��Mehul Patel��Catherine Tornabene��Jonathan Ullman��Mayank Upadhyay��Vassilis Vassalos��Qiang Wang��Sundar Yamunachari��Takeshi Yokukawa����Ȼ��ʣ�µ��e�`���҂�ؓ؟��

������ϵ�y���A�̳� Ŀ�

��1�”�����ϵ�y������1 1.1������ϵ�y�İl(f��)չ1 1.1.1���ڵĔ��������ϵ�y1 1.1.2�Pϵ������ϵ�y3 1.1.3Խ��ԽС��ϵ�y4 1.1.4Խ��Խ���ϵ�y4 1.2���������ϵ�y�ĽY��5 1.2.1DBMS�ĽM�ɸ���5 1.2.2�惦��������7 1.2.3��ԃ̎������7 1.2.4�„չ�������8 1.2.5�͑����򪲷��ճ����wϵ�Y��10 1.3δ���Ĕ�����ϵ�y10 1.3.1��͡�͌���10 1.3.2�s�����|�l(f��)����13 1.3.3��ý�w����13 1.3.4��������14 1.4������Ҫ15 1.4.1�OӋ15 1.4.2����15 1.5���¿��Y16 1.6���…����īI17 ��2�”����콨ģ18 2.1ODL��B18 2.1.1��������OӋ19 2.1.2�ӿ��f��20 2.1.3ODL�еČ���20 2.1.4ODL�е�“ϵ22 2.1.5����“ϵ22 2.1.6“ϵ�Ķ�����24 2.1.7ODL�е����26 2.1.8����(ji��)����27 2.2���w“ϵ�D29 2.2.1E/R“ϵ�Ķ�����30 2.2.2“ϵ�Ķ�����30 2.2.3“ϵ�еĽ�ɫ31 2.2.4“ϵ�еČ���32 2.2.5�Ѷ���“ϵ�D�Q�ɶ�Ԫ“ϵ33 2.2.6����(ji��)����34 2.3�OӋԭ�t35 2.3.1�挍��36 2.3.2��������36 2.3.3�������ԵĿ��]36 2.3.4�x����m��Ԫ�����37 2.3.5����(ji��)����38 2.4���40 2.4.1ODL�е����40 2.4.2��ODL�еĶ����^��40 2.4.3���w“ϵ�D�е����42 2.4.4E/Rģ���е��^��42 2.4.5����(ji��)����43 2.5���s���Ľ�ģ44 2.5.1�I�a45 2.5.2��ODL���f���I�a46 2.5.3��E/Rģ���б�ʾ�I�a47 2.5.4��ֵ�s��47 2.5.5����������48 2.5.6E/R�D�еą���������48 2.5.7������͵ļs��49 2.5.8����(ji��)����49 2.6�����w��50 2.6.1�a�������w����ԭ��50 2.6.2�������w����Ҫ��52 2.6.3�����w���ı�ʾ��52 2.6.4����(ji��)����53 2.7�vʷ����Ӱ푵�ģ��53 2.7.1�W��ģ��53 2.7.2�W��ģʽ�ı�ʾ54 2.7.3�Ӵ�ģ��55 2.7.4����(ji��)����56 2.8���¿��Y56 2.9���…����īI57 ��3���Pϵ����ģ��58 3.1�Pϵģ�͵Ļ�������58 3.1.1����59 3.1.2ģʽ59 3.1.3Ԫ�M59 3.1.4��60 3.1.5�Pϵ�ĵȃr��ʾ��60 3.1.6�Pϵ����61 3.1.7����(ji��)����62 3.2��ODL�OӋ���Pϵ�OӋ62 3.2.1��ODL���Ե��Pϵ����63 3.2.2��еķ�ԭ�ӌ���63 3.2.3������͘�����ı�ʾ66 3.2.4��ֵ“ϵ�ı�ʾ67 3.2.5��ֵ“ϵ�ı�ʾ68 3.2.6����]���I�a69 3.2.7“ϵ�c����“ϵ�ı�ʾ70 3.2.8����(ji��)����71 3.3��E/R�D���Pϵ���OӋ72 3.3.1���w�����Pϵ���D�Q72 3.3.2E/R“ϵ���Pϵ���D�Q73 3.3.3̎�������w��75 3.3.4����(ji��)����77 3.4��Y�����Pϵ���D�Q78 3.4.1���Pϵ��ʾODL���78 3.4.2���Pϵģ���б�ʾ�����ڡ�“ϵ79 3.4.3�����ı��^80 3.4.4ʹ��NULLֵ�ϲ��Pϵ80 3.4.5����(ji��)����81 3.5������ه82 3.5.1������ه�Ķ��x82 3.5.2�Pϵ���I�a83 3.5.3���I�a84 3.5.4�����Pϵ���I�a85 3.5.5��ODL�OӋ�������Pϵ���I�a86 3.5.6����(ji��)����87 3.6������هҎ(gu��)�t88 3.6.1�ֽ�/�ϲ�Ҏ(gu��)�t88 3.6.2ƽ����ه89 3.6.3Ӌ����Ե��]��90 3.6.4���fҎ(gu��)�t92 3.6.5������ه���]��93 3.6.6����(ji��)����94 3.7�Pϵ������ģʽ�OӋ95 3.7.1����96 3.7.2�Pϵ�ֽ�96 3.7.3BC��ʽ98 3.7.4�ֽ��BCNF99 3.7.5������ه��ͶӰ102 3.7.6�ķֽ��л֏���Ϣ103 3.7.7������ʽ105 3.7.8����(ji��)����107 3.8��ֵ��ه108 3.8.1���ԵĪ����Լ��䎧��������108 3.8.2��ֵ��ه�Ķ��x109 3.8.3��ֵ��ه����Փ111 3.8.4���ķ�ʽ112 3.8.5�ֽ�ɵ��ķ�ʽ113 3.8.6��ʽ�g��“ϵ114 3.8.7����(ji��)����114 3.9������ģʽ����116 3.10���¿��Y118 3.11���…����īI119 ��4���Pϵģ���е��\��121 4.1�Pϵ����121 4.1.1�Pϵ�ļ����\��122 4.1.2ͶӰ123 4.1.3�x��124 4.1.4�ѿ����e124 4.1.5��Ȼ�B��125 4.1.6���B��127 4.1.7��ԃ�еďͺ��\��128 4.1.8����129 4.1.9�����͌����\��130 4.1.10����(ji��)����131 4.2�Pϵ��߉݋136 4.2.1�^�~��ԭ��136 4.2.2���gԭ��137 4.2.3DatalogҎ(gu��)�t�Ͳ�ԃ137 4.2.4DatalogҎ(gu��)�t�ĺ��x138 4.2.5���Ӻ̓Ⱥ��^�~140 4.2.6����(ji��)����140 4.3���Pϵ������Datalog140 4.3.1����141 4.3.2����141 4.3.3�141 4.3.4ͶӰ142 4.3.5�x��142 4.3.6�˷e144 4.3.7�B��144 4.3.8��Datalogģ�M�����\��145 4.3.9����(ji��)����146 4.4Datalog�е��f�w����147 4.4.1�̶��c�\���147 4.4.2Ӌ��*С�̶��c148 4.4.3Datalog�еĹ̶��c����149 4.4.4�f�wҎ(gu��)�t�е���153 4.4.5����(ji��)����156 4.5���Pϵ�ļs��157 4.5.1���Pϵ��������s���Z��158 4.5.2���������Լs��158 4.5.3���Ӽs��������159 4.5.4����(ji��)����160 4.6�����Pϵ�\��161 4.6.1��ʲô�ð���162 4.6.2���IJ����������Ͳ163 4.6.3����ͶӰ164 4.6.4�����x��165 4.6.5���ij˷e165 4.6.6�����B��166 4.6.7�����\������DatalogҎ(gu��)�t167 4.6.8����(ji��)����168 4.7�Pϵģ�͵���������169 4.7.1����169 4.7.2�ۺ�169 4.7.3ҕ�D169 4.7.4��ֵ170 4.8���¿��Y170 4.9���…����īI171 ��5�”������Z��SQL172 5.1SQL�ĺ��β�ԃ172 5.1.1SQL ��ͶӰ173 5.1.2SQL���x��175 5.1.3�ַ����ı��^176 5.1.4���ں͕r�g�ı��^178 5.1.5ݔ��������178 5.1.6����(ji��)����179 5.2�漰�����Pϵ�IJ�ԃ180 5.2.1SQL�еij˷e���B��180 5.2.2�������ԵĶ��x��181 5.2.3Ԫ�M׃��182 5.2.4���Pϵ��ԃ�Ľ��183 5.2.5��ԃ�IJ���������185 5.2.6����(ji��)����186 5.3�Ӳ�ԃ188 5.3.1�a������ֵ���Ӳ�ԃ188 5.3.2�漰���Pϵ�ėl��189 5.3.3�漰��Ԫ�M�ėl��190 5.3.4���P�Ӳ�ԃ191 5.3.5����(ji��)����192 5.4����193 5.4.1�����Ąh��193 5.4.2�����������еĸ���194 5.4.3����(ji��)����195 5.5�ۺ�195 5.5.1�ۺ��\���195 5.5.2�ֽM196 5.5.3HAVING�Ӿ�198 5.5.4����(ji��)����199 5.6���������200 5.6.1����200 5.6.2�h��202 5.6.3�޸�203 5.6.4����(ji��)����203 5.7��SQL���x�Pϵģʽ204 5.7.1�������205 5.7.2���ĺ����f��205 5.7.3�h����206 5.7.4�����Pϵģʽ206 5.7.5Ĭ�Jֵ207 5.7.6��207 5.7.7����208 5.7.8����(ji��)����209 5.8ҕ�D�Ķ��x211 5.8.1ҕ�D���f��211 5.8.2ҕ�D�IJ�ԃ212 5.8.3���Ը���213 5.8.4ҕ�D�ĸ���213 5.8.5���漰��ҕ�D�IJ�ԃ�Ľ��216 5.8.6����(ji��)����217 5.9��ֵ���ⲿ�B��218 5.9.1����ֵ���\��218 5.9.2��ֵUNKNOWN219 5.9.3SQL2�е��B�ӱ��_ʽ221 5.9.4��Ȼ�B��222 5.9.5�ⲿ�B��222 5.9.6����(ji��)����224 5.10SQL3�е��f�w225 5.10.1��SQL3�ж��xIDB�Pϵ225 5.10.2�����f�w228 5.10.3��WITH�Z����ʹ��ҕ�D228 5.10.4�֌���229 5.10.5SQL3�f�w�е�δ�����_ʽ230 5.10.6����(ji��)����232 5.11���¿��Y233 5.12���…����īI235 ��6��SQL�еļs�����|�l(f��)����236 6.1SQL�е��I�a236 6.1.1�f���I�a236 6.1.2��ʩ�I�a�s��238 6.1.3����(ji��)����238 6.2���������Ժ����I�a238 6.2.1�f�����I�a�s��239 6.2.2���օ���������240 6.2.3����(ji��)����241 6.3������ֵ�ļs��243 6.3.1�ǿռs��243 6.3.2���ڌ��Ե�CHECK�s��243 6.3.3��s��244 6.3.4����(ji��)����245 6.4ȫ�ּs��246 6.4.1����Ԫ�M��CHECK�s��246 6.4.2����247 6.4.3����(ji��)����250 6.5�s���ĸ���251 6.5.1���s������251 6.5.2���ı��ļs��252 6.5.3������ļs��253 6.5.4���Ĕ���253 6.5.5����(ji��)����253 6.6SQL3�е��|�l(f��)����254 6.6.1�|�l(f��)�ͼs��254 6.6.2SQL3�|�l(f��)����254 6.6.3SQL3�Ĕ���257 6.6.4����(ji��)����258 6.7���¿��Y259 6.8���…����īI260 ��7��SQLϵ�y�śr261 7.1���̭h(hu��n)���е�SQL261 7.1.1ƥ��ʧ�↖�}262 7.1.2SQL/�����Z�Խӿ�262 7.1.3�f��(DECLARE)��263 7.1.4ʹ�ù���׃��263 7.1.5���в�ԃ�Z��264 7.1.6�Θ�265 7.1.7ͨ�^�Θ˵ĸ���267 7.1.8�Θ��x�267 7.1.9��ȡ����Ԫ�M����268 7.1.10��ֹ���l(f��)���µı��o��ʩ269 7.1.11�L���Θ�269 7.1.12�ӑB(t��i)SQL270 7.1.13����(ji��)����271 7.2SQL�е��„�273 7.2.1�ɴ�����273 7.2.2ԭ����275 7.2.3�„�276 7.2.4ֻ�x�„�277 7.2.5�x�K����278 7.2.6�������x�Լ��e279 7.2.7����(ji��)����280 7.3SQL�h(hu��n)��281 7.3.1�h(hu��n)��281 7.3.2ģʽ282 7.3.3Ŀ�283 7.3.4SQL�h(hu��n)���еĿ͑�����ͷ��ճ���284 7.3.5�B��284 7.3.6��Ԓ285 7.3.7ģ�K285 7.4SQL2�İ�ȫ���Ñ��ڙ�286 7.4.1����286 7.4.2��������287 7.4.3���ޙz�̎��287 7.4.4�������289 7.4.5�ڙ��D290 7.4.6ȡ������290 7.4.7����(ji��)����293 7.5���¿��Y294 7.6���…����īI296 ��8���������ԃ�Z��297 8.1ODL�����P��ԃ������297 8.1.1ODL����IJ���297 8.1.2ODL�з����������f��298 8.1.3ķ���300 8.1.4����(ji��)����300 8.2OQL��B301 8.2.1��������Ӱ����302 8.2.2OQL���ϵ�y302 8.2.3·�����_ʽ303 8.2.4OQL�е�select��from��where���_ʽ304 8.2.5�����؏�305 8.2.6���s��ݔ�����305 8.2.7�Ӳ�ԃ306 8.2.8���Y������307 8.2.9����(ji��)����307 8.3OQL���_ʽ�ĸ��Ӹ�ʽ308 8.3.1���~���_ʽ308 8.3.2�ۺϱ��_ʽ308 8.3.3�ֽM���_ʽ309 8.3.4HAVING �Ӿ�311 8.3.5�����\���311 8.3.6����(ji��)����312 8.4OQL�Ќ�����xֵ�ͽ���313 8.4.1�������Z��׃���xֵ313 8.4.2�ľۼ�����ȡԪ��313 8.4.3�@ȡ�ۼ���ÿ���ɆT314 8.4.4�����Œ���314 8.4.5����(ji��)����316 8.5SQL3�е�Ԫ�M����316 8.5.1�����317 8.5.2�f����������͵��Pϵ317 8.5.3�L������͵ķ���318 8.5.4����318 8.5.5��������320 8.5.6���õ�������320 8.5.7����ֵ�Č�����R321 8.5.8����(ji��)����323 8.6SQL3�ij��󔵓����324 8.6.1ADT�Ķ��x324 8.6.2ADT�����Ķ��x327 8.6.3�ⲿ����329 8.6.4����(ji��)����329 8.7ODL/OQL��SQL3�����ı��^330 8.8���¿��Y331 8.9���…����īI332
չ�_ȫ��
��Ʒ�uՓ(0�l)
���o�uՓ����
�������]
����N
����픲�
�ЈD�W
�ھ��ͷ�