このサイトのはてなブックマーク数の合計

www を検索 sarabande.info を検索
トップページに戻る

CRUD(MySQL)

MySQLの場合

データベース

Create:データベースを作成する

 
CREATE DATABASE IF NOT EXISTS testdb;
 

Read:現在使用しているデータベースを表示する

 
SELECT DATABASE();
 

データベースの定義を表示する

 
SHOW CREATE DATABASE testdb;
 

Update:データベースのキャラクタセットと照合順序を変更する

 
ALTER DATABASE testdb character SET cp932 collate cp932_bin;
 

データベースをリネームする(MySQL5.1.7以降)

 
RENAME testdb TO testdb2;
 

Delete:データベースを削除する

 
DROP DATABASE testdb;
 

ユーザー

Create:ユーザとパスワードを作成する

 
CREATE USER testuser IDENTIFIED BY 'testpassword';
 

ユーザ権限を設定する

 
GRANT CREATE, SELECT, INSERT, UPDATE, ALTER, DELETE ON testdb.* TO testuser@localhost IDENTIFIED BY 'testpassword';
 

Read:現在のユーザ名を表示する

 
SELECT user(); SELECT current_user();
 

現在のユーザ権限を表示する

 
SHOW GRANTS FOR CURRENT_USER();
 

ユーザ一覧を表示する(管理者権限)

 
USE mysql; SELECT User FROM user;
 

Update:ユーザ名をリネームする

rename user testuser to testuser2;

パスワードを変更する

 
SET password FOR testuser=password('testpassword2');
 

Delete:ユーザーの全権限を破棄する

revoke all privileges on *.* from testuser@localhost;

ユーザーを削除する

drop user testuser2;

テーブル

Create:テーブルを作成する

 
CREATE TABLE IF NOT EXISTS test(id smallint UNSIGNED AUTO_INCREMENT, name varchar(50), birth date, PRIMARY KEY (id));
 

Read:テーブルの一覧を表示する

 
SHOW TABLES;
 

テーブルの定義を表示する

 
SHOW CREATE TABLE test;
 

もしくは

 
DESC test;
 

Update:テーブルをリネームする。新しくリネームされたテーブルにはリネームされる前のテーブルの権限は委譲されない。

 
RENAME TABLE test TO test2;
 

テーブルのキャラクタセット・照合順序を変更する。テーブルだけでデータは変換されない

 
ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name COLLATE collation_name;
 

Delete:テーブルを削除する

 
DROP TABLE IF EXISTS test;
 

カラム

test5(id int)テーブルを前提とする。

カラムを追加する。nameカラムをidカラムの後ろに追加する

 
ALTER TABLE test5 ADD COLUMN name text after id;
 

カラムをリネームする。nameカラムをcomposer_nameとリネームする

 
ALTER TABLE test5 CHANGE COLUMN name composer_name varchar(50);
 

カラムタイプを変更する。nameカラムのデータ型をvarchar(50)に変更する

 
ALTER TABLE test5 MODIFY COLUMN name varchar(50);
 

カラムを削除する。composer_nameカラムを削除する

 
ALTER TABLE test5 DROP COLUMN name;
 

データ

テキストファイルからレコードを追加する。LOAD DATA INFILE文を使用する場合は以下の通り

TSVの場合

 
LOAD DATA INFILE 'c:/test.txt' INTO TABLE orchestra.test(part,day);
 

CSVの場合

 
LOAD DATA INFILE 'c:/test.txt' INTO TABLE test FIELDS terminated BY ',' (part,day);
 

Read:

TSV

 
SELECT part,day INTO OUTFILE 'C:/test2.txt' FROM test;
 

CSV

 
SELECT part,day INTO OUTFILE 'C:/test3.txt' FIELDS terminated BY ',' FROM test;
 

高速の全件削除

 
TRUNCATE test;
 

通常の全検削除

 
DELETE FROM test;</source>
 
トップページに戻る