mysql 之 sql管理數據 一

一、sql_modemysql

mysql數據庫的中有一個環境變量sql_mode,定義了mysql應該支持的sql語法,數據校驗等!sql

> 查看當前數據庫使用的 sql_mode數據庫

mysql> select @@sql_mode;
+----------------------------------------------------------------+
| @@sql_mode                                                     |
+----------------------------------------------------------------+
| STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION |
+----------------------------------------------------------------+

  > 經過 查看系統環境變量方式:服務器

mysql> show variables like 'sql_mode%';
+---------------+---------------------------------------------------------------
-+
| Variable_name | Value
 |
+---------------+---------------------------------------------------------------
-+
| sql_mode      | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
 |
+---------------+---------------------------------------------------------------
-+

> 修改 當前會話 sql_modesession

mysql> set sql_mode = 'traditional';
Query OK, 0 rows affected (0.00 sec)

> 修改成 全局性設置 - 須要有 super管理權限app

mysql> set global sql_mode = 'traditional';
Query OK, 0 rows affected (0.00 sec)

> 查看 當前會話和全局性 sql_modeide

select @@session.sql_mode;
select @@global.sql_mode;

二、字符集spa

     > 查看mysql 服務器的當前字符集 和 排列方式code

mysql> show variables like 'character\_set\_%';
+--------------------------+--------+
| Variable_name            | Value  |
+--------------------------+--------+
| character_set_client     | latin1 |
| character_set_connection | latin1 |
| character_set_database   | latin1 |
| character_set_filesystem | binary |
| character_set_results    | latin1 |
| character_set_server     | latin1 |
| character_set_system     | utf8   |
+--------------------------+--------+
7 rows in set (0.00 sec)
mysql> show variables like 'collation\_%';
+----------------------+-------------------+
| Variable_name        | Value             |
+----------------------+-------------------+
| collation_connection | latin1_swedish_ci |
| collation_database   | latin1_swedish_ci |
| collation_server     | latin1_swedish_ci |
+----------------------+-------------------+
3 rows in set (0.00 sec)

> 建立 新的 庫和表時,設置字符集和排列方式orm

mysql> create database 20170620_test character set utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.01 sec)

mysql> create table tt(
    -> id int primary key auto_increment,
    -> name varchar(20)
    -> ) character set utf8 collate utf8_general_ci;
Query OK, 0 rows affected (0.09 sec)

> 修改 某個數據庫 和 某張表的 字符集

alter database mini default character set = gb2312; 
alter table pub_logs default character set = gb2312;

三、數據庫的 操做

    > 選中數據庫  use db_name; 

    > 建立數據庫  create database if not exists db_name;

                         create database if not exists db_name character set utf8 collate utf8_general_ci;

    > 刪除數據庫  drop database db_name;   -> 會刪除 此數據庫中全部的 東西,且不可恢復

    > 數據庫的變動 

       alter database db_name character set utf8 collate utf8_general_ci;

四、查看 哪些存儲引擎可供選用

mysql> show engines;
+--------------------+---------+------------------------------------------------
----------------+--------------+------+------------+
| Engine             | Support | Comment
                | Transactions | XA   | Savepoints |
+--------------------+---------+------------------------------------------------
----------------+--------------+------+------------+
| FEDERATED          | NO      | Federated MySQL storage engine
                | NULL         | NULL | NULL       |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables
                | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine
                | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to
 it disappears) | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine
                | NO           | NO   | NO         |
| MEMORY             | YES     | Hash based, stored in memory, useful for tempor
ary tables      | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine
                | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and f
oreign keys     | YES          | YES  | YES        |
| PERFORMANCE_SCHEMA | YES     | Performance Schema
                | NO           | NO   | NO         |
+--------------------+---------+------------------------------------------------
----------------+--------------+------+------------+
9 rows in set (0.00 sec)

>  也 能夠 經過 查詢  information_schema.engines 來查看  -> mysql 5.1 以上 更高的 版本

mysql> select engine from information_schema.engines where transactions = 'yes';
+--------+
| engine |
+--------+
| InnoDB |
+--------+
1 row in set (0.00 sec)
相關文章
相關標籤/搜索