|
|
| MySQL(UNIX/Linux) |
| | MySQL ̃CXg[ |
 |
- ݂ł͂قƂǂLinuxfBXgr[VŕWɂȂĂ܂B
TurboLinux Serverł͎IɃCXg[ARedhat8ȍ~ł̓CXg[
IvVI邾ŃCXg[܂B
ȊÓAUNIXŃCXg[ĂȂꍇ́A
{~[TCg
ɏڂCXg[@܂BQlɂăCXg[ĂB
ŐVł̃_E[h́A
http://dev.mysql.com/downloads/ ̃~[TCgɂȂ܂B
|
| | PerlW[ DBIADBD̃CXg[ |
 |
- {R[i[(UNIX/Linux)łPerlW[̃CXg[́AׂWebminsOƂĂ܂B
WebminCXg[ĂȂꍇQƂB
Webmiñc[o[ȗvAuPerlW[vI܂B

ɃCXg[ς݂̃W[̈ꗗ\܂̂ŁA
̒ɁADBIADBD݂Ȃꍇ̓CXg[KvłB
- ̃y[W̍ʼnɂtH[uCPAN疼OtveLXg{bNX[DBI]Ɠ͂A[CXg[]{^܂B
IɃ_E[hJnAŐVł̃o[W\܂̂ŁA
[CXg[s]{^ăCXg[ĂB
ꂾŃCXg[͊łB
|
| | f[^x[X̊Ǘ |
 |
- WebminCXg[ĂAVf[^x[X̍쐬e[u̍쐬Af[^̒lj܂
ׂWebminōs܂B
Webminc[o[́uT[ovuMySQLf[^x[XT[ovI܂B
MySQLT[őNƒ~ōs܂̂ŁANĂȂꍇ́A
[MySQLT[o[N]{^ċNĂB

ɋNΌ݂̃f[^x[Xꗗ\܂B
ftHgł́AMySQLgǗf[^x[XumysqlvƁutestv쐬Ă܂B
ł́Aȉ̃TvŎgpf[^x[Xuzipv쐬Ă݂܂傤B
- uVKf[^x[X쐬v܂B

f[^x[XɗX֔ԍǗ܂̂[zip]Ǝw肵A[쐬]{^܂B
- f[^x[X쐬e[u쐬܂̂ŁA
쐬ꂽuzipvf[^x[XNbNA[VK̃e[u쐬]{^܂B
̃{^̉EɗL鐔l͍쐬e[ũtB[h\Ă܂B
̗ł̓ftHǵuSvŌ\łB
e[uɂ́uiptablevƖtAetB[h͈ȉ̂悤ɐݒ肵ĂB
| tB[h |
f[^̎ |
ނ̕ |
Primary Key? |
CNg |
l |
| id |
mediumint |
|
͂ |
͂ |
ӃL[ |
| code |
varchar |
7 |
|
|
VX֔ԍ |
| pre |
smallint |
|
|
|
ԍ |
| citys |
text |
|
|
|
s撬n |
|
[쐬]{^ƃe[u쐬܂B
- ̓[VVbvwKׁAPe[u쐬܂B
tB[hɂQw肵āA[VK̃e[u쐬]{^ĂB
e[uupretablevɂAȉ̐ݒœs{e[u쐬܂B
| tB[h |
f[^̎ |
ނ̕ |
Primary Key? |
CNg |
l |
| pre |
smallint |
|
͂ |
͂ |
ԍ |
| name |
varchar |
20 |
|
|
s{ |
|
X֔ԍpe[uɂ͓s{ԍo^Ă܂A
̃e[uƃ[V鎖ŁAs{\ł܂B
|
| | MySQLւ̃ANZX |
 |
- ł͎ۂPerlMySQLɃANZXĂ݂܂傤B
#!/usr/local/bin/perl
# DBIW[Ǎ
use DBI;
# f[^x[Xݒ
$database = "zip";
# zXgݒ
$hostname ="localhost";
# [Uݒ
$user = "root";
# f[^x[XɃpX[hݒ肵ĂΎw
$password = "********";
print "Content-type: text/html\n\n";
print "<html>"
print "<body>"
# f[^x[X̃IuWFNg쐬Đڑ
$dsn="DBI:mysql:database=$database:host=$hostname";
$dbh = DBI->connect($dsn,$user,$password);
# mX֔ԍɎ擾
# 擾e[uɃ[Vœs{ljĂ
$rs = $dbh->prepare("SELECT iptable.*,pretable.name FROM iptable LEFT JOIN pretable ON iptable.pre=pretable.pre WHERE iptable.pre = 39 ORDER BY iptable.code;");
$rs->execute();
# 擾R[hZbg̐[vĕ\
while(@FIELD = $sql->fetchrow()) {
print "$FIELD[1] $FIELD[4]$FIELD[3]<br>\n";
}
# R[hZbg
$rs->Close();
# f[^x[X
$dbh->Close();
print "</body></html>";
exit;
|
|
ł́ASELECTĂ݂܂傤B
SELECT iptable.*,pretable.name ́Ae[uuiptablevׂ̂ẴtB[hƁA
e[uupretablev́unamevtB[h擾ȂƌƂŁA
FROM iptable LEFT JOIN pretable ON iptable.pre=pretable.pre
́AiptablepretB[hpretablepretB[ḧv镨iptableɒljƌƂɂȂ܂B
̎ŁAiptable̓s{ԍpretable̓s{ɕϊꃌR[hZbgɒlĵłB
WHERE iptable.pre = 39 ́Aiptable̓s{ԍ39(m)𒊏o
ORDER BY iptable.code ́AX֔ԍɕёւƌƂɂȂ܂B
̗ŎgpX֔ԍf[^x[X(122,000)MySQLŒôɂ킸0.31b܂B
f[^eLXgx[XŒogrepgpĂ3bA[vg10bȏKvłB
TurboLinuxT[ȏ͈OPentiumU450MHz ł猈đ}V[ł͂܂B
WebŎgpꂾ̍͏oȂɂĂMySQL̈|Iȃp[͊ԈႢ܂B
|
|
|
|