如何查看mysql my.ini_MySQL学习笔记(一)
MySQL ?學(xué)習(xí)筆記
一.安裝
Typical:經(jīng)典安裝
Custom:自定義安裝
Complete: 完全安裝
二.修改編碼方式
[mysqld]
myini:character-set-server=utf8
[client] port=3306 default-character-set=utf8
三.啟動(dòng)停止mysql服務(wù)
cmd net stop mysql
cmd net start mysql
四.MySQL登錄
mysql -V 查看版本,并退出
mysql -uroot -p -P3306 -h127.0.0.1 登錄本地mysql
mysql>exit; 退出
mysql>quit; 退出
mysql>\q; 退出
五.修改MySQL提示符
shell>mysql -uroot -proot --prompt 新提示符 \h localhost
mysql>prompt 新提示符
(\D 完整日期 ?\d 當(dāng)前數(shù)據(jù)庫 \h 服務(wù)器名稱 ?\u當(dāng)前用戶)
六.常用命令&語句規(guī)范
select version() 顯示服務(wù)器版本
select now() 顯示當(dāng)前日期時(shí)間
select user() 顯示當(dāng)前用戶
關(guān)鍵字與函數(shù)名全部大寫
數(shù)據(jù)庫名稱,表名稱,字段名稱全部小寫
SQL語句以分號結(jié)尾
七.操作數(shù)據(jù)庫
創(chuàng)建數(shù)據(jù)庫
create {database|schema} ?[if not exist] db_name [default] character set [=] charset_name
create database t1;
create database if not exists t2 character set utf8;
查看數(shù)據(jù)
show {databases|schemas} [like 'pattern' |where expr]
show databases;
查看編碼方式
show create database t1;
alter {database|schema} [da_name] [default] character set [=] charset_name
刪除數(shù)據(jù)庫
drop {database|schema} [if exists] da_name
八、MySQL 數(shù)據(jù)類型
????????數(shù)據(jù)類型是指列、存儲(chǔ)過程參數(shù)、表達(dá)式和局部變量的數(shù)據(jù)特征,它決定了數(shù)據(jù)的存儲(chǔ)格式,代表了不同的信息類型。
????????整型
????tinyint 1字節(jié) ?smallint2字節(jié) mediumint3字節(jié) int4字節(jié) bigint8字節(jié)
????????浮點(diǎn)型
????float[(M,D)] M是數(shù)字總位數(shù),D是小數(shù)點(diǎn)后面的位數(shù),如果M和D被省略,根據(jù)硬件允許的限制來保存值。大約精確7位小數(shù)
double 雙精度浮點(diǎn)
????????日期時(shí)間型
????year 1
????time 3
????date 3
????datetime 8
????timestamp 4
????????字符型
????char(M) ?M個(gè)字節(jié),0-255
????varchar(M) L+1個(gè)字節(jié),L<=M<=65535
????tinytext L+1字節(jié) L<28
????text L+1字節(jié) L<216
????mediumtext() 字節(jié) L+1 L<224
????longtext ?L+1字節(jié) L<232
????enum('vlaue1','value2',...) 1 or 2個(gè)字節(jié),取決于枚舉值個(gè)數(shù),最多65535
????set('value','value2',...) 1,2,3,4,8個(gè)字節(jié),取決于set成員數(shù)目,最多64個(gè) 集合
九、數(shù)據(jù)表的操作
數(shù)據(jù)表是數(shù)據(jù)庫的最重要組成部分,是對象的基礎(chǔ)
打開數(shù)據(jù)庫 use db_name
創(chuàng)建數(shù)據(jù)表
create table [if not exists] table_name(
column_name data_type,
column_name data_type,
)
root@localhost t2>create table if not exists haha(-> id int primary key,-> name varchar(10),-> age tinyint unsigned,-> salary float(8,2) unsigned-> );Query OK, 0 rows affected (0.87 sec)
查看數(shù)據(jù)表
show tables [from db_name] [like 'pattern'|where expr]
show tables
root@localhost t2>show tables;+--------------+| Tables_in_t2 |+--------------+| haha ? ? ? ? |+--------------+1 row in set (0.05 sec)
????????查看數(shù)據(jù)表結(jié)構(gòu)
show columns from table_name
root@localhost t2>show columns from haha;
+--------+---------------------+------+-----+---------+-------+
| Field ?| Type ? ? ? ? ? ? ? ?| Null | Key | Default | Extra |
+--------+---------------------+------+-----+---------+-------+
| id ? ? | int(11) ? ? ? ? ? ? | NO ? | PRI | NULL ? ?| ? ? ? |
| name ? | varchar(10) ? ? ? ? | YES ?| ? ? | NULL ? ?| ? ? ? |
| age ? ?| tinyint(3) unsigned | YES ?| ? ? | NULL ? ?| ? ? ? |
| salary | float(8,2) unsigned | YES ?| ? ? | NULL ? ?| ? ? ?
|+--------+---------------------+------+-----+---------+-------+
4 rows in set (1.92 sec)
????????插入記錄
insert [into] table_name [(col_name,...)] values(val,....)
root@localhost t2>insert haha values(1,'zhangsan',18,10000.00);Query OK, 1 row affected (0.49 sec)
root@localhost t2>insert haha(id,name,salary) values(2,'lisi',2002.35);Query OK, 1 row affected (0.08 sec)
查找記錄
select expr,... from table_name
root@localhost t2>select * from t2;ERROR 1146 (42S02): Table 't2.t2' doesn't existroot@localhost t2>select * from haha;
+----+----------+------+----------+
| id | name ? ? | age ?| salary ? |
+----+----------+------+----------+
| ?1 | zhangsan | ? 18 | 10000.00 |
| ?2 | lisi ? ? | NULL | ?2002.35 |
+----+----------+------+----------+
2 rows in set (0.00 sec)
????????空值與非空
????????null,not null
root@localhost t2>create table tb2( ? ?-> name varchar(20) not null, ? ?-> age tinyint unsigned null ? ?-> );
Query OK, 0 rows affected (0.27 sec)
root@localhost t2>show columns from tb2;
+-------+---------------------+------+-----+---------+-------+|
Field | Type ? ? ? ? ? ? ? ?| Null | Key | Default | Extra |
+-------+---------------------+------+-----+---------+-------+
| name ?| varchar(20) ? ? ? ? | NO ? | ? ? | NULL ? ?| ? ? ? |
| age ? | tinyint(3) unsigned | YES ?| ? ? | NULL ? ?| ? ? ? |
+-------+---------------------+------+-----+---------+-------+
2 rows in set (0.05 sec)
root@localhost t2>insert tb2 vlaues('tom',null);ERROR 1064 (42000): You have an error in your SQL syntax; check the manual thatcorresponds to your MySQL server version for the right syntax to use near 'vlaues('tom',null)' at line 1root@localhost t2>insert tb2 values('tom',null);Query OK, 1 row affected (0.04 sec)
root@localhost t2>insert tb2 values(null,12);ERROR 1048 (23000): Column 'name' cannot be null
root@localhost t2>select * from tb2;
+------+------+
| name | age ?|
+------+------+
| tom ?| NULL |
+------+------+
1 row in set (0.00 sec)
????????自動(dòng)編號
????auto_increment
????????主鍵 (primary key)
????每張數(shù)據(jù)表只能存在一個(gè)主鍵
????主鍵保證記錄的唯一性(鍵值唯一)
????主鍵自動(dòng)為not null
root@localhost t2>create table tb3(-> id int unsigned auto_increment primary key,-> username varchar(10) not null-> );Query OK, 0 rows affected (0.04 sec)
root@localhost t2>show columns from tb3;
+----------+------------------+------+-----+---------+----------------+
| Field ? ?| Type ? ? ? ? ? ? | Null | Key | Default | Extra ? ? ? ? ?|
+----------+------------------+------+-----+---------+----------------+
| id ? ? ? | int(10) unsigned | NO ? | PRI | NULL ? ?| auto_increment || username | varchar(10) ? ? ?| NO ? | ? ? | NULL ? ?| ? ? ? ? ? ? ? ?|
+----------+------------------+------+-----+---------+----------------+
2 rows in set (0.06 sec)
root@localhost t2>insert tb3(username) values('zhangsan');Query OK, 1 row affected (0.03 sec)
root@localhost t2>insert tb3(username) values('lisi');Query OK, 1 row affected (0.00 sec)
root@localhost t2>insert tb3(username) values('wangwu');Query OK, 1 row affected (0.00 sec)
root@localhost t2>insert tb3(username) values('zhaoliu');Query OK, 1 row affected (0.00 sec)
root@localhost t2>select * from tb3;
+----+----------+|
id | username |
+----+----------+
| ?1 | zhangsan |
| ?2 | lisi ? ? |
| ?3 | wangwu ? |
| ?4 | zhaoliu ?|
+----+----------+
4 rows in set (0.00 sec)
????????唯一約束(unique key)
????唯一約束保證記錄的唯一性
????唯一約束的字段可以為空值(null)
????每張數(shù)據(jù)表可以存在多個(gè)唯一約束(鍵值唯一)
root@localhost t2>create table tb5(-> id int unsigned auto_increment primary key,-> username varchar(20) not null unique key,-> age tinyint unsigned-> );Query OK, 0 rows affected (0.07 sec)
root@localhost t2>show columns from tb5;
+----------+---------------------+------+-----+---------+----------------+
| Field ? ?| Type ? ? ? ? ? ? ? ?| Null | Key | Default | Extra ? ? ? ? ?|
+----------+---------------------+------+-----+---------+----------------+
| id ? ? ? | int(10) unsigned ? ?| NO ? | PRI | NULL ? ?| auto_increment || username | varchar(20) ? ? ? ? | NO ? | UNI | NULL ? ?| ? ? ? ? ? ? ? ?|
| age ? ? ?| tinyint(3) unsigned | YES ?| ? ? | NULL ? ?| ? ? ? ? ? ? ? ?|
+----------+---------------------+------+-----+---------+----------------+3 rows in set (0.06 sec)
root@localhost t2>insert tb5(username,age) values('zhangsan',15);Query OK, 1 row affected (0.00 sec)
root@localhost t2>insert tb5(username,age) values('zhangsan',16);ERROR 1062 (23000): Duplicate entry 'zhangsan' for key 'username'
默認(rèn)約束(default)
默認(rèn)值,當(dāng)插入記錄時(shí),如果沒有明確為字段賦值,則自動(dòng)賦予默認(rèn)值
root@localhost t2>create table tb6(-> id int unsigned auto_increment primary key,-> name varchar(10) not null unique key,-> sex enum('1','2','3') default '3'-> );Query OK, 0 rows affected (0.01 sec)
root@localhost t2>show columns from tb6;
+-------+-------------------+------+-----+---------+----------------+
| Field | Type ? ? ? ? ? ? ?| Null | Key | Default | Extra ? ? ? ? ?|
+-------+-------------------+------+-----+---------+----------------+
| id ? ?| int(10) unsigned ?| NO ? | PRI | NULL ? ?| auto_increment |
| name ?| varchar(10) ? ? ? | NO ? | UNI | NULL ? ?| ? ? ? ? ? ? ? ?|
| sex ? | enum('1','2','3') | YES ?| ? ? | 3 ? ? ? | ? ? ? ? ? ? ? ?|
+-------+-------------------+------+-----+---------+----------------+
3 rows in set (0.06 sec)
root@localhost t2>insert tb6(name) values('zhangsan');Query OK, 1 row affected (0.00 sec)
root@localhost t2>select * from tb6;
+----+----------+------+
| id | name ? ? | sex ?|
+----+----------+------+
| ?1 | zhangsan | 3 ? ?|
+----+----------+------+
1 row in set (0.00 sec)
總結(jié)
以上是生活随笔為你收集整理的如何查看mysql my.ini_MySQL学习笔记(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 阵容强大!电视剧《三体》今晚央8+腾讯视
- 下一篇: mysql 8.0数据备份恢复_MySQ