diff --git a/README.md b/README.md index aa5a438..d1a9e3e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ -# db-lesson +# DBç·´ç¿’å•�題&演習課題 +ファイルã�®å…ˆé ­ã�«ã€�ã€�ç·´ç¿’å•�題】やã€�演習課題】ã�¨ä»˜ã�‘ã‚‹ã�“ã�¨ã�«ã‚ˆã�£ã�¦æŒ¯ã‚Šåˆ†ã�‘ã�¦ã�„ã�¾ã�™ã€‚ +教室ã�®ãƒ¬ãƒ™ãƒ«ã‚„雰囲気ã�«ã‚ˆã�£ã�¦ã€�グループ演習や個人演習ã�ªã�©ã�¨ã�—ã�¦ã‚‚良ã�„ã�‹ã�¨æ€�ã�„ã�¾ã�™ \ No newline at end of file diff --git a/ã€�演習課題】 SQL - ãƒ�ックアップã€�リストア/ã€�演習課題】MySQL_ãƒ�ックアップ&リストア演習.txt b/ã€�演習課題】 SQL - ãƒ�ックアップã€�リストア/ã€�演習課題】MySQL_ãƒ�ックアップ&リストア演習.txt new file mode 100644 index 0000000..60f6a72 --- /dev/null +++ b/ã€�演習課題】 SQL - ãƒ�ックアップã€�リストア/ã€�演習課題】MySQL_ãƒ�ックアップ&リストア演習.txt @@ -0,0 +1,99 @@ +# MySQL ƒoƒbƒNƒAƒbƒv&ƒŠƒXƒgƒA‰‰�K + +## ‘O’ñ’mޝ +#### MySQL‚Ì�Ý’èƒtƒ@ƒCƒ‹ +C\ProgramData\MySQL\MySQL Server 8.0\my.ini +ƒoƒCƒiƒŠƒ�ƒO‚Ì–¼‘O‚ª�‘‚©‚ê‚Ä‚¢‚é�ê�Š‚Í�ulog-bin�v‚ÅŒŸ�õ‚·‚邯•\ަ‚³‚ê‚é�B + +#### �·•ª/‘�•ªƒoƒbƒNƒAƒbƒv‚³‚ꂽƒtƒ@ƒCƒ‹(ƒoƒCƒiƒŠƒ�ƒO)‚Ì�ê�Š +C\ProgramData\MySQL\MySQL Server 8.0\Data + +#### Œ»�Ý‚Ì�·•ª/‘�•ªƒoƒbƒNƒAƒbƒv‚ÉŽg‚Á‚Ä‚¢‚éƒtƒ@ƒCƒ‹–¼‚ðŠm”F + �iroot‚Å�jSHOW MASTER STATUS; + +## ‰‰�K�€”õ1 ƒtƒ‹ƒoƒbƒNƒAƒbƒv•Ò +- WindowsŠÂ‹«•Ï�”‚Ìpath‚ð•Ï�X +- ƒRƒ“ƒgƒ��[ƒ‹ƒpƒlƒ‹�¨ƒVƒXƒeƒ€‚ƃZƒLƒ…ƒŠƒeƒB�¨ƒVƒXƒeƒ€�¨ƒVƒXƒeƒ€‚Ì�Ú�×�Ý’è�¨ŠÂ‹«•Ï�” +- ƒVƒXƒeƒ€ŠÂ‹«•Ï�”‚Ì�uPath�v‚ðƒNƒŠƒbƒN‚µ�A�u•Ò�W�v�¨�u�V‹K�v +- �uC:\Program Files\MySQL\MySQL Server 8.0\bin\�v‚Æ“ü—Í‚µ�A�uOK�v +�¦�ã‹L‘€�ì‚É‚æ‚èƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚Å�umysql�vƒRƒ}ƒ“ƒh‚ªŽÀ�s‚Å‚«‚邿‚¤‚ɂȂé + +- ˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚ÅŽÀ�s +mysqldump --lock-all-tables -A -uroot -p > C:\backup_test.sql +�¦Cƒhƒ‰ƒCƒu’¼‰º‚ɃoƒbƒNƒAƒbƒvƒtƒ@ƒCƒ‹‚ª�ì‚ç‚ê‚é + +## ‰‰�K1 +ˆÈ‰º‚Ì—vŒ�‚É�]‚¢�Aƒf�[ƒ^ƒx�[ƒX‚ðƒoƒbƒNƒAƒbƒv‚µ‚Ä‚­‚¾‚³‚¢�B +#### —vŒ� + - •Û‘¶�ê�Š + - Cƒhƒ‰ƒCƒu’¼‰º + - •Û‘¶‘Î�Û + - rezodb + - ƒoƒbƒNƒAƒbƒvƒtƒ@ƒCƒ‹–¼ + - backup_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql�i—á�Fbackup_20200414_m-yoshida.sql�j + - mysqldump‚̃IƒvƒVƒ‡ƒ“ + - --flush-logs + - --lock-all-tables + - -u + - -p +#### ƒqƒ“ƒg + - mysqldump‚Ì�u-A�v‚Í�u‚·‚ׂẴf�[ƒ^ƒx�[ƒX‚ð�v‚Æ‚¢‚¤ˆÓ–¡�B + - mysqlƒRƒ}ƒ“ƒh‚Å�Arezodb‚ɃAƒNƒZƒX‚·‚邯‚«‚ɂǂ±‚É�urezodb�v‚Æ“ü—Í‚·‚é�H + - ƒIƒvƒVƒ‡ƒ“‚̈Ӗ¡�c�u--flush-logs�v=ƒoƒCƒiƒŠƒ�ƒO‚ðƒ��[ƒe�[ƒg‚·‚é�i‚±‚êˆÈ�~‚Ì‘€�ì‚Í�V‚µ‚¢ƒoƒCƒiƒŠƒ�ƒO‚ɕۑ¶‚³‚ê‚é�j + �u--lock-all-tables�v=‚±‚Ì“®�삪�s‚í‚ê‚Ä‚¢‚é�Å’†‚Í�A‚·‚ׂẴe�[ƒuƒ‹‚ðƒ�ƒbƒN‚·‚é + +## ‰‰�K�€”õ2 �·•ªƒoƒbƒNƒAƒbƒv•Ò +1. ‚ǂ̃†�[ƒU‚©‚ç‚Å‚à—Ç‚¢‚Ì‚Årezodb‚ɃAƒNƒZƒX‚µ�Auser_table‚Ɉȉº‚̃f�[ƒ^‚ð’ljÁ‚µ‚Ä‚­‚¾‚³‚¢�B +INSERT INTO employee VALUES (20000, '<Ž©•ª‚̃tƒ‹ƒl�[ƒ€>', '<Ž©•ª‚̃tƒ‹ƒl�[ƒ€ƒJƒi>','my@hoge.jp','xxx','10'); + +2. ˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚ÅŽÀ�s‚µ‚Ü‚·�B + mysqlbinlog "C:\ProgramData\MySQL\MySQL Server 8.0\Data\<ƒoƒCƒiƒŠƒ�ƒOƒtƒ@ƒCƒ‹–¼>" > C:\backup_test2.sql + +## ‰‰�K2 +ˆÈ‰º‚Ì—vŒ�‚É�]‚¢�Aƒf�[ƒ^ƒx�[ƒX‚ðƒoƒbƒNƒAƒbƒv‚µ‚Ä‚­‚¾‚³‚¢�B +### —vŒ��F + - •Û‘¶�ê�Š + - Cƒhƒ‰ƒCƒu’¼‰º + - •Û‘¶‘Î�Û + - Œ»�Ý‚Ì�·•ªƒoƒbƒNƒAƒbƒv + - ƒoƒbƒNƒAƒbƒvƒtƒ@ƒCƒ‹–¼ + - backup2_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql + +## ‰‰�K3 ƒŠƒXƒgƒA•Ò + +�¦’�ˆÓ�I�@Ž–‘O‚É�A‹¤—LƒtƒHƒ‹ƒ_‚ɕۑ¶‚µ‚½ƒoƒbƒNƒAƒbƒv‚ª‘¶�Ý‚·‚邱‚Æ�A“à—e‚ª•ςɂȂÁ‚Ä‚¢‚È‚¢‚©�i2‚‚̃oƒbƒNƒAƒbƒv‚ª“¯‚¶ƒtƒ@ƒCƒ‹ƒTƒCƒY‚ɂȂÁ‚Ä‚¢‚È‚¢‚©“™�jŠm”F‚µ‚Ä‚­‚¾‚³‚¢�B + +1. root‚Årezodb‚Ƀ�ƒOƒCƒ“‚µ�AˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðŽÀ�s‚µ‚Ä‚­‚¾‚³‚¢�B + SHOW TABLES FROM rezodb; + +2. ‚·‚ׂẴe�[ƒuƒ‹‚ð�í�œ‚µ‚Ü‚·�BˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ð�Aƒe�[ƒuƒ‹�”•ªŽÀ�s‚µ‚Ä‚­‚¾‚³‚¢�B + DROP TABLES <ƒe�[ƒuƒ‹–¼>; + +3. ƒf�[ƒ^ƒx�[ƒX‚ðƒŠƒXƒgƒA‚µ‚Ü‚·�B + \q‚Åmysql‚©‚甲‚¯�o‚µ�AˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðŽÀ�s‚µ‚Ü‚·�B + mysql -uroot -p rezodb < <‹¤—LƒtƒHƒ‹ƒ_‚ɕۑ¶‚µ‚½ƒtƒ‹ƒoƒbƒNƒAƒbƒv‚̃tƒ‹ƒpƒX> + +4. ƒŠƒXƒgƒA‚µ‚½ƒf�[ƒ^ƒx�[ƒX‚ªƒtƒ‹ƒoƒbƒNƒAƒbƒvŽž‚Ì‚à‚̂ɂȂÁ‚Ä‚¢‚é‚©Šm”F‚µ‚Ü‚·�B + user_table‚Ì“à—e‚ðŠm”F‚µ‚Ä‚­‚¾‚³‚¢�B + +5. �·•ªƒoƒbƒNƒAƒbƒv‚Ì“à—e‚ðƒŠƒXƒgƒA‚µ‚Ü‚·�B + \q‚Åmysql‚©‚甲‚¯�o‚µ�AˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðŽÀ�s‚µ‚Ü‚·�B + mysql -uroot -p rezodb < <‹¤—LƒtƒHƒ‹ƒ_‚ɕۑ¶‚µ‚½�·•ªƒoƒbƒNƒAƒbƒv‚̃tƒ‹ƒpƒX> + +6. ƒŠƒXƒgƒA‚µ‚½ƒf�[ƒ^ƒx�[ƒX‚ª�·•ªƒoƒbƒNƒAƒbƒvŽž‚Ì‚à‚̂ɂȂÁ‚Ä‚¢‚é‚©Šm”F‚µ‚Ü‚·�B + user_table‚Ì“à—e‚ðŠm”F‚µ‚Ä‚­‚¾‚³‚¢�B + +7. ŽÀŽ{Œã‚Ì‘SƒoƒbƒNƒAƒbƒv‚ð�ì�¬‚µ‚Ä‚­‚¾‚³‚¢�B +- —vŒ� + - •Û‘¶�ê�Š + - Cƒhƒ‰ƒCƒu‚Ì’¼‰º + - •Û‘¶‘Î�Û + - rezodb�u‚Ì‚Ý�v + - ƒoƒbƒNƒAƒbƒvƒtƒ@ƒCƒ‹–¼ + backup3_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql + - mysqldump‚̃IƒvƒVƒ‡ƒ“ + - --flush-logs + - --lock-all-tables + - -u + - -p + diff --git a/ã€�演習課題】 SQL - ãƒ�ックアップã€�リストア/ã€�演習課題】オンラインå�‘ã�‘_MySQL_ãƒ�ックアップ&リストア演習.txt b/ã€�演習課題】 SQL - ãƒ�ックアップã€�リストア/ã€�演習課題】オンラインå�‘ã�‘_MySQL_ãƒ�ックアップ&リストア演習.txt new file mode 100644 index 0000000..4b031ee --- /dev/null +++ b/ã€�演習課題】 SQL - ãƒ�ックアップã€�リストア/ã€�演習課題】オンラインå�‘ã�‘_MySQL_ãƒ�ックアップ&リストア演習.txt @@ -0,0 +1,87 @@ +# MySQL ƒoƒbƒNƒAƒbƒv&ƒŠƒXƒgƒA‰‰�K + +## ‘O’ñ’mޝ +* MySQL‚Ì�Ý’èƒtƒ@ƒCƒ‹ + C\ProgramData\MySQL\MySQL Server 8.0\my.ini + ƒoƒCƒiƒŠƒ�ƒO‚Ì–¼‘O‚ª�‘‚©‚ê‚Ä‚¢‚é�ê�Š‚Í�ulog-bin�v‚ÅŒŸ�õ‚·‚邯•\ަ‚³‚ê‚é�B + +* �·•ª/‘�•ªƒoƒbƒNƒAƒbƒv‚³‚ꂽƒtƒ@ƒCƒ‹(ƒoƒCƒiƒŠƒ�ƒO)‚Ì�ê�Š + C\ProgramData\MySQL\MySQL Server 8.0\Data + +* Œ»�Ý‚Ì�·•ª/‘�•ªƒoƒbƒNƒAƒbƒv‚ÉŽg‚Á‚Ä‚¢‚éƒtƒ@ƒCƒ‹–¼‚ðŠm”F + �iroot‚Å�jSHOW MASTER STATUS; + +## ‰‰�K�€”õ1 ƒtƒ‹ƒoƒbƒNƒAƒbƒv•Ò +1. WindowsŠÂ‹«•Ï�”‚Ìpath‚ð•Ï�X‚µ‚Ü‚·�B + ƒRƒ“ƒgƒ��[ƒ‹ƒpƒlƒ‹�¨ƒVƒXƒeƒ€‚ƃZƒLƒ…ƒŠƒeƒB�¨ƒVƒXƒeƒ€�¨ƒVƒXƒeƒ€‚Ì�Ú�×�Ý’è�¨ŠÂ‹«•Ï�” + ŠÂ‹«•Ï�”�uPath�v‚ðƒNƒŠƒbƒN‚µ�A�u•Ò�W�v�¨�u�V‹K�v + �uC:\Program Files\MySQL\MySQL Server 8.0\bin\�v‚Æ“ü—Í‚µ�A�uOK�v + �Ë‚±‚ê‚É‚æ‚è�AƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚Å‚¢‚«‚È‚è�umysql�vƒRƒ}ƒ“ƒh‚ªŽÀ�s‚Å‚«‚邿‚¤‚ɂȂè‚Ü‚·�B + �i‚±‚ê‚܂łÍ�Acd "C:\Program Files\MySQL\MySQL Server 8.0\bin\" ‚ðŽÀ�s‚µ‚Ämysql‚ª’u‚©‚ê‚Ä‚¢‚éƒtƒHƒ‹ƒ_‚Ɉړ®‚µ‚È‚¢‚ÆŽÀ�s‚Å‚«‚È‚©‚Á‚½�j + +2. ˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚ÅŽÀ�s‚µ‚Ü‚·�B + mysqldump --lock-all-tables -A -uroot -p > C:\Users\Owner\Desktop\backup_test.sql + +## ‰‰�K1 +ˆÈ‰º‚Ì—vŒ�‚É�]‚¢�Aƒf�[ƒ^ƒx�[ƒX‚ðƒoƒbƒNƒAƒbƒv‚µ‚Ä‚­‚¾‚³‚¢�B +* —vŒ��F + * •Û‘¶�ê�Š�F�uƒhƒLƒ…ƒ�ƒ“ƒg�vƒtƒHƒ‹ƒ_ + * •Û‘¶‘Î�Û�Frezodb�u‚Ì‚Ý�v + * ƒoƒbƒNƒAƒbƒvƒtƒ@ƒCƒ‹–¼�Fbackup_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql + * mysqldump‚̃IƒvƒVƒ‡ƒ“�F--flush-logs�A--lock-all-tables�A-u�A-p +* ƒqƒ“ƒg�F + * mysqldump‚Ì�u-A�v‚Í�u‚·‚ׂẴf�[ƒ^ƒx�[ƒX‚ð�v‚Æ‚¢‚¤ˆÓ–¡�B + * mysqlƒRƒ}ƒ“ƒh‚Å�Arezodb‚ɃAƒNƒZƒX‚·‚邯‚«‚ɂǂ±‚É�urezodb�v‚Æ“ü—Í‚µ‚½�H + * ƒIƒvƒVƒ‡ƒ“‚̈Ӗ¡�c�u--flush-logs�v=ƒoƒCƒiƒŠƒ�ƒO‚ðƒ��[ƒe�[ƒg‚·‚é�i‚±‚êˆÈ�~‚Ì‘€�ì‚Í�V‚µ‚¢ƒoƒCƒiƒŠƒ�ƒO‚ɕۑ¶‚³‚ê‚é�j + �u--lock-all-tables�v=‚±‚Ì“®�삪�s‚í‚ê‚Ä‚¢‚é�Å’†‚Í�A‚·‚ׂẴe�[ƒuƒ‹‚ðƒ�ƒbƒN‚·‚é +* ’ñ�o•¨�F + * backup_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql + —á�jbackup_20200414_m-yoshida.sql +## ‰‰�K�€”õ2 �·•ªƒoƒbƒNƒAƒbƒv•Ò +1. ‚ǂ̃†�[ƒU‚©‚ç‚Å‚à—Ç‚¢‚Ì‚Årezodb‚ɃAƒNƒZƒX‚µ�Auser_table‚Ɉȉº‚̃f�[ƒ^‚ð’ljÁ‚µ‚Ä‚­‚¾‚³‚¢�B +INSERT INTO user_table VALUES (4, '<Ž©•ª‚Ì–¼Žš>', '01234567890'); + +2. ˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚ÅŽÀ�s‚µ‚Ü‚·�B + mysqlbinlog "C:\ProgramData\MySQL\MySQL Server 8.0\Data\<ƒoƒCƒiƒŠƒ�ƒOƒtƒ@ƒCƒ‹–¼>" > C:\Users\Owner\Desktop\backup_test2.sql + +## ‰‰�K2 +ˆÈ‰º‚Ì—vŒ�‚É�]‚¢�Aƒf�[ƒ^ƒx�[ƒX‚ðƒoƒbƒNƒAƒbƒv‚µ‚Ä‚­‚¾‚³‚¢�B +* —vŒ��F + * •Û‘¶�ê�Š�F�uƒhƒLƒ…ƒ�ƒ“ƒg�vƒtƒHƒ‹ƒ_ + * •Û‘¶‘Î�Û�FŒ»�Ý‚Ì�·•ªƒoƒbƒNƒAƒbƒv + * ƒoƒbƒNƒAƒbƒvƒtƒ@ƒCƒ‹–¼�Fbackup2_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql +* ’ñ�o•¨�F + * backup2_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql + +## ‰‰�K3 ƒŠƒXƒgƒA•Ò + +�¦’�ˆÓ�I�@Ž–‘O‚É�A‹¤—LƒtƒHƒ‹ƒ_‚ɕۑ¶‚µ‚½ƒoƒbƒNƒAƒbƒv‚ª‘¶�Ý‚·‚邱‚Æ�A“à—e‚ª•ςɂȂÁ‚Ä‚¢‚È‚¢‚©�i2‚‚̃oƒbƒNƒAƒbƒv‚ª“¯‚¶ƒtƒ@ƒCƒ‹ƒTƒCƒY‚ɂȂÁ‚Ä‚¢‚È‚¢‚©“™�jŠm”F‚µ‚Ä‚­‚¾‚³‚¢�B + +1. root‚Årezodb‚Ƀ�ƒOƒCƒ“‚µ�AˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðŽÀ�s‚µ‚Ä‚­‚¾‚³‚¢�B + SHOW TABLES FROM rezodb; + +2. ‚·‚ׂẴe�[ƒuƒ‹‚ð�í�œ‚µ‚Ü‚·�BˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ð�Aƒe�[ƒuƒ‹�”•ªŽÀ�s‚µ‚Ä‚­‚¾‚³‚¢�B + DROP TABLES <ƒe�[ƒuƒ‹–¼>; + +3. ƒf�[ƒ^ƒx�[ƒX‚ðƒŠƒXƒgƒA‚µ‚Ü‚·�B + \q‚Åmysql‚©‚甲‚¯�o‚µ�AˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðŽÀ�s‚µ‚Ü‚·�B + mysql -uroot -p rezodb < <‹¤—LƒtƒHƒ‹ƒ_‚ɕۑ¶‚µ‚½ƒtƒ‹ƒoƒbƒNƒAƒbƒv‚̃tƒ‹ƒpƒX> + +4. ƒŠƒXƒgƒA‚µ‚½ƒf�[ƒ^ƒx�[ƒX‚ªƒtƒ‹ƒoƒbƒNƒAƒbƒvŽž‚Ì‚à‚̂ɂȂÁ‚Ä‚¢‚é‚©Šm”F‚µ‚Ü‚·�B + user_table‚Ì“à—e‚ðŠm”F‚µ‚Ä‚­‚¾‚³‚¢�B + +5. �·•ªƒoƒbƒNƒAƒbƒv‚Ì“à—e‚ðƒŠƒXƒgƒA‚µ‚Ü‚·�B + \q‚Åmysql‚©‚甲‚¯�o‚µ�AˆÈ‰º‚̃Rƒ}ƒ“ƒh‚ðŽÀ�s‚µ‚Ü‚·�B + mysql -uroot -p rezodb < <‹¤—LƒtƒHƒ‹ƒ_‚ɕۑ¶‚µ‚½�·•ªƒoƒbƒNƒAƒbƒv‚̃tƒ‹ƒpƒX> + +6. ƒŠƒXƒgƒA‚µ‚½ƒf�[ƒ^ƒx�[ƒX‚ª�·•ªƒoƒbƒNƒAƒbƒvŽž‚Ì‚à‚̂ɂȂÁ‚Ä‚¢‚é‚©Šm”F‚µ‚Ü‚·�B + user_table‚Ì“à—e‚ðŠm”F‚µ‚Ä‚­‚¾‚³‚¢�B + +7. ŽÀŽ{Œã‚Ì‘SƒoƒbƒNƒAƒbƒv‚ð�ì�¬‚µ‚Ä‚­‚¾‚³‚¢�B +* —vŒ��F + * •Û‘¶�ê�Š�F�uƒhƒLƒ…ƒ�ƒ“ƒg�vƒtƒHƒ‹ƒ_ + * •Û‘¶‘Î�Û�Frezodb�u‚Ì‚Ý�v + * ƒoƒbƒNƒAƒbƒvƒtƒ@ƒCƒ‹–¼�Fbackup3_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql + * mysqldump‚̃IƒvƒVƒ‡ƒ“�F--flush-logs�A--lock-all-tables�A-u�A-p +* ’ñ�o•¨�F + * backup3_<“ú•t>_<–¼‘Oƒ��[ƒ}Žš1•¶Žš–Ú>-<–¼Žšƒ��[ƒ}Žš>.sql diff --git a/ã€�演習課題】 テーブル設計/テーブル設計演習.pdf b/ã€�演習課題】 テーブル設計/テーブル設計演習.pdf new file mode 100644 index 0000000..543266d Binary files /dev/null and b/ã€�演習課題】 テーブル設計/テーブル設計演習.pdf differ diff --git a/ã€�演習課題】 テーブル設計/社内SNSé™�定ã�®å‡ºé¡Œ/データベース課題.pptx b/ã€�演習課題】 テーブル設計/社内SNSé™�定ã�®å‡ºé¡Œ/データベース課題.pptx new file mode 100644 index 0000000..af21106 Binary files /dev/null and b/ã€�演習課題】 テーブル設計/社内SNSé™�定ã�®å‡ºé¡Œ/データベース課題.pptx differ diff --git a/ã€�演習課題】 テーブル設計/講師用README/ER図レビューãƒ�ェックãƒ�イント.txt b/ã€�演習課題】 テーブル設計/講師用README/ER図レビューãƒ�ェックãƒ�イント.txt new file mode 100644 index 0000000..929c3eb --- /dev/null +++ b/ã€�演習課題】 テーブル設計/講師用README/ER図レビューãƒ�ェックãƒ�イント.txt @@ -0,0 +1,30 @@ +�Eƒe�[ƒuƒ‹‚Ì’PˆÊ‚̑Ó–�« + ŠÇ—�‚·‚é’PˆÊ‚ª‘Ó–‚© + +�E�³‹K‰»‚̑Ó–�« + �³‹K‰»‚µ‚Ä‚¢‚éƒe�[ƒuƒ‹‚ɂ‚¢‚Ă͂»‚̑Ó–�«‚ɂ‚¢‚ÄŠm”F + ‚³‚ç‚È‚é‰ü‘P‚Ȃǂ ‚ê‚΃AƒhƒoƒCƒX + +�EŽåƒL�[‚̑Ó–�« + �EŽåƒL�[‚Å1�s‚ð“Á’è‚Å‚«‚Ä‚¢‚é‚© + �EƒTƒ�ƒQ�[ƒgƒL�[Žg‚Á‚Ă邩 + +�Eƒe�[ƒuƒ‹�E�€–Ú‚Ì�ô‚¢�o‚µ‘Ó–�« + �E‰æ–ʃŒƒCƒAƒEƒg‚É‘¶�Ý‚·‚é�€–Ú‚ªƒe�[ƒuƒ‹�€–Ú‚É‘¶�Ý‚·‚é‚© + �iˆê’v‚·‚é�€–Ú‚ª‚È‚­‚Ä‚à‘¼‚Ì�€–Ú‚©‚ç‰æ–Ê•\ަ‚É•Ò�W‚µ‚Ä•\ަ‚Å‚«‚é‚©�j + �E‹Æ–±ƒtƒ��[‚âŽd‘g‚Ý�ã‚Å•K—v‚È�î•ñ�i�€–Ú�j‚ª‘¶�Ý‚·‚é‚© + +�E�eŽqŠÖŒW‚̃e�[ƒuƒ‹‚ª�³‚µ‚­�ì�¬‚Å‚«‚Ä‚¢‚é‚© + ECƒTƒCƒg‚Ȃǂ͒�•¶ƒe�[ƒuƒ‹(’�•¶No)‚Æ’�•¶–¾�׃e�[ƒuƒ‹(’�•¶No,’�•¶–¾�×No)‚ª•K—v‚È�ê�‡‚ª‘½‚¢‚ª + �eŽqŠÖŒW‚ðŽv‚¢‚‚­‚͓̂‚­�A1ƒe�[ƒuƒ‹‚É‚µ‚Ä‚µ‚Ü‚¢�ç’·‚È�€–Ú‚ðŠÜ‚Þƒe�[ƒuƒ‹‚ɂȂÁ‚Ä‚µ‚Ü‚¤‚±‚Æ‚ª‘½‚¢ + +�EƒŠƒŒ�[ƒVƒ‡ƒ“�iŠO•”ƒL�[�j‚̑Ó–�« + +�E‘½�d“x(1‘Α½‚È‚Ç�j‚̑Ó–�« + +�Eƒf�[ƒ^Œ^‚⌅�”‚à�ݒ肵‚Ä‚¢‚é�ê�‡‚Í‚»‚ê‚ç‚̑Ó–�« + +�E‹àŠz�€–ڂɂ‚¢‚Ä‚Í�Á”ï�Å‚à�l—¶‚³‚ê‚Ä‚¢‚é‚© + +�E˜_—��í�œ�A•¨—��í�œ‚à�l—¶‚³‚ê‚Ä‚¢‚邯�®—Ç‚¢ + diff --git a/ã€�演習課題】 テーブル設計/講師用README/テーブル設計演習.md b/ã€�演習課題】 テーブル設計/講師用README/テーブル設計演習.md new file mode 100644 index 0000000..3e3347e --- /dev/null +++ b/ã€�演習課題】 テーブル設計/講師用README/テーブル設計演習.md @@ -0,0 +1,66 @@ +# テーブル設計演習 + +### 演習目的 + +- 具体的ã�ªã‚·ã‚¹ãƒ†ãƒ ã�®è¦�件をテーブル設計ã�«è�½ã�¨ã�—込む手順を体験ã�—å­¦ã�¶ +- æ­£è¦�化ã�®æ‰‹é †ã�®ç¢ºèª�を行ã�† +- 本演習をã�¨ã�Šã�—ã�¦ä»¥ä¸‹ã�®ã‚ˆã�†ã�ªãƒ“ジãƒ�ススキルもå�ˆã‚�ã�›ã�¦å­¦ç¿’ + - ç´�期ã�®é‡�è¦�ã�• + - 調査力 + + + +### å•�題 + +身近ã�ªã‚·ã‚¹ãƒ†ãƒ ï¼ˆSNSã€�ECサイト等ã�ªã‚“ã�§ã‚‚)ã�Œã€�ã�©ã‚“ã�ªãƒ†ãƒ¼ãƒ–ル構造ã�«ã�ªã�£ã�¦ã�„ã‚‹ã�‹è€ƒã�ˆã�¦è¨­è¨ˆã�—ã�¦ã��ã� ã�•ã�„。 + * 大è¦�模ã�ªã‚·ã‚¹ãƒ†ãƒ ã�®ãƒ†ãƒ¼ãƒ–ル設計を一日ã�§è€ƒã�ˆã‚‹ã�®ã�¯ç„¡ç�†ã�ªã�®ã�§ã€�範囲(スコープ)を制é™�ã�—ã�¦ä½œæˆ�ã�—ã�¦ã��ã� ã�•ã�„。 + * 以下ã�®æ�¡ä»¶ã‚’満ã�Ÿã�™ã‚‚ã�®ã‚’作æˆ�ã�—ã�¦ã��ã� ã�•ã�„。 + * テーブルã�¯2ã�¤ä»¥ä¸Šã�«ã�™ã‚‹ã�“ã�¨ + * è«–ç�†å��ã€�物ç�†å��ã€�データ型ã€�サイズã€�主キーをã�—ã�£ã�‹ã‚Šå®šç¾©ã�™ã‚‹ã�“ã�¨ + * 関係性(リレーションã�¨ã‚«ãƒ¼ãƒ‡ã‚£ãƒŠãƒªãƒ†ã‚£(多é‡�度))も記載ã�™ã‚‹ã�“ã�¨ + + + +### 作業ã�®é€²ã‚�æ–¹ + +- 題æ��を決ã‚�ã�¦ã€�作æˆ�ã�™ã‚‹ç¯„囲(スコープ)を決定ã�™ã‚‹ã€‚ +- ã�©ã‚“ã�ªç”»é�¢ï¼ˆæ©Ÿèƒ½ï¼‰æ§‹æˆ�ã�«ã�ªã�£ã�¦ã�„ã‚‹ã�‹æ´—ã�„出ã�™ã€‚ +- 実際ã�®ã‚·ã‚¹ãƒ†ãƒ ã�®ç”»é�¢é …目や仕組ã�¿ã�‹ã‚‰æƒ³å®šã�—ã�¦ã€�å¿…è¦�ã�ªé …目を列挙 +- æ§‹æˆ�を図ã�«ã�Šã�“ã�™ + - ã�§ã��ã‚‹ã� ã�‘æ­£è¦�化を行ã�£ã�¦ã��ã� ã�•ã�„ + - テーブル間ã�®é–¢ä¿‚性を考慮ã�—ã�¾ã�—ょã�† + - ER図ã�®è¨˜è¼‰ãƒ«ãƒ¼ãƒ«ã‚’æ„�è­˜ã�—ã�¦ã��ã� ã�•ã�„ + +※途中ã�§è³ªå•�ã‚‚å�—ã�‘付ã�‘ã�¾ã�™ã€‚ + +**ï¼�ï¼�タイムマãƒ�ジメントã�—ã�¾ã�—ょã�†ï¼�ï¼�** + + + +### æ��出物 + +ER図(ファイル形å¼�ã�¯è‡ªç”±ï¼‰ + +- æ��出時間ã�¯åŽ³å®ˆã�—ã�¦ã��ã� ã�•ã�„。 + + 万ã�Œä¸€é–“ã�«å�ˆã‚�ã�ªã�„å ´å�ˆã�¯ã€�ã‚�ã�‹ã�£ã�Ÿæ™‚点ã�§ã�™ã��ã�«å ±å‘Šã�—ã�¦ã��ã� ã�•ã�„。 + + ã��ã�®éš›ã�«ã€�é�…å»¶ç�†ç”±ãƒ»ã�„ã�¤ã�¾ã�§ã�«æ��出å�¯èƒ½ã�‹ã‚‚報告ã�—ã�¦ã��ã� ã�•ã�„。 + + æ��出時間ã�®ç›´å‰�ã‚„é�Žã�Žã�¦ã�‹ã‚‰ã�®å ±å‘Šã�§ã�¯é�…ã�™ã�Žã�¾ã�™ã€‚ + +- ç´™ã�§æ›¸ã�„ã�Ÿå ´å�ˆã€�写真撮ã�£ã�¦æ��出ã�§ã‚‚良ã�„ã�§ã�™ã€‚ + +- A5:SQL Mk-2ã�¨ã�„ã�£ã�ŸDBã�®GUIツールã�®ER図作æˆ�機能も使ã�„ã‚„ã�™ã�„ã�§ã�™ã€‚ + + + +### 発表 + +æ��出後ã€�グループ毎ã�«ç™ºè¡¨ï¼ˆæ¦‚è¦�説明)をã�Šé¡˜ã�„ã�—ã�¾ã�™ã€‚ + + + +### ã��ã�®ä»– + +休憩ã�¯å�„グループã�”ã�¨ã�«é�©å®œã�¨ã�£ã�¦ã��ã� ã�•ã�„。 \ No newline at end of file diff --git a/ã€�演習課題】 テーブル設計/講師用README/講師用README.txt b/ã€�演習課題】 テーブル設計/講師用README/講師用README.txt new file mode 100644 index 0000000..c1bbd15 --- /dev/null +++ b/ã€�演習課題】 テーブル設計/講師用README/講師用README.txt @@ -0,0 +1,15 @@ +�uŽt—pREADME +1. �o‘è‚ɂ‚¢‚Ä + �¡Šî–{“I‚ɂ͈ȉº‚ð�o‘è‚·‚é + �@�y‰‰�K‰Û‘è�z ƒe�[ƒuƒ‹�ÝŒv�„ƒe�[ƒuƒ‹�ÝŒv‰‰�K.pdf + + �¡ƒVƒXƒeƒ€‚ðŒÀ’肵‚½‚¢�i“ïˆÕ“x‚𑵂¦‚½‚¢�j�ê�‡‚͈ȉº‚ð�o‘è + �@�y‰‰�K‰Û‘è�z ƒe�[ƒuƒ‹�ÝŒv�„ŽÐ“àSNSŒÀ’è‚Ì�o‘è�„ƒf�[ƒ^ƒx�[ƒX‰Û‘è.pptx + +2. ”­•\‚ðŽó‚¯‚ătƒB�[ƒhƒoƒbƒN‚·‚é�ۂ̃`ƒFƒbƒNƒ|ƒCƒ“ƒg + ER�}ƒŒƒrƒ…�[ƒ`ƒFƒbƒNƒ|ƒCƒ“ƒg.txtŽQ�Æ + �¦‘¼‚É‚àƒ`ƒFƒbƒNƒ|ƒCƒ“ƒg‚ ‚ê‚ΒljÁ‚µ‚Ä‚­‚¾‚³‚¢�B + +3. �o‘èPDF‚Ì�C�³‚ɂ‚¢‚Ä + ‚±‚̃tƒ@ƒCƒ‹‚Æ“¯‚¶ƒfƒBƒŒƒNƒgƒŠ‚É‚ ‚é�uƒe�[ƒuƒ‹�ÝŒv‰‰�K.md�vƒtƒ@ƒCƒ‹‚ð�C�³‚µ�APDF‚ɕϊ· + �iTypora“™‚ÌMarkdownƒGƒfƒBƒ^‚ðŽg‚Á‚Ä�j \ No newline at end of file diff --git a/ã€�ç·´ç¿’å•�題】 SQL/Question1/MySQL_Questions1.html b/ã€�ç·´ç¿’å•�題】 SQL/Question1/MySQL_Questions1.html new file mode 100644 index 0000000..bccdf20 --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】 SQL/Question1/MySQL_Questions1.html @@ -0,0 +1,514 @@ + + + +MySQL SQLå•�題集1 + + + + + + + + + + + +

MySQL SQL�題集 part1

+

基礎DDL, DML練習

+

MySQL SQL�題集 part2

+

�1 テーブル作�

+

図�よ��テーブルを作�������。

+

テーブル�

+

book_table

+

カラム

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
物�カラム�論�カラム�型
book_id書�IDINT
book_name書��VARCHAR(50)
author_name著者VARCHAR(50)
price価格INT
sales_flag販売有無INT
+

�2 データ挿入

+

作���テーブル�以下�データを追加������

+

データ

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
book_idbook_nameauthor_namepricesales_flag
10001TwoPeace三田英一郎4201
10002�探�金田二�山��や4601
20001��ゃ�冬目漱岩4601
30001西方見�録�明10001
40010�輩�犬��る冬目漱岩4201
+

図1

+

�3 カラム指定データ抽出

+

全データ�書���著者���を表示������

+

図2

+

�4 データ更新

+

書�ID「30001��データ�著者を「マール�コー��ロ���販売有無を「0��修正������

+

図3

+

�5 �件付�データ抽出

+

販売有無�1�レコードを表示������

+

図4

+

�6 複数�件データ抽出

+

著者��「冬目漱岩���価格�「420��データを表示������

+

図5

+

�7 データ削除

+

書�ID「20001��データを削除������

+

図6

+ + + diff --git a/�練習�題】 SQL/Question2/MySQL_Questions2.html b/�練習�題】 SQL/Question2/MySQL_Questions2.html new file mode 100644 index 0000000..875e828 --- /dev/null +++ b/�練習�題】 SQL/Question2/MySQL_Questions2.html @@ -0,0 +1,649 @@ + + + +MySQL SQL�題集2 + + + + + + + + + + +

MySQL SQL�題集 part2

+

SQL応用

+

MySQL SQL�題集 part1

+

�1 テーブル作�

+

図�よ��テーブルを作����データを登録������。

+

テーブル�

+

item_category

+

カラム

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
物�カラム�論�カラム�型主キーNOT NULL��他
category_idカテゴリIDINT〇自動採番
category_nameカテゴリ�VARCHAR(256)〇
+

図1

+

�2 テーブル作�

+

図�よ��テーブルを作����データを登録������。

+

テーブル�

+

items

+

カラム

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
物�カラム�論�カラム�型主キー外部キーNOT NULL��他
item_idアイテムIDINT〇自動採番
nameアイテム�VARCHAR(256)〇
price価格INT〇
category_idカテゴリIDINTitem_category�category_id
+

図2

+

�3 SELECT文作�

+

図�よ��検索�果��るSQLを作�������。

+ + + + + + + + + + + + + + + + + +
�件
itemsテーブル�item_categoryテーブルを��
category_id�カラム�一個����出�����
+

図3

+

※A5SQLを使用��場��図���表示��り��ん。��場��一番���カラム��name_1�構���ん。

+ +

�4 SELECT文作�

+

図�よ��検索�果��るSQLを作�������。

+ + + + + + + + + + + + + + +
�件
priceを低�⇒高��並���る
+

図4

+

※A5SQLを使用��場��図���表示��り��ん。��場��一番���カラム��name_1�構���ん。

+ +

�5 SELECT文作�

+

図�よ��検索�果��るSQLを作�������。

+ + + + + + + + + + + + + + +
�件
カテゴリ�家具�データ��抽出
+

図5

+

※A5SQLを使用��場��図���表示��り��ん。��場��一番���カラム��name_1�構���ん。

+ +

�6 SELECT文作�

+

図�よ��検索�果��るSQLを作�������。

+ + + + + + + + + + + + + + +
�件
金��1,000円�ら50,000円�も���抽出
+

図6

+

※A5SQLを使用��場��図���表示��り��ん。��場��一番���カラム��name_1�構���ん。

+ +

�7 SELECT文作�

+

図�よ��検索�果��るSQLを作�������。

+ + + + + + + + + + + + + + + + + +
�件
items�レコード数を抽出
別�を���抽出
+

図7

+

�8 SELECT文作�

+

図�よ��検索�果��るSQLを作�������。

+ + + + + + + + + + + + + + + + + +
�件
items内�一番価格�高�レコードを抽出
サブクエリを使���
+

図8

+

※A5SQLを使用��場��図���表示��り��ん。��場��一番���カラム��name_1�構���ん。

+ +

�9 SELECT文作�

+

図�よ��検索�果��るSQLを作�������。

+ + + + + + + + + + + + + + +
�件
name�ら「��を�むも���抽出
+

図9

+

※A5SQLを使用��場��図���表示��り��ん。��場��一番���カラム��name_1�構���ん。

+ + + diff --git a/�練習�題】 SQL/Question2/�+α】ER図/MySQL_question3.a5er b/�練習�題】 SQL/Question2/�+α】ER図/MySQL_question3.a5er new file mode 100644 index 0000000..dfe3b02 --- /dev/null +++ b/�練習�題】 SQL/Question2/�+α】ER図/MySQL_question3.a5er @@ -0,0 +1,214 @@ +# A5:ER FORMAT:13 +# A5:ER ENCODING:UTF8 +# A5:ER Mk-1 Copyright (C)2007 m.matsubara +# A5:SQL Mk-2 Copyright (C)1997 m.matsubara +# https://a5m2.mmatsubara.com + +[Manager] +ProjectName= +Author= +MaxEntityRowShow=1000 +ReadOnlyRecommend=0 +Page=Main +PageInfo="Main",2,"A3Landscape",$FFFFFF +LogicalView=1 +DecodeDomain=0 +ViewModePageIndividually=1 +ViewMode=2 +ViewFormat=0 +UseNondependenceDashLine=0 +FontName=Tahoma +FontSize=6 +PaperSize=A4Landscape +HeaderLeft= +HeaderCenter= +HeaderRight= +FooterLeft= +FooterCenter= +FooterRight= +ShowPageoutRelation=1 +DefaultPkName=%0:s_PKC +DefaultPkIndexName=%0:s_PKI +DefaultIndexName=%0:s_IX%1:d +DefaultFkName=%0:s_FK%1:d +SqlSeparator=0 +ShowTag=1 +ShowCommonAttributes=0 + +[Entity] +PName=item_category +LName=カテゴリテーブル +Comment= +TableOption= +Page=Main +Left=50 +Top=50 +Field="カテゴリID","category_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,"" +Field="カテゴリ�","name","varchar(256)","NOT NULL",,"","",$FFFFFFFF,"" +Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除�1:削除済",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +Position="Main",50,50 +ZOrder=8 + +[Entity] +PName=items +LName=商�テーブル +Comment= +TableOption= +Page=Main +Left=350 +Top=50 +Field="商�ID","item_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,"" +Field="商��","name","varchar(255)","NOT NULL",,"","",$FFFFFFFF,"" +Field="価格","price","int","NOT NULL",,"","",$FFFFFFFF,"" +Field="カテゴリID","category_id","int",,,"","",$FFFFFFFF,"" +Field="販売有無","is_sale","char(1)","NOT NULL",,"\q1\q","1:販売中�0:販売無",$FFFFFFFF,"" +Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除�1:削除済",$FFFFFFFF,"" +Index=fk_categoryid=0,category_id +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +Position="Main",350,50 +ZOrder=7 + +[Entity] +PName=order_items +LName=注文商�テーブル +Comment= +TableOption= +Page=Main +Left=650 +Top=50 +Field="注文ID","order_id","int","NOT NULL",0,"","",$FFFFFFFF,"" +Field="商�ID","item_id","int","NOT NULL",1,"","",$FFFFFFFF,"" +Field="注文数","quantity","int",,,"","",$FFFFFFFF,"" +Index=fk_itemid=0,item_id +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +Position="Main",650,50 +ZOrder=6 + +[Entity] +PName=orders +LName=注文テーブル +Comment= +TableOption= +Page=Main +Left=950 +Top=50 +Field="注文ID","order_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,"" +Field="ユーザID","user_id","int","NOT NULL",,"","",$FFFFFFFF,"" +Field="注文日時","order_time","datetime","NOT NULL",,"","",$FFFFFFFF,"" +Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除�1:削除済",$FFFFFFFF,"" +Index=fk_userid=0,user_id +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +Position="Main",950,50 +ZOrder=5 + +[Entity] +PName=users +LName=ユーザテーブル +Comment= +TableOption= +Page=Main +Left=1250 +Top=50 +Field="ユーザID","user_id","int auto_increment","NOT NULL",0,"","",$FFFFFFFF,"" +Field="ユーザ�","name","varchar(15)","NOT NULL",,"","",$FFFFFFFF,"" +Field="パスワード","password","varchar(50)","NOT NULL",,"","",$FFFFFFFF,"" +Field="年齢","age","int",,,"","",$FFFFFFFF,"" +Field="削除フラグ","is_del","char(1)","NOT NULL",,"\q0\q","0:未削除�1:削除済",$FFFFFFFF,"" +EffectMode=None +Color=$000000 +BkColor=$FFFFFF +Position="Main",1250,50 +ZOrder=4 + +[Relation] +Entity1=items +Entity2=order_items +RelationType1=1 +RelationType2=3 +Fields1=item_id +Fields2=item_id +Cardinarity1= +Cardinarity2= +Position="MAIN",0,500,9500,500,R,R +Dependence=1 +Caption= +PName= +LineMode=0 +Bar1=50 +Bar2=950 +Bar3=50 +TermPos1=R +TermPos2=R +ZOrder=1 + +[Relation] +Entity1=users +Entity2=orders +RelationType1=1 +RelationType2=3 +Fields1=user_id +Fields2=user_id +Cardinarity1= +Cardinarity2= +Position="MAIN",0,500,9500,625,R,R +Dependence=0 +Caption= +PName= +LineMode=0 +Bar1=50 +Bar2=950 +Bar3=62 +TermPos1=R +TermPos2=R +ZOrder=0 + +[Relation] +Entity1=item_category +Entity2=items +RelationType1=1 +RelationType2=3 +Fields1=category_id +Fields2=category_id +Cardinarity1= +Cardinarity2= +Position="MAIN",0,500,9500,500,R,R +Dependence=0 +Caption= +PName= +LineMode=0 +Bar1=50 +Bar2=950 +Bar3=50 +TermPos1=R +TermPos2=R +ZOrder=3 + +[Relation] +Entity1=orders +Entity2=order_items +RelationType1=1 +RelationType2=3 +Fields1=order_id +Fields2=order_id +Cardinarity1= +Cardinarity2= +Position="MAIN",0,500,9500,667,R,R +Dependence=1 +Caption= +PName= +LineMode=0 +Bar1=50 +Bar2=950 +Bar3=67 +TermPos1=R +TermPos2=R +ZOrder=2 diff --git a/�練習�題】 SQL/Question2/�+α】MySQL_Questions2.html b/�練習�題】 SQL/Question2/�+α】MySQL_Questions2.html new file mode 100644 index 0000000..758c424 --- /dev/null +++ b/�練習�題】 SQL/Question2/�+α】MySQL_Questions2.html @@ -0,0 +1,428 @@ + + + +�+α】MySQL_Questions2.md + + + + + + + + + + +

MySQL SQL�題集 part2+α

+

���件 +SQLフォルダ��るSQLファイル�内容を���実行���る��

+

�1 SELECT文作�

+

商�一覧を表示

+

図1

+

�2 SELECT文作�

+

注文一覧を表示

+

図2

+

�3 SELECT文作�

+

�注文毎��計�を表示

+

図3

+

�4 SELECT文作�

+

月別注文数を表示

+

図4

+

�5 SELECT文作�

+

年別注文数を表示

+

図5

+

�6 SELECT文作�

+

全体�売上を表示

+

図8

+

�7 SELECT文作�

+

カテゴリ別売上�を表示

+

図7

+

�8 SELECT文作�

+

商�別売上�を表示

+

図6

+

�9 SELECT文作�

+

�カテゴリ�構�比を表示

+
※構�比 +�る項目�全体�対���れ�ら�����る��割���。 + +計算�:カテゴリー�計� ÷ 全体�売上高 +
+

図9

+

�1� SELECT文作�

+

�商�別�構�比を表示

+

図10

+ + + diff --git a/�練習�題】 SQL/Question2/�+α】SQL/MySQL_question2.sql b/�練習�題】 SQL/Question2/�+α】SQL/MySQL_question2.sql new file mode 100644 index 0000000..6d76a65 --- /dev/null +++ b/�練習�題】 SQL/Question2/�+α】SQL/MySQL_question2.sql @@ -0,0 +1,114 @@ +DROP TABLE IF EXISTS order_items; +DROP TABLE IF EXISTS orders; +DROP TABLE IF EXISTS items; +DROP TABLE IF EXISTS item_category; +DROP TABLE IF EXISTS users; + +CREATE TABLE users( + user_id INT PRIMARY KEY AUTO_INCREMENT COMMENT 'ユーザID' + , name VARCHAR (15) NOT NULL COMMENT 'ユーザ�' + , password VARCHAR (50) NOT NULL COMMENT 'パスワード' + , age INT COMMENT '年齢' + , is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除�1:削除済' +) +default charset=utf8 +COMMENT 'ユーザテーブル'; + +CREATE TABLE item_category( + category_id INT AUTO_INCREMENT PRIMARY KEY COMMENT 'カテゴリID' + , name VARCHAR (256) NOT NULL COMMENT 'カテゴリ�' + , is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除�1:削除済' +) +default charset=utf8 +COMMENT 'カテゴリテーブル'; + +CREATE TABLE items( + item_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '商�ID' + , name VARCHAR (255) NOT NULL COMMENT '商��' + , price INT NOT NULL COMMENT '価格' + , category_id INT COMMENT 'カテゴリID' + , is_sale CHAR (1) NOT NULL DEFAULT '1' COMMENT '販売有無:1:販売中�0:販売無' + , is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除�1:削除済' + , FOREIGN KEY fk_categoryid(category_id) REFERENCES item_category(category_id) +) +default charset=utf8 +COMMENT '商�テーブル'; + +CREATE TABLE orders( + order_id INT PRIMARY KEY AUTO_INCREMENT COMMENT '注文ID' + , user_id INT NOT NULL COMMENT 'ユーザID' + , order_time DATETIME NOT NULL COMMENT '注文日時' + , is_del CHAR (1) NOT NULL DEFAULT '0' COMMENT '削除フラグ:0:未削除�1:削除済' + , FOREIGN KEY fk_userid(user_id) REFERENCES users(user_id) +) +default charset=utf8 +COMMENT '注文テーブル'; + +CREATE TABLE order_items( + order_id INT COMMENT '注文ID' + , item_id INT COMMENT '商�ID' + , quantity INT COMMENT '注文数' + , PRIMARY KEY (order_id, item_id) + , FOREIGN KEY fk_orderid(order_id) REFERENCES orders(order_id) + , FOREIGN KEY fk_itemid(item_id) REFERENCES items(item_id) +) +default charset=utf8 +COMMENT '注文商�テーブル'; + + +INSERT INTO users (name, password, age) VALUES ('三浦知一','KfCQDjiZ', 53); +INSERT INTO users (name, password, age) VALUES ('�藤�','V3mngzMP', 40); +INSERT INTO users (name, password, age) VALUES ('柴崎学','XktKCvCx', 27); +INSERT INTO users (name, password, age) VALUES ('本田啓介','bSCebKnP', 33); +INSERT INTO users (name, password, age) VALUES ('花�真�','xKetmAcH', 30); + +INSERT INTO item_category (name) VALUES ('家具'); +INSERT INTO item_category (name) VALUES ('飲料'); +INSERT INTO item_category (name) VALUES ('食�'); + +INSERT INTO items (name, price, category_id) VALUES ('ローマ�テーブル', 150000, 1); +INSERT INTO items (name, price, category_id) VALUES ('�ー�るー�2000 500ml', 370, 2); +INSERT INTO items (name, price, category_id) VALUES ('原始肉', 2500, 3); +INSERT INTO items (name, price, category_id) VALUES ('魅惑�椅�', 100000, 1); +INSERT INTO items (name, price, category_id) VALUES ('�八茶 600ml', 110, 1); +INSERT INTO items (name, price, category_id) VALUES ('��匂���るドリアン', 5000, 3); +INSERT INTO items (name, price, category_id) VALUES ('太平洋�水 550ml', 300, 2); +INSERT INTO items (name, price, category_id) VALUES ('���ら膨らむガム', 200, 3); +INSERT INTO items (name, price, category_id) VALUES ('人を����るソファー', 10000, 1); +INSERT INTO items (name, price, category_id) VALUES ('人を虜��る�酒', 20000, 2); +INSERT INTO items (name, price, category_id) VALUES ('新鮮キャベツ', 1000, 3); + +INSERT INTO orders (user_id, order_time) VALUES (1, '2015-02-22 12:00:00'); +INSERT INTO orders (user_id, order_time) VALUES (4, '2015-12-01 15:30:00'); +INSERT INTO orders (user_id, order_time) VALUES (3, '2018-03-20 18:45:00'); +INSERT INTO orders (user_id, order_time) VALUES (2, '2018-05-11 11:28:00'); +INSERT INTO orders (user_id, order_time) VALUES (5, '2018-09-30 10:50:00'); +INSERT INTO orders (user_id, order_time) VALUES (1, '2018-09-12 20:13:00'); +INSERT INTO orders (user_id, order_time) VALUES (4, '2018-09-15 21:34:00'); +INSERT INTO orders (user_id, order_time) VALUES (1, '2019-05-06 16:00:00'); +INSERT INTO orders (user_id, order_time) VALUES (3, '2019-12-20 10:39:00'); +INSERT INTO orders (user_id, order_time) VALUES (2, '2020-01-01 14:11:00'); + +INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 2, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 6, 10); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 7, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (1, 11, 10); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (2, 4, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (3, 9, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (4, 7, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (4, 8, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 2, 7); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 3, 5); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 10, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 11, 5); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 5, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (5, 7, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (6, 8, 10); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (7, 4, 2); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (8, 1, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (8, 9, 1); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (9, 3, 4); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (9, 5, 2); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (9, 8, 10); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (10, 1, 2); +INSERT INTO order_items (order_id, item_id, quantity) VALUES (10, 10, 2); \ No newline at end of file diff --git a/�練習�題】 SQL/Question3/MySQL_Questions3.html b/�練習�題】 SQL/Question3/MySQL_Questions3.html new file mode 100644 index 0000000..0e9d620 --- /dev/null +++ b/�練習�題】 SQL/Question3/MySQL_Questions3.html @@ -0,0 +1,463 @@ + + + +MySQL_Questions3.md + + + + + + + + + + +

MySQL SQL�題集 part3

+

���件

+

�1 テーブル作�

+

データ定義�沿���テーブル��レコードを作�������。

+
    +
  1. データ型�関����入力�れ��るデータを元�推測���定������
  2. +
  3. 主キー�必�全��テーブル�設定������ +※��項目を主キー��る��考��設定��������
  4. +
  5. 主キー以外�制約�関�������ん
  6. +
+

�2 データ抽出

+

1�作���テーブルデータを元�以下�SQLを組�立���ょ�。 +基本的��設�毎�1回�SQL�実��能�形�������。 +�る��少��回数�������済むよ����������。

+

2.1. 以下�データを�得�るSQLを作�����。

+
    +
  1. +

    商�一覧��在庫数を�得�るSQL

    +
  2. +
  3. +

    顧客情報�クレジットカード情報を表示�るSQL +※ クレジットカードを登録�����顧客��クレジット情報をNULL�表示��る +※ ホームページ���表示��るよ��性別���コード値��種マスタ�ら�称を�得�るよ��

    +
  4. +
  5. +

    入庫予定�商�一覧�予定日�入庫先倉庫を表示�るSQL +※入庫予定��入庫TBL�完了日�入�����も�を指�

    +
  6. +
+

2.2. 顧客ID:CU00000002(高橋)�ら�注�以下�よ��注文�入��

+
    +
  • +

    商�ID・ITM0000002を100個�ITM0000005を90個

    +
  • +
  • +

    銀行振り込���注日�2014/12/4 +※ ��システム���以下�よ��仕様�データを登録�る�������る

    +
      +
    • 出è�·äºˆå®šæ—¥ã�¯å�„商å“�ã�®å…¥åº«ã�Œå®Œäº†æ¬¡ç¬¬å‡ºè�·
    • +
    • 到ç�€æ—¥ã�¯æœªå®šã�®ç‚ºã€�null +
        +
      • ステータスã�¯å�—注完了
      • +
      • 金é¡�ã€�消費税ã�¯ç�¾ãƒžã‚¹ã‚¿æƒ…報をå�‚ç…§ã�—ã�¦å‰²ã‚Šå‡ºã�™ã�“ã�¨
      • +
      • é…�é€�æ–™ã�¯ä¸€å¾‹ã�§ \1,836
      • +
      +
    • +
    +

    ��場��下記�よ��仕様�登録�る必���る���れ�れ�ん�SQL�必���る�。SQLを作�����

    +
      +
    1. +

      シーケンス�オーダーNOを採番

      +
    2. +
    3. +

      注文情報テーブル�基本情報��登録�る。他�項目�NULL

      +
    4. +
    5. +

      商��注文数�注文時�価格を登録

      +
    6. +
    7. +

      �注日�税率を�ェック�����ら消費税を計算�更新

      +
    8. +
    9. +

      注文数�商��在庫を判定

      +
        +
      1. 在庫��れ��在庫を引当�後�発注手続��
      2. +
      3. 在庫�無�れ��ステータスを入�待���入庫予定を�ェック��入庫数�在庫数を����注文数�足り��る�判定 +a.入庫数+在庫数�注文数�足り��れ�入庫�れ�日を出�予定日� +b.入庫数+在庫数�注文数�足り�居��れ�null���
      4. +
      +
    10. +
    +
  • +
+ + + diff --git a/�練習�題】 SQL/Question3/データ定義.files/filelist.xml b/�練習�題】 SQL/Question3/データ定義.files/filelist.xml new file mode 100644 index 0000000..27015e7 --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/filelist.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/�練習�題】 SQL/Question3/データ定義.files/sheet001.htm b/�練習�題】 SQL/Question3/データ定義.files/sheet001.htm new file mode 100644 index 0000000..dda39e3 --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/sheet001.htm @@ -0,0 +1,358 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Žx•¥ƒVƒnƒ‰ƒCŽí•ʃVƒ…ƒxƒcƒ}ƒXƒ^�[pay_div_m
Žx•¥ƒVƒnƒ‰ƒC•ª—Þƒuƒ“ƒ‹ƒCƒR�[ƒhŽx•¥ƒVƒnƒ‰ƒC•ª—Þƒuƒ“ƒ‹ƒC–¼ƒ�ƒC
pay_div_cdpay_div_nm
PY001ƒNƒŒƒWƒbƒgƒJ�[ƒh
PY002‹â�sƒMƒ“ƒRƒE�Uƒt�žƒR
PY003ƒRƒ“ƒrƒjŒˆ�σPƒbƒTƒC
PY004‘ãˆøƒ_ƒCƒr
�«•ʃZƒCƒxƒcƒ}ƒXƒ^gender_m
�«•ʃZƒCƒxƒcƒR�[ƒh�«•ʃZƒCƒxƒc•ª—Þƒuƒ“ƒ‹ƒC–¼ƒ�ƒC
gender_cdgender_div_nm
J0’j�«ƒ_ƒ“ƒZƒC
J1�—�«ƒWƒ‡ƒZƒC
J9‚»‚Ì‘¼ƒ^
ƒNƒŒƒWƒbƒgƒJ�[ƒh•ª—Þƒuƒ“ƒ‹ƒCcredit_div_m
ƒJ�[ƒh•ª—Þƒuƒ“ƒ‹ƒCƒR�[ƒhƒJ�[ƒh•ª—Þƒuƒ“ƒ‹ƒC–¼ƒ�ƒC
credit_div_cdcredit_div_nm
CD001VISA
CD002JCB
CD003Master
CD004AMERICAN EXPRESS
�¤•iƒVƒ‡ƒEƒqƒ“•ª—Þƒuƒ“ƒ‹ƒCƒ}ƒXƒ^goods_div_m
�¤•iƒVƒ‡ƒEƒqƒ“•ª—Þƒuƒ“ƒ‹ƒCƒR�[ƒh�¤•iƒVƒ‡ƒEƒqƒ“•ª—Þƒuƒ“ƒ‹ƒC–¼ƒ�ƒC
goods_div_cdgoods_div_nm
K0001“ú—p•iƒjƒ`ƒˆƒEƒqƒ“
K0002ƒpƒ\ƒRƒ“�EƒIƒtƒBƒX—p•iƒˆƒEƒqƒ“
K0003ƒXƒ|�[ƒc�•ƒAƒEƒgƒhƒA
K0004ƒJ�[—p•iƒˆƒEƒqƒ“
K0005�H—¿•iƒVƒ‡ƒNƒŠƒ‡ƒEƒqƒ“
K0006‰Æ“dƒJƒfƒ“
K0007ƒtƒ@ƒbƒVƒ‡ƒ“
K0008ŒâŠyƒSƒ‰ƒN
�Á”ï�ŃVƒ‡ƒEƒqƒ[ƒCƒ}ƒXƒ^tax_m
“K—pƒeƒLƒˆƒE”NŒŽ“úƒlƒ“ƒKƒbƒs�Å—¦ƒ[ƒCƒŠƒc�i�“�j
app_datetax_rate
1989/4/13
1997/4/15
2014/4/18
2019/10/110
’�•¶ƒ`ƒ…ƒEƒ‚ƒ“ƒXƒe�[ƒ^ƒXorder_sts_m
ƒXƒe�[ƒ^ƒXƒR�[ƒhƒXƒe�[ƒ^ƒX
sts_cdsts
ST001Žó’�ƒWƒ…ƒ`ƒ…ƒEŠ®—¹ƒJƒ“ƒŠƒ‡ƒE
ST002“ü‰×ƒjƒ…ƒEƒJ‘Òƒ}
ST003”­‘—ƒnƒbƒ\ƒE�€”õƒWƒ…ƒ“ƒr
ST004”z‘—ƒnƒCƒ\ƒE’†ƒ`ƒ…ƒE
ST010‚¨‹q—lƒLƒƒƒNƒTƒ}ŽóŽæƒEƒPƒgƒŠ�σY
ST999ƒLƒƒƒ“ƒZƒ‹
+ + + + diff --git a/�練習�題】 SQL/Question3/データ定義.files/sheet002.htm b/�練習�題】 SQL/Question3/データ定義.files/sheet002.htm new file mode 100644 index 0000000..a2486a7 --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/sheet002.htm @@ -0,0 +1,803 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ŒÚ‹qƒRƒLƒƒƒNƒ}ƒXƒ^user_m
ŒÚ‹qƒRƒLƒƒƒNIDŽ�ƒVŽ�ƒVƒJƒi–¼ƒ�ƒC–¼ƒ�ƒCƒJƒi�¶”NƒZƒCƒlƒ“ŒŽ“úƒKƒbƒs�«•ʃZƒCƒxƒcƒ��[ƒ‹ƒAƒhƒŒƒX—X•Ö”Ô�†ƒ†ƒEƒrƒ“ƒoƒ“ƒSƒEŒ§–¼ƒPƒ“ƒ�ƒCŽs‹æƒVƒN’¬‘ºƒ`ƒ‡ƒEƒ\ƒ“’¬ˆæƒ`ƒ‡ƒEƒCƒL�Z�ŠƒWƒ…ƒEƒVƒ‡Œš•¨ƒ^ƒeƒ‚ƒm–¼ƒ�ƒC“d˜bƒfƒ“ƒ�”Ô�†ƒoƒ“ƒSƒEƒpƒXƒ��[ƒh
user_iduser_f_nmuser_f_nm_knuser_nmuser_nm_knuser_birthgender_cdmail_addressuser_post_nouser_prefecture_nmuser_municipality_nmuser_city_nmuser_addressuser_building_nmuser_tel_nouser_passwd
CU00000001ŽR“cƒ„ƒ}ƒ_ƒ„ƒ}ƒ_ˆêƒnƒWƒ�ƒnƒWƒ�1973/06/06J0h.yamada@hoge.com140-0014“Œ‹ž“sƒgƒEƒLƒ‡ƒEƒg•i�ì‹æƒVƒiƒKƒ�ƒN‘åˆäƒIƒIƒC�›�›-�›ƒ}ƒ“ƒVƒ‡ƒ“‚P‚R‚X‚X090-xxxx-xxxxhX8UEzE8
CU00000002�‚‹´ƒ^ƒJƒnƒVƒ^ƒJƒnƒV—´ƒŠƒ…ƒE–烄ƒ^ƒcƒ„1970/11/10J0t.takahashi@hoge.com230-0063�_“Þ�쌧ƒJƒiƒKƒ�ƒPƒ“‰¡•lŽs’ߌ©‹æ’ߌ©ƒcƒ‹ƒ~�~-�~�~�@090-xxxx-xxxxUQQA6B3R
CU00000003–ƒƒAƒTŽ}ƒGƒ_ƒ}ƒGƒ_�yƒWƒ…ƒ“ƒWƒ…ƒ“1975/1/3J0j.maeda@hoge.com333-0823�é‹ÊŒ§ƒTƒCƒ^ƒ}ƒPƒ“�ìŒûŽsƒJƒ�ƒOƒ`ƒV�Î�_ƒCƒVƒKƒ~�›�›-�›�@090-yyyy-1234UDHWnLLk
CU00000004ŽO‘îƒ~ƒ„ƒPƒ~ƒ„ƒP�͉îƒVƒ‡ƒEƒXƒPƒVƒ‡ƒEƒXƒP1970/10/10J0s.miyake@hoge.com273-0031�ç—tŒ§ƒ`ƒoƒPƒ“‘D‹´ƒtƒiƒoƒVŽsƒV�¼‘D�›�›-�›ƒAƒp�[ƒg‚P‚O‚P090-yyyy-5678E2QGZNzw
CU00000005—ÁŒ³ƒXƒYƒ‚ƒg—Iˆêƒ†ƒEƒCƒ`ƒ†ƒEƒCƒ`1969/1/13J0y.suzumoto@hoge.com321-0207“È–ØŒ§ƒgƒ`ƒMƒPƒ“‰º“s‰êŒS�p�¶’¬–k�¬—Ñ�~�~�~�~�@090-1234-xxxxDZy5qadL
ƒNƒŒƒWƒbƒgƒJ�[ƒhcredit_card_t
ŒÚ‹qƒRƒLƒƒƒNIDƒJ�[ƒh•ª—Þƒuƒ“ƒ‹ƒCƒJ�[ƒh”Ô�†ƒoƒ“ƒSƒEƒJ�[ƒh–¼‹`ƒ�ƒCƒM—LŒøƒ†ƒEƒRƒEŠúŒÀƒLƒQƒ“ŒŽƒcƒL—LŒøƒ†ƒEƒRƒEŠúŒÀƒLƒQƒ“”Nƒlƒ“ƒV�[ƒNƒŒƒbƒgƒR�[ƒh
user_idcredit_div_cdcredit_nocredit_nmvalidated_monthvalidated yearsc_cd
CU00000001CD001xxxx-xxxx-xxxx-xxxxHAJIME YAMADA032017xxx
CU00000005CD001xxxx-xxxx-xxxx-xxxxYUICHI SUZUMOTO032016xxx
ƒ�ƒOƒCƒ“—š—ðƒŠƒŒƒLlogin_hist_t
ŒÚ‹qƒRƒLƒƒƒNIDSFXƒ�ƒOƒCƒ““úŽžƒjƒ`ƒW�Ú‘±ƒZƒcƒ]ƒN�æƒTƒL‚h‚o’[––ƒ^ƒ“ƒ}ƒc�î•ñƒWƒ‡ƒEƒzƒE
user_idsfxlogin_datetimeconn_ipterm_info
CU0000000112014/10/1 10:00:00xxx.xxx.xxx.xxxƒXƒ}�[ƒgƒtƒHƒ“
CU0000000122014/10/10 12:27:00xxx.xxx.xxx.xxxƒXƒ}�[ƒgƒtƒHƒ“
CU0000000132014/10/25 20:30:00xxx.xxx.xxx.xxxƒXƒ}�[ƒgƒtƒHƒ“
CU0000000142014/11/3 10:15:00xxx.xxx.xxx.xxxƒXƒ}�[ƒgƒtƒHƒ“
CU0000000152014/11/5 15:05:00xxx.xxx.xxx.xxxPC
CU0000000162014/12/1 16:58:00xxx.xxx.xxx.xxxPC
CU0000000212014/5/5 15:30:00xxx.xxx.xxx.xxxPC
CU0000000222014/7/7 12:30:00xxx.xxx.xxx.xxxPC
CU0000000232014/11/25 09:30:00xxx.xxx.xxx.xxxPC
CU0000000312013/12/24 11:11:00xxx.xxx.xxx.xxxPC
CU0000000322014/1/10 12:20:00xxx.xxx.xxx.xxxPC
CU0000000332014/10/10 15:27:00xxx.xxx.xxx.xxxPC
CU0000000412014/7/7 10:00:00xxx.xxx.xxx.xxxƒXƒ}�[ƒgƒtƒHƒ“
CU0000000512014/7/5 19:42:00xxx.xxx.xxx.xxxƒXƒ}�[ƒgƒtƒHƒ“
+ + + + diff --git a/�練習�題】 SQL/Question3/データ定義.files/sheet003.htm b/�練習�題】 SQL/Question3/データ定義.files/sheet003.htm new file mode 100644 index 0000000..daa7323 --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/sheet003.htm @@ -0,0 +1,185 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
�¤•iƒVƒ‡ƒEƒqƒ“ƒ}ƒXƒ^goods_m
�¤•iƒVƒ‡ƒEƒqƒ“ID�¤•i–¼ƒVƒ‡ƒEƒqƒ“ƒ�ƒCƒ��[ƒJ�[•ª—Þƒuƒ“ƒ‹ƒCŽæˆµƒgƒŠƒAƒcƒJŠJŽn“úƒJƒCƒVƒr‰¿ŠiƒJƒJƒNŒ´‰¿ƒQƒ“ƒJ
goods_idgoods_nmgoods_makergoods_div_cdhandling_dategoods_pricegoods_cost
ITM0000001EIZO FlexScan 27ƒCƒ“ƒ`ƒJƒ‰�[‰t�»ƒ‚ƒjƒ^�[ EIZOK00022012/8/247911040000
ITM0000002ƒTƒbƒJ�[ “ú–{‘ã•\ ”Ô�†‚ ‚è + ƒŒƒvƒŠƒJƒ†ƒjƒtƒH�[ƒ€ adidas(ƒAƒfƒBƒ_ƒX)K00032014/3/4129152000
ITM0000003ƒŒƒCƒRƒbƒv ‚Ó‚Æ‚ñƒNƒŠ�[ƒi�[ + (ƒp�[ƒ‹ƒzƒ�ƒCƒg)ƒŒƒCƒRƒbƒvK00062013/9/172450012000
ITM0000004ƒuƒ‹ƒKƒŠ ƒAƒNƒAƒv�[ƒ‹ƒIƒ€ ƒ}ƒŠƒ“ EDT + SP 100ml ƒuƒ‹ƒKƒŠK00072010/3/337121500
ITM0000005ƒ}ƒWƒbƒN:ƒU�EƒMƒƒƒUƒŠƒ“ƒO + Šî–{ƒZƒbƒg2015 ƒu�[ƒXƒ^�[ƒpƒbƒN “ú–{Œê”Å BOXƒEƒBƒU�[ƒY�EƒIƒu�EƒU�EƒR�[ƒXƒgK00082014/4/28109526000
+ + + + diff --git a/�練習�題】 SQL/Question3/データ定義.files/sheet004.htm b/�練習�題】 SQL/Question3/データ定義.files/sheet004.htm new file mode 100644 index 0000000..868621f --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/sheet004.htm @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
‘qŒÉƒ\ƒEƒRƒ}ƒXƒ^store_m
‘qŒÉƒ\ƒEƒRID‘qŒÉƒ\ƒEƒR–¼ƒ�ƒC—X•Ö”Ô�†ƒ†ƒEƒrƒ“ƒoƒ“ƒSƒEŒ§–¼ƒPƒ“ƒ�ƒCŽs‹æƒVƒN’¬‘ºƒ`ƒ‡ƒEƒ\ƒ“’¬ˆæƒ`ƒ‡ƒEƒCƒL�Z�ŠƒWƒ…ƒEƒVƒ‡Œš•¨ƒ^ƒeƒ‚ƒm
store_idstore_nmstore_post_nostore_prefecture_nmstore_municipality_nmstore_city_nmstore_addressstore_building_nm
W0001‘åˆäƒIƒIƒC‘qŒÉƒ\ƒEƒR140-0014“Œ‹ž“sƒgƒEƒLƒ‡ƒEƒg•i�ì‹æƒVƒiƒKƒ�ƒN‘åˆäƒIƒIƒCXXXXXXXXXXXXXXXXXXXXXXXX
+ + + + diff --git a/�練習�題】 SQL/Question3/データ定義.files/sheet005.htm b/�練習�題】 SQL/Question3/データ定義.files/sheet005.htm new file mode 100644 index 0000000..8126f95 --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/sheet005.htm @@ -0,0 +1,277 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
�݌ɃUƒCƒRƒ}ƒXƒ^stock_m
‘qŒÉƒ\ƒEƒRID�¤•iƒVƒ‡ƒEƒqƒ“ID“üŒÉƒjƒ…ƒEƒR“úƒr“üŒÉƒjƒ…ƒEƒR�”ƒXƒEˆøƒq“–ƒA�”ƒXƒE
stock_idgoods_idarrival_datearrival_numsecurity_num
W0001ITM00000012012/8/2422
W0001ITM00000012012/12/2533
W0001ITM00000012013/6/122
W0001ITM00000012013/11/2054
W0001ITM00000012014/8/870
W0001ITM00000022014/3/4100100
W0001ITM00000022014/9/55045
W0001ITM00000022014/9/10600
W0001ITM00000032013/9/1752
W0001ITM00000042010/3/31010
W0001ITM00000042012/10/533
W0001ITM00000042013/9/1065
W0001ITM00000042014/4/320
W0001ITM00000052014/4/28150150
W0001ITM00000052014/5/2010086
�i“üŒÉ�”ƒjƒ…ƒEƒRƒXƒE�@�|�@ˆø“–ƒqƒLƒAƒe�”ƒXƒE�j‚ª�ÝŒÉ�”ƒUƒCƒRƒXƒE
ŒÃƒtƒ‹‚¢�݌ɃUƒCƒR‚©‚çˆø“–ƒqƒLƒAƒe‚ð‚µ‚Ä‚¢‚­‚±‚Æ
+ + + + diff --git a/�練習�題】 SQL/Question3/データ定義.files/sheet006.htm b/�練習�題】 SQL/Question3/データ定義.files/sheet006.htm new file mode 100644 index 0000000..fcffc65 --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/sheet006.htm @@ -0,0 +1,338 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
“üŒÉƒjƒ…ƒEƒRƒe�[ƒuƒ‹ins_stock_m
�¤•iƒVƒ‡ƒEƒqƒ“ID“üŒÉƒjƒ…ƒEƒR�æƒTƒL‘qŒÉƒ\ƒEƒRID“üŒÉƒjƒ…ƒEƒR—\’è“úƒˆƒeƒCƒr“üŒÉƒjƒ…ƒEƒRŠ®—¹“úƒJƒ“ƒŠƒ‡ƒEƒr“üŒÉƒjƒ…ƒEƒR—\’è�”ƒˆƒeƒCƒXƒE“üŒÉ�”ƒjƒ…ƒEƒRƒXƒEˆø“–ƒqƒLƒAƒe—\’胈ƒeƒC�”ƒXƒE
goods_idstore_idins_stock_exp_dateins_stock_cmp_dateins_stock_exp_numins_stock_num�@
ITM0000004W00012010/3/32010/3/310100
ITM0000001W00012012/8/242012/8/24220
ITM0000004W00012012/10/52012/10/5330
ITM0000001W00012012/12/252012/12/25330
ITM0000001W00012013/6/12013/6/1220
ITM0000004W00012013/9/102013/9/10660
ITM0000003W00012013/9/172013/9/17550
ITM0000001W00012013/11/202013/11/20550
ITM0000002W00012014/3/42014/3/41001000
ITM0000004W00012014/4/32014/4/3220
ITM0000005W00012014/4/282014/4/281501500
ITM0000005W00012014/5/202014/5/201001000
ITM0000001W00012014/8/82014/8/8770
ITM0000002W00012014/9/52014/9/550500
ITM0000002W00012014/9/102014/9/1060600
ITM0000001W00012014/12/3�@5�@0
ITM0000002W00012014/12/10�@200�@0
ITM0000003W00012014/12/12�@3�@0
ITM0000004W00012014/12/15�@10�@0
ITM0000005W00012014/12/25�@80�@0
+ + + + diff --git a/�練習�題】 SQL/Question3/データ定義.files/sheet007.htm b/�練習�題】 SQL/Question3/データ定義.files/sheet007.htm new file mode 100644 index 0000000..9b21dad --- /dev/null +++ b/�練習�題】 SQL/Question3/データ定義.files/sheet007.htm @@ -0,0 +1,559 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
’�•¶ƒ`ƒ…ƒEƒ‚ƒ“order_t
Žó’�ƒWƒ…ƒ`ƒ…ƒE”Ô�†ƒoƒ“ƒSƒEŽó’�ƒWƒ…ƒ`ƒ…ƒE“úƒrŒÚ‹qƒRƒLƒƒƒNIDƒXƒe�[ƒ^ƒXŽx•¥ƒVƒnƒ‰ƒC•ª—Þƒuƒ“ƒ‹ƒC�o‰×ƒVƒ…ƒbƒJ—\’è“úƒˆƒeƒCƒr�o‰×“úƒVƒ…ƒbƒJƒr”z‘—ƒnƒCƒ\ƒE‹ÆŽÒƒMƒ‡ƒEƒVƒƒ’Ç�ÕƒcƒCƒZƒL”Ô�†ƒoƒ“ƒSƒE“ž’…ƒgƒEƒ`ƒƒƒN—\’胈ƒeƒC“úƒr‘ãˆøƒ_ƒCƒrŽè�”—¿ƒeƒXƒEƒŠƒ‡ƒE‘——¿ƒ\ƒEƒŠƒ‡ƒEƒŠƒ‡ƒE�Á”ï�ŃVƒ‡ƒEƒqƒ[ƒC
order_noorder_dateuser_idsts_cdpay_div_cddeli_exp_datedeli_datedeli_companytracing_noarrive_exp_datecash_deli__comm_ratepostagetax_rate
12014/11/20CU00000003ST010PY0022014/11/202014/11/20ƒ„ƒ}ƒgxxxxxxxxxxx2014/11/2101836208501
22014/11/25CU00000001ST010PY0012014/11/252014/11/25ƒ„ƒ}ƒgxxxxxxxxxxx2014/11/260183694520
32014/11/30CU00000005ST010PY0012014/12/12014/12/2ƒ„ƒ}ƒgxxxxxxxxxxx2014/12/301836108562
42014/12/2CU00000004ST010PY0042014/12/22014/12/2ƒ„ƒ}ƒgxxxxxxxxxxx2014/12/35101836103310
’�•¶ƒ`ƒ…ƒEƒ‚ƒ“�Ú�׃Vƒ‡ƒEƒTƒCorder_detail_t
Žó’�ƒWƒ…ƒ`ƒ…ƒE”Ô�†ƒoƒ“ƒSƒE�¤•iƒVƒ‡ƒEƒqƒ“ID�¤•iƒVƒ‡ƒEƒqƒ“’P‰¿ƒ^ƒ“ƒJŒÂ�”ƒRƒXƒE
order_nogoods_idgoods_unit_pricegoods_num
1ITM000000212915 100
1ITM000000510952 80
1ITM000000324500 1
1ITM00000043712 5
1ITM000000179110 5
2ITM000000179110 1
2ITM000000212915 50
2ITM00000043712 5
2ITM000000510952 40
3ITM000000179110 3
3ITM000000324500 1
3ITM000000510952 100
4ITM000000179110 2
4ITM000000212915 60
4ITM00000043712 8
4ITM000000510952 30
+ + + + diff --git a/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.files/stylesheet.css b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.files/stylesheet.css new file mode 100644 index 0000000..c5eca14 --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.files/stylesheet.css @@ -0,0 +1,310 @@ +tr + {mso-height-source:auto; + mso-ruby-visibility:none;} +col + {mso-width-source:auto; + mso-ruby-visibility:none;} +br + {mso-data-placement:same-cell;} +ruby + {ruby-align:left;} +.style0 + {mso-number-format:General; + text-align:general; + vertical-align:middle; + white-space:nowrap; + mso-rotate:0; + mso-background-source:auto; + mso-pattern:auto; + color:black; + font-size:11.0pt; + font-weight:400; + font-style:normal; + text-decoration:none; + font-family:"‚l‚r ‚oƒSƒVƒbƒN", monospace; + mso-font-charset:128; + border:none; + mso-protection:locked visible; + mso-style-name:•W�€; + mso-style-id:0;} +.font5 + {color:purple; + font-size:11.0pt; + font-weight:400; + font-style:normal; + text-decoration:none; + font-family:"‚l‚r ‚oƒSƒVƒbƒN", monospace; + mso-font-charset:128;} +.font7 + {color:windowtext; + font-size:6.0pt; + font-weight:400; + font-style:normal; + text-decoration:none; + font-family:"‚l‚r ‚oƒSƒVƒbƒN", monospace; + mso-font-charset:128;} +.font8 + {color:windowtext; + font-size:6.0pt; + font-weight:400; + font-style:normal; + text-decoration:none; + font-family:"‚l‚r ‚oƒSƒVƒbƒN", monospace; + mso-font-charset:128;} +td + {mso-style-parent:style0; + padding-top:1px; + padding-right:1px; + padding-left:1px; + mso-ignore:padding; + color:black; + font-size:11.0pt; + font-weight:400; + font-style:normal; + text-decoration:none; + font-family:"‚l‚r ‚oƒSƒVƒbƒN", monospace; + mso-font-charset:128; + mso-number-format:General; + text-align:general; + vertical-align:middle; + border:none; + mso-background-source:auto; + mso-pattern:auto; + mso-protection:locked visible; + white-space:nowrap; + mso-rotate:0;} +.xl66 + {mso-style-parent:style0; + font-size:10.0pt; + font-weight:700; + mso-number-format:"\@";} +.xl67 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@";} +.xl68 + {mso-style-parent:style0; + font-size:10.0pt; + font-weight:700; + mso-number-format:"\@"; + text-align:center; + border-top:.5pt solid windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext; + background:#D9E1F2; + mso-pattern:black none;} +.xl69 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl70 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt solid windowtext; + border-left:.5pt solid windowtext;} +.xl71 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:none; + border-left:.5pt solid windowtext;} +.xl72 + {mso-style-parent:style0; + border-top:.5pt hairline windowtext; + border-right:none; + border-bottom:.5pt hairline windowtext; + border-left:none;} +.xl73 + {mso-style-parent:style0; + font-size:10.0pt; + font-weight:700; + mso-number-format:"\@"; + text-align:center; + border-top:.5pt solid windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:none; + background:#D9E1F2; + mso-pattern:black none;} +.xl74 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"0_ ";} +.xl75 + {mso-style-parent:style0; + font-size:10.0pt;} +.xl76 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"Short Date"; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl77 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"Short Date"; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:none; + border-left:.5pt solid windowtext;} +.xl78 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"Short Date"; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt solid windowtext; + border-left:.5pt solid windowtext;} +.xl79 + {mso-style-parent:style0; + border-top:.5pt hairline windowtext; + border-right:none; + border-bottom:.5pt solid windowtext; + border-left:none;} +.xl80 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"0_ "; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl81 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"0_ "; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt solid windowtext; + border-left:.5pt solid windowtext;} +.xl82 + {mso-style-parent:style0; + font-size:10.0pt; + font-weight:700; + mso-number-format:"\@"; + text-align:center; + border-top:none; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext; + background:#D9E1F2; + mso-pattern:black none;} +.xl83 + {mso-style-parent:style0; + font-size:10.0pt; + font-weight:700; + mso-number-format:"\@"; + text-align:center; + border-top:.5pt solid windowtext; + border-right:.5pt solid windowtext; + border-bottom:none; + border-left:.5pt solid windowtext; + background:#D9E1F2; + mso-pattern:black none;} +.xl84 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + border-top:none; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl85 + {mso-style-parent:style0; + font-size:10.0pt; + font-weight:700; + mso-number-format:"\@"; + text-align:center; + border:.5pt solid windowtext; + background:#D9E1F2; + mso-pattern:black none;} +.xl86 + {mso-style-parent:style0; + border-top:none; + border-right:none; + border-bottom:.5pt hairline windowtext; + border-left:none;} +.xl87 + {mso-style-parent:style0; + font-size:10.0pt; + font-weight:700; + mso-number-format:"\@"; + text-align:center; + border-top:.5pt solid windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt solid windowtext; + border-left:none; + background:#D9E1F2; + mso-pattern:black none;} +.xl88 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + border-top:none; + border-right:.5pt solid windowtext; + border-bottom:.5pt solid windowtext; + border-left:.5pt solid windowtext;} +.xl89 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"Short Date"; + border-top:none; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl90 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"0_ "; + border-top:none; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl91 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + text-align:right; + border-top:none; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl92 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + text-align:right; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt hairline windowtext; + border-left:.5pt solid windowtext;} +.xl93 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + text-align:right; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:.5pt solid windowtext; + border-left:.5pt solid windowtext;} +.xl94 + {mso-style-parent:style0; + font-size:10.0pt; + mso-number-format:"\@"; + text-align:right; + border-top:.5pt hairline windowtext; + border-right:.5pt solid windowtext; + border-bottom:none; + border-left:.5pt solid windowtext;} diff --git a/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.files/tabstrip.htm b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.files/tabstrip.htm new file mode 100644 index 0000000..2d1fe33 --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.files/tabstrip.htm @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + +
 ŠeŽíƒ}ƒXƒ^ƒf�[ƒ^  ŒÚ‹qƒ}ƒXƒ^  �¤•iƒ}ƒXƒ^  ‘qŒÉƒ}ƒXƒ^  �݌Ƀ}ƒXƒ^  “üŒÉ  ’�•¶ 
+ + diff --git a/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.htm b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.htm new file mode 100644 index 0000000..ba61fdc --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.htm @@ -0,0 +1,361 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + <body> + <p>‚±‚̃y�[ƒW‚ÅŽg—p‚·‚éƒtƒŒ�[ƒ€‚Í�A‚¨Žg‚¢‚̃uƒ‰ƒEƒU�[‚ł̓Tƒ|�[ƒg‚³‚ê‚Ä‚¢‚Ü‚¹‚ñ�B</p> + </body> + + + diff --git a/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.xlsx b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.xlsx new file mode 100644 index 0000000..b88e21b Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/Question3/データ定義.xlsx differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図1.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図1.png new file mode 100644 index 0000000..10cf142 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図1.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図2.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図2.png new file mode 100644 index 0000000..30065e1 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図2.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図3.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図3.png new file mode 100644 index 0000000..6f9590a Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図3.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図4.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図4.png new file mode 100644 index 0000000..ff2a30e Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図4.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図5.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図5.png new file mode 100644 index 0000000..d20b06c Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図5.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図6.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図6.png new file mode 100644 index 0000000..eb8264b Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question1/図6.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図1.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図1.png new file mode 100644 index 0000000..fec7a1f Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図1.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図10.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図10.png new file mode 100644 index 0000000..8cd4b33 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図10.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図2.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図2.png new file mode 100644 index 0000000..d42d528 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図2.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図3.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図3.png new file mode 100644 index 0000000..4f1a7e6 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図3.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図4.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図4.png new file mode 100644 index 0000000..5d271e4 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図4.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図5.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図5.png new file mode 100644 index 0000000..1e3a132 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図5.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図6.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図6.png new file mode 100644 index 0000000..2e4b57c Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図6.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図7.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図7.png new file mode 100644 index 0000000..9d80828 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図7.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図8.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図8.png new file mode 100644 index 0000000..8f0ac17 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図8.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図9.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図9.png new file mode 100644 index 0000000..381e3eb Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/+α/図9.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図1.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図1.png new file mode 100644 index 0000000..a7ac403 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図1.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図2.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図2.png new file mode 100644 index 0000000..e6dfbb4 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図2.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図3.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図3.png new file mode 100644 index 0000000..26e88b2 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図3.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図4.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図4.png new file mode 100644 index 0000000..8a660f1 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図4.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図5.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図5.png new file mode 100644 index 0000000..2d70428 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図5.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図6.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図6.png new file mode 100644 index 0000000..15730fd Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図6.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図7.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図7.png new file mode 100644 index 0000000..cff1bfa Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図7.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図8.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図8.png new file mode 100644 index 0000000..7a44478 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図8.png differ diff --git a/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図9.png b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図9.png new file mode 100644 index 0000000..471c289 Binary files /dev/null and b/ã€�ç·´ç¿’å•�題】 SQL/img/question2/図9.png differ diff --git a/ã€�ç·´ç¿’å•�題】 権é™�設定/ã€�ç·´ç¿’å•�題】MySQL権é™�設定.txt b/ã€�ç·´ç¿’å•�題】 権é™�設定/ã€�ç·´ç¿’å•�題】MySQL権é™�設定.txt new file mode 100644 index 0000000..68f5bf0 --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】 権é™�設定/ã€�ç·´ç¿’å•�題】MySQL権é™�設定.txt @@ -0,0 +1,20 @@ +# MySQLŒ ŒÀ�Ý’è + +## –Ú“I +* MySQL‚ÌŒ ŒÀ�Ý’è‚ɂ‚¢‚ÄŠw‚Ô +* MySQL‚ÌƒŠƒXƒgƒA‚ÉŠµ‚ê‚é + +## –â‘è +* ˆÈ‰º‚Ì“à—e‚ɂ‚¢‚Ä�A•s‘«‚·‚é•”•ª‚ðŒŠ–„‚ß‚µ‚‚Â�ݒ肵�AƒŠƒXƒgƒA‚Å‚«‚邿‚¤‚É‚¹‚æ +1. MySQL‚Å�AƒŠƒXƒgƒA—p‚̃f�[ƒ^ƒx�[ƒX�Aƒ†�[ƒU‚ð�ì�¬‚·‚é + +mysql> CREATE DATABASE restoredb; +mysql> CREATE USER 'restore'@'______' IDENTIFIED BY '<ƒpƒXƒ��[ƒh>'; +mysql> GRANT CREATE,DROP ON ______.* TO 'restore'@'______'; +mysql> \q + +2. Windows‚©‚çMySQL‚ɑ΂µ�AƒŠƒXƒgƒA‚ðŽÀ�s‚·‚é + +C:\Users\Owner> mysql -u ______ -p ______ < <ƒŠƒXƒgƒA—pƒtƒ@ƒCƒ‹‚̃pƒX> + +3. ƒŠƒXƒgƒAŽÀ�sŽž‚É•\ަ‚³‚ê‚éƒGƒ‰�[ƒ�ƒbƒZ�[ƒW‚ðŠm”F‚µ�A•s‘«‚µ‚Ä‚¢‚é�Ý’è‚ðrestoreƒ†�[ƒU‚ɑ΂µ‚ÄŽÀŽ{‚¹‚æ \ No newline at end of file diff --git a/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/01-ProcTraining.sql b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/01-ProcTraining.sql new file mode 100644 index 0000000..9c7e1a8 --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/01-ProcTraining.sql @@ -0,0 +1,25 @@ +DELIMITER // +/* +********************************************** +ã€�Question】 +以下ã�®ãƒ—ロシージャをMySQLã�«ç™»éŒ²ã€�プロシージャã�®å®Ÿè¡Œã‚’ã�—ã�¦ã��ã� ã�•ã�„。 +ã��ã�®å¾Œã€�プロシージャを削除ã�—ã�¦ã��ã� ã�•ã�„。 + +*********************************************** +*/ + +DROP PROCEDURE IF EXISTS emp_info; +CREATE PROCEDURE emp_info() +BEGIN + # 検索処ç�† + SELECT + employee.* + ,department.nm_department + FROM + employee inner join department + ON employee.id_department = department.id_department + ; +END; +// +--------------------- + diff --git a/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/02-ProcTraining.sql b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/02-ProcTraining.sql new file mode 100644 index 0000000..c7f3fda --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/02-ProcTraining.sql @@ -0,0 +1,15 @@ +DELIMITER // +/* +********************************************** +ã€�Question】 +å•�1ã�§ä½œæˆ�ã�—ã�Ÿãƒ—ロシージャã�®æ”¹ä¿®ã‚’行ã�ªã�£ã�¦ã��ã� ã�•ã�„。 +仕様ã�¯ä»¥ä¸‹ã�®é€šã‚Šã�§ã�™ + +- プロシージャを実行ã�™ã‚‹éš›ã�«å€¤ï¼ˆå��å‰�)を指定ã�§ã��るよã�†ã�«ã�—ã�Ÿã�„ +- ã��ã�®å��å‰�ã�®éƒ¨åˆ†ä¸€è‡´æ¤œç´¢ã�§æƒ…報をå�–å¾—ã�§ã��るよã�†ã�«ã�—ã�Ÿã�„ + +*********************************************** +*/ + +END; +// diff --git a/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/03-ProcTraining.sql b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/03-ProcTraining.sql new file mode 100644 index 0000000..07e0064 --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/03-ProcTraining.sql @@ -0,0 +1,14 @@ +DELIMITER // +/* +********************************************** +ã€�Question】 +02ã�§ä½œæˆ�ã�—ã�Ÿãƒ—ロシージャã�®ä»•様追加を行ã�ªã�£ã�¦ã��ã� ã�•ã�„。 +仕様ã�¯ä»¥ä¸‹ã�®é€šã‚Š + +- 呼ã�³å‡ºã�—時ã�®å¼•æ•°ã�Œnullã� ã�£ã�Ÿå ´å�ˆã�¯å…¨ä»¶æ¤œç´¢ã‚’行ã�† + +*********************************************** +*/ + +END; +// \ No newline at end of file diff --git a/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/04-ProcTraining.sql b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/04-ProcTraining.sql new file mode 100644 index 0000000..5ae610a --- /dev/null +++ b/ã€�ç·´ç¿’å•�題】ストアドプロシージャ/04-ProcTraining.sql @@ -0,0 +1,42 @@ +DELIMITER // +/* +********************************************** +ã€�Question】 +以下ã�®SQLã�¯ç¤¾å“¡IDã�®æ¬ ç•ªã‚’一時テーブルã�«ç™»éŒ²ã�™ã‚‹ãƒ—ロシージャã�®ä½œæˆ�途中ã�§ã�™ã€‚ +以下ã�®ãƒ«ãƒ¼ãƒ«ã�«å¾“ã�£ã�¦ãƒ—ロシージャを完æˆ�ã�•ã�›ã�¦ã��ã� ã�•ã�„。 + +例) +10000 山田 +10001 髙橋 +10004 ä½�è—¤ + +ã�¨ã�ªã�£ã�¦ã�„ã�Ÿå ´å�ˆã�¯ã€�欠番ã�¯ +10002, 10003 +ã�¨ã�ªã‚‹ +*********************************************** +*/ + +DROP PROCEDURE IF EXISTS search_missing_num; +CREATE PROCEDURE search_missing_num() +BEGIN + # 変数ã�®å®šç¾© + # ç�¾åœ¨ç™»éŒ²ã�•れã�¦ã�„ã‚‹IDã‚’å�–å¾—ã�™ã‚‹ã‚«ãƒ¼ã‚½ãƒ«ã‚’定義ã�™ã‚‹ + DECLARE empIdCursor CURSOR FOR + SELECT id_employee FROM employee ORDER BY id_employee; + + # 欠番IDã‚’ä¿�管ã�—ã�¦ã�Šã��一時テーブルを作æˆ�ã�™ã‚‹ + DROP TABLE IF EXISTS tmpTable; + CREATE TABLE tmpTable (missingId INT PRIMARY KEY); + + # カーソルをオープンã�™ã‚‹ + + # 登録ã�•れã�¦ã�„ã‚‹ID一覧を1レコードã�¥ã�¤èª­ã�¿è¾¼ã‚€ + + # 最åˆ�ã�®ï¼‘行以外ã�§ã�‚ã�£ã�Ÿå ´å�ˆã�¯ã€�ç�¾åœ¨å‡¦ç�†ä¸­ã�®IDã�Œãƒ—ールã�•れã�¦ã�„ã‚‹IDã�®+1ã�‹ã�©ã�†ã�‹ã‚’判定 + + # カーソルã�®ã‚¯ãƒ­ãƒ¼ã‚º + + # ã�“ã�“ã�¾ã�§ã�§ã‚³ãƒŸãƒƒãƒˆ + COMMIT; +END; +// \ No newline at end of file diff --git a/データベース設計.pptx b/データベース設計.pptx new file mode 100644 index 0000000..3fe625f Binary files /dev/null and b/データベース設計.pptx differ diff --git a/データベース課題.pptx b/データベース課題.pptx new file mode 100644 index 0000000..f52ba9b Binary files /dev/null and b/データベース課題.pptx differ