- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 569615 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 176107
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作 M: \$ V( v3 A
% d8 h, _1 p S3 |
目录+ @+ ~$ b) w# x" a8 q8 G
: m- J, V4 r* A( f, f# s& r
一、SQL语句 (mysql 数据库中的语言)/ j) c) s2 g$ W& ^; ?+ S9 L
# V& `" {/ n7 {) g0 I
二、DDL
! U9 {& u; X: x S: M- X+ H5 P" N( w* E" x
1.DDL语句
' e' D. M0 R# W4 w
# e% `1 P) Q5 y3 Q5 P3 J(1)创建新的数据库
! n% m3 l0 R9 d& C- L: [, X1 f# J K
3 ~6 l' o6 D$ \; t: i(2)创建新的表2 |6 Z! a+ R8 R8 ` M4 B/ f
' f# W3 h0 u. D1 d8 t6 |# J: h 2.删除数据库和表/ g8 d& [& ?4 `; n# p
7 d9 j+ `3 Z& F$ q& @" E 三、DML
5 C# q" _# j8 X4 m9 x% d7 Q2 a- f
" J6 |1 A3 G, a- y5 @1.insert插入新数据
8 X3 p) M7 G# U( a# b2 a# q' z, q# x
2.update更新原有数据
' a1 \" k3 ^5 o* L4 o, X6 v7 ~( G* J
/ e8 @1 _) Z: X3.delete: 删除不需要的数据(表内容)" J8 Z3 C: q: H/ t
- p/ K) h0 {. N, Z3 ?
四、DQL查询数据记录8 G. |! r" n2 M R x
. R" q! D$ o- ~* e四、DCL
1 F6 [! b* s l8 a9 x$ B& {) o3 x, U2 @, X+ P
* m$ n5 x+ S- l8 z1.alter 修改表名和表结构(表结构)
/ Z y) V! D; E8 _4 b3 L c# R& Y- e$ P& d% P( z( U
一、SQL语句 (mysql 数据库中的语言)2 @" c: T+ I5 y( z& Q4 e
show databases;查看数据库& B! C- S7 _( x8 W6 [- z, E
use "database_ name" ;进入数据库
/ T) j1 X4 w; `0 D/ q- p. \show tables; 查看当前数据库中有哪些表4 J$ r/ y& k& H5 A$ {
select * from "table_ name";查询数据表中的所有内容
+ S. v, P) m6 @$ e% odescribe "table_ name"; 查看表结构9 c3 [+ w8 X4 Q
desc "table_ name";! p. T y6 z0 [0 ]1 z0 g
* o3 B3 m3 k/ u
2 {+ B! l/ t# H- [# R+ K! K, p+ {* P* }% z2 [: K
; e+ Y5 y" B; U4 J% ~! \. D
4 f: \# D( K2 f% {3 L+ A b
8 I6 F" M( E! Y6 G3 Z" Q, M2 l9 N! h
9 l" k4 C; q7 ^. S% {: d/ B, _, [/ N7 z$ ^1 M0 ~1 D0 z
5 u3 S) Q6 `$ |5 b
! l7 G+ b! ~& A( a" Z @4 e
0 {4 F7 l e C0 e4 u3 t" n7 r8 {5 M; f P5 u6 l# [! S) C
6 S1 M4 F( x. w+ w类比excel表格
4 L* i& G0 W8 b; |
0 t/ S5 P/ H1 z, U
/ `7 L1 @1 d" |" ~% C5 g7 b- Z9 l# N8 G& R0 i4 p
! F1 R; D |- u! L9 t
5 E1 t3 x+ j5 _. p" M
- y* a' T1 K# r5 ^
5 E, J+ }7 W+ N j1 t t3 t# L/ \! O$ @" Q' }; i% X
2 N3 N, Y5 L7 n/ m8 Y: a- A+ t 类比excel表格
& t/ Q6 ?) `, M' A4 E8 X- @0 ^2 B. ~ E: \* ?' C
4 C1 p. {* [: @5 ~7 K
1 |3 z5 u+ u2 {. D- ?
6 d# u8 ^/ F& F. x/ }' N# {1 e# U" g0 f5 i. c3 o
简写 1 i+ @* Y. e; L/ }8 E4 @0 g D3 h
: p7 Q: d6 g" k: Y8 K9 w5 _; hfiled 字段名* N: Q/ g( a0 G2 ^
4 B8 k( M$ Y2 }* e* U7 m0 q
9 z' l& G( P" x& M/ n8 X
9 y. {* Z5 A, [2 Q: u+ O ?, e7 m二、DDL6 _' n' S$ q, Y3 {! x, C
1.DDL语句
' U( ?1 O% [' B用于创建数据库对象(库、表、索引等)
2 W9 h7 F+ f' a* y
3 [( \- [6 A, _/ Z(1)创建新的数据库4 |. `( S0 }! S5 V5 h% P, U9 M+ M
create database 数据库名;
2 V! Z' t$ Z+ i, [. V3 O" Q; t3 G5 z5 u; ?6 h6 j, n
(2)创建新的表
2 q3 ?9 q- D0 G1 y6 M' }; Hcreate table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);! d# J8 }+ U; ~) ?9 _; a1 l' Y
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。7 {7 z/ A- z6 U' T _
0 A, K7 `0 i) k8 C- {: i) [
create database 数据库名;
5 `1 w2 y6 W$ C* quse 数据库名;
& |3 |2 o3 k# ?5 F7 }create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;
) C+ `2 L+ U& ]7 x/ H8 Q" k$ ^# \" D) _$ k
desc 表名;
, E8 m& a9 B- M, S6 O5 r# J/ G! c0 O2 i* d
not null 不允许为空值! R3 e5 Y& `7 I& K9 z% E
/ m/ A' W6 s; x: h& m/ j! E
default ' ' 默认值为空
9 J& J% I% h2 B( F0 u! u* n3 _8 n) n
primary key : 主键一般选择没有重复并且不为空值的字段
# Y& r. ]: v2 L3 e+ Z7 M7 G( n/ S7 M5 H
例子$ o% A* D% _1 n8 v, p
create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
7 @& A! a) F( x3 g! G8 U bcreate table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));% O2 Q* S8 H9 n! ~% j
q* _+ o: j- s. _+ H( v* ]3 U2 g* y6 r# f, s7 L
9 u) U$ n4 f$ d, j
# A! g! l/ l( u
8 ?5 R& R* X4 L! _4 a+ k6 S& C, O* |
- ]) v3 k( V, M+ |' X' c7 J# ~
6 ^7 C# h: g' h5 v9 R
+ G% m3 a K7 J3 I+ p& |- m
1 u2 T' I5 Z. T& @8 `
2.删除数据库和表
$ o; f% V9 i+ C+ X* p4 y删除指定的数据表. o5 U* d4 w4 s& v/ `+ v' e
5 `0 x; Z$ n& N/ Hdrop 删除表内容(数据)和表结构
1 Z% n! T. k3 c" w% c1 v6 P; P z) z# [, b' M1 o! h) I1 e
use 数据库名, U+ s% |: n9 O- |" O9 G2 [
drop table 表名 # m; [ U" G( j9 p
drop table [数据库名.] 表名;# P1 H6 O7 L- ]
如不用use进入库中,则需加上数据库名' K$ n3 l& ~4 v2 F% H
删除指定的数据库
5 J# B0 N. u7 b9 k* j7 C! Mdrop database 数据库名;
, ?- `9 W- n6 x) j& ^6 G y7 |5 m+ a
9 b+ D7 G/ \9 t1 V+ |# F! P: A5 o) O& c) q/ A/ n0 i( N
. K: c# Q: W& O8 v; g
2 `1 P( N) W* j) Z7 q
. @4 B3 Y/ w1 M, u# O8 K6 }3 T7 J& r; g# P
& b# W) j, `' {) M" I8 ]' R' {
; Y B' z7 N% u( e9 {5 H0 w, E) J- `4 `7 p$ o! g
/ Y# }4 Q( r s3 D5 C9 }% g" B R7 {- @
* o v# ?; ^ D! `9 w) u7 Z2 C: f1 v2 i9 q; d) |9 N: t" e; I
_9 W, U/ D) g" y8 X3 M' n
8 w) x8 d1 T8 P 三、DML; ?% D' n; r4 q* X
管理表中的数据记录
/ _- a( |9 [4 x# H1 T6 R6 w3 k2 f) b# u! z- I
insert: 插入新数据! ~4 O3 F$ H! i
update: 更新原有数据
2 N2 k- `# z- K0 Z- b% Ldelete: 删除不需要的数据
, Q% |) l/ H0 R+ B6 A1.insert插入新数据0 c* L, x6 C! U
格式:
# e% }8 E+ e% K! j6 @8 R8 L5 Y3 A$ t) J/ |/ ]; R- v/ [7 B* c4 Y1 j
insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);% P/ V2 `* K2 X$ ^6 H
; S5 z- f+ |1 D! G9 w' s; n+ Z$ C( ]
例子:
+ ]$ z" g+ a f# A: j# {" s0 [insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;
8 E+ R1 P* j. ^& N1 Q
! ]- B6 D$ V7 F6 t6 ~4 P& Mpasswd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
0 W; b1 e; {# @) f& A7 _2 a* F$ J% k
5 Q+ d/ f; O6 h7 i! O0 u' R密码复杂性验证' s; O8 z7 W, H/ T& N; w5 N# N. N
4 E8 k# ?5 }# o% ?) j' N% qinsert into 表名 values(2,'自定义',90.5, 654321) ;
$ P! n% r7 x0 ?select * from 表名 ; 查询表的数据记录' v6 S5 h8 ~2 p
Q. V8 C$ b# ?" A# m' @! ~insert插入表数据
8 K! J3 |1 Q; i8 B! A6 H
& z6 {2 q$ e* M% ^& o在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)
4 v% }5 S) j/ p2 P' i7 |% r! l5 v) I6 t' N: Q
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写
# e4 K/ Y) G) }; g2 G, c! L; h
0 U8 b$ S0 @4 ?5 c: u1 z4 n
2 t0 N: B7 |1 N' r8 y3 u( \2 C f+ a3 r5 i( [, Z a2 I7 F9 {3 Q
+ [- F% z' N3 _$ V# Y$ O8 o/ H2 i
1 U& n7 g s& ^7 ~% x: ~. }7 N5 ]) |! a% t$ D, |2 \5 x4 ^( Z
5 c9 |, s3 o, N7 M2.update更新原有数据4 q0 s$ ]; f0 {- c
修改、更新数据表中的数据记录
* o7 m1 \- D: Y
& t# Z# @1 P8 q- H. S2 @# D; C# B' {$ h F格式:
- ~6 L# n- X& N/ k! z1 C2 c8 k/ hupdate 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
8 @. `6 g* H1 F3 Q2 B
% r9 ~5 |/ Q6 Q4 o例子:+ n4 n2 H4 ?# _& a
update 表名 set passwd=PASSWORD('') where name='自定义';$ N ^6 {7 k0 e+ g
update 表名 set name= '自定义' , passwd='' where id=3;
" S/ Z3 H: |, a* S) h7 @" I2 g0 G* p+ J1 B4 w C- D
" r8 N, H& A6 N
1 Q; z8 {. ^' \& X; i! C9 Z' U2 Q3 k9 n0 c6 V
3 \$ A. f( G( O5 i/ n! Y5 g
9 x4 H, Y8 G3 y5 J! I# t4 z3.delete: 删除不需要的数据(表内容)
, r) ]2 Z: e9 z在数据表中删除指定的数据记录(行)
" }# `7 V$ T" C! b! y- f1 A C3 W" l$ O: f x
格式:.
! j* h5 W7 s6 e! w6 \1 ^4 b& L
% D3 A }/ X/ z6 q8 G/ }delete from 表名 [where 条件表达式];
; E4 y6 |7 F$ H% C5 g* R5 h
" | c% N; e0 `- g n6 h9 J% w例子:8 a6 a) v) S1 B; Z
1 B; B, e( ~ @/ e* V% C1 e3 D4 V
delete from 表名 where id=4;: W) Q$ y4 Z$ t
# i: w7 v7 o' s' A0 l& N
/ E/ c! s# F4 F8 J3 L" j. S. K
四、DQL查询数据记录
# K+ w' {, v" ^; D3 C& |select1 x/ L/ k% F8 v4 z# N# |2 k9 l( W% N
9 N6 |: ?! C% h; F) P4 K& P格式:
! K m: a+ m2 S; ?/ l. S; L2 Z( @8 D0 H7 e$ }
seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];
+ @6 P2 O" C) z$ n1 `" \1 A
& ]9 H% v& b+ H* l$ A: D: \3 S例子:
F& }+ \/ O. @3 F4 D" nseleect * from 表名;
2 ?3 J1 n& y, rseleect id, name from 表名;
1 {6 [: @6 W9 y( ]$ ^seleect id, name, score from 表名 where id=2;- j/ O& g! h9 F+ L z
) B1 Z8 d) q7 D* f7 N- v3 H
select name from 表名\G 以列表方式竖向显示, G1 u0 W3 p/ O, V& X4 H
select * from info limit 2; 只显示头3行" ^) Z% d ^) E
select * from info limit 2,3; 显示第3行后的前3行
! W! r1 P/ W d9 @5 _! Z, }* ]. e4 Y1 `
) N, s2 q( B2 B; P2 r1 v7 l3 s
d6 ?2 M' u( ]: o, W
: O: H# u& s8 @8 _) x) [' Z* P/ s7 P$ a0 V
5 S% N3 U" u' f1 _$ J1 c0 L类比excel表格! V& B3 \. C. x3 K8 m
) ^4 v0 L% _/ x! q2 n ?0 i6 h4 S3 o/ T4 ~" s7 h" W
" s1 e% \( P' M4 O1 F四、DCL
$ r2 h: O6 t4 j, `7 d1.alter 修改表名和表结构(表结构): k3 b) r% H, M# U
alter table 旧表名 rename 新表名;
! P/ O7 p0 H: I0 }! W" f
9 ~& ^9 P7 w& }' Y扩展表结构(增加字段): O+ |; z( l2 _1 e
alter table 表名 add address varchar(50) default '地址不详' ;
5 G8 y+ ]. \6 m% \) Wdefault ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用
' H. v- C* `8 a3 r3 yalter table 表名 add address varchar(50) not null default '地址不详' ;
U+ \$ J1 K5 n- l) l* \) m& g3 G t0 r2 h. f
修改字段(列)名,添加唯一键(唯一性约束)
% y8 b0 | e* O6 s* walter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
+ h$ D X/ O" l" q9 Z' ~unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次), q/ D2 ^- o6 b( A8 T2 c7 t) n, I
primary key (主键) :唯一且非空# `2 ^7 p$ z z8 i ^
alter table 表名 change name user_ name varchar(10) unique key;
1 Y$ P. q" O6 w& l( E; r4 b0 {. uchange可修改字段名、数据类型、约束等所有项。
, n% t4 N) y: r( H% B+ k/ @/ k2 z! }1 A3 Y4 }. l* `0 g
删除字段- y: Z2 X& H1 S9 Q
格式:2 a4 Q/ {6 H5 \; n. I4 ^
alter table 表名 drop 字段名;2 I7 O1 g7 f' t) V1 U
- Z+ k% ~6 N6 M7 x
————————————————( o* w% w# i8 B0 M. c" u2 q& ^$ c
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
2 O' t. c, e2 l- y- A原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177+ F# p0 `3 s4 r! L% V
5 R: q- s0 @; _. r* K* P* l
' ], V/ E/ w4 Y2 J |
zan
|