MySQLコマンド集
![]()
mysqlのよく使うコマンドをまとめてみました。
環境関連
-
文字コードの確認
mysql> show variables like 'chara%'; +--------------------------+----------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------+ | character_set_client | ujis | | character_set_connection | ujis | | character_set_database | ujis | | character_set_filesystem | binary | | character_set_results | ujis | | character_set_server | ujis | | character_set_system | utf8 | | character_sets_dir | /usr/local/share/mysql/charsets/ | +--------------------------+----------------------------------+ 8 rows in set (0.00 sec) -
文字化け対策
mysql> set character_set_results=utf8;データベースをutf8としている場合。
トランザクション関連
-
トランザクションの開始
mysql> start transaction; -
トランザクションのコミット
mysql> commit; -
トランザクションのロールバック
mysql> rollback; -
自動コミットの確認
mysql> show variables like 'autocommit'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | autocommit | ON | +---------------+-------+ 1 row in set (0.00 sec)ValueがONなら自動コミット中。OFFなら自動コミットされない。
mysql> select @@autocommit; +--------------+ | @@autocommit | +--------------+ | 1 | +--------------+ 1 row in set (0.00 sec)@@autocommitが1なら自動コミット中。0なら自動コミットされない。
-
自動コミットの設定
mysql>> autocommit=0;セットする値が0なら自動コミット解除。1なら自動コミット化設定となる。この設定は設定したセッションの間だけ持続します。一度セッションを切断すると初期値に戻ります。
データーベース関連
-
データーベース一覧を表示
mysql> show databases; -
データーベースの切り替え
mysql> use [database-name];[database-name]部分に、使いたいデータベース名を指定する。
テーブル関連
-
テーブル一覧を表示
mysql> show tables; -
テーブル構造を表示
mysql> show columns from [table-name];mysql> desc [table-name];[table-name]にテーブル名を指定します。
-
テーブル全体をコピー
mysql> create table [new-table] like [source-table]; mysql> insert into [new-table] select * from [souce-table];[new-table]にコピー先テーブル名を指定。[source-table]にはコピー元のテーブル名を指定します。1行目でテーブル構造を、2行目でデータをコピーしています。1行目の[new-table]には存在しないテーブル名を指定すること。
-
SELECT文を使ったUPDATE
[table-a]には更新される側のテーブル名を、[table-b]には反映させたいデータを持っているテーブル名を指定。mysql> UPDATE [table-a] a LEFT JOIN [table-b] b -> ON a.ID=b.ID -> SET a.content=b.content -> WHERE b.ID>100;mysql> desc [table-a] +--------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+---------------------+------+-----+---------+----------------+ | ID | bigint(20) unsigned | NO | PRI | NULL | auto_increment | | content | longtext | NO | | NULL | | +--------------+---------------------+------+-----+---------+----------------+ mysql> desc [table-b] +--------------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +--------------+---------------------+------+-----+---------+----------------+ | ID | bigint(20) unsigned | NO | PRI | NULL | auto_increment | | content | longtext | NO | | NULL | | +--------------+---------------------+------+-----+---------+----------------+
広告
