shell> mysql -h host -u user -p // 接続 mysql> ・・・・・ mysql> QUIT // 切断
mysql> CREATE DATABASE base; // 作成 mysql> USE base // データベース base の選択 mysql> DROP DATABASE base; // 削除
mysql> CREATE TABLE gakuseki (No INT(9) NOT NULL PRIMARY KEY, -> name VARCHAR(50) NOT NULL, math INT(3)); mysql> SHOW TABLES; // 存在するテーブルのリストの表示 出力結果: +----------------+ | Tables_in_base | +----------------+ | gakuseki | +----------------+ mysql> DESCRIBE gakuseki; // テーブル gakuseki の定義内容の表示 出力結果: +-------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+-------+ | No | int(9) | | PRI | 0 | | | name | varchar(50) | | | | | | math | int(3) | YES | | NULL | | +-------+-------------+------+-----+---------+-------+
111111111 山田 10 555555555 佐藤 50
mysql> LOAD DATA LOCAL INFILE "test1.txt" INTO TABLE gakuseki; mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 111111111 | 山田 | 10 | | 555555555 | 佐藤 | 50 | +-----------+------+------+
222222222 鈴木 20 333333333 山本 30 111111111 山田 10
mysql> LOAD DATA LOCAL INFILE "test2.txt" INTO TABLE gakuseki; mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 111111111 | 山田 | 10 | | 555555555 | 佐藤 | 50 | | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | +-----------+------+------+
mysql> INSERT INTO gakuseki VALUES(444444444,'杉山',40); mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 111111111 | 山田 | 10 | | 555555555 | 佐藤 | 50 | | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | | 444444444 | 杉山 | 40 | +-----------+------+------+
mysql> INSERT INTO gakuseki VALUES(222222222,'佐藤',40); → エラー
mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 111111111 | 山田 | 10 | | 555555555 | 佐藤 | 50 | | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | | 444444444 | 杉山 | 40 | +-----------+------+------+
mysql> DELETE FROM gakuseki WHERE No=222222222; mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 111111111 | 山田 | 10 | | 555555555 | 佐藤 | 50 | | 333333333 | 山本 | 30 | | 444444444 | 杉山 | 40 | +-----------+------+------+
mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 111111111 | 山田 | 10 | | 555555555 | 佐藤 | 50 | | 333333333 | 山本 | 30 | | 444444444 | 杉山 | 40 | +-----------+------+------+
mysql> UPDATE gakuseki SET math=100 WHERE No=111111111; mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 111111111 | 山田 | 100 | | 555555555 | 佐藤 | 50 | | 333333333 | 山本 | 30 | | 444444444 | 杉山 | 40 | +-----------+------+------+
mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | | 111111111 | 山田 | 10 | +-----------+------+------+
mysql> ALTER TABLE gakuseki ADD eng INT(3) AFTER name; mysql> SELECT * FROM gakuseki;
+-----------+------+------+------+ | No | name | eng | math | +-----------+------+------+------+ | 222222222 | 鈴木 | NULL | 20 | | 333333333 | 山本 | NULL | 30 | | 111111111 | 山田 | NULL | 10 | +-----------+------+------+------+
mysql> ALTER TABLE gakuseki DROP eng; mysql> SELECT * FROM gakuseki;
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | | 111111111 | 山田 | 10 | +-----------+------+------+
mysql-connector-java-3.0.14-production-bin.jar
CLASSPATH=.;c:\jdk1.3.1\lib\mysql-connector-java-3.0.14-production-bin.jar
import java.io.*; import java.sql.*; public class Test { public static void main(String args[]) { Connection Con; // JDBCドライバの登録 try { Class.forName("com.mysql.jdbc.Driver").newInstance(); } catch (Exception e1) { System.out.println("Driver Error: " + e1.toString()); } // データベースへの接続 // getConnection(データベース名, ユーザ名, パスワード) try { Con = DriverManager.getConnection("jdbc:mysql://cs-www/mysql?useUnicode=true&characterEncoding=sjis", "ユーザ名", "パスワード"); // +++++SQLの作成+++++ // ・・・・・ // 接続を切る Con.close(); } catch (SQLException e2) { System.out.println("SQLException: " + e2.getMessage()); System.out.println("SQLState: " + e2.getSQLState()); System.out.println("VendorError: " + e2.getErrorCode()); } } }
mysql> GRANT ALL PRIVILEGES ON *.* TO suganuma@"133.88.%.%" -> IDENTIFIED BY 'パスワード' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO suganuma@localhost -> IDENTIFIED BY 'パスワード' WITH GRANT OPTION; mysql> FLUSH PRIVILEGES;
#!/bin/bash CLASSPATH=.:/usr/java/j2sdk1.4.2_05/lib/mysql-connector-java-3.0.14-production-bin.jar export CLASSPATH # クラスパスの設定 export LANG=ja_JP.eucJP # 日本語環境の設定 echo Content-type: text/plain # HTTP header echo # HTTP header java Test | nkf -s # SQLを実行し,結果をShift JISに変換
gcc test.c -L/usr/lib/mysql -lmysqlclient -lz
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | | 111111111 | 山田 | 10 | +-----------+------+------+
222222222 鈴木 20 333333333 山本 30 111111111 山田 10
#include <mysql/mysql.h> #include <stdio.h> #include <stdlib.h> #include <string.h> int main() { int i1, sw; char query[100] = "SELECT * FROM gakuseki"; MYSQL *d_mysql = NULL; MYSQL_RES *result; MYSQL_ROW row; // 初期設定と接続 // MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, // const char *user, const char *passwd, const char *db, // unsigned int port, const char *unix_socket, // unsigned long client_flag) d_mysql = mysql_init(d_mysql); d_mysql = mysql_real_connect(d_mysql, "localhost", "xxxxx", "*****", "base", 0, NULL, 0); if (!d_mysql) { printf("***error*** 接続に失敗しました\n"); exit(1); } // SQL 文の実行 sw = mysql_real_query(d_mysql, query, strlen(query)); if (sw != 0) { printf("***error*** SELECT 文の実行に失敗しました\n"); mysql_free_result(result); // 結果セットに割り当てたメモリを解放 exit(1); } // 正常にデータを取得したクエリ(SELECT,SHOW,DESCRIBE,EXPLAIN) // については,mysql_store_result() または mysql_use_result() を // 呼び出す必要がある result = mysql_store_result(d_mysql); // 結果の表示 // mysql_fetch_row(result) : 結果セットの次のレコードを取得します. // mysql_store_result() を呼び出した後に mysql_fetch_row() を // 使用する場合,取得するレコードが残っていなければ NULL を返します. while (row = mysql_fetch_row(result)) { for (i1 = 0; i1 < mysql_num_fields(result); i1++) printf("%s ", row[i1]); printf("\n"); } // 接続を切る mysql_free_result(result); // 結果セットに割り当てたメモリを解放 mysql_close(d_mysql); return 0; }
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | | 111111111 | 山田 | 10 | +-----------+------+------+
222222222 鈴木 20 333333333 山本 30 111111111 山田 10
<HTML> <HEAD> <TITLE>Test PHP&MySQL</TITLE> </HEAD> <BODY> 222222222 鈴木 20 <BR> 333333333 山本 30 <BR> 111111111 山田 10 <BR> <BODY> <HTML>
<HTML> <HEAD> <TITLE>Test PHP&MySQL</TITLE> </HEAD> <BODY> <?php // MySQLへの接続 $db = mysql_connect("localhost", "xxxxx", "*****"); // 使用するデータベースの指定 mysql_select_db("base", $db); // SQL文の実行 $result = mysql_query("SELECT * FROM gakuseki", $db); while ($row = mysql_fetch_row($result)) { printf(" "); foreach ($row as $value) printf("%s ", $value); printf("<BR>\n"); } // 結果の解放 mysql_free_result ($result); // 接続を切る mysql_close ($db); ?> <BODY> <HTML>
<HTML> <HEAD> <TITLE>Test PHP&MySQL</TITLE> </HEAD> <BODY> <?php include "DB.php"; // MySQLデータベースへ接続 // connect("データベースの種類://ユーザ:パスワード@ホスト/データベース名"); // 種類: MySQL="mysql", PostgreSQL="pgsql", MS SQL-Server="mssql", ODBC="odbc" $dsn = "mysql://xxxxx:*****@localhost/base"; $db = DB::connect($dsn); // SQL文の実行 $result = $db->query("SELECT * FROM gakuseki"); while ($row = $result->fetchRow(DB_FETCHMODE_ASSOC)) { printf(" "); foreach ($row as $value) printf("%s ", $value); printf("<BR>\n"); } // 結果の解放 $result->free(); // 接続を切る $db->disconnect(); ?> <BODY> <HTML>
+-----------+------+------+ | No | name | math | +-----------+------+------+ | 222222222 | 鈴木 | 20 | | 333333333 | 山本 | 30 | | 111111111 | 山田 | 10 | +-----------+------+------+
222222222 鈴木 20 333333333 山本 30 111111111 山田 10
#!/usr/bin/perl use DBI; # データベース名の読込 read(STDIN, $DB_name, $ENV{'CONTENT_LENGTH'}); # HTTPヘッダの送信 print "Content-type: text/plain\n\n"; # データベースに接続 $DB = DBI->connect("DBI:mysql:".$DB_name.":localhost", "xxxxx", "*****", {RaiseError => 0, PrintError => 1}); if (!$DB) { print "接続できませんでした!\n"; print " Error No : ".DBI->err."\n"; print " Message : ".DBI->errstr."\n"; exit; } # SQL の実行 $result = $DB->prepare("SELECT * FROM gakuseki"); if (!$result->execute) { print "SQLの実行に失敗しました!\n"; print " Error No : ".$result->err."\n"; print " Message : ".$result->errstr."\n"; exit; } while (@rec = $result->fetchrow_array) { print " "; for ($i1 = 0; $i1 < $result->{NUM_OF_FIELDS}; $i1++) { print $rec[$i1]." "; } print "\n"; } $result->finish; # 切断 $DB->disconnect; exit;
菅沼ホーム | 本文目次 | 演習問題解答例 | 付録目次 | 索引 |