1 MacOS で PATH を通す 自分の Home に .bash_profile を作る。 vi .bash_profile として、その内容に以下を追加または修正をする。(新規かもしれない。) export PS1=’\u:\W\$ ’ export PATH=/usr/local/mysql/bin:/usr/local/bin:/opt/local/bin:$PATH alias em=’open -a /Applications/Emacs.app/Contents/MacOS/Emacs’ このあと、ターミナルを終了して再度開く。em は emacs をコマンドラインで開くのに 使う。 em ファイル名 2 Mysql データベースの表示、table の作成 徳田さんの文書までの操作はすでに済みとします。 mysql -u sato -D mydb -p でデータベースに入ります。 sql コマンドのキーワードでは、大文字と小文字は区別されません。以下で大文字の部分 は小文字で打ってもかまいません。逆に、データベース名、テーブル名などは区別されま すので注意してください。 以下では、コマンド キーワードは大文字、ユーザ依存部分は小文字で書きます。 1. データベースの表示 SHOW DATABASES; 2. データベースの選択 USE mydb; 3. テーブルの表示 SHOW TABLES; 4. テーブルの field(項目) の表示 SHOW FIELDS FROM test; これは、テーブル test の field を表示します。 5. 新しいテーブルの作成 CREATE TABLE friends (id INT,name VARCHAR(30),birth DATE); データ型には以下のようなものがあります。 (1) 数値 INT BIGINT DOUBLE (2) 文字列 CHAR(n) VARCHAR(n) TEXT n は適当な数です。char(20) は固定の 20 byte 文字列を意味する。 varchar(20) は 20byte 以下の文字列を意味する。TEXT は、大きな文字列に使用さ れる。 (3) 日付け DATE DATETIME DATE は’2009-10-31’ のような形式であり、DATETIME は’2009-10-31 13:30:00’ の 形式 です。 3 データの追加 friends にデータを追加してみます。 INSERT INTO friends VALUES(1,’kato’,’1990-1-1’); 文字列は、シングルクォートで囲みます。 mysql コマンドラインでは、上カーソルキーで前の入力文を再利用できます。 日本語の名前も入れてみてください。 データを表示するには SELECT * FROM friends; とします。 birth が不明なデータは INSERT INTO friends VALUES(1,’nakano’,NULL); のようにします。NULL は、特別なデータで値が無いことを表します。 4 データの変更 最初のデータの名前 kato を日本語に変更します。 UPDATE friends SET name=’ 加藤’ WHERE id=1; WHERE 以下は条件の指定で、これをしないとすべての name が変更されてしまう。 5 データの削除 id=1 と id=2を削除してみます。 DELETE FROM friends WHERE id=1 OR id=2; 名前が test であるデータを削除するには DELETE FROM friends WHERE name=’test’; とします。 WHERE を省略すると、すべてのデータが削除されるがテーブルの定義は残る。 テーブルを完全に削除するときは DROP TABLE friends; とする。データベースも DROP DATABASE mydb; と簡単(! ! !)に削除できる。 6 WHERE 句 WHERE で使用できる演算子は = , > , < , <= , >= , <> ここで、<>は一致しないことを表す。また論理演算には AND , OR , NOT が使える。 () を使って結合してもよい。 他にもいろいろある。 7 SELECT データを表示する select にも WHERE 句で条件を指定できる。 SELECT * FROM friends WHERE birth<’1980’; 並び替えは SELECT * FROM friends ORDER BY birth; とすると birth の昇順に表示される。 逆順にしたいときは、 SELECT * FROM friends ORDER BY birth DESC; と DESC を付け加える。 *では、すべての field が表示される。表示項目を限定するには SELECT name FROM friends; とか SELECT birth, name FROM friends; とする。 NULL 値を含むデータは SELECT * FROM friends WHERE birth IS NULL; 逆に、NULL でないデータは SELECT * FROM friends WHERE birth IS NOT NULL; 8 NULL field の値に NULL を許したくないときは、テーブル作成のとき CREATE TABLE friends (id INT NOT NULL,name VARCHAR(30) NOT NULL,birth DATE); のように NOT NULL の指定をします。 ここでは、ALTER を使って修正してみます ALTER TABLE friends MODIFY id INT NOT NULL; 確認するには SHOW FIELDS FROM friends; とします。 9 バッチファイル 次の内容のファイル friends.sql を作成します。 insert into friends values(15,’takeda’,NULL); insert into friends values(16,’nomura’,’1999-2-3’); これを、データベースに反映するには mysql -u sato -D mydb -p<friends.sql のようにします。 あるいは、mysql -u sato -D mydb -pXXXXXXXX<friends.sql のようにコマンドラインにパスワードを書いてもよい。XXXXXXXX の部分は、本当の パスワードにすること。 バッチファイルの内容は mysql コマンドが解釈できる任意の sql コマンドが書けるので、 たとえばファイルの先頭に use mydb; を入れておけば、 -D mydb は省略できる。
© Copyright 2024 Paperzz