MyChemを使ってMySQLで化合物管理用のデータベースを作成します。

データベース名はchemdbとして、
化合物情報を収めるテーブルmolsを用意します。

まずはデータベースを作成。
文字コードはUTF8で、ci:case-insensitiveで大文字小文字や半角全角を区別するデータベースchemdbとする。

[root@s ~]# mysql
mysql> CREATE DATABASE IF NOT EXISTS chemdb CHARACTER SET utf8 COLLATE utf8_general_ci
Query OK, 1 row affected (0.00 sec)
 
mysql> show databases LIKE 'chemdb';
+-------------------+
| Database (chemdb) |
+-------------------+
| chemdb            |
+-------------------+
1 row in set (0.00 sec)
 
mysql>

次にテーブルを作成する。作成するテーブルmolsは、SMILESを扱うので大文字小文字の区別は必須、なのでテーブル作成時にテーブル全体、もしくはフィールドにCOLLATE utf8_binを設ける必要がある。

mysql> use chemdb;
Database changed
mysql>
mysql> CREATE TABLE IF NOT EXISTS mols (
   id int(11) unsigned NOT NULL,
   sdf    text NOT NULL,
   smiles text,
   PRIMARY KEY pk_id (id)
   )
   ENGINE=InnoDB DEFAULT CHARSET= utf8 COLLATE= utf8_bin
   COMMENT='Compound 3D Structures';
mysql>
mysql> desc mols;
+--------+------------------+------+-----+---------+-------+
| Field  | Type             | Null | Key | Default | Extra |
+--------+------------------+------+-----+---------+-------+
| id     | int(11) unsigned | NO   | PRI | NULL    |       |
| sdf    | text             | NO   |     | NULL    |       |
| smiles | text             | YES  |     | NULL    |       |
+--------+------------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql>

注意:int(11) UNSIGNED はintの整数部分のみを意味します


トップ   編集 添付 複製 名前変更     ヘルプ   最終更新のRSS
Last-modified: 2014-05-02 (金) 16:47:49 (3246d)