Mysql學習筆記2--使用入門
mysql> create database kakaxi;
Query OK, 1 row affected (0.02 sec)
---要知道系統中有哪些資料庫,可以使用如下命令查詢
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| company |
| kakaxi |
| mysql |
| performance_schema |
| sys |
+--------------------+
6 rows in set (0.00 sec)
information_schema-- 主要儲存系統中的一些資料庫物件資訊,比如使用者表資訊,列資訊,許可權資訊,字符集資訊,分割槽資訊。
mysql -- 儲存了系統的使用者許可權資訊。
performance_schema -- 是mysql 提供的在系統底層監視mysql伺服器效能的一個特性,performance_schema儲存引擎會監視mysql服務的事件。
sys -- mysql5.7 增加了sys系統資料庫,透過這個庫可以快速的瞭解系統後設資料資訊。
---查詢當前使用的資料庫
mysql> select database();
+------------+
| database() |
+------------+
| NULL |
+------------+
1 row in set (0.00 sec)
mysql> use kakaxi;
Database changed
mysql> select database();
+------------+
| database() |
+------------+
| kakaxi |
+------------+
1 row in set (0.00 sec)
---刪除資料庫
mysql> drop database kakaxi;
Query OK, 0 rows affected (0.56 sec)
---使用use dbname 選擇要連線的資料庫
mysql> use mysql;
Database changed
---檢視資料庫中存在的表
mysql> show tables;
+---------------------------+
| Tables_in_mysql |
+---------------------------+
| columns_priv |
| db |
| engine_cost |
| event |
| func |
| general_log |
| gtid_executed |
| help_category |
| help_keyword |
| help_relation |
| help_topic |
| innodb_index_stats |
| innodb_table_stats |
| ndb_binlog_index |
| plugin |
| proc |
| procs_priv |
| proxies_priv |
| server_cost |
| servers |
| slave_master_info |
| slave_relay_log_info |
| slave_worker_info |
| slow_log |
| tables_priv |
| time_zone |
| time_zone_leap_second |
| time_zone_name |
| time_zone_transition |
| time_zone_transition_type |
| user |
+---------------------------+
31 rows in set (0.04 sec)
---建立表,由於mysql 的表名是以目錄的形式存在磁碟上的,所以表名要符合任何目錄允許的字元
mysql> create table delp(deptno int(4),deptname varchar(50));
Query OK, 0 rows affected (0.74 sec)
---檢視錶結構
mysql> desc delp
-> ;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| deptno | int(4) | YES | | NULL | |
| deptname | varchar(50) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
2 rows in set (0.11 sec)
mysql> create table employee(eid int(4),ename varchar(50),birthday date,deptno i
nt (4));
Query OK, 0 rows affected (0.38 sec)
---檢視構造表的ddl語句
mysql> show create table employee \G;
*************************** 1. row ***************************
Table: employee
Create Table: CREATE TABLE `employee` (
`eid` int(4) DEFAULT NULL,
`ename` varchar(50) DEFAULT NULL,
`birthday` date DEFAULT NULL,
`deptno` int(4) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.03 sec)
ERROR: (這裡有個ERROR,暫時還不明白是什麼意思)
No query specified
---alter table的使用方法
mysql> alter table employee rename emp;
Query OK, 0 rows affected (0.22 sec)
mysql> desc emp
-> ;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| eid | int(4) | YES | | NULL | |
| ename | varchar(50) | YES | | NULL | |
| birthday | date | YES | | NULL | |
| deptno | int(4) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
4 rows in set (0.07 sec)
---修改表中列名
alter table tabname change column old_col_name new_col_name col_definition;
---將birthday 改為birthdate
mysql> alter table emp change birthday birdate date;
Query OK, 0 rows affected (0.20 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc emp;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| eid | int(4) | YES | | NULL | |
| ename | varchar(50) | YES | | NULL | |
| birdate | date | YES | | NULL | |
| deptno | int(4) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
---修改表中欄位的型別
mysql> alter table emp modify eid int(5);
Query OK, 0 rows affected (0.08 sec)
Records: 0 Duplicates: 0 Warnings: 0
alter table tabname modify [column] column_definition [FIRST|AFTER col_name]
mysql> desc emp;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| eid | int(5) | YES | | NULL | |
| ename | varchar(50) | YES | | NULL | |
| birdate | date | YES | | NULL | |
| deptno | int(4) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
比較一下change 和modify 的區別:
1. change 和modify 都可以修改表的定義,不同的是change 後面需要寫兩次列名,不方便。
2. change的優點是可以修改表中的列名稱,而modify則不能。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21374452/viewspace-2130124/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL學習筆記---入門使用MySql筆記
- 深度學習入門筆記——Transform的使用深度學習筆記ORM
- 深度學習入門筆記——DataLoader的使用深度學習筆記
- git入門學習筆記Git筆記
- Docker入門學習筆記Docker筆記
- Unity學習筆記--入門Unity筆記
- TS入門學習筆記筆記
- 【PostgreSQL】入門學習筆記SQL筆記
- JavaScript入門學習學習筆記(上)JavaScript筆記
- HTML入門學習筆記(二)HTML筆記
- React入門指南(學習筆記)React筆記
- pandas 學習筆記 (入門篇)筆記
- Go 入門指南學習筆記Go筆記
- Dubbo學習筆記(一) 入門筆記
- JavaScript入門-學習筆記(一)JavaScript筆記
- JavaScript學習筆記1—快速入門JavaScript筆記
- iOS學習筆記39 ReactiveCocoa入門iOS筆記React
- redis學習筆記1: Redis入門Redis筆記
- webpack 學習筆記:入門介紹Web筆記
- node 學習筆記 基礎入門筆記
- python學習筆記——jieba庫入門Python筆記Jieba
- Elasticsearch入門學習重點筆記Elasticsearch筆記
- CANopen學習筆記(一)CANopen入門筆記
- 【Laravel 入門教程】學習筆記 1Laravel筆記
- 【MongoDB學習筆記】MongoDB 快速入門MongoDB筆記
- java學習筆記1(入門級)Java筆記
- 爬蟲入門學習筆記3爬蟲筆記
- Redis基礎知識(學習筆記2--分散式鎖)Redis筆記分散式
- 記一次flink入門學習筆記筆記
- MySql學習筆記MySql筆記
- 微信小程式入門學習筆記微信小程式筆記
- SpringMVC學習筆記之---簡單入門SpringMVC筆記
- SpringBoot整合ElasticSearch 入門demo學習筆記Spring BootElasticsearch筆記
- 安卓學習筆記20:Fragment入門安卓筆記Fragment
- webpack4入門學習筆記(一)Web筆記
- webpack4入門學習筆記(二)Web筆記
- substrate學習筆記2:substrate快速入門筆記
- go實戰web入門學習筆記GoWeb筆記
- Java IO學習筆記八:Netty入門Java筆記Netty