- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 569584 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 176098
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作# Z# [, F* _3 u" r, z9 h/ [( l
; X7 P3 D9 Q0 {- m- ]+ d4 q/ y+ A目录
! S! `: o O/ I' {6 X4 Z3 X2 Y+ ^: N# L) J
一、SQL语句 (mysql 数据库中的语言); L* t, X! J/ d3 b! ]0 U( i5 |
k9 l! W' X! Q6 H4 n4 Y
二、DDL9 v( z0 B L1 e
, c& ]5 h) u- ^* o
1.DDL语句: P+ `/ ^' G9 W, ^$ C v% n( H2 _
6 O! {* f" y4 e- q+ p
(1)创建新的数据库
+ Y& Z' W/ p4 N" P8 f$ n. x) @& z1 G v0 T' x1 }
(2)创建新的表
- K# t1 {) v7 ?5 e4 ~8 u
! I2 E7 d/ l( m, Y( F( `9 @) C% f v 2.删除数据库和表
" @+ t. N* D6 N4 E0 n8 m. l; O3 h [
三、DML" v6 w2 @5 F& Y4 j; F( a, b, Y" @* z
6 p- ^ o5 O# ~# W! U! J1.insert插入新数据4 l* o- o* @4 G) S
' W1 l1 r$ F4 m; N0 }
2.update更新原有数据$ |! a9 b$ J* @& _
4 G; Y, i" ?9 r7 ~) a6 s
3.delete: 删除不需要的数据(表内容): O& d7 n9 _6 f; `
/ l2 q" P( Z2 [四、DQL查询数据记录) e& e v* Q, g- F
( @, N) }- m# C' ^
四、DCL & K4 V# T5 p6 d4 z: R8 \
" ]3 J* S' E, D E1 y
1.alter 修改表名和表结构(表结构)& g0 \4 @/ V# t" G& I/ Q% j
/ l* I3 H, m* \. [: f一、SQL语句 (mysql 数据库中的语言)
' J6 X- [9 ~! z3 rshow databases;查看数据库
7 }) C( D. ?" B" y/ Q% luse "database_ name" ;进入数据库4 c3 B+ J8 H2 w4 q: ?
show tables; 查看当前数据库中有哪些表
. ~; L8 w1 h1 [ v9 w- dselect * from "table_ name";查询数据表中的所有内容
( R' H5 I$ b3 w D& }4 ?9 |describe "table_ name"; 查看表结构- m5 O1 m0 g3 g; {1 F" Q
desc "table_ name";
6 p# D5 e6 k9 ?, j4 _( H
2 z" o% ?8 G( y" I2 [7 A. R/ c, g1 e9 M, o( Z7 x G. v1 B
/ b! F S9 A( | ?7 M/ N V7 d
: _; f$ y. p: P8 Q9 q& D- b2 u, j7 q
" ?" e* u" p9 K' j* | f
( E1 c% J! S; _
" D0 z8 c% k, i& l8 M3 u
$ v# g( c6 U) B0 S
/ |: Q- U" B. K9 q) R7 c* Y( e% ]0 E# R0 t; Z
* S) n5 ~; v2 Y1 _$ T+ Y8 a" Q) K4 H. c8 v# d3 X& l% X
( `1 A( S* H) O' p a3 T/ c
4 q, ~1 P1 g1 b& J/ P3 ], k N类比excel表格2 |3 m3 C3 W2 n; ?. X* r
' A& [# \0 D4 T. n* z4 q& ~0 x0 t3 K( n8 ` K9 x# ?) V
" B) o+ U; R) x/ v, I% X
; c% e$ }2 l T* W. B# V$ J/ W# f, w2 c4 i* ?% s- Y' t
6 h& L( @1 f* R, ?: H0 x
0 N+ o' c% E5 n, A' \) {
6 O$ \$ C* C7 Y3 x* f: L1 R: P8 M# O% \! k4 h
类比excel表格, @9 E( }2 r2 D' y, E( b
( u3 X& {% x$ r* y. z4 L
( ~& P; G( D% ]- y+ ^. [0 n! B3 E9 ?
1 `9 M3 n) T; x9 w ~6 Q
! H' n/ x3 h& j* d& w
0 H8 V5 D9 C! y, E简写
" @- H+ m1 W( Q- Z, Q
1 }% {( g2 y; `& g. ffiled 字段名1 U2 m- R1 M" q k- y! w
. i+ s% g1 p5 Y( E% e
/ Z& e9 k: h( L+ d+ S6 E
, s3 S% Y( [6 S. l4 {' f二、DDL3 C% a( @2 _- u5 T
1.DDL语句& N; N0 {0 s" c- I! c1 v
用于创建数据库对象(库、表、索引等)5 g, C4 u; W- n6 A
4 P) S+ H# ], D
(1)创建新的数据库8 R, Y7 ~9 Z$ S
create database 数据库名;
e+ u* k" y# I6 w" x5 v$ J& i) j$ ^! l& l( z1 F
(2)创建新的表
9 N6 N3 S3 l/ h0 [5 s# X4 R3 @8 f0 |create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);2 j% K: F2 W# f2 _% p P- ^
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。9 a9 ?; H+ p+ I+ Y8 K) ?" a
. a! ?8 u, d3 n4 L7 P* G5 t
create database 数据库名;) y$ K2 \, s( G4 y) m
use 数据库名;' f, t9 Q0 A$ @. m8 |
create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;$ {2 h k3 Z7 ^) h5 _
. m4 ~( G: S3 g$ r4 ]; G3 K* i
desc 表名;
& Q* x: k1 C/ V. H1 i2 ~! m, I S# f' q( d+ D, ]
not null 不允许为空值
- r; Q9 B! D0 Q; ]: ^5 ?$ C$ T6 z4 a" J: A
default ' ' 默认值为空' w6 G5 }! K$ s! [
7 i: {. J2 Z, x [1 Oprimary key : 主键一般选择没有重复并且不为空值的字段4 z% a& ]6 R$ j8 q! N( p
- o u v( {2 t7 a9 f7 w; w
例子
$ e8 u4 b. P" N! l/ c2 f6 D E5 Mcreate table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));" F; ~5 J! w$ c4 A- \( ?$ e
create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));* r/ z% k' N7 @0 F+ ?9 z* ]
) ^& T. ~" z S$ a
; C2 a# u# E# A% `# C) Y- U
1 s" ^" M o9 D) f2 H! K/ @2 A5 Z+ e$ P$ v0 y
; y7 \0 F: I1 v0 m) d- r1 W3 ?0 ?) `+ x
8 f4 Q! z4 j/ g' a5 p% x
( r3 w5 \* D! I, Z( D
* q& ?. y+ @$ |5 x( u6 `; _
! K b1 D1 ?. N: `/ V: h% H 2.删除数据库和表$ r$ v! u+ b8 G3 g' b A1 O
删除指定的数据表
$ `+ W+ |; J7 r# k
( _1 ~5 V, n8 b, A% J. @drop 删除表内容(数据)和表结构# _3 L+ m, C, H9 y* `# Y" C# J
; `) _* P% i5 c' r# ]- }
use 数据库名' _) i; D1 E; ^
drop table 表名 . B4 J% m) g( X5 p
drop table [数据库名.] 表名;/ F6 B4 Q5 p9 i: m+ X2 x* ^
如不用use进入库中,则需加上数据库名9 m5 Q5 S2 r8 M7 R1 j1 H( q8 N5 E+ b* `4 M
删除指定的数据库' V6 s/ g: [# B& Q
drop database 数据库名;
" G2 W% d% F0 X( R
M' r/ p, p3 t9 }8 J2 y$ X' M* H
7 b5 e3 N) j1 |9 ~- J: N
~1 {! K, ]3 P/ ]' k
& @5 c& e2 R) @/ K$ @2 I/ ~9 P
3 i8 S' z" V+ ?/ I
0 J# M6 {. \8 c# Q% {4 o: B; [$ l1 i& y, M
2 g$ N9 {, a( K8 \1 t
8 V" f% y$ e* x/ T ? r
* n i. {1 J, _" m& ?9 }3 Y) J, m0 A& p/ k+ j1 D
0 E+ m/ Y! L% W; L
0 O/ N# M, S4 ~$ ?9 J) F5 A
6 m; R7 c1 f; N# | U- N4 m% L7 t9 |9 D8 C
三、DML
0 }9 z& ]: j. c0 o1 B管理表中的数据记录
6 _, u' M+ Q; `. e. m7 [7 A/ v" z# h& V2 Z" K/ x
insert: 插入新数据
2 U4 [$ V( y: N; Jupdate: 更新原有数据
( W0 H7 _& G7 |$ X: E, `1 `delete: 删除不需要的数据
0 c) [$ Y/ L7 Y- p% D$ `3 _( k1.insert插入新数据* V" V+ q# t- d7 \; i
格式:# S% @, O4 w/ [' a! w/ Y. m1 Q
: L2 c1 F8 f1 j6 H Q! K4 Z' g2 Qinsert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);+ w# ?: h& i% x+ \0 N
5 m4 V9 r; ^" w& \. i% l- z; w例子:5 }- d8 K9 a0 p2 N7 t/ I
insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;, k+ j2 v4 u# {$ P& r
o* |" n& W$ n& b! t
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
' X* M. t/ [! u) q& }" O3 n) [+ m. D! c/ R
密码复杂性验证
W% W3 n1 k* b3 |2 j' C. w& ~ \+ T% q
insert into 表名 values(2,'自定义',90.5, 654321) ;
: E* r( n! Z; e& B5 V$ h* sselect * from 表名 ; 查询表的数据记录
" E; E! {$ }1 I6 o! e/ U, p8 _/ }- U) e5 p0 v' d, N
insert插入表数据1 `1 G- r: O0 O: ^) ~- S; z
! D# m5 f7 S0 e5 e7 n在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)
]$ ^& x# m+ I1 g p6 b; w! D
. ~9 a( ?- i& A1 @; y使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写$ M& [, A4 H, f- f- y+ j* }2 n
' u$ F4 a) {3 V8 r4 d/ c R
$ g! u$ ^' l# p9 x P) t7 |. q# m+ Z% p. H+ F
- D! S$ I a( ~
/ u9 z% h" x6 F c4 g9 T8 Z
* }9 W3 R/ X: R8 |
8 r7 E0 z6 _6 c* W4 _+ {2.update更新原有数据5 K/ R, ^1 A5 W) V
修改、更新数据表中的数据记录9 y7 I" M* m6 D; m2 W, |" h
2 y% F2 A6 C$ i3 @$ b U; K8 j* q% d
格式:7 ]3 L) N1 j; a( \/ X! d+ k: a
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
# o" P4 n$ m. ?! e. @) p7 ^9 `/ B& }& W$ I. a
例子:
6 J" ]/ Y% h+ H; w/ X' {update 表名 set passwd=PASSWORD('') where name='自定义';7 b p, ^' u/ ]' T F( s
update 表名 set name= '自定义' , passwd='' where id=3;
- L0 O; a! b: A2 ?& x+ L
5 m0 E$ s" o0 a* @2 I4 o4 Q/ L8 {- R. g" T( h$ G# {+ S: \+ ^: B
) C5 |1 v9 `5 ^- Q8 `: O5 D3 s: }/ \! o# T- u1 y7 p+ V8 g7 z; G
1 z; e) d& Y, H. s; a- ]5 K( v8 R) m) Z g1 V
3.delete: 删除不需要的数据(表内容)0 K* O" f* P0 G. J( E1 A& x: G
在数据表中删除指定的数据记录(行); ?( w; l- R/ [# U4 g# T
# `- G( ?5 M4 v7 h0 V: o
格式:.
1 L# F( D8 ?4 w! ], i; _3 Q3 M
0 q- Y5 K8 I- p8 L- K. U# {8 L# Cdelete from 表名 [where 条件表达式];& }8 O7 |3 b" o7 h3 y
9 D. [) K, ?% g/ r7 I+ C, ^; l& e7 ~
例子:$ b# R: W2 I3 y6 @. j- B8 X2 O4 o
" ]0 h6 m+ V" \! `2 a: P+ M
delete from 表名 where id=4;, o$ h1 t3 a6 u! Q( R, X. V
: p. {3 A, \- B3 `
5 G G% ]- K6 k5 V& h四、DQL查询数据记录$ O6 U; p( A7 f, I
select
. r+ G* y: k8 ?4 c' t/ j' ]% l
3 C$ l' |" ^- @( K格式:- W; \. `, q' X8 h% a5 l: ?
. B" x: z- O& G3 }& zseleect 字段名1,字段名2[,...] from 表名[where 条件表达式];8 x% {5 t7 ^% O8 z5 }2 L
* J3 Q4 ` }% M" z% f2 Q" y例子:, A, E* q1 @1 T4 J6 l* [' i0 u
seleect * from 表名;0 Q3 I' r% Y2 u# P6 H
seleect id, name from 表名;. n$ F2 p. F# {
seleect id, name, score from 表名 where id=2;/ a# D( `; e4 r2 c* K; l& o
/ u7 f& U- f' n" ]. _% E
select name from 表名\G 以列表方式竖向显示
- c+ H% E+ r; T+ x# aselect * from info limit 2; 只显示头3行 c$ u5 w" T4 N5 C S, ?: ~ n; M
select * from info limit 2,3; 显示第3行后的前3行; `" ]4 m' M2 k) l
5 q* L9 Z1 O3 h- o
5 ^9 W9 s& O. V1 p1 _
; h3 z2 z- }4 p$ L7 V- a! \( U4 q7 J. y
- D: \6 p2 [- L$ H; D0 x- A/ P
3 V6 n% {" ~5 }) l4 L) c- n类比excel表格# X: Q' p) T& N5 q
1 C/ a; b( g( e0 T. q$ D7 _. y
& e( x' c0 n$ f: `) f4 e) L$ ~. f. b: V
四、DCL : b' |4 Z4 y4 R, H! x1 L
1.alter 修改表名和表结构(表结构)4 @) {/ a/ d% o$ E P$ x9 a# _
alter table 旧表名 rename 新表名;
7 x+ r+ \$ E4 d4 J+ }! k5 H" p( ~2 s" K# m" _: Z1 w; x
扩展表结构(增加字段)
" j( X% E- s1 galter table 表名 add address varchar(50) default '地址不详' ;
* M b5 r& C: \, w9 udefault ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用
9 I) S5 a- P/ x. L2 o* kalter table 表名 add address varchar(50) not null default '地址不详' ;
# _) ]2 H$ f- W5 h! y) N) D, ]' d O! q1 I, G
修改字段(列)名,添加唯一键(唯一性约束), S! i7 F) n& k. S# E! X
alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;) N1 p; A3 o1 M8 c0 X
unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)
; r" e9 a# \3 m z$ v- v, Q1 L7 tprimary key (主键) :唯一且非空3 T3 y' }7 q ?4 z! }4 ]2 `) j* D8 c- i" Q
alter table 表名 change name user_ name varchar(10) unique key;
4 Y/ y9 n8 Q6 [7 d% j: t. t$ fchange可修改字段名、数据类型、约束等所有项。' a! n: L* Q' i; c% c' y. T* S
$ x2 D4 T. q/ D: b4 x删除字段
/ ]" W+ o9 ^! M, R& H格式: C: F# c' }3 t
alter table 表名 drop 字段名;3 J; w1 B/ ~, @0 P/ A; ]( n
! @ E7 m! Z% c, m, Q' S* n2 T2 t' ?————————————————
" A9 K- H# {* ?. v, Z; X$ y' H' E版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
4 L+ E8 l5 w( s: n, s" a9 E( W9 U3 @( J原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177
# p) H P' ?( n" [: C% F# v
8 ]9 h! b; O% M8 |5 t
m" F$ x# ]4 M h% N0 j6 J8 l7 w# p |
zan
|