一、 如何使用終端操作數(shù)據(jù)庫
- 如何登陸數(shù)據(jù)庫服務(wù)器(數(shù)據(jù)庫賬戶密碼都為root)
mysql -uroot -proot
- 如何查詢數(shù)據(jù)庫服務(wù)器中所有的數(shù)據(jù)庫
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| chapter09 |
| chengji |
| mysql |
| performance_schema |
| student_design |
| studentsystem |
| test |
| test0305 |
+--------------------+
9 rows in set (1.74 sec)
- 如何選中某一個數(shù)據(jù)庫進(jìn)行操作(這里操作的數(shù)據(jù)庫名為test)
在進(jìn)行刪除析校,修改,查詢操作之前需要指定數(shù)據(jù)庫浅侨,指定你所需要的數(shù)據(jù)庫才可以進(jìn)行操作,否則會報錯证膨。
mysql> use test;
Database changed
- 查詢test數(shù)據(jù)庫中student表的全部內(nèi)容
mysql> select * from student;
+------+------+------+------+------+---------------------+---------------------+
| 學(xué)號 | 姓名 | 班級 | 年齡 | 成績 | 插入時間 | 更新時間 |
+------+------+------+------+------+---------------------+---------------------+
| 1 | s | 1 | 18 | 86 | 2018-08-06 00:00:00 | 2018-08-06 00:00:00 |
| 2 | s | 1 | 17 | 96 | 2018-08-06 00:00:00 | 2018-08-07 00:00:00 |
| 3 | w | 1 | 15 | 45 | 2018-08-06 00:00:00 | 2018-08-06 00:00:00 |
| 4 | l | 1 | 17 | 98 | 2018-08-07 00:00:00 | 2018-08-07 00:00:00 |
+------+------+------+------+------+---------------------+---------------------+
4 rows in set (0.06 sec)
- 查詢test數(shù)據(jù)庫中student表中學(xué)號為1的學(xué)生信息
mysql> select * from student where 學(xué)號 = '1';
+------+------+------+------+------+---------------------+---------------------+
| 學(xué)號 | 姓名 | 班級 | 年齡 | 成績 | 插入時間 | 更新時間 |
+------+------+------+------+------+---------------------+---------------------+
| 1 | s | 1 | 18 | 86 | 2018-08-06 00:00:00 | 2018-08-06 00:00:00 |
+------+------+------+------+------+---------------------+---------------------+
1 row in set (0.00 sec)
若列名為中文如输,在終端使用查詢語句出錯時(報錯格式如下),使用下面語句進(jìn)行修改編碼椎例,再使用查詢語句進(jìn)行查詢即可:
mysql> select * from student where 學(xué)號 = '1';
ERROR 1300 (HY000): Invalid utf8 character string: '\xD1\xA7\xBA'
mysql> set character_set_client=gb2312;
Query OK, 0 rows affected (0.00 sec)
- 如何在數(shù)據(jù)庫服務(wù)器中創(chuàng)建以及刪除我們的數(shù)據(jù)庫(數(shù)據(jù)庫名為shop)
mysql> create database shop;
Query OK, 1 row affected (0.02 sec)
mysql> drop database shop;
Query OK, 0 rows affected (1.65 sec)
- 如何創(chuàng)建數(shù)據(jù)表
mysql> use shop;
mysql> create table milk(
-> name varchar(20),
-> price int(15),
-> num int(30),
-> date date);
Query OK, 0 rows affected (1.68 sec)
- 查詢某數(shù)據(jù)庫下的所有數(shù)據(jù)表
mysql> show tables;
+----------------+
| Tables_in_shop |
+----------------+
| milk |
+----------------+
1 row in set (0.00 sec)
- 查看創(chuàng)建好的數(shù)據(jù)表的結(jié)構(gòu)
mysql> describe milk;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| name | varchar(20) | YES | | NULL | |
| price | int(15) | YES | | NULL | |
| num | int(30) | YES | | NULL | |
| date | date | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
4 rows in set (0.03 sec)
- 如何往數(shù)據(jù)表中添加數(shù)據(jù)記錄
mysql> insert into milk values ('yili',30,432,'2019-12-21');
Query OK, 1 row affected (0.01 sec)
- 如何在數(shù)據(jù)表中修改數(shù)據(jù)(將milk表中日期為'2019-12-21'的牛奶名字改為‘mengniu’)
mysql> update milk set name='mengniu' where date='2019-12-21';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
- 如何在數(shù)據(jù)表中刪除數(shù)據(jù)(將milk表中名字為'mengniu'的記錄刪除)
mysql> delete from milk where name='mengniu';
Query OK, 1 row affected (0.01 sec)
- 如何刪除數(shù)據(jù)表
mysql> drop table milk;
Query OK, 0 rows affected (0.01 sec)
- 如何退出MySQL
mysql> exit;
Bye
C:\Users\lenovo>
注意:使用的字符編碼設(shè)置不匹配就會出現(xiàn)亂碼,因為中文操作系統(tǒng)默認(rèn)字符集是GB2312请祖,所以需要把輸出窗口使用的字符編碼改成GB2312才能夠正常顯示中文订歪。
若查詢出的內(nèi)容為亂碼肆捕,則使用以下語句修改編碼使內(nèi)容正常顯示
set character_set_results=gb2312;
二刷晋、 MySQL數(shù)據(jù)類型
MySQL支持多種類型,大致可以分為3類:數(shù)值慎陵,日期眼虱,字符串(字符)類型。
- 數(shù)值類型
類型 | 大小 | 范圍(有符號) | 范圍(無符號) | 用途 |
---|---|---|---|---|
TINYINT | 1 字節(jié) | (-128席纽,127) | (0捏悬,255) | 小整數(shù)值 |
SMALLINT | 2 字節(jié) | (-32 768,32 767) | (0润梯,65 535) | 大整數(shù)值 |
MEDIUMINT | 3 字節(jié) | (-8 388 608过牙,8 388 607) | (0,16 777 215) | 大整數(shù)值 |
INT或INTEGER | 4 字節(jié) | (-2 147 483 648纺铭,2 147 483 647) | (0寇钉,4 294 967 295) | 大整數(shù)值 |
BIGINT | 8 字節(jié) | (-9,223,372,036,854,775,808,9 223 372 036 854 775 807) | (0舶赔,18 446 744 073 709 551 615) | 極大整數(shù)值 |
FLOAT | 4 字節(jié) | (-3.402 823 466 E+38扫倡,-1.175 494 351 E-38),0竟纳,(1.175 494 351 E-38撵溃,3.402 823 466 351 E+38) | 0,(1.175 494 351 E-38锥累,3.402 823 466 E+38) | 單精度 |
DOUBLE | 8 字節(jié) | (-1.797 693 134 862 315 7 E+308征懈,-2.225 073 858 507 201 4 E-308),0揩悄,(2.225 073 858 507 201 4 E-308卖哎,1.797 693 134 862 315 7 E+308) | 0,(2.225 073 858 507 201 4 E-308,1.797 693 134 862 315 7 E+308) | 雙精度 |
DECIMAL | 對DECIMAL(M,D) 亏娜,如果M>D焕窝,為M+2否則為D+2 | 依賴于M和D的值 | 依賴于M和D的值 | 小數(shù)值 |
-
日期類型
image.png -
字符串類型
image.png