「MySQL」の版間の差分

提供: sha.ngri.la
移動先: 案内検索
13行目: 13行目:
 
mysql> alter table [tablename] modify [データ型];
 
mysql> alter table [tablename] modify [データ型];
 
</pre>
 
</pre>
==データ型と容量==
+
==text,mediumtext,longtextの容量==
<table border="1">
+
<table border=1>
<colgroup>
+
<tr><th>Data Type</th><th>記憶容量の上限値</th></tr>
<col>
+
<tr><td><code class="nb">BLOB</code>,<code class="nb">TEXT</code></td><td>2<sup>16</sup></td></tr>
<col>
+
<tr><td><code class="nb">MEDIUMBLOB</code>,<code class="nb">MEDIUMTEXT</code></td><td>2<sup>24</sup></td></tr>
</colgroup>
+
<tr><td><code class="nb">LONGBLOB</code>,<code class="nb">LONGTEXT</code></td><td>2<sup>32</sup></td></tr>
<tbody>
 
<tr>
 
<td><span class="bold"><strong>Data Type</strong></span></td>
 
<td><span class="bold"><strong>記憶容量</strong></span></td>
 
</tr>
 
<tr>
 
<td><code class="literal">TINYINT</code></td>
 
<td>1 バイト</td>
 
</tr>
 
<tr>
 
<td><code class="literal">SMALLINT</code></td>
 
<td>2 バイト</td>
 
</tr>
 
<tr>
 
<td><code class="literal">MEDIUMINT</code></td>
 
<td>3 バイト</td>
 
</tr>
 
<tr>
 
<td>
 
<code class="literal">INT</code>,
 
              <code class="literal">INTEGER</code>
 
</td>
 
<td>4 バイト</td>
 
</tr>
 
<tr>
 
<td><code class="literal">BIGINT</code></td>
 
<td>8 バイト</td>
 
</tr>
 
<tr>
 
<td><code class="literal">FLOAT(<em class="replaceable"><code>p</code></em>)</code></td>
 
<td>0 &lt;= <em class="replaceable"><code>p</code></em> &lt;= 24 の場合は 4
 
              バイト、25 &lt;= <em class="replaceable"><code>p</code></em> &lt;= 53
 
              の場合は 8 バイト</td>
 
</tr>
 
<tr>
 
<td><code class="literal">FLOAT</code></td>
 
<td>4 バイト</td>
 
</tr>
 
<tr>
 
<td>
 
<code class="literal">DOUBLE [PRECISION]</code>,
 
              <code class="literal">REAL</code>
 
</td>
 
<td>8 バイト</td>
 
</tr>
 
<tr>
 
<td>
 
<code class="literal">DECIMAL(<em class="replaceable"><code>M</code></em>,<em class="replaceable"><code>D</code></em>)</code>,
 
              <code class="literal">NUMERIC(<em class="replaceable"><code>M</code></em>,<em class="replaceable"><code>D</code></em>)</code>
 
</td>
 
<td>変動; 後の説明を参照</td>
 
</tr>
 
<tr>
 
<td><code class="literal">BIT(<em class="replaceable"><code>M</code></em>)</code></td>
 
<td>約 (<em class="replaceable"><code>M</code></em>+7)/8 バイト</td>
 
</tr>
 
</tbody>
 
 
</table>
 
</table>

2014年8月3日 (日) 14:20時点における版

文字化け対策

/etc/my.cnfに次のとおり追加

[client]
default-character-set=utf8

[mysqld]
default-character-set=utf8
skip-character-set-client-handshake

カラムのデータ型を変更する

mysql> alter table [tablename] modify [データ型];

text,mediumtext,longtextの容量

Data Type記憶容量の上限値
BLOB,TEXT216
MEDIUMBLOB,MEDIUMTEXT224
LONGBLOB,LONGTEXT232