Compare commits
No commits in common. "a61170161e2b2ca91236bdf66a474ca461c34566" and "fe903401de0fc493120feb441c1fde1dcd668893" have entirely different histories.
a61170161e
...
fe903401de
7 changed files with 21 additions and 767 deletions
|
@ -24,7 +24,6 @@ enableRobotsTXT = false
|
|||
post_navigation = true
|
||||
mainSections = ["bdd_avancees", "systemes_exploitation"]
|
||||
post_meta = ["author", "date", "categories", "translations"]
|
||||
mathjax = true
|
||||
mathjaxPath = "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.6/MathJax.js" # Specify MathJax path
|
||||
mathjaxConfig = "TeX-AMS-MML_HTMLorMML" # Specify MathJax config
|
||||
[Params.sidebar]
|
||||
|
|
|
@ -7,37 +7,8 @@
|
|||
viewBox="0 0 186.12944 119.7814"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
|
||||
sodipodi:docname="schema_bdd.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:snap-global="false"
|
||||
fit-margin-top="3"
|
||||
lock-margins="true"
|
||||
fit-margin-left="3"
|
||||
fit-margin-right="3"
|
||||
fit-margin-bottom="3"
|
||||
inkscape:zoom="0.81386721"
|
||||
inkscape:cx="213.17974"
|
||||
inkscape:cy="280.14398"
|
||||
inkscape:window-width="1428"
|
||||
inkscape:window-height="838"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2">
|
||||
<marker
|
||||
|
@ -45,9 +16,7 @@
|
|||
id="marker70291"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
orient="auto">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
|
@ -59,9 +28,7 @@
|
|||
id="marker70281"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
orient="auto">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
|
@ -73,9 +40,7 @@
|
|||
id="Arrow1Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
orient="auto">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
|
@ -87,9 +52,7 @@
|
|||
id="Arrow2Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
orient="auto">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
|
@ -98,8 +61,6 @@
|
|||
</marker>
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(13.281141,-3.527509)">
|
||||
<g
|
||||
|
@ -567,7 +528,7 @@
|
|||
id="path68914-0" />
|
||||
</g>
|
||||
<g
|
||||
id="g81052">
|
||||
id="g80165">
|
||||
<path
|
||||
id="rect41374-3"
|
||||
style="fill:#ffffff;stroke-width:0.600001"
|
||||
|
@ -653,45 +614,45 @@
|
|||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69059" />
|
||||
<path
|
||||
d="m 1.2785019,103.72659 v 0.41479 q -0.188102,-0.1037 -0.37861597,-0.15434 -0.188102,-0.0531 -0.381028,-0.0531 -0.43166997,0 -0.67041494,0.27492 -0.238746,0.27251 -0.238746,0.76688 0,0.49437 0.238746,0.76929 0.23874497,0.27251 0.67041494,0.27251 0.192926,0 0.381028,-0.0507 0.19051397,-0.053 0.37861597,-0.15675 v 0.40997 q -0.185691,0.0868 -0.38585097,0.13022 -0.197748,0.0434 -0.42202397,0.0434 -0.61012597,0 -0.96944997,-0.38344 -0.359324,-0.38344 -0.359324,-1.03456 0,-0.66077 0.361736,-1.03939 0.364146,-0.37861 0.99597694,-0.37861 0.204983,0 0.40032,0.0434 0.19533697,0.041 0.37861597,0.1254 z"
|
||||
d="m -1.785911,104.14138 q 0.166398,-0.29904 0.397908,-0.44132 0.231511,-0.14228 0.545015,-0.14228 0.422024,0 0.651123,0.29662 0.229099,0.29421 0.229099,0.83923 v 1.63022 h -0.44614 v -1.61575 q 0,-0.38827 -0.13746,-0.57637 -0.137459,-0.1881 -0.419612,-0.1881 -0.344855,0 -0.545015,0.2291 -0.20016,0.2291 -0.20016,0.62459 v 1.52653 h -0.44614 v -1.61575 q 0,-0.39068 -0.137459,-0.57637 -0.137459,-0.1881 -0.424436,-0.1881 -0.340031,0 -0.540191,0.23151 -0.20016,0.2291 -0.20016,0.62218 v 1.52653 h -0.44614 v -2.70096 h 0.44614 v 0.41961 q 0.151929,-0.24839 0.364147,-0.36656 0.212218,-0.11816 0.504017,-0.11816 0.294211,0 0.499195,0.14952 0.207394,0.14951 0.306269,0.43408 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69061" />
|
||||
<path
|
||||
d="m 2.866002,103.72659 v 0.41479 q -0.188102,-0.1037 -0.378616,-0.15434 -0.188102,-0.0531 -0.381028,-0.0531 -0.43167,0 -0.670415,0.27492 -0.238746,0.27251 -0.238746,0.76688 0,0.49437 0.238746,0.76929 0.238745,0.27251 0.670415,0.27251 0.192926,0 0.381028,-0.0507 0.190514,-0.053 0.378616,-0.15675 v 0.40997 q -0.185691,0.0868 -0.385851,0.13022 -0.197748,0.0434 -0.422024,0.0434 -0.610126,0 -0.96945,-0.38344 -0.359324,-0.38344 -0.359324,-1.03456 0,-0.66077 0.361736,-1.03939 0.364146,-0.37861 0.995977,-0.37861 0.204983,0 0.40032,0.0434 0.195337,0.041 0.378616,0.1254 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69063" />
|
||||
<path
|
||||
d="m 2.0502029,103.62289 h 0.443729 v 2.70096 h -0.443729 z m 0,-1.05144 h 0.443729 v 0.56189 h -0.443729 z"
|
||||
d="m 3.637703,103.62289 h 0.443729 v 2.70096 H 3.637703 Z m 0,-1.05144 h 0.443729 v 0.56189 H 3.637703 Z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69065" />
|
||||
<path
|
||||
d="m 5.7326679,104.86244 v 0.21704 h -2.040186 q 0.02894,0.45819 0.274918,0.69935 0.248392,0.23875 0.689709,0.23875 0.255626,0 0.494371,-0.0627 0.241157,-0.0627 0.47749,-0.18811 v 0.41962 q -0.238745,0.10128 -0.489548,0.15434 -0.250803,0.053 -0.508841,0.053 -0.6463,0 -1.024916,-0.3762 -0.376204,-0.37621 -0.376204,-1.01768 0,-0.66319 0.356912,-1.05145 0.359323,-0.39067 0.967038,-0.39067 0.545015,0 0.86093,0.35209 0.318327,0.34967 0.318327,0.95257 z m -0.443729,-0.13023 q -0.0048,-0.36415 -0.204983,-0.58119 -0.197748,-0.21704 -0.525722,-0.21704 -0.371381,0 -0.595657,0.20981 -0.221864,0.20981 -0.255626,0.59083 z"
|
||||
d="m 7.320168,104.86244 v 0.21704 H 5.279982 q 0.02894,0.45819 0.274918,0.69935 0.248392,0.23875 0.689709,0.23875 0.255626,0 0.494371,-0.0627 0.241157,-0.0627 0.47749,-0.18811 v 0.41962 q -0.238745,0.10128 -0.489548,0.15434 -0.250803,0.053 -0.508841,0.053 -0.6463,0 -1.024916,-0.3762 -0.376204,-0.37621 -0.376204,-1.01768 0,-0.66319 0.356912,-1.05145 0.359323,-0.39067 0.967038,-0.39067 0.545015,0 0.86093,0.35209 0.318327,0.34967 0.318327,0.95257 z m -0.443729,-0.13023 q -0.0048,-0.36415 -0.204983,-0.58119 -0.197748,-0.21704 -0.525722,-0.21704 -0.371381,0 -0.595657,0.20981 -0.221864,0.20981 -0.255626,0.59083 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69067" />
|
||||
<path
|
||||
d="m 8.7061299,104.69363 v 1.63022 h -0.443729 v -1.61575 q 0,-0.38344 -0.149517,-0.57396 -0.149517,-0.19051 -0.448551,-0.19051 -0.359324,0 -0.566719,0.2291 -0.207395,0.2291 -0.207395,0.62459 v 1.52653 h -0.44614 v -2.70096 h 0.44614 v 0.41961 q 0.159164,-0.24357 0.373793,-0.36414 0.217041,-0.12058 0.499195,-0.12058 0.465432,0 0.704177,0.28939 0.238746,0.28697 0.238746,0.84646 z"
|
||||
d="m 10.29363,104.69363 v 1.63022 H 9.849901 v -1.61575 q 0,-0.38344 -0.149517,-0.57396 -0.149517,-0.19051 -0.448551,-0.19051 -0.359324,0 -0.566719,0.2291 -0.207395,0.2291 -0.207395,0.62459 v 1.52653 h -0.44614 v -2.70096 h 0.44614 v 0.41961 q 0.159164,-0.24357 0.373793,-0.36414 0.217041,-0.12058 0.499195,-0.12058 0.465432,0 0.704177,0.28939 0.238746,0.28697 0.238746,0.84646 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69069" />
|
||||
<path
|
||||
d="m 11.836343,104.69363 v 1.63022 h -0.443728 v -1.61575 q 0,-0.38344 -0.149517,-0.57396 -0.149517,-0.19051 -0.448552,-0.19051 -0.359323,0 -0.566718,0.2291 -0.207395,0.2291 -0.207395,0.62459 v 1.52653 H 9.5742933 v -2.70096 h 0.4461397 v 0.41961 q 0.159164,-0.24357 0.373793,-0.36414 0.217041,-0.12058 0.499194,-0.12058 0.465433,0 0.704178,0.28939 0.238745,0.28697 0.238745,0.84646 z"
|
||||
d="m 13.423844,104.69363 v 1.63022 h -0.443728 v -1.61575 q 0,-0.38344 -0.149517,-0.57396 -0.149517,-0.19051 -0.448552,-0.19051 -0.359323,0 -0.566718,0.2291 -0.207395,0.2291 -0.207395,0.62459 v 1.52653 h -0.44614 v -2.70096 h 0.44614 v 0.41961 q 0.159164,-0.24357 0.373793,-0.36414 0.217041,-0.12058 0.499194,-0.12058 0.465433,0 0.704178,0.28939 0.238745,0.28697 0.238745,0.84646 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69071" />
|
||||
<path
|
||||
d="m 15.03167,104.86244 v 0.21704 h -2.040186 q 0.02894,0.45819 0.274919,0.69935 0.248391,0.23875 0.689708,0.23875 0.255626,0 0.494372,-0.0627 0.241156,-0.0627 0.47749,-0.18811 v 0.41962 q -0.238745,0.10128 -0.489548,0.15434 -0.250803,0.053 -0.508841,0.053 -0.6463,0 -1.024916,-0.3762 -0.376205,-0.37621 -0.376205,-1.01768 0,-0.66319 0.356912,-1.05145 0.359324,-0.39067 0.967039,-0.39067 0.545014,0 0.860929,0.35209 0.318327,0.34967 0.318327,0.95257 z m -0.443728,-0.13023 q -0.0048,-0.36415 -0.204983,-0.58119 -0.197749,-0.21704 -0.525722,-0.21704 -0.371381,0 -0.595657,0.20981 -0.221864,0.20981 -0.255626,0.59083 z"
|
||||
d="m 16.619171,104.86244 v 0.21704 h -2.040186 q 0.02894,0.45819 0.274919,0.69935 0.248391,0.23875 0.689708,0.23875 0.255626,0 0.494372,-0.0627 0.241156,-0.0627 0.47749,-0.18811 v 0.41962 q -0.238745,0.10128 -0.489548,0.15434 -0.250803,0.053 -0.508841,0.053 -0.6463,0 -1.024916,-0.3762 -0.376205,-0.37621 -0.376205,-1.01768 0,-0.66319 0.356912,-1.05145 0.359324,-0.39067 0.967039,-0.39067 0.545014,0 0.860929,0.35209 0.318327,0.34967 0.318327,0.95257 z m -0.443728,-0.13023 q -0.0048,-0.36415 -0.204983,-0.58119 -0.197749,-0.21704 -0.525722,-0.21704 -0.371381,0 -0.595657,0.20981 -0.221864,0.20981 -0.255626,0.59083 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69073" />
|
||||
<path
|
||||
d="m 16.198868,102.85601 v 0.76688 h 0.913984 v 0.34485 h -0.913984 v 1.46624 q 0,0.33038 0.08923,0.42443 0.09164,0.094 0.36897,0.094 h 0.455786 v 0.37139 h -0.455786 q -0.513664,0 -0.709001,-0.19052 -0.195337,-0.19292 -0.195337,-0.69935 v -1.46624 h -0.325561 v -0.34485 h 0.325561 v -0.76688 z"
|
||||
d="m 17.786369,102.85601 v 0.76688 h 0.913984 v 0.34485 h -0.913984 v 1.46624 q 0,0.33038 0.08923,0.42443 0.09164,0.094 0.36897,0.094 h 0.455786 v 0.37139 h -0.455786 q -0.513664,0 -0.709001,-0.19052 -0.195337,-0.19292 -0.195337,-0.69935 v -1.46624 H 17.01467 v -0.34485 h 0.325561 v -0.76688 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69075" />
|
||||
<path
|
||||
d="m 20.006734,104.86244 v 0.21704 h -2.040186 q 0.02894,0.45819 0.274918,0.69935 0.248392,0.23875 0.689709,0.23875 0.255626,0 0.494371,-0.0627 0.241157,-0.0627 0.47749,-0.18811 v 0.41962 q -0.238745,0.10128 -0.489548,0.15434 -0.250803,0.053 -0.508841,0.053 -0.6463,0 -1.024916,-0.3762 -0.376204,-0.37621 -0.376204,-1.01768 0,-0.66319 0.356912,-1.05145 0.359323,-0.39067 0.967038,-0.39067 0.545014,0 0.86093,0.35209 0.318327,0.34967 0.318327,0.95257 z m -0.443729,-0.13023 q -0.0048,-0.36415 -0.204983,-0.58119 -0.197748,-0.21704 -0.525722,-0.21704 -0.371381,0 -0.595657,0.20981 -0.221864,0.20981 -0.255626,0.59083 z m -0.426847,-2.35851 h 0.479902 l -0.786171,0.90675 h -0.36897 z"
|
||||
d="m 21.594235,104.86244 v 0.21704 h -2.040186 q 0.02894,0.45819 0.274918,0.69935 0.248392,0.23875 0.689709,0.23875 0.255626,0 0.494371,-0.0627 0.241157,-0.0627 0.47749,-0.18811 v 0.41962 q -0.238745,0.10128 -0.489548,0.15434 -0.250803,0.053 -0.508841,0.053 -0.6463,0 -1.024916,-0.3762 -0.376204,-0.37621 -0.376204,-1.01768 0,-0.66319 0.356912,-1.05145 0.359323,-0.39067 0.967038,-0.39067 0.545014,0 0.86093,0.35209 0.318327,0.34967 0.318327,0.95257 z m -0.443729,-0.13023 q -0.0048,-0.36415 -0.204983,-0.58119 -0.197748,-0.21704 -0.525722,-0.21704 -0.371381,0 -0.595657,0.20981 -0.221864,0.20981 -0.255626,0.59083 z m -0.426847,-2.35851 h 0.479902 l -0.786171,0.90675 h -0.36897 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path69077" />
|
||||
<path
|
||||
d="m 11.217527,82.917937 v 0.655944 q -0.27733,-0.115755 -0.53536,-0.173633 -0.25804,-0.05788 -0.48714,-0.05788 -0.2459802,0 -0.3665602,0.0627 -0.1181605,0.06029 -0.1181605,0.188102 0,0.103697 0.089199,0.159163 0.0916,0.05547 0.3255597,0.08199 l 0.15193,0.0217 q 0.66318,0.0844 0.89228,0.27733 0.22909,0.192925 0.22909,0.605303 0,0.431671 -0.31832,0.648712 -0.31833,0.217041 -0.95016,0.217041 -0.2676797,0 -0.5546597,-0.04341 -0.2845715,-0.041 -0.5860117,-0.125402 v -0.655932 q 0.2580397,0.125401 0.5281312,0.188102 0.2725105,0.0627 0.5522502,0.0627 0.25322,0 0.38103,-0.06993 0.12781,-0.06994 0.12781,-0.207395 0,-0.115755 -0.0892,-0.171222 -0.0868,-0.05788 -0.34968,-0.08923 L 9.9876348,84.4734 q -0.576371,-0.07235 -0.8078817,-0.267684 -0.23151,-0.195337 -0.23151,-0.593246 0,-0.429257 0.2942097,-0.636651 0.294212,-0.207396 0.9019322,-0.207396 0.23874,0 0.5016,0.03617 0.26286,0.03617 0.571542,0.113344 z"
|
||||
style="font-weight:bold;font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path68914-0-6" />
|
||||
<path
|
||||
d="m -1.6227014,104.69363 v 1.63022 h -0.4437277 v -1.61575 q 0,-0.38344 -0.149517,-0.57396 -0.1495171,-0.19051 -0.4485517,-0.19051 -0.3593227,0 -0.5667177,0.2291 -0.2073951,0.2291 -0.2073951,0.62459 v 1.52653 h -0.4461397 v -2.70096 h 0.4461397 v 0.41961 q 0.1591641,-0.24357 0.3737931,-0.36414 0.2170406,-0.12058 0.4991937,-0.12058 0.4654327,0 0.7041773,0.28939 0.2387451,0.28697 0.2387451,0.84646 z"
|
||||
style="font-size:4.93889px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#4d4d4d;stroke-width:0.264583"
|
||||
id="path81019" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 90 KiB After Width: | Height: | Size: 89 KiB |
|
@ -1,7 +1,7 @@
|
|||
---
|
||||
title: "Base de données avancées : Introduction au modèle relationnel"
|
||||
date: 2022-01-12
|
||||
tags: ["schema", "modèle relationnel", "relation"]
|
||||
date: 2022-01-11
|
||||
tags: ["définitions", "modèle relationnel", "relation"]
|
||||
categories: ["Base de données avancées", "Cours"]
|
||||
mathjax: true
|
||||
---
|
||||
|
@ -69,9 +69,9 @@ de données et vérifiant toutes ses relations.
|
|||
|
||||
Dans le schéma ci-dessus :
|
||||
|
||||
* \\( \text{planning.num_vol} \subseteq \text{vols.num_vols} \\)
|
||||
* \\( planning.num_vol \subseteq vols.num_vols \\)
|
||||
* \\( planning.matricule \subseteq pilotes.matricule \\)
|
||||
* \\( \text{planning.num_avion} \subseteq \text{avions.num_serie} \\)
|
||||
* \\( planning.num_avion \subseteq avions.num_serie \\)
|
||||
|
||||
## contraintes d'intégrité
|
||||
|
||||
|
|
|
@ -1,162 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="79.80867mm"
|
||||
height="52.19289mm"
|
||||
viewBox="0 0 79.808673 52.192889"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
|
||||
sodipodi:docname="difference.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:snap-global="false"
|
||||
fit-margin-top="3"
|
||||
lock-margins="true"
|
||||
fit-margin-left="3"
|
||||
fit-margin-right="3"
|
||||
fit-margin-bottom="3"
|
||||
inkscape:zoom="0.57549102"
|
||||
inkscape:cx="212.86171"
|
||||
inkscape:cy="100.7835"
|
||||
inkscape:window-width="1428"
|
||||
inkscape:window-height="862"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2">
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
xlink:href="#pattern36848"
|
||||
id="pattern38379"
|
||||
patternTransform="matrix(1.0197042,1.0197042,-5.8762732,5.8762738,0.30114133,13.459245)" />
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
xlink:href="#pattern6953"
|
||||
id="pattern36848"
|
||||
patternTransform="matrix(1.7505111,1.7505111,-10.087711,10.087712,0,0)" />
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="marker70291"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:0.625;stroke-linejoin:round"
|
||||
id="path70289" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="marker70281"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 Z"
|
||||
id="path70279" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="Arrow1Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 Z"
|
||||
id="path70018" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="Arrow2Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:0.625;stroke-linejoin:round"
|
||||
id="path70036" />
|
||||
</marker>
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
patternUnits="userSpaceOnUse"
|
||||
width="2"
|
||||
height="1"
|
||||
patternTransform="translate(0,0) scale(10,10)"
|
||||
inkscape:stockid="Stripes 1:1"
|
||||
inkscape:isstock="true"
|
||||
id="pattern6953">
|
||||
<rect
|
||||
style="fill:#41e6a8;stroke:none"
|
||||
x="0"
|
||||
y="-0.5"
|
||||
width="1"
|
||||
height="2"
|
||||
id="rect37629" />
|
||||
</pattern>
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(2.2786723,-29.239102)">
|
||||
<path
|
||||
id="path30788"
|
||||
style="mix-blend-mode:normal;fill:url(#pattern38379);fill-opacity:1;stroke:none;stroke-width:0.609896;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 23.794537,32.439559 A 22.474851,22.474763 0 0 0 1.319584,54.914032 22.474851,22.474763 0 0 0 23.794537,77.3889 22.474851,22.474763 0 0 0 37.918826,72.389317 22.474851,22.474763 0 0 1 36.757008,71.389478 22.474851,22.474763 0 0 1 35.56839,70.200866 a 22.474851,22.474763 0 0 1 -1.096003,-1.273737 22.474851,22.474763 0 0 1 -0.998264,-1.352563 22.474851,22.474763 0 0 1 -0.894221,-1.423099 22.474851,22.474763 0 0 1 -0.78545,-1.485765 22.474851,22.474763 0 0 1 -0.671948,-1.540544 22.474851,22.474763 0 0 1 -0.555291,-1.586265 22.474851,22.474763 0 0 1 -0.434698,-1.623702 22.474851,22.474763 0 0 1 -0.312524,-1.651288 22.474851,22.474763 0 0 1 -0.188381,-1.670207 22.474851,22.474763 0 0 1 -0.06267,-1.679664 22.474851,22.474763 0 0 1 0.06267,-1.679269 22.474851,22.474763 0 0 1 0.188381,-1.670207 22.474851,22.474763 0 0 1 0.312524,-1.651681 22.474851,22.474763 0 0 1 0.434698,-1.623308 22.474851,22.474763 0 0 1 0.555291,-1.586262 22.474851,22.474763 0 0 1 0.671948,-1.540547 22.474851,22.474763 0 0 1 0.78545,-1.486159 22.474851,22.474763 0 0 1 0.894221,-1.423104 22.474851,22.474763 0 0 1 0.998264,-1.352165 22.474851,22.474763 0 0 1 1.096003,-1.273739 22.474851,22.474763 0 0 1 1.188618,-1.188612 22.474851,22.474763 0 0 1 1.164577,-1.002203 22.474851,22.474763 0 0 0 -14.127048,-4.997217 z" />
|
||||
<path
|
||||
id="path702"
|
||||
style="color:#000000;fill:#df6b67;fill-opacity:1;stroke-width:0.762633;-inkscape-stroke:none"
|
||||
d="m 23.500439,32.239102 c -12.577318,0 -22.77911129,10.201796 -22.77911129,22.779114 0,12.577322 10.20179329,22.780701 22.77911129,22.780701 5.334644,0 10.241466,-1.836329 14.124234,-4.91012 3.882804,3.073901 8.789875,4.91012 14.124628,4.91012 12.57732,0 22.780694,-10.203379 22.780694,-22.780701 0,-12.577318 -10.203374,-22.779114 -22.780694,-22.779114 -5.334753,0 -10.241824,1.83574 -14.124628,4.909333 -3.882768,-3.073479 -8.78959,-4.909333 -14.124234,-4.909333 z m 0,0.610464 c 5.146129,0 9.881081,1.752116 13.642641,4.691788 -4.994634,4.179124 -8.173289,10.457579 -8.173289,17.476862 0,7.019287 3.178655,13.298119 8.173289,17.477661 -3.76156,2.939974 -8.496512,4.692573 -13.642641,4.692573 -12.247593,0 -22.1702239,-9.922637 -22.1702239,-22.170234 0,-12.247593 9.9226309,-22.16865 22.1702239,-22.16865 z m 28.248862,0 c 12.247592,0 22.169831,9.921057 22.169831,22.16865 0,12.247597 -9.922239,22.170234 -22.169831,22.170234 -5.146054,0 -9.881501,-1.752278 -13.643035,-4.692182 4.99488,-4.179536 8.173289,-10.458566 8.173289,-17.478052 0,-7.019483 -3.178409,-13.29813 -8.173289,-17.477255 3.761534,-2.939596 8.496981,-4.691395 13.643035,-4.691395 z m -14.124628,5.078403 c 4.914979,4.06546 8.0456,10.21063 8.0456,17.090247 0,6.879619 -3.130621,13.025561 -8.0456,17.09144 -4.914846,-4.065879 -8.0456,-10.211928 -8.0456,-17.09144 0,-6.879509 3.130754,-13.024784 8.0456,-17.090247 z" />
|
||||
<g
|
||||
aria-label="A"
|
||||
id="text5154"
|
||||
style="font-size:10.5833px;line-height:1.25;fill:#515151;stroke-width:0.264583"
|
||||
transform="matrix(0.76263455,0,0,0.76263455,95.468092,-16.673393)">
|
||||
<path
|
||||
d="m -116.63217,123.30077 h -3.11091 l -0.49093,1.4056 h -1.99987 l 2.8577,-7.71527 h 2.37194 l 2.8577,7.71527 h -1.99987 z m -2.61482,-1.43143 h 2.11356 l -1.05419,-3.06957 z"
|
||||
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
|
||||
id="path13941" />
|
||||
</g>
|
||||
<g
|
||||
aria-label="B"
|
||||
id="text13006"
|
||||
style="font-size:10.5833px;line-height:1.25;fill:#515151;stroke-width:0.264583"
|
||||
transform="matrix(0.76263455,0,0,0.76263455,95.468092,-16.673393)">
|
||||
<path
|
||||
d="m -33.557146,119.97799 q 0.470254,0 0.713133,-0.20671 0.242878,-0.2067 0.242878,-0.60978 0,-0.3979 -0.242878,-0.60461 -0.242879,-0.21187 -0.713133,-0.21187 h -1.100704 v 1.63297 z m 0.06718,3.37446 q 0.599445,0 0.899168,-0.25321 0.30489,-0.25322 0.30489,-0.76481 0,-0.50126 -0.299723,-0.74931 -0.299722,-0.25321 -0.904335,-0.25321 h -1.167883 v 2.02054 z m 1.850011,-2.77502 q 0.640786,0.18604 0.992184,0.6873 0.351399,0.50126 0.351399,1.22989 0,1.11621 -0.754474,1.66398 -0.754473,0.54777 -2.294426,0.54777 h -3.302113 v -7.71527 h 2.986888 q 1.607132,0 2.325432,0.48576 0.723468,0.48575 0.723468,1.55545 0,0.56327 -0.263549,0.96118 -0.263549,0.39274 -0.764809,0.58394 z"
|
||||
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
|
||||
id="path13938" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 8.7 KiB |
|
@ -1,157 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="79.80867mm"
|
||||
height="52.19289mm"
|
||||
viewBox="0 0 79.808673 52.192889"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
|
||||
sodipodi:docname="intersection.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:snap-global="false"
|
||||
fit-margin-top="3"
|
||||
lock-margins="true"
|
||||
fit-margin-left="3"
|
||||
fit-margin-right="3"
|
||||
fit-margin-bottom="3"
|
||||
inkscape:zoom="0.57549102"
|
||||
inkscape:cx="212.86171"
|
||||
inkscape:cy="100.7835"
|
||||
inkscape:window-width="1428"
|
||||
inkscape:window-height="862"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2">
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
xlink:href="#pattern6953"
|
||||
id="pattern37182"
|
||||
patternTransform="matrix(0,1.4798286,-6.3324839,-5.1243094e-7,0.27446455,16.293261)" />
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="marker70291"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:0.625;stroke-linejoin:round"
|
||||
id="path70289" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="marker70281"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 Z"
|
||||
id="path70279" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="Arrow1Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 Z"
|
||||
id="path70018" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="Arrow2Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:0.625;stroke-linejoin:round"
|
||||
id="path70036" />
|
||||
</marker>
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
patternUnits="userSpaceOnUse"
|
||||
width="2"
|
||||
height="1"
|
||||
patternTransform="translate(0,0) scale(10,10)"
|
||||
inkscape:stockid="Stripes 1:1"
|
||||
inkscape:isstock="true"
|
||||
id="pattern6953">
|
||||
<rect
|
||||
style="fill:#41e6a8;stroke:none"
|
||||
x="0"
|
||||
y="-0.5"
|
||||
width="1"
|
||||
height="2"
|
||||
id="rect37629" />
|
||||
</pattern>
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(2.2786723,-29.239102)">
|
||||
<path
|
||||
id="path702-3"
|
||||
style="fill:url(#pattern37182);fill-opacity:1;stroke:none;stroke-width:0.610106"
|
||||
d="m 37.921585,37.436776 a 22.474851,22.474763 0 0 0 -1.164577,1.002203 22.474851,22.474763 0 0 0 -1.188618,1.188612 22.474851,22.474763 0 0 0 -1.096003,1.273739 22.474851,22.474763 0 0 0 -0.998264,1.352165 22.474851,22.474763 0 0 0 -0.894221,1.423104 22.474851,22.474763 0 0 0 -0.78545,1.486159 22.474851,22.474763 0 0 0 -0.671948,1.540547 22.474851,22.474763 0 0 0 -0.555291,1.586262 22.474851,22.474763 0 0 0 -0.434698,1.623308 22.474851,22.474763 0 0 0 -0.312524,1.651681 22.474851,22.474763 0 0 0 -0.188381,1.670207 22.474851,22.474763 0 0 0 -0.06267,1.679269 22.474851,22.474763 0 0 0 0.06267,1.679664 22.474851,22.474763 0 0 0 0.188381,1.670207 22.474851,22.474763 0 0 0 0.312524,1.651288 22.474851,22.474763 0 0 0 0.434698,1.623702 22.474851,22.474763 0 0 0 0.555291,1.586265 22.474851,22.474763 0 0 0 0.671948,1.540544 22.474851,22.474763 0 0 0 0.78545,1.485765 22.474851,22.474763 0 0 0 0.894221,1.423099 22.474851,22.474763 0 0 0 0.998264,1.352563 22.474851,22.474763 0 0 0 1.096003,1.273737 22.474851,22.474763 0 0 0 1.188618,1.188612 22.474851,22.474763 0 0 0 1.161818,0.999839 22.474851,22.474763 0 0 0 8.350272,-17.475285 22.474851,22.474763 0 0 0 -8.347513,-17.477256 z" />
|
||||
<path
|
||||
id="path702"
|
||||
style="color:#000000;fill:#df6b67;fill-opacity:1;stroke-width:0.762633;-inkscape-stroke:none"
|
||||
d="m 23.500439,32.239102 c -12.577318,0 -22.77911129,10.201796 -22.77911129,22.779114 0,12.577322 10.20179329,22.780701 22.77911129,22.780701 5.334644,0 10.241466,-1.836329 14.124234,-4.91012 3.882804,3.073901 8.789875,4.91012 14.124628,4.91012 12.57732,0 22.780694,-10.203379 22.780694,-22.780701 0,-12.577318 -10.203374,-22.779114 -22.780694,-22.779114 -5.334753,0 -10.241824,1.83574 -14.124628,4.909333 -3.882768,-3.073479 -8.78959,-4.909333 -14.124234,-4.909333 z m 0,0.610464 c 5.146129,0 9.881081,1.752116 13.642641,4.691788 -4.994634,4.179124 -8.173289,10.457579 -8.173289,17.476862 0,7.019287 3.178655,13.298119 8.173289,17.477661 -3.76156,2.939974 -8.496512,4.692573 -13.642641,4.692573 -12.247593,0 -22.1702239,-9.922637 -22.1702239,-22.170234 0,-12.247593 9.9226309,-22.16865 22.1702239,-22.16865 z m 28.248862,0 c 12.247592,0 22.169831,9.921057 22.169831,22.16865 0,12.247597 -9.922239,22.170234 -22.169831,22.170234 -5.146054,0 -9.881501,-1.752278 -13.643035,-4.692182 4.99488,-4.179536 8.173289,-10.458566 8.173289,-17.478052 0,-7.019483 -3.178409,-13.29813 -8.173289,-17.477255 3.761534,-2.939596 8.496981,-4.691395 13.643035,-4.691395 z m -14.124628,5.078403 c 4.914979,4.06546 8.0456,10.21063 8.0456,17.090247 0,6.879619 -3.130621,13.025561 -8.0456,17.09144 -4.914846,-4.065879 -8.0456,-10.211928 -8.0456,-17.09144 0,-6.879509 3.130754,-13.024784 8.0456,-17.090247 z" />
|
||||
<g
|
||||
aria-label="A"
|
||||
id="text5154"
|
||||
style="font-size:10.5833px;line-height:1.25;fill:#515151;stroke-width:0.264583"
|
||||
transform="matrix(0.76263455,0,0,0.76263455,95.468092,-16.673393)">
|
||||
<path
|
||||
d="m -116.63217,123.30077 h -3.11091 l -0.49093,1.4056 h -1.99987 l 2.8577,-7.71527 h 2.37194 l 2.8577,7.71527 h -1.99987 z m -2.61482,-1.43143 h 2.11356 l -1.05419,-3.06957 z"
|
||||
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
|
||||
id="path13941" />
|
||||
</g>
|
||||
<g
|
||||
aria-label="B"
|
||||
id="text13006"
|
||||
style="font-size:10.5833px;line-height:1.25;fill:#515151;stroke-width:0.264583"
|
||||
transform="matrix(0.76263455,0,0,0.76263455,95.468092,-16.673393)">
|
||||
<path
|
||||
d="m -33.557146,119.97799 q 0.470254,0 0.713133,-0.20671 0.242878,-0.2067 0.242878,-0.60978 0,-0.3979 -0.242878,-0.60461 -0.242879,-0.21187 -0.713133,-0.21187 h -1.100704 v 1.63297 z m 0.06718,3.37446 q 0.599445,0 0.899168,-0.25321 0.30489,-0.25322 0.30489,-0.76481 0,-0.50126 -0.299723,-0.74931 -0.299722,-0.25321 -0.904335,-0.25321 h -1.167883 v 2.02054 z m 1.850011,-2.77502 q 0.640786,0.18604 0.992184,0.6873 0.351399,0.50126 0.351399,1.22989 0,1.11621 -0.754474,1.66398 -0.754473,0.54777 -2.294426,0.54777 h -3.302113 v -7.71527 h 2.986888 q 1.607132,0 2.325432,0.48576 0.723468,0.48575 0.723468,1.55545 0,0.56327 -0.263549,0.96118 -0.263549,0.39274 -0.764809,0.58394 z"
|
||||
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
|
||||
id="path13938" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 8.3 KiB |
|
@ -1,180 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="79.80867mm"
|
||||
height="52.19289mm"
|
||||
viewBox="0 0 79.808673 52.192889"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20, custom)"
|
||||
sodipodi:docname="union.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:snap-global="false"
|
||||
fit-margin-top="3"
|
||||
lock-margins="true"
|
||||
fit-margin-left="3"
|
||||
fit-margin-right="3"
|
||||
fit-margin-bottom="3"
|
||||
inkscape:zoom="0.57549102"
|
||||
inkscape:cx="212.86171"
|
||||
inkscape:cy="100.7835"
|
||||
inkscape:window-width="1428"
|
||||
inkscape:window-height="862"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer1" />
|
||||
<defs
|
||||
id="defs2">
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
xlink:href="#pattern36848"
|
||||
id="pattern38379"
|
||||
patternTransform="matrix(1.0197042,1.0197042,-5.8762732,5.8762738,0.30114133,13.459245)" />
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
xlink:href="#pattern36848"
|
||||
id="pattern37445"
|
||||
patternTransform="matrix(-1.0197042,1.0197042,5.8762732,5.8762738,75.204929,13.459245)" />
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
xlink:href="#pattern6953"
|
||||
id="pattern37182"
|
||||
patternTransform="matrix(0,1.4798286,-6.3324839,-5.1243094e-7,0.27446455,16.293261)" />
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
xlink:href="#pattern6953"
|
||||
id="pattern36848"
|
||||
patternTransform="matrix(1.7505111,1.7505111,-10.087711,10.087712,0,0)" />
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="marker70291"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:0.625;stroke-linejoin:round"
|
||||
id="path70289" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="marker70281"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 Z"
|
||||
id="path70279" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="Arrow1Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow1Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.2,0,0,-0.2,-1.2,0)"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
|
||||
d="M 0,0 5,-5 -12.5,0 5,5 Z"
|
||||
id="path70018" />
|
||||
</marker>
|
||||
<marker
|
||||
style="overflow:visible"
|
||||
id="Arrow2Send"
|
||||
refX="0"
|
||||
refY="0"
|
||||
orient="auto"
|
||||
inkscape:stockid="Arrow2Send"
|
||||
inkscape:isstock="true">
|
||||
<path
|
||||
transform="matrix(-0.3,0,0,-0.3,0.69,0)"
|
||||
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
|
||||
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:0.625;stroke-linejoin:round"
|
||||
id="path70036" />
|
||||
</marker>
|
||||
<pattern
|
||||
inkscape:collect="always"
|
||||
patternUnits="userSpaceOnUse"
|
||||
width="2"
|
||||
height="1"
|
||||
patternTransform="translate(0,0) scale(10,10)"
|
||||
inkscape:stockid="Stripes 1:1"
|
||||
inkscape:isstock="true"
|
||||
id="pattern6953">
|
||||
<rect
|
||||
style="fill:#41e6a8;stroke:none"
|
||||
x="0"
|
||||
y="-0.5"
|
||||
width="1"
|
||||
height="2"
|
||||
id="rect37629" />
|
||||
</pattern>
|
||||
</defs>
|
||||
<g
|
||||
inkscape:label="Calque 1"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
transform="translate(2.2786723,-29.239102)">
|
||||
<path
|
||||
id="path37443"
|
||||
style="mix-blend-mode:normal;fill:url(#pattern37445);fill-opacity:1;stroke:none;stroke-width:0.609896;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 51.711526,32.439559 A 22.474851,22.474763 0 0 1 74.186484,54.914032 22.474851,22.474763 0 0 1 51.711526,77.3889 22.474851,22.474763 0 0 1 37.587237,72.389317 a 22.474851,22.474763 0 0 0 1.161818,-0.999839 22.474851,22.474763 0 0 0 1.188618,-1.188612 22.474851,22.474763 0 0 0 1.096003,-1.273737 22.474851,22.474763 0 0 0 0.998264,-1.352563 22.474851,22.474763 0 0 0 0.894221,-1.423099 22.474851,22.474763 0 0 0 0.78545,-1.485765 22.474851,22.474763 0 0 0 0.671948,-1.540544 22.474851,22.474763 0 0 0 0.555291,-1.586265 22.474851,22.474763 0 0 0 0.434698,-1.623702 22.474851,22.474763 0 0 0 0.312524,-1.651288 22.474851,22.474763 0 0 0 0.188382,-1.670207 22.474851,22.474763 0 0 0 0.06267,-1.679664 22.474851,22.474763 0 0 0 -0.06267,-1.679269 22.474851,22.474763 0 0 0 -0.188382,-1.670207 22.474851,22.474763 0 0 0 -0.312524,-1.651681 22.474851,22.474763 0 0 0 -0.434698,-1.623308 22.474851,22.474763 0 0 0 -0.555291,-1.586262 22.474851,22.474763 0 0 0 -0.671948,-1.540547 22.474851,22.474763 0 0 0 -0.78545,-1.486159 22.474851,22.474763 0 0 0 -0.894221,-1.423104 22.474851,22.474763 0 0 0 -0.998264,-1.352165 22.474851,22.474763 0 0 0 -1.096003,-1.273739 22.474851,22.474763 0 0 0 -1.188618,-1.188612 22.474851,22.474763 0 0 0 -1.164576,-1.002203 22.474851,22.474763 0 0 1 14.127047,-4.997217 z" />
|
||||
<path
|
||||
id="path30788"
|
||||
style="mix-blend-mode:normal;fill:url(#pattern38379);fill-opacity:1;stroke:none;stroke-width:0.609896;stroke-miterlimit:4;stroke-dasharray:none"
|
||||
d="M 23.794537,32.439559 A 22.474851,22.474763 0 0 0 1.319584,54.914032 22.474851,22.474763 0 0 0 23.794537,77.3889 22.474851,22.474763 0 0 0 37.918826,72.389317 22.474851,22.474763 0 0 1 36.757008,71.389478 22.474851,22.474763 0 0 1 35.56839,70.200866 a 22.474851,22.474763 0 0 1 -1.096003,-1.273737 22.474851,22.474763 0 0 1 -0.998264,-1.352563 22.474851,22.474763 0 0 1 -0.894221,-1.423099 22.474851,22.474763 0 0 1 -0.78545,-1.485765 22.474851,22.474763 0 0 1 -0.671948,-1.540544 22.474851,22.474763 0 0 1 -0.555291,-1.586265 22.474851,22.474763 0 0 1 -0.434698,-1.623702 22.474851,22.474763 0 0 1 -0.312524,-1.651288 22.474851,22.474763 0 0 1 -0.188381,-1.670207 22.474851,22.474763 0 0 1 -0.06267,-1.679664 22.474851,22.474763 0 0 1 0.06267,-1.679269 22.474851,22.474763 0 0 1 0.188381,-1.670207 22.474851,22.474763 0 0 1 0.312524,-1.651681 22.474851,22.474763 0 0 1 0.434698,-1.623308 22.474851,22.474763 0 0 1 0.555291,-1.586262 22.474851,22.474763 0 0 1 0.671948,-1.540547 22.474851,22.474763 0 0 1 0.78545,-1.486159 22.474851,22.474763 0 0 1 0.894221,-1.423104 22.474851,22.474763 0 0 1 0.998264,-1.352165 22.474851,22.474763 0 0 1 1.096003,-1.273739 22.474851,22.474763 0 0 1 1.188618,-1.188612 22.474851,22.474763 0 0 1 1.164577,-1.002203 22.474851,22.474763 0 0 0 -14.127048,-4.997217 z" />
|
||||
<path
|
||||
id="path702-3"
|
||||
style="fill:url(#pattern37182);fill-opacity:1;stroke:none;stroke-width:0.610106"
|
||||
d="m 37.921585,37.436776 a 22.474851,22.474763 0 0 0 -1.164577,1.002203 22.474851,22.474763 0 0 0 -1.188618,1.188612 22.474851,22.474763 0 0 0 -1.096003,1.273739 22.474851,22.474763 0 0 0 -0.998264,1.352165 22.474851,22.474763 0 0 0 -0.894221,1.423104 22.474851,22.474763 0 0 0 -0.78545,1.486159 22.474851,22.474763 0 0 0 -0.671948,1.540547 22.474851,22.474763 0 0 0 -0.555291,1.586262 22.474851,22.474763 0 0 0 -0.434698,1.623308 22.474851,22.474763 0 0 0 -0.312524,1.651681 22.474851,22.474763 0 0 0 -0.188381,1.670207 22.474851,22.474763 0 0 0 -0.06267,1.679269 22.474851,22.474763 0 0 0 0.06267,1.679664 22.474851,22.474763 0 0 0 0.188381,1.670207 22.474851,22.474763 0 0 0 0.312524,1.651288 22.474851,22.474763 0 0 0 0.434698,1.623702 22.474851,22.474763 0 0 0 0.555291,1.586265 22.474851,22.474763 0 0 0 0.671948,1.540544 22.474851,22.474763 0 0 0 0.78545,1.485765 22.474851,22.474763 0 0 0 0.894221,1.423099 22.474851,22.474763 0 0 0 0.998264,1.352563 22.474851,22.474763 0 0 0 1.096003,1.273737 22.474851,22.474763 0 0 0 1.188618,1.188612 22.474851,22.474763 0 0 0 1.161818,0.999839 22.474851,22.474763 0 0 0 8.350272,-17.475285 22.474851,22.474763 0 0 0 -8.347513,-17.477256 z" />
|
||||
<path
|
||||
id="path702"
|
||||
style="color:#000000;fill:#df6b67;fill-opacity:1;stroke-width:0.762633;-inkscape-stroke:none"
|
||||
d="m 23.500439,32.239102 c -12.577318,0 -22.77911129,10.201796 -22.77911129,22.779114 0,12.577322 10.20179329,22.780701 22.77911129,22.780701 5.334644,0 10.241466,-1.836329 14.124234,-4.91012 3.882804,3.073901 8.789875,4.91012 14.124628,4.91012 12.57732,0 22.780694,-10.203379 22.780694,-22.780701 0,-12.577318 -10.203374,-22.779114 -22.780694,-22.779114 -5.334753,0 -10.241824,1.83574 -14.124628,4.909333 -3.882768,-3.073479 -8.78959,-4.909333 -14.124234,-4.909333 z m 0,0.610464 c 5.146129,0 9.881081,1.752116 13.642641,4.691788 -4.994634,4.179124 -8.173289,10.457579 -8.173289,17.476862 0,7.019287 3.178655,13.298119 8.173289,17.477661 -3.76156,2.939974 -8.496512,4.692573 -13.642641,4.692573 -12.247593,0 -22.1702239,-9.922637 -22.1702239,-22.170234 0,-12.247593 9.9226309,-22.16865 22.1702239,-22.16865 z m 28.248862,0 c 12.247592,0 22.169831,9.921057 22.169831,22.16865 0,12.247597 -9.922239,22.170234 -22.169831,22.170234 -5.146054,0 -9.881501,-1.752278 -13.643035,-4.692182 4.99488,-4.179536 8.173289,-10.458566 8.173289,-17.478052 0,-7.019483 -3.178409,-13.29813 -8.173289,-17.477255 3.761534,-2.939596 8.496981,-4.691395 13.643035,-4.691395 z m -14.124628,5.078403 c 4.914979,4.06546 8.0456,10.21063 8.0456,17.090247 0,6.879619 -3.130621,13.025561 -8.0456,17.09144 -4.914846,-4.065879 -8.0456,-10.211928 -8.0456,-17.09144 0,-6.879509 3.130754,-13.024784 8.0456,-17.090247 z" />
|
||||
<g
|
||||
aria-label="A"
|
||||
id="text5154"
|
||||
style="font-size:10.5833px;line-height:1.25;fill:#515151;stroke-width:0.264583"
|
||||
transform="matrix(0.76263455,0,0,0.76263455,95.468092,-16.673393)">
|
||||
<path
|
||||
d="m -116.63217,123.30077 h -3.11091 l -0.49093,1.4056 h -1.99987 l 2.8577,-7.71527 h 2.37194 l 2.8577,7.71527 h -1.99987 z m -2.61482,-1.43143 h 2.11356 l -1.05419,-3.06957 z"
|
||||
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
|
||||
id="path13941" />
|
||||
</g>
|
||||
<g
|
||||
aria-label="B"
|
||||
id="text13006"
|
||||
style="font-size:10.5833px;line-height:1.25;fill:#515151;stroke-width:0.264583"
|
||||
transform="matrix(0.76263455,0,0,0.76263455,95.468092,-16.673393)">
|
||||
<path
|
||||
d="m -33.557146,119.97799 q 0.470254,0 0.713133,-0.20671 0.242878,-0.2067 0.242878,-0.60978 0,-0.3979 -0.242878,-0.60461 -0.242879,-0.21187 -0.713133,-0.21187 h -1.100704 v 1.63297 z m 0.06718,3.37446 q 0.599445,0 0.899168,-0.25321 0.30489,-0.25322 0.30489,-0.76481 0,-0.50126 -0.299723,-0.74931 -0.299722,-0.25321 -0.904335,-0.25321 h -1.167883 v 2.02054 z m 1.850011,-2.77502 q 0.640786,0.18604 0.992184,0.6873 0.351399,0.50126 0.351399,1.22989 0,1.11621 -0.754474,1.66398 -0.754473,0.54777 -2.294426,0.54777 h -3.302113 v -7.71527 h 2.986888 q 1.607132,0 2.325432,0.48576 0.723468,0.48575 0.723468,1.55545 0,0.56327 -0.263549,0.96118 -0.263549,0.39274 -0.764809,0.58394 z"
|
||||
style="font-weight:bold;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'"
|
||||
id="path13938" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 12 KiB |
|
@ -1,207 +0,0 @@
|
|||
---
|
||||
title: "Base de données avancées : Algèbre relationnelle"
|
||||
date: 2022-01-12
|
||||
tags: ["schema", "algèbre relationnelle", "relation"]
|
||||
categories: ["Base de données avancées", "Cours"]
|
||||
mathjax: true
|
||||
---
|
||||
|
||||
L'agèbre relationnelle est un langage de requêtes dans une base de donnée
|
||||
relationelle. Inventé par Edgar F. Codd en 1970, il représente le fondement
|
||||
théorique du langage SQL.
|
||||
|
||||
|
||||
C'est un langage procédural : les requêtes sont des suites d'opérations qui
|
||||
construise la réponse.Il permet la manipulation des relations par interrogation
|
||||
en combiant les relations avec différents opérateurs afin d'obtenir de nouvelles
|
||||
relations.
|
||||
|
||||
## La projection
|
||||
|
||||
La projection permet de ne garder que les *n_uplets* des attibuts indiqué par
|
||||
l'opérateur en supprimant les éventuels doublons. Il est noté \\(\pi\\), son
|
||||
équivalent SQL est `SELECT`. On parle alors de *partition verticale*
|
||||
|
||||
* Soit \\(R(\underline{A,B},C,D)\\)
|
||||
* La projection des attibuts C et D donne \\(\pi_D(R) = R'(C,D)\\)
|
||||
|
||||
## La selection
|
||||
|
||||
L'opérateur de selection (ou restriction) ne permet de retenir que *n_uplets*
|
||||
vérifiant une condition particulière donnée sous forme de prédicat[^n_predicat].
|
||||
Il est noté \\(\sigma\\)) et équivaut à la clause `WHERE` en SQL.
|
||||
|
||||
* Soit \\(R(\underline{A,B},C,D)\\)
|
||||
* la selection \\(\sigma_{C>2}(R) = R'(A,B,C,D)\\) sélection les ligne de la
|
||||
relation \\(R\\) dont \\(C\\) est supérieur à 2
|
||||
|
||||
Les opérateurs possibles sont \\(>, <, \geqslant, \leqslant, =, \ne, \subset,
|
||||
\subseteq, \nsubseteq \\)
|
||||
|
||||
Utilisons les relations de notre exemple de la compagne aérienne, pour trouver
|
||||
les numéros de séries des avions avec une capacité supérieure à 150 passagers.
|
||||
|
||||
\\( \pi_{\text{num_serie}}(\sigma_{capacité > 150}(avions)) \\)
|
||||
|
||||
|
||||
[^n_predicat]:propriété des objets du langage exprimée dans le langage en
|
||||
question (source [Wikipédia](https://fr.wikipedia.org/wiki/Pr%C3%A9dicat))
|
||||
|
||||
## jointure
|
||||
|
||||
La jointure (ou jointure naturelle) rapproche deux relations liées par des
|
||||
attributs communs. Les *n_uplets* du résultat sont obtenus par concaténation des
|
||||
attributs des deux relations lorsque les attributs communs ont des valeurs
|
||||
identiques. La jointure est notée \bowtie, son équivalent au `JOIN` en SQL.
|
||||
|
||||
* soit deux relations \\( conso(plat, client) \\) et \\( client(id, nom,
|
||||
prénom) \\)
|
||||
* \\( \pi_{nom, prénom}(\sigma_{plat = donuts}(conso \bowtie_{conso.client =
|
||||
client.id} client)) \\) donne les clients ayant commandé des donuts.
|
||||
|
||||
## auto-jointure
|
||||
|
||||
L'auto-jointure est la jointure d'une table sur elle-même. elle permet, par
|
||||
exemple, de calculer une hiérarchie. Lors de l'utilisation de cet operateur, il
|
||||
faut renommer chaque relation qui compose la jointure de façon unique. Cet
|
||||
|
||||
l'opérateur \\( \rho \\) permet de renommer une relation le temps d'une requête.
|
||||
|
||||
* soit une relation \\( employés(matricule, nom, prénom, supérieur) \\)
|
||||
* \\( \pi_{D}(\sigma_{nom = Simpson}((employés \bowtie_{employés.matricule = s.D}
|
||||
(\rho{s(A,B,C,D}(employés))) \\) permet de trouver le superieur
|
||||
hiérarchique de Simpson.
|
||||
|
||||
## Opérations binaires
|
||||
|
||||
Les opérations binaires sont des opérations mathématiques standard de la
|
||||
théories des ensembles. Elles ne peuvent s'appliquer **que sur des relations
|
||||
compatibles**. On y trouve
|
||||
|
||||
* Union
|
||||
* Intersection
|
||||
* Différence
|
||||
* Division
|
||||
|
||||
Pour deux relations \\(A(A_1, A_2, A_3, ..., A_n)\\) et \\(B(B_1, B_2, B_3, ...,
|
||||
B_n\\) sont **compatibles** si et seulement si elles ont le même degrès
|
||||
[^n_degres] et si \\(dom(A_i) = dom(B_i)\\) pour \\(1 \leqslant i \leqslant n
|
||||
\\)
|
||||
|
||||
[^n_degres]:le degrés représente le nombre d'attributs d'une relation
|
||||
|
||||
### Union
|
||||
|
||||
\\(A \cup B\\) est une relation qui inclue tous les *n_uplets* qui
|
||||
appartiennent à A, B ou au deux. Les doublons sont éliminés.
|
||||
|
||||

|
||||
|
||||
### Intersection
|
||||
|
||||
\\( A \cap B \\) est une relation qui inclue les *n_uplets* appartenant à A et à
|
||||
B et seulement ceux-ci.
|
||||
|
||||

|
||||
|
||||
### Différence
|
||||
|
||||
\\( A - B \\) est une relation qui inclue tous les *n_uplets* appartenant à A
|
||||
mais pas à B.
|
||||
|
||||

|
||||
|
||||
Elle répond à la question quel sont les A qui n'ont aucun B.
|
||||
|
||||
### Division
|
||||
|
||||
La division permet de conserver une sous ensemble de *n_uplets* partie de
|
||||
\\(R\\) qui sont tous présent dans \\(S\\). Elle permet de répondre à des
|
||||
questions du type *quel est le truc qui a tous les machins?*.
|
||||
|
||||
Pour l'exemple, reprenons notre base de donnée de la compagnie aérienne du
|
||||
chapitre précédent.
|
||||
|
||||

|
||||
|
||||
Utilisons la division pour répondre à la question "Quels commandants ont volé
|
||||
sur tous les type d'avion:
|
||||
|
||||
\\[
|
||||
\Pi_{matricule, type}(
|
||||
pilotes \underset{pilotes.matricule = planning.matricule}{\bowtie}
|
||||
planning \underset{\text{planning.num_avion} = \text{avions.num_serie}}{\bowtie}
|
||||
avions)
|
||||
\div \Pi_{type}(avion)
|
||||
\\]
|
||||
|
||||
## Calcul relationnel
|
||||
|
||||
Le calcul relationnel est un langage formel permettant, tout comme l'algèbre
|
||||
relationnel, d'exprimer des requêtes afin d'interroger des base de données
|
||||
relationnelles.
|
||||
|
||||
Les requêtes se présentent sous la forme \\({t|P(t)}\\), elle représente
|
||||
l'ensemble des *n_uplets* tel que le prédicat \\(P(t)\\) est vrai pour \\(t\\).
|
||||
|
||||
\\(t\\) est une variable de *n_uplet* et \\(t[A]\\) représente la valeur de
|
||||
l'attribut \\(A\\) dans \\(t\\). \\(t \in r\\) signifie que \\(t\\) est un
|
||||
*n_uplet* de \\(r\\).
|
||||
|
||||
Il existe aussi les connecteur logiques :
|
||||
* \\(\lor\\) : **ou** logique
|
||||
* \\((\land\\) : **et** logique
|
||||
* \\(\neg\\) : la négation
|
||||
|
||||
Mais aussi des quantificateurs :
|
||||
* \\(\exists\\) : **il existe**, par exemple \\(\exists t \in r(Q(t))\\) il
|
||||
existe un tuple t de r tel que Q est vrai.
|
||||
* \\(\forall\\) : **pour tout**, par exemple \\(\forall t \in r(Q(t))\\) - Q
|
||||
est vrai pour tout tuple t de r.
|
||||
* \\(\nexists\\) : **il n'existe pas**, par exemple \\(\nexists t \in
|
||||
r(Q(t))\\) - il n'existe pas de tuple t dans r tel que Q est vrai.
|
||||
|
||||
### Un exemple concret : base de donnée cinéma
|
||||
|
||||
Essayons d'éclaicir tout celà à l'aide d'un exemple concret, considérons les
|
||||
relations suivantes:
|
||||
|
||||
* Films(titre, realisateur, Acteur) instance f
|
||||
* Programme(nom_cinemas, titre, horaire) instance p
|
||||
|
||||
#### les films réalisés par Terry Gilliam
|
||||
|
||||
\\( \\{ t | t \in f \land t[realisateur] = "\text{Terry Gilliam"} \\} \\)
|
||||
|
||||
#### les films ou jouent Jay et Silent Bob
|
||||
|
||||
\\( \\{ t | t \in f \land \exists s \in f( t[titre] = s[titre] \land
|
||||
t[acteur] = "Jay" \land s[acteur] = "Silent Bob" ) \\} \\)
|
||||
|
||||
#### tous les films programmés dans toutes les salles
|
||||
|
||||
\\( \\{ t | \exists s \in p(t[titre] = s[titre]) \\} \\)
|
||||
|
||||
#### Les films programmés à l'UGC mais pas au Megarama
|
||||
|
||||
\\( \\{
|
||||
t | \exists s \in p(s[titre] = t[titre]
|
||||
\land s[\text{nom_cinemas}] = "UCG"
|
||||
\land {\not} {\exists} u \in p( u[\text{nom_cinemas}] = "Megarama"
|
||||
\land u[titre] = t[titre]
|
||||
\\} \\)
|
||||
|
||||
#### Les titres des films qui sont passés à l'UGC et leurs réalisateurs
|
||||
|
||||
\\( \\{
|
||||
t | \exists \in p(\exists u \in f((s[\text{nom_cinemas}] = "UGC"
|
||||
\land s[titre] = u[titre] = t[titre]
|
||||
\land t[realisateur] = u[realisateur]
|
||||
\\} \\)
|
||||
|
||||
## Retour sur la notion de clé
|
||||
|
||||
comme nous lavons abordé précédement, une clé est nécessaire pour identifier des
|
||||
*n_uplets* de façon unique sans pour autant en donner toutes leurs valeurs et
|
||||
respecter leurs unicité.
|
Loading…
Add table
Add a link
Reference in a new issue