�@��قǏЉ��MySQL�̑���ɉ����AMySQL5.0�ł͐V���ȋ@�\���lj�����Ă��܂��B
�@�����ł́A����ȍ~�Ŏg�p����@�\�𒆐S�ɏЉ�܂��BMySQL5.0�Œlj����ꂽ�@�\�ɂ��Ắu�G���^�[�v���C�Y�s��Ɍ�����MySQL 5.0�v���Q�l�ɂ��Ă��������B
�@MySQL5.0�ł́ACREATE TABLE�N�G���[���s���Ɂu�e�[�u���^�C�v�v�Ɓu�L�����N�^�[�Z�b�g�v��ݒ�ł��܂��BMySQL�ł́A�e�[�u���^�C�v���ƂɎg�p�ł���@�\�����肳��܂��B
�@�Ⴆ�A�g�����U�N�V�������T�|�[�g����uInnoDB�v�A�����p�t�H�[�}���X�ƍ��@�\�����˔������uMyISAM�v�A�ꎞ�I�ȍ�ƃe�[�u���Ɏg�p�����uMEMORY�v�ȂǁA�������̃e�[�u���^�C�v���I���ł��܂��B���ݎg�p���Ă���MySQL�ŃT�|�[�g���Ă���e�[�u���^�C�v������ꍇ�́A�uSHOW ENGINES;�v�����s���܂��B
�@����Љ��T���v���ł́A�g�����U�N�V����������K�v�Ƃ��邽�߁A�e�[�u���^�C�vInnoDB���w�肵�܂��B�܂��A�L�����N�^�[�Z�b�g��PHP�R�[�h���l�ɁuUTF-8�v�œ��ꂵ�܂��B
mysql> CREATE TABLE `test_table2` ( |
�@MySQL5.0�ł́A�N���C���A���g�ƃT�[�o�ňقȂ�L�����N�^�[�Z�b�g�����p����Ă����ꍇ�Ɏ����ϊ��@�\�������܂��B�֗��ȋ@�\�ł����A�����ϊ������S�ɓ��삵�Ȃ��ꍇ������A���������̂悤�Ȍ��ۂ������N�������Ƃ�����܂��B���̂��߁A�N���C�A���g���Ŏg�p���镶���R�[�h���I�ɐݒ肵�܂��B
mysql> SET NAMES utf8; |
mysql> SHOW VARIABLES LIKE 'character_%';�@���L�����N�^�[�Z�b�g�̊m�F |
�@�ʏ�̃N�G���[�ł́A�����R�~�b�g���L���ɂȂ��Ă��邽�߃N�G���[���͌�A�����ɔ��f����Ă��܂��܂��B�g�����U�N�V�����������s���ɂ́A�uBEGIN�v�N�G���[�s���邩�A�uSET AUTOCOMMIT=0�v�Ŏ����R�~�b�g���ɂ��܂��B
mysql> BEGIN; |
mysql> SET AUTOCOMMIT=0; |
�@�g�����U�N�V�����ŁA�uSELECT .... FOR UPDATE�v�N�G���[��p����ƁA�g�����U�N�V�����I���܂�SELECT���ꂽ�s�ɑ��Ĕr�����b�N���K�p����܂��B
�@���̗�ł́A�N���C�A���gA�́uCOMMIT�v�����s�����܂ŁA�N���C�A���gB��SELECT FOR UPDATE�͔r�����b�N�̉���҂��ɂȂ�܂��BSELECT .... FOR UPDATE�̋�̓I�ȃ����b�g�ɂ��Ă͎���̃T���v���ŏЉ �܂��B
mysql> BEGIN; |
mysql> SELECT * FROM test_table2 FOR UPDATE; |
mysql> UPDATE test_table2 set id=id*2; |
�������ĊJ |
�@�����ł́A�T���v���i�ȈՃI�����C���X�g�A�j�Ŏg�p����f�[�^�x�[�X��e�[�u���A�K�v�ȃA�N�Z�X�����Ȃǂ�ݒ肵�܂��i���j�B
���F���ۂ̃T���v���J���͎���Љ�܂��B
�@�T���v���ł�3�̃e�[�u�����g�p���܂��B�Z�����������������e�������e�[�u���ŊǗ����邱�Ƃ��ŏ��Ɏv���t���܂����A����ł͏��i�A�C�e�����������ۂɃe�[�u���ɐV���ȃJ������������K�v������܂��i�}3�̏㕔�j�B
�@�����ŁA���K����p���A�w�����ꂽ���i��ʓrorder_item�e�[�u���ŊǗ����܂��i�}3�̉����j�B
�@�e�[�u���̊e�J�����̌^�ɂ́A�uint�v�Ɓudatetime�v�Ɓuvarchar�v���g�p���܂��Bint�ł́A�uunsigned�v���w�肷�邱�ƂŁA�������g�p�ł��Ȃ�����Ɂu0�`4294967295�v�܂ł̒l���i�[�ł��܂��B
�@datetime�ɂ́A���t�Ǝ������i�[�Bvarchar�ɂ́A��������i�[���܂��Bvarchar(20)�ł͍ő�20�������i�[�\�ł��B20bytes�ł͂Ȃ�20�����ł��邱�Ƃɒ��ӂ��܂��B�A���t�@�x�b�g�Ȃ�1����1byte�ASHIFT JIS��EUC�ł�2byte�AUTF-8�ł�1�`4byte�̉ϒ��B����varchar(20)�ł������R�[�h�ɂ��f�[�^�T�C�Y���قȂ�܂��B
�@count�e�[�u���́umax_no�i�����ԍ��̃J�E���g�Ɏg�p�j�v��order_main�e�[�u���́uorder_no�i�����ԍ��j�v�J�����ɂ́A��L�[��ݒ肵�܂��B��L�[��C���f�b�N�X��ݒ肷�邱�ƂŌ����p�t�H�[�}���X�����P���܂��B�܂��A�f�[�^�}���̍ۂɁANULL�l�⓯���l�ł͑}�����ł��Ȃ��Ƃ�������L�[�����݂��邱�Ƃ��ł��܂��B��L�[����ɂ�蓯�������ԍ��ł̓f�[�^��o�^���邱�Ƃ��ł��Ȃ��Ȃ�A��d������}�~�ł��܂��B
�@order_item�e�[�u���ł́A�uorder_no�i�����ԍ��j�v�Ɓuitem�i���i���j�v�ɑ��Ĉ�ӃL�[��ݒ肵�܂��B��ӃL�[�́A�����l��}���ł��Ȃ��Ƃ����_�Ŏ�L�[�Ɠ����ł��B�������A��L�[��1�e�[�u����1�����ݒ�ł��܂��A��ӃL�[�ɂ͂��̂悤�Ȑ����͂���܂���B�܂��A�g�P��J���������łȂ��uorder_no�v�Ɓuitem�v�J�����̕�����������������l���A�d�����Ȃ��悤�ɂ���h�Ƃ������J�����������Ĉ�ӃL�[��ݒ肷�邱�Ƃ��\�ł��B
�@order_item�e�[�u���́A�����̃A�C�e���������ɍw�����ꂽ�ꍇ�A���������ԍ��Ńf�[�^���}������邽�߁Aorder_no�Ɏ�L�[��ݒ肷�邱�Ƃ��ł��܂���B�������A�����ԍ��{���i���Ȃ�A�}�������f�[�^��1���Ɍ����܂��B�����ŁA��ӃL�[��order_no��item�ɑ��Đݒ肵�܂��B
�@�Ȃ��AMySQL�T�[�o��PHP�����s�����Apache�T�[�o�́A����z�X�g�ł��邱�Ƃ�O��ɂ��Ă��܂��B
���� | ���e |
---|---|
���[�U�[�� | php |
�p�X���[�h | password |
�f�[�^�x�[�X | sample_db |
�J������ | �^ | ���l |
---|---|---|
max_no | int(10) unsigned | �����ԍ��̃J�E���g�A��L�[��ݒ� |
count�e�[�u�� |
�J������ | �^ | ���l |
---|---|---|
order_no | int(10) unsigned | �����ԍ��A��L�[��ݒ� |
order_date | datetime | ���� |
name | varchar(20) | ���� |
address | varchar(100) | �Z�� |
order_main�e�[�u�� |
�J������ | �^ | ���l |
---|---|---|
order_no | int(10) unsigned | �����ԍ��A��ӃL�[��ݒ� |
order_date | datetime | ���� |
item | varchar(20) | ���i���A��ӃL�[��ݒ� |
qty | int(2) unsigned | ������ |
order_item�e�[�u�� |
Copyright © ITmedia, Inc. All Rights Reserved.