- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 554636 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 171764
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 18
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作
4 [9 I- \( A+ T8 F
+ N& I t. R; z+ N. D# q目录( o$ k: X$ Y( L$ m8 R% x) n
& c/ |; U: M" V; `# r1 _; b* c
一、SQL语句 (mysql 数据库中的语言)
% V6 p" P; G0 B' b H- l b3 Z) F) @7 n; A" N4 d5 {
二、DDL
2 v, b) n# ]: U3 Y1 `- A$ A6 Q9 o5 O J3 u
1.DDL语句9 l0 Z6 {. L- N3 [. u. n3 J& E% v2 E
7 G o6 E! V* i
(1)创建新的数据库
, Q, e6 K$ \7 S$ H4 a* t9 B C7 Q' o$ e) U6 e
(2)创建新的表
: z4 K3 q7 Z! [# V7 X- r+ y9 z% A7 X4 \: q5 X4 x
2.删除数据库和表' x% J" V3 ~1 x5 p( [ B" ]
$ r8 s u7 |; b: s+ N5 j 三、DML. r7 W. A) Y9 E7 w: {
4 i( G! w$ W, o* T8 g( s# S9 j* B% [
1.insert插入新数据
r' e- d# B" j" J, E a3 p3 L$ Q& \7 A0 u/ M
2.update更新原有数据
/ h, {3 M1 p" `; ?& c" @) y
9 j4 S4 _! N' \9 N) f! f8 c3.delete: 删除不需要的数据(表内容)) _: w% s) L2 a
* H f$ U, Q3 Y* v9 @% d
四、DQL查询数据记录" p5 {/ T# j2 v/ G$ |
' v/ F- v& M" Z8 e1 e1 D四、DCL
$ Z/ E6 G' m% K' H6 p# A* G+ p0 N/ D# c; O
1.alter 修改表名和表结构(表结构)1 r; q) u/ H* [* V! ^. f( |
' W9 A+ ~( t3 z" j+ y. J一、SQL语句 (mysql 数据库中的语言)
" f5 l6 q% k& X* }( Cshow databases;查看数据库
# _- U7 ? E3 F' ?& t( N* e/ Z; ]9 puse "database_ name" ;进入数据库
; P* h2 H( V8 Q8 Z, m3 E- sshow tables; 查看当前数据库中有哪些表
3 C# K/ L3 ~; ~9 e) r* l) \select * from "table_ name";查询数据表中的所有内容* L" o8 w6 ^6 A
describe "table_ name"; 查看表结构
% {1 x3 h: Y; gdesc "table_ name";' W4 O. S7 i1 a9 W
* h! o8 X! X7 A) j
" [ X4 J1 Y* ], H. }( {7 B/ |
4 l/ N7 R) y! w* {1 q) N. H
1 | Q2 j+ X# v/ r3 {
! x, R8 p# j5 L; t
( C- w% D+ U$ P8 l, g+ M, Z7 E; r: ?, y8 Q5 \: d$ K. |6 L7 f$ u, z
- P- h1 N# b2 q. {# e
7 E3 K% C. ?" F% N* U( j
/ v+ t7 x) c( ?4 Q# a1 I* {4 i
$ [ M4 [7 L* s: }+ I, A: o1 o ?+ _) j7 N2 ~2 c
/ a! F0 h$ ]1 z* {6 d! y
9 W% K% ?. G- d& _& }
类比excel表格
/ Y0 Q* X+ f4 D* O
3 C7 N' ]9 r7 x6 U3 S
' q4 |7 l z h: D- C$ G
# m C$ J# C* }! y
: v, y$ @5 F4 s
1 Z1 ?+ y* F d( ~; g. Z9 C; _- V% l4 @! J @2 y; `
3 L% {6 `+ s; @$ c8 ^* ] u: }+ b5 l u
& A3 r! \- I$ g$ [ R( R 类比excel表格
$ Q6 Z' X v' a" j1 M# [+ t+ _
* D! e$ T$ A2 R7 H+ q
0 H& F6 T4 y5 K- O3 r4 N$ ^1 t: a# g% @, V) S( e
1 r$ r; {1 ~$ p) ^! `
$ `& n, t% l; g8 T简写 . _5 W! W7 d( }3 b3 w
# I7 U. x+ H6 ~3 g q. t, E
filed 字段名% Q; z( F; T* l& U
D$ s: w2 n2 I! r
; `' b" P; q V$ l/ w
! d( C- E" p9 j9 Q/ U7 {2 i8 c二、DDL
5 J, W! F3 A* N$ z# U1.DDL语句
4 m! b# e; B4 s$ I! v用于创建数据库对象(库、表、索引等)
8 X3 @+ l s' h$ s" b4 _, z0 s
(1)创建新的数据库
7 M. A; F& A3 S6 g ecreate database 数据库名;
- B$ c9 @& j* \: ^" {1 y& Y6 a i: o5 l8 X
(2)创建新的表, B5 n) F3 {) d; n9 {- E
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);9 V |6 V% E2 b, G* A
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。' P! ]6 H9 z% S
' M! R$ W* u, G6 R9 i- S0 F" D
create database 数据库名;- P9 w8 }6 N" ^& ^8 c) m7 e
use 数据库名;
. D+ W u7 d6 b# u7 C; t; I, U o1 ~& Tcreate table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;: `, i/ g3 b& A3 T6 s
/ L/ K* c. ^# H4 I! idesc 表名;
$ H1 O6 S1 C3 R# v% B# ^6 F# S+ ]1 J: R, U1 j0 y
not null 不允许为空值
) b) V7 B' F/ x* o- T4 x+ D0 s8 X' q. K) z
default ' ' 默认值为空
0 f f! O3 p7 y1 J* M$ d" m9 v9 a! h6 z( a) a$ Y! q9 N) u5 d' v9 I
primary key : 主键一般选择没有重复并且不为空值的字段
7 u5 w& Q' q$ v6 ]0 f- R& P' f
: N: }, U! |0 R+ P x例子! X$ j2 ^( r6 L4 v0 S
create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
% ?5 y, u) S- Ecreate table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));
; k% S9 F0 n* W7 M( u* ?; R6 h7 }/ q( |7 o* e( u
7 _7 U8 d6 x1 x* y' e* |
8 j! q8 R' D" A8 b
% ~$ O# `4 N Z2 u, p4 O4 Y1 O8 i0 i1 A, g' Z
$ C/ g' k0 a2 D7 `, i/ ^4 o- S
* ]- r S, O% Y% _9 p8 g
- q! |) u" M( D3 N3 r3 Q
! E9 P9 J0 g f, P$ }. [3 w0 O( t: n1 C; t9 x6 I6 V
2.删除数据库和表
% S. E% n" M4 T5 w. v( c" `删除指定的数据表
9 \% l4 H- o' ^7 W& D; e. O# j3 H V- u) ^1 L
drop 删除表内容(数据)和表结构
' G3 a4 g7 d% F1 w. m, [& r; x
! I" a. ~! I, K2 g+ buse 数据库名, r$ f* V& I8 \, Y3 q2 g
drop table 表名
* Q% C( r8 N( @$ u. ]( y& pdrop table [数据库名.] 表名;1 U0 e# N* O5 O6 { i
如不用use进入库中,则需加上数据库名8 |; V; c7 E$ N$ \' [
删除指定的数据库: f# W- Z+ B3 I1 y- i
drop database 数据库名;
! [' E2 `& }, N" F u
3 }3 L" e" O1 y' x) f$ X' g$ w
' G8 V4 l+ [" e' {0 T* D' C6 d9 z! g. ], T9 Z
9 U9 b* l* ^9 E
+ z8 y3 B6 o7 \0 s% U! |
, B0 b/ u: g/ t
4 ?# P" n6 _/ ^0 i
0 e+ j4 a* Z8 n. I ~* T6 E/ [( P8 X) w
]; G) ~' f" {$ G1 ]5 U0 b) `8 o& i M5 G
' u! d* p% [: i
: ~) d! i, N9 c4 H( R0 L
* @/ d/ M5 D" b# q7 [) H
6 j) R/ @1 ]; C( w
7 T$ e, c# H9 s: n+ { 三、DML5 r" J! A% ?3 M: P4 L9 l9 }
管理表中的数据记录
3 O. [$ y& b |$ w5 Y; C$ T" X! i
* D/ D2 G3 }* G) w$ A' V Ninsert: 插入新数据. s8 {. f1 G' v8 \$ F: @2 M( Q. U% F
update: 更新原有数据- G# |! g1 R3 s8 `. p
delete: 删除不需要的数据
5 ?- R7 l8 K9 X1 Z d1.insert插入新数据3 {$ S6 b! m' e4 W( A* G% H
格式:
2 \2 } p) U* m6 y: y& A# F2 S
) `( W6 T& H8 N' r7 ~insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);
3 n& p* R/ q# \$ Q; x
/ p5 `, F' h. h N例子:# ?6 |9 h- Z: e+ m8 M
insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;
. I# N, ?3 Y% Y/ B/ w
# n, t0 `! {3 u' b+ Tpasswd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
5 ?4 S! H! h2 g" i' I
7 P( ]5 k: Y8 N8 ]: P9 z% d3 G密码复杂性验证
: ?2 f T! _+ X9 @, i3 I, f3 ?" r' R* V+ v4 O+ W4 k3 H% I
insert into 表名 values(2,'自定义',90.5, 654321) ;& c. m: {9 I. F
select * from 表名 ; 查询表的数据记录* s* w; |$ |6 E% V
4 Z; \& C7 ]! C* Y9 Y# Z' \insert插入表数据* I3 R0 _4 X4 w# u0 d$ V; {* C
) Y; m! o: Y3 Z% A在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)5 W+ r7 c% G. I
% ?( b- W& Y& j4 C0 P% Y& b! H* P1 ^使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写% G0 w( @: n' F& n' A4 D
/ I! v% a; n4 M
% H& ^+ `" m, F, A! n, H
9 p' K2 P8 ~' D2 L' D& b! f& q
5 u/ d( x5 I: G% O- G( Q8 I1 n( ^0 q3 c, |7 ]6 K
5 U! [- l" }/ J" w+ M" Z k$ z/ `5 N# ?" F$ g7 k
2.update更新原有数据/ ?& E) v: V, R" b
修改、更新数据表中的数据记录
7 z6 @; s( r; L- n; ?8 Y, X) i' ]* ^2 z4 @" i
格式:
, w8 `! o' D. Q( y7 rupdate 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
; K( D D% q r7 e; S0 ^
& d8 Y* J* j. B3 |( D0 c- ^例子:: @' v! F v7 Q" }' S+ B
update 表名 set passwd=PASSWORD('') where name='自定义';# `, D9 J$ T, W5 l& i [
update 表名 set name= '自定义' , passwd='' where id=3;9 H% g( i8 T* ^+ I( D( y/ G
0 V8 c' M, _/ E) f8 i( _8 i# W9 e3 e& T: k1 L- ]7 `
3 s1 z- x- N; G/ H4 h8 n' ]+ Q( z4 r) [0 S Q! B* i1 i
: X/ g3 L/ Z8 _( y/ R/ M
# [/ U# T B9 ~. b$ a7 S& V0 e3.delete: 删除不需要的数据(表内容); e3 c9 [7 E" }4 `2 T6 i8 A
在数据表中删除指定的数据记录(行)
% C- o1 G: A: B4 H% m4 g4 _
2 O3 u- D! `, v& H8 C格式:.
, `, p, V2 K1 J9 {
0 ^# ~5 t9 _; O# r* h/ wdelete from 表名 [where 条件表达式];) o5 G, b; ~( J. q
* c7 I0 k+ O5 o1 O例子:
# O/ k6 j4 Y+ E- H8 y. J7 C! k' O# k1 L
delete from 表名 where id=4; P0 O( R% t" H; ~; R# c" Q
% z* x8 R. A0 X% o+ W0 B/ ~% e" H9 j! h1 l/ u0 o" }6 I1 e
四、DQL查询数据记录& o* f1 U" j* m. `
select6 A, j y7 p3 [
1 v: f* E, W2 W- b, x格式:
8 k) Y( }. Y+ u+ C% \% w/ V3 @7 X) f9 ?" e8 e" f
seleect 字段名1,字段名2[,...] from 表名[where 条件表达式]; C/ g9 y$ b2 u( ~
# u) Q! r( f3 I+ j/ L" G( s. t5 z: p
例子:
& a; j: Z1 K& K- [seleect * from 表名;! {1 [/ M' Z g4 D- K: l- D
seleect id, name from 表名; k! R. I8 o# a" m* t/ }0 o* d
seleect id, name, score from 表名 where id=2;
; b- p* x* P5 K$ A/ G4 v
& E, F. [# B- p3 _; ^select name from 表名\G 以列表方式竖向显示
# U5 m/ N: y5 P4 _, {3 o5 G$ Mselect * from info limit 2; 只显示头3行
^% ], P3 x7 ~6 W0 Pselect * from info limit 2,3; 显示第3行后的前3行% d8 d3 ]: Z- i" a
7 c5 S, |5 h# V j3 z0 e' J# u
' `/ Q& o+ F: y
" R, Z/ [% \, M$ e" T* J& j! W$ q
5 l) G4 n( h4 m e0 N; d类比excel表格
) {) D" _, e- \& Q" P1 [2 x. {8 r1 j6 h5 I+ E! \! l# ]
- v' z) K' j+ C, t/ _8 R3 {: s
4 K( G! b- o- u& Y3 f
四、DCL : H0 [" m. @* [+ | Y
1.alter 修改表名和表结构(表结构)! m; ]+ m& T; @2 C5 @! Y! w- }8 O0 X
alter table 旧表名 rename 新表名;
+ i1 x4 Q" t8 U) L
' N0 s, k, L9 w b1 G& H扩展表结构(增加字段)
& L* G+ E1 n9 Q0 b5 ~9 s$ _/ jalter table 表名 add address varchar(50) default '地址不详' ;% A" f: y% Z5 w# t
default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用. d( Y8 x! i( x5 Z
alter table 表名 add address varchar(50) not null default '地址不详' ;4 [( _7 F, S8 c" \" u7 O
0 u6 H7 ~' Y6 R: u- H
修改字段(列)名,添加唯一键(唯一性约束)
" h* D, I0 U$ x0 w* b8 halter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
6 e& y! v# Z8 T4 R8 w* _0 P; Z! @+ _unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)! K+ ?" H" O1 @3 R
primary key (主键) :唯一且非空
* ?7 I/ E8 |% ^. H: I% F" p, nalter table 表名 change name user_ name varchar(10) unique key;
: n2 A1 ^; f: `" _0 U" pchange可修改字段名、数据类型、约束等所有项。
) g! Y N( @7 J, X8 K% k5 A# I# ?" N2 l( @- O2 |' r
删除字段
& e8 }# o; d3 K+ F1 ~格式:
* |; a: m: S. S H* jalter table 表名 drop 字段名;
. J4 u; @- C. j2 j5 A1 U% }6 a" U5 q) g6 |3 x* _9 `
————————————————1 N; {; p9 E& b; r& q I0 n
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 _ m) B' v( _
原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177
$ O K- z7 k4 n W& ]
% f( u$ [1 u i" h" ^' a( }* J4 d
|
zan
|