文字型、色々 | 楽しみながら、飲みつづける!(おうちカクテルの作り方とレシピ)

文字型、色々

日々なんちゃってプログラマとして、せっせとプログラム作成してる訳ですが・・・(汗)
 
ここ数年は、MySQL+PHPの組合せでLinuxサーバ上でのWebシステム開発がメインって感じで
主にPHPスクリプト言語で、DBからデータ取得して画面表示したり、画面から入力されたデータをDBに登録したり、みたいな画面作り担当なんです。
 
がっ・・・珍しく、DB設計をするハメに(←DB担当者が忙しいから。滝汗)
 
 
復習を兼ねて、フィールド型をメモしておきます。
データ的に、よく使う事になるフィールド型は
 1.文字型 2.数値型 3.日付型
の3種類ですかね?
今回は、MySQLの文字型のメモです。
 
 
■文字型の種類
 CHAR(バイト数)    固定長文字列 ~255バイト
 VARCHAR(バイト数) 可変長文字列 ~255バイト
 TEXT          可変長文字列 ~65,535バイト
 MEDIUMTEXT    可変長文字列 ~16,777,215バイト
 LONGTEXT      可変長文字列 ~4,294,967,295バイト
 
■文字型ワンポイント!?
 CHAR型とVARCHAR型の違いは、例えば桁が決まっている?NOを扱う時(00001とか長さが固定)の場合にはCHAR型を使う。
 VARCHAR型の場合に、日本語(全角)で最大50文字を想定している場合{※日本語(全角)が2バイトなので、にする}は、VARCHAR(100)になる。
 VARCHAR型をWeb画面から入力する際には、最大文字数をチェックしないと・・・文字数がオーバーしている分は切り捨てられる(日本語の場合は2バイトなので、オーバーした時に1バイト分切り捨てられると文字化けしたりとかします)
 
■文字型の悩み???
 VARCHAR(200)くらいの場合は、いっそTEXT型にしようかと?悩むんですけど・・・