Changeset 4588
- Timestamp:
- 06/28/08 15:51:11 (6 months ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
branches/0.11/manual/docs/ja/basic-schema-mapping.txt
r4531 r4588 1 ++ åºæ 1 ++ ã¯ããã« 2 2 3 ãã®ç« ãšç¯ã§ã¯Doctrineã§åºæ¬çãªã¹ããŒããããã³ã°ãè¡ãæ¹æ³ã説æããŸãããã®ç« ã®æŠå¿µã«æ 3 4 £ãããšæ¬¡ã®æ¹æ³ãããããŸã: … … 12 13 13 14 # **ã«ã©ã å** ã«ã©ã åãšãªãã·ã§ã³ã®ãšã€ãªã¢ã¹ãæå®ããæååã§ããããã¯ãã¹ãŠã®ã«ã©ã ã«å¯ŸããŠå¿ 14 èŠã§ããã ãç¡åã«å¯ŸããŠãšã€ãªã¢ã¹ãæå®ãããå Žåã'[columnName] as [columnAlias]'ãã©ãŒãããã䜿çšããå¿15 èŠããããŸãã 15 èŠã§ããã«ã©ã åã«å¯ŸããŠãšã€ãªã¢ã¹ãæå®ãããå Žåã'[columnName] as [columnAlias]'ã®ãã©ãŒãããã䜿ããŸãã 16 16 17 # **ã«ã©ã ã¿ã€ã** ã«ã©ã ã¿ã€ããæå®ããæååã§ããã«ã©ã ã¿ã€ãã®ã»ã¯ã·ã§ã³ãã芧äžããã 18 17 19 # **ã«ã©ã ã®é·ã** ã«ã©ã ã®é·ããæå®ããæŽæ°ã§ããã«ã©ã ã¿ã€ãã®äžã«ã¯äžããããããŒã¿ã«ã¿ã€ãã ãã§ãªãäžããããé·ãã«ãäŸåãããã®ããããŸããäŸãã°ãé·ã1000ãæã€æååã®ã¿ã€ãã¯mysqläžã§ã¯ãã€ãã£ãã®ã¿ã€ãã®TEXTã«å€æãããŸãã 20 18 21 # **ã«ã©ã ã®å¶çŽãšããªããŒã¿** äžããããã«ã©ã ã«é©çšãããå¶çŽãšããªããŒã¿ãæå®ããé 19 22 åã§ãã 20 23 21 ããªããŒã¿/ã«ã©ã ã®å¶çŽãšã«ã©ã é·ããã£ãŒã«ãã¯ãªãã·ã§ã³ã§ããããšã«æ³šæããŠäžãããé·ãã¯é·ãã®åŒæ°ã«å¯Ÿã㊠**null**ã䜿çšããŠçç¥ãããããšããããŸããããã«ãã£ãŠdoctrineã¯ããã©ã«ãã®é·ãã䜿çšã§ããããã«ãªããããªããŒã·ã§ã³ãããã¯ã«ã©ã å¶çŽã«å¯ŸããŠ4çªç®ã®åŒæ°ãèš±å¯ãããŸãã24 ããªããŒã¿/ã«ã©ã ã®å¶çŽãšã«ã©ã é·ããã£ãŒã«ãã¯ãªãã·ã§ã³ã§ããããšã«æ³šæããŠäžãããé·ãã¯é·ãã®åŒæ°ã«å¯Ÿã㊠**null** ã䜿çšããŠçç¥ãããããšããããŸããããã«ãã£ãŠdoctrineã¯ããã©ã«ãã®é·ãã䜿çšã§ããããã«ãªããããªããŒã·ã§ã³ãããã¯ã«ã©ã å¶çŽã«å¯ŸããŠ4çªç®ã®åŒæ°ãèš±å¯ãããŸãã 22 25 23 26 æåã®äŸã«åãçµãã§ã¿ãŸããããæ¬¡ã®å®çŸ©ã¯'emails'ããŒãã«ãåç … … 43 46 </code> 44 47 48 YAMLã¹ããŒããã¡ã€ã«ã§ã¢ãã«ãå®çŸ©ããå Žåã¯ä»¥äžã®æ§ã«ãªããŸãã 49 50 <code type="yaml"> 51 --- 52 Email: 53 tableName: emails 54 columns: 55 address: 56 type: string(200) 57 notblank: true 58 email: true 59 </code> 60 61 45 62 ã§ã¯ãã®ã¯ã©ã¹ã«å¯Ÿãããšã¯ã¹ããŒãã¹ã¯ãªãããäœæããŠã¿ãŸããã: 63 46 64 47 65 <code type="php"> … … 61 79 </code> 62 80 63 ã¹ã¯ãªããã¯æ¬¡ã®SQLãå®è¡ããŸã(ããã§ã¯ããŒã¿ããŒã¹ããã¯ãšã³ããšããŠMySQLã䜿çšããŠããŸã): 81 82 ãã®ã¹ã¯ãªããã¯æ¬¡ã®SQLãå®è¡ããŸã(ããã§ã¯ããŒã¿ããŒã¹ããã¯ãšã³ããšããŠMySQLã䜿çšããŠããŸã): 64 83 65 84 <code> 66 CREATE TABLE emails (id INT NOT NULL AUTO_INCREMENT, address VARCHAR(200) NOT NULL) 67 </code> 68 85 CREATE TABLE emails (id BIGINT AUTO_INCREMENT, address VARCHAR(200), PRIMARY KEY(id)) ENGINE = INNODB; 86 </code> 69 87 70 88 ++ ããŒãã«ãšã¯ã©ã¹ã®åœå 89 71 90 Doctrineã¯ã¬ã³ãŒãã¯ã©ã¹åããããŒãã«åãèªåçã«äœæããŸãããã®ãããæ¬¡ã®ã«ãŒã«ã䜿çšããŠã¬ã³ãŒãåãåä»ããããšãæšå¥šãããŸã: 72 91 … … 74 93 * ã¢ã³ããŒã¹ã³ã¢ã¯èš±å¯ãããŸã 75 94 * æåã®æåã¯å€§æåã§ãªããã°ãªããŸãã 76 * ã¯ã©ã¹åã¯æ¬¡ã®ãã®ã®äžã€ã«ã¯ã§ããŸãã(ãããã®ããŒã¯ãŒãã¯DQL APIã§ä¿åãããŸã): 77 * {{ALL}}, {{AND}}, {{ANY}}, {{AS}}, {{ASC}}, {{AVG}}, {{BETWEEN}}, {{BIT_LENGTH}}, {{BY}}, {{CHARACTER_LENGTH}}, {{CHAR_LENGTH}}, {{COUNT}}, {{CURRENT_DATE}}, {{CURRENT_TIME}}, {{CURRENT_TIMESTAMP}}, {{DELETE}}, {{DESC}}, {{DISTINCT}}, {{EMPTY}}, {{EXISTS}}, {{FALSE}}, {{FETCH}}, {{FROM}}, {{GROUP}}, {{HAVING}}, {{IN}}, {{INDEXBY}}, {{INNER}}, {{IS}}, {{JOIN}}, {{LEFT}}, {{LIKE}}, {{LOWER}}, {{MAX}}, {{MEMBER}}, {{MIN}}, {{MOD}}, {{NEW}}, {{NOT}}, {{NULL}}, {{OBJECT}},{{OF}}, {{OR}}, {{ORDER}}, {{OUTER}}, {{POSITION}}, {{SELECT}}, {{SOME}}, {{SUM}}, {{TRIM}}, {{TRUE}}, {{UNKNOWN}}, {{UPDATE}}, {{UPPER}} and {{WHERE}}.95 * ã¯ã©ã¹åã¯æ¬¡ã®ãã®ã®äžã€ã«ã¯ã§ããŸãã(ãããã®ããŒã¯ãŒãã¯DQL APIã§ä¿åãããŸã): 96 * {{ALL}}, {{AND}}, {{ANY}}, {{AS}}, {{ASC}}, {{AVG}}, {{BETWEEN}}, {{BIT_LENGTH}}, {{BY}}, {{CHARACTER_LENGTH}}, {{CHAR_LENGTH}}, {{COUNT}}, {{CURRENT_DATE}}, {{CURRENT_TIME}}, {{CURRENT_TIMESTAMP}}, {{DELETE}}, {{DESC}}, {{DISTINCT}}, {{EMPTY}}, {{EXISTS}}, {{FALSE}}, {{FETCH}}, {{FROM}}, {{GROUP}}, {{HAVING}}, {{IN}}, {{INDEXBY}}, {{INNER}}, {{IS}}, {{JOIN}}, {{LEFT}}, {{LIKE}}, {{LOWER}}, {{MAX}}, {{MEMBER}}, {{MIN}}, {{MOD}}, {{NEW}}, {{NOT}}, {{NULL}}, {{OBJECT}}, {{OF}}, {{OR}}, {{ORDER}}, {{OUTER}}, {{POSITION}}, {{SELECT}}, {{SOME}}, {{SUM}}, {{TRIM}}, {{TRUE}}, {{UNKNOWN}}, {{UPDATE}}, {{UPPER}} and {{WHERE}}. 78 97 79 98 **äŸ:** {{My_PerfectClass}} … … 81 100 ç°ãªãããŒãã³ã°ã¹ããŒãã䜿çšããå Žåã{{setTableDefinition()}}ã¡ãœããã®{{setTableName()}}ã¡ãœããã䜿çšããŠããããªãŒããŒã©ã€ãã§ããŸãã 82 101 83 84 102 ++ ããŒãã«ãªãã·ã§ã³ 103 85 104 Doctrineã¯æ§ã 86 ãªããŒãã«ãªãã·ã§ã³ãæäŸããŸãããã¹ãŠã®ããŒãã«ãªãã·ã§ã³ã¯ {{Doctrine_Record::option($optionName, $value)}}ãéããŠèšå®ã§ããŸãã105 ãªããŒãã«ãªãã·ã§ã³ãæäŸããŸãããã¹ãŠã®ããŒãã«ãªãã·ã§ã³ã¯ {{Doctrine_Record::option($optionName, $value)}} ãéããŠèšå®ã§ããŸãã 87 106 88 107 äŸãã°ãMySQLã䜿çšããŠããŠINNODBããŒãã«ã䜿çšãããå Žåæ¬¡ã®ããã«è¡ãããŸã: … … 100 119 </code> 101 120 102 次ã®äŸã«ãããŠç 103 §åé åºãšæåã»ãããªãã·ã§ã³ãèšå®ããŸã: 121 <code type="yaml"> 122 --- 123 MyInnoDbRecord: 124 columns: 125 name: string 126 options: 127 type: INNODB 128 </code> 129 130 次ã®äŸã§ã¯ã³ã¬ãŒã(ç 131 §åé åº)ãšæåã»ããã®ãªãã·ã§ã³ãèšå®ããŸãïŒ 104 132 105 133 <code type="php"> … … 116 144 </code> 117 145 146 <code type="yaml"> 147 --- 148 MyCustomOptionRecord: 149 columns: 150 name: string 151 options: 152 collate: utf8_unicode_ci 153 charset: utf8 154 </code> 155 156 äžéšã®ããŒã¿ããŒã¹(Firebird, MySql, PostgreSQLãªã©)ã§ã¯æåã»ãããªãã·ã§ã³ãèšå®ããã ãã§ã¯Doctrine 157 ãæ£ããããŒã¿ãè¿ããªãããšããããŸãããããã®ããŒã¿ããŒã¹ã§ã¯ããŒã¿ããŒã¹æ¥ç¶ã®éã«setCahtset颿°ã䜿ãããšããå§ãããŸãã 158 159 <code type="php"> 160 Doctrine_Manager::connection($name)->setCharset("utf8"); 161 </code> 162 118 163 Doctrineã¯ç¹å®ã®ã¢ãã«ã«å¯ŸããŠå€éšããŒã忢ããèœåãæäŸããŸãã 119 164 … … 131 176 132 177 ++ ã«ã©ã 178 133 179 +++ ã«ã©ã ã®åœå 180 134 181 ããŒã¿ããŒã¹ã®äºææ§ã«é¢ããäžã€ã®åé¡ã¯å€ãã®ããŒã¿ããŒã¹ãè¿ãããã¯ãšãªã®çµæã»ããã®æ¯ãèãã«é¢ããŠå€ãã®ããŒã¿ããŒã¹ãç°ãªãããšã§ããMySQLã¯ãã£ãŒã«ãåã倿ŽããªããŸãŸã«ããŸãããã®ããšã¯ã"SELECT myField FROM ..."圢åŒã®ã¯ãšãªãçºè¡ããå Žåãçµæã»ããã¯'myField'ãã£ãŒã«ããå«ãããšãæå³ããŸãã 135 182