在线时间 1630 小时 最后登录 2024-1-29 注册时间 2017-5-16 听众数 82 收听数 1 能力 120 分 体力 565171 点 威望 12 点 阅读权限 255 积分 174774 相册 1 日志 0 记录 0 帖子 5313 主题 5273 精华 3 分享 0 好友 163
TA的每日心情 开心 2021-8-11 17:59
签到天数: 17 天
[LV.4]偶尔看看III
网络挑战赛参赛者
网络挑战赛参赛者
自我介绍 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
群组 : 2018美赛大象算法课程
群组 : 2018美赛护航培训课程
群组 : 2019年 数学中国站长建
群组 : 2019年数据分析师课程
群组 : 2018年大象老师国赛优
MySQL数据库基本操作
' {+ x) A) k8 p" R+ _/ m8 n: S8 A
& Q9 G$ D8 [) ^, C 目录
/ c1 z' i! b( u6 v w* i2 Z ) m+ l: p5 ?' Z( ~1 z
一、SQL语句 (mysql 数据库中的语言)* Y' c" i; z0 o1 Y1 m6 \" _
8 V- K) I: R$ K/ X+ M% E
二、DDL
1 I. y* |- P. z( `2 K, u; ^ 7 I( Q, s8 F) _+ f1 w
1.DDL语句: X% v/ Q( \- |" F- q
5 ^* W# x5 Y: Z- D f (1)创建新的数据库
- g2 ^ P( h7 f0 Q/ Z
3 U, Q n! s2 x' { (2)创建新的表
0 k8 p: D6 }& {9 x/ y# {5 q
* U+ ~5 J+ H) @9 M# g& J) y+ x 2.删除数据库和表0 Z1 R2 E; U7 p' w2 w1 h$ ~
6 f# O! E: e- R) B$ {9 p% v 三、DML
$ I. U' p* _4 i4 x2 m: n) e
9 g$ D& ]& q" `: @ 1.insert插入新数据' p) Q* d2 O" X2 \$ c) i4 \
2 R* L- ?1 \, t) f! j S, S 2.update更新原有数据$ f7 ?# I' \4 X$ S. \$ `/ b: Q
) Y7 A8 d% d7 g; K3 I
3.delete: 删除不需要的数据(表内容)
% |" R& R" K3 c! N! h% _+ T+ v ' m& B5 u: d, c8 ?* `4 [' Z' y: ?
四、DQL查询数据记录
# z: I, M4 |: x) \) _9 O
3 `. s$ \; t( o; P+ F$ ~ 四、DCL
9 @$ L/ R+ c" W6 x3 |: i6 V 9 r7 j' |' P, v* x! n" Z K ]" ?
1.alter 修改表名和表结构(表结构)$ o7 O% w% F# }" ^1 C1 _! M6 o
( n3 }- A1 Q) I. F2 M, h 一、SQL语句 (mysql 数据库中的语言)1 E- P& o8 P5 ~2 f9 p* B* p1 y
show databases;查看数据库! H1 [- U- r7 ^( l0 r2 B! f, j
use "database_ name" ;进入数据库
: s: D( F' ?, S; ~ show tables; 查看当前数据库中有哪些表
% t4 @& V; a* h2 B select * from "table_ name";查询数据表中的所有内容
0 d q4 P& R: Z) ~ describe "table_ name"; 查看表结构8 z& H( a, U s. _
desc "table_ name";
+ K$ T" ?4 Q; ?1 K 1 z1 y* `4 R/ w, k# w8 t
6 a8 W: i% M5 J9 H# {
. [6 H3 ]. t2 w) F- T - @- u0 o: a; W2 ^* s( u
" Q* T$ K6 E5 Y( U) n, W
" w+ P( O1 A5 H0 r: q" q
7 R! ?. {( Q- |0 d( r* a , @- Y! N0 d4 u: Q" B
! L0 |2 S! j9 W- l6 ^
% U/ i% X+ X4 {9 j0 m/ U 3 k1 C( v! h5 n" D
0 x" |/ e, Z! d4 G7 v( F' a
% T6 I4 | f% s0 s5 L6 Q - b& d1 j4 G& p$ g) h R3 B
类比excel表格
3 D0 K/ v6 h+ _+ b6 f% q$ n% m
& w+ A. ]/ v+ f5 q2 K
* N' U0 c% x% Z3 ?/ Q0 {# B7 v
+ A4 Y! I; H% w7 _3 v
7 o1 O' X% A/ D9 J! E! L: g6 d
. D, p) y- ^2 y4 N, {- K 4 T4 W# I1 b/ d, N1 i1 O
! k! }; K9 d( \9 F% w5 d; s K$ c2 Y 1 b6 X$ v' ~; ~: |' d
% S5 U5 L# c$ g1 l- z- a 类比excel表格
& Q' S' y6 ^" w$ G9 w9 I , [8 y1 K% t! v
L, w3 Q& n; A' P n2 `2 i 6 _+ N" ~0 P: R7 |# P! P- {4 n
2 k! }( s* d% a& x4 K: j% Y
7 y/ i3 S! i! g7 l 简写 7 K, V8 V6 R ^
7 d4 Z. R2 F9 J0 b/ n/ Q0 a filed 字段名 p" K4 s. y* A+ y- Z' R
9 u! m. h! s l5 U% p0 D( ^! s4 d9 i 2 ]+ ^3 x- I) b5 {
( v/ Y2 x9 {5 Q. e8 ~) ]
二、DDL
2 {: C( l: |3 z; j+ E$ c6 v 1.DDL语句% h0 M. A, S0 f2 G1 c
用于创建数据库对象(库、表、索引等). B3 q0 ?/ S( I! n) G1 g1 |1 B
) }; {' a/ w$ t6 r, N o5 A. v
(1)创建新的数据库1 X; t, _; l5 W( o v" ?
create database 数据库名;
D8 @4 c- m3 c0 ?6 C- J/ E8 } ! d8 j0 V4 B, Q8 g0 L: z5 f
(2)创建新的表
& i! J& I; H9 ~2 U9 p6 | create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);
; g& _) i+ b' k 主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。
2 I) o* e1 L1 j/ C9 z
- ?8 B6 v4 _! o create database 数据库名;$ m: g2 M3 J6 ~
use 数据库名;
6 f4 X/ j! _. D9 f5 ]( | create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;' T* M F! L: d; }
6 v! @! I) p! ^: R- q# r }4 I) d desc 表名;
|7 ^ U3 `3 Z+ N- |7 k ; K. P: V5 f% Q. a2 }2 F
not null 不允许为空值/ t' E+ s; [# u) i$ T0 b8 f7 W
' l" [; D$ _, ]( x) H: b$ S default ' ' 默认值为空1 f4 y: [4 e. i9 H
+ H; ~7 u2 f# M
primary key : 主键一般选择没有重复并且不为空值的字段0 @7 B: [6 v! O Y
4 L, D9 A" i# b0 \, k
例子
, v$ ^1 \; u/ V$ U$ H; A4 b create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
! S3 W4 Y9 k+ y4 J$ z0 W I create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));: T/ ^9 M9 {* T9 Q/ D% x" i
/ w5 T( u3 a" l/ X! a" P
) p+ r4 i6 W$ {6 U, Y' a x8 U9 T0 }* G" B
& Z: m! j9 Q6 z. l3 u9 q6 \7 j
8 J9 l# ?# R$ M4 w U$ M
$ e8 ~/ Y1 y( p; Q 1 k2 y8 ?$ G1 N4 T) S ?
& R' v2 z: C+ Z
( T. v; s' d6 `+ o $ S0 ]0 e, m1 v9 R: u) K1 d m
$ g2 Q8 w, `/ s
2.删除数据库和表; R7 g% X" c# y$ t: M3 C
删除指定的数据表/ k- O" A3 {" i0 q1 i. ^7 Y) o
3 ~7 ~) i: w$ v5 Q; c$ [ drop 删除表内容(数据)和表结构
2 A2 k9 O) X$ x$ }$ o
" c; P$ P0 b; e+ L( E3 I. i use 数据库名
7 z7 {, o; G P/ n4 i drop table 表名 0 P1 ?* ?$ n* L' [1 ]. l5 j) x( {
drop table [数据库名.] 表名;
1 h- o0 S! T; H' J3 D, x4 R 如不用use进入库中,则需加上数据库名6 m9 {& Z. T1 s/ ~2 H. Y: N
删除指定的数据库* M5 ^8 z9 @) L7 d3 c. y# b, w
drop database 数据库名;8 J' r: a6 B' }, J# [+ @# [
( G( x# F+ [ u2 c) O* X
; o# u7 H! V' n- X6 Z
2 H' z; S" W, M' F
5 r1 F8 g9 D# k6 d1 j* T
! e+ v8 t# _) A
. ^' \# N7 k2 N0 c2 F7 m
2 V6 V" }% U# G9 M2 O E0 ~ s5 {4 \" l6 k
/ }+ E3 a( y9 @$ f- r 1 h, k- ~9 Y z' b5 I! e
) l# @: y, V% a' R$ Q% f8 Y
8 n6 ]7 T( m1 ~+ P4 q0 L
; D6 T9 ~7 r" k* |: t6 @6 b" P* N; a 9 ~: L0 c5 n9 l( l
8 Y9 U& h6 B" L; P
0 A$ g$ `& b) ~ 三、DML! F$ v: V) k1 I4 B9 `. m
管理表中的数据记录- d( O0 o- i3 E% M
$ Y( t: d2 z0 F( a3 f1 p4 b
insert: 插入新数据
, j9 f; _7 f, o+ P$ H- M update: 更新原有数据$ |2 l! ^6 ^; P; g" T c
delete: 删除不需要的数据
$ V8 d, O; [+ V! O* ?! |* {% D 1.insert插入新数据' @/ B+ z/ E3 }5 B" d
格式:
, ~, Z Q* R0 M( J- w9 d6 c7 s
' g- R/ z( k' T2 ] insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);
8 c; {! G: t6 }# o7 w & K% {& }& b$ \* r- l0 O
例子:
. V3 L& T) |- Y$ e1 ^ insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;
. ?- \/ h& c, X9 ]9 `! c 0 R: N/ r9 @$ _% i
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
! c$ N+ D7 }1 i2 v0 G/ h# U! B3 P# ] 6 E. L% t9 M; c9 B
密码复杂性验证8 i" V* F) \ B6 t7 W
9 Y, O* |, u5 C5 L1 O' A! T; ~
insert into 表名 values(2,'自定义',90.5, 654321) ;
' Q% @2 |$ x! e N% ^, o% c8 z# L select * from 表名 ; 查询表的数据记录/ L0 n# x: M- ^% s% I5 T, @
k' ]+ b: Z! t+ m insert插入表数据& U- R7 ^. v6 [( g6 x1 K
; E: ?; Z8 v! s- \ 在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)
$ S* R/ x' E4 ^ K
5 ^# I& a+ e5 n1 _. Y 使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写
: r8 c5 U7 S4 ~! H ' i- P* B$ Y# F8 \1 U, w
7 q& I q2 E# o' v/ X, W* N
+ o" K0 q0 D: U/ |; c
3 a% _* X6 A% A$ L$ s 9 e' b# C1 u0 y7 X! `: v
. Q1 S) p! p. ~
# I. \6 [4 n! \ 2.update更新原有数据
1 E6 V+ x. b8 K% z 修改、更新数据表中的数据记录" `9 |+ P) U4 C- i) f: M
9 P) k% e2 F8 z' M) i! s# M
格式:0 Y; P' G) D0 r
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];2 b! _0 `- k( `. K
% v1 Y/ v' M- X( Z, g 例子:
, ]! r) }; X/ ^' I7 S" v7 f# B update 表名 set passwd=PASSWORD('') where name='自定义';
: y- R! E" Z& j. I update 表名 set name= '自定义' , passwd='' where id=3;
: \7 O: o7 ~( {2 X0 d . \; T! c6 m$ a, n- U
; v4 ]! M" O, l. w6 v& H8 C
$ l& E4 e, Q0 A1 S& Q
* t* _& C0 H) J; ~7 Z0 W
2 ], x) B+ Q3 l+ S! c( i- y1 B
! P; {7 G( ~8 ] h2 S0 R' a4 O
3.delete: 删除不需要的数据(表内容)9 b( {/ N$ J/ D" N+ ]
在数据表中删除指定的数据记录(行)
( A4 ^& B5 C: m# z- r* \1 A# U' K / H o% g0 S# [, \
格式:.
, [$ T2 k4 K, x 5 n* m V" {. _- B- ^: g) ?- Q" I
delete from 表名 [where 条件表达式];
0 P4 h& o+ k! c4 S% @" A
5 C a0 t& {: ~6 A! J* C 例子:
( L( u! q& b" v" \! M: Z 0 Q# Y P/ d4 z6 z
delete from 表名 where id=4;2 h l# b, _6 N$ ?' s
4 c! R8 C" L. a: } 1 Y" k( d: t+ a! o
四、DQL查询数据记录
9 l+ z: M$ a2 B7 e. o; k9 |. ` select0 P; l R" N" Z: s) ]" {- r8 [0 V
1 }/ e+ Z; ]3 S* X0 X
格式:6 w" C) G# C) g
$ f8 ~8 d% p0 `" S- [
seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];
; y! a( |" P, A* f2 p/ ?8 h
# N" m" M( H1 u$ c* ]0 K) {6 W 例子:
! ?: \- p3 d! a, S seleect * from 表名;" v9 O( }2 G! Z- O" [6 J
seleect id, name from 表名;& D4 J8 @& f' g% S
seleect id, name, score from 表名 where id=2;
, d q8 {6 G: r6 u( f' E. O. t / e/ v/ x ?8 \! h/ S
select name from 表名\G 以列表方式竖向显示, q/ i# k( |1 I; O( E0 M' ?6 H% x8 s
select * from info limit 2; 只显示头3行
2 w& ~! \" E5 ? P8 s- o select * from info limit 2,3; 显示第3行后的前3行/ O( x% ~. S" o1 _+ d
3 h. e. D3 p+ Q( N/ o
$ A! O% d. {+ i7 ] Z 8 ?/ y4 R) s% N& L+ G+ _
5 _7 B4 h/ R; M9 N7 Q* [( g 1 \& P3 J; X7 H" v$ `
" H' d5 y4 N# {6 j7 g/ y; Y1 M% W 类比excel表格( J" P4 V+ W1 A& |4 k; y( n6 Y$ U
+ D: h+ R! s% l5 B " u0 r0 a9 F2 Z7 J2 o
. v$ q$ l* p0 \3 p% j' Y5 a 四、DCL
1 @1 V: }/ @* Y7 F2 \# o 1.alter 修改表名和表结构(表结构)5 ?/ r* e# n& p
alter table 旧表名 rename 新表名;
$ b4 K6 C0 G9 M7 Q5 ?
# k' w! W4 E1 b$ m; @$ I; X 扩展表结构(增加字段); R5 O0 l, F; M: B4 i* e1 N2 A
alter table 表名 add address varchar(50) default '地址不详' ;
; n( G' z e! K# L9 J! M5 y) \ default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用3 A0 V8 Z! g) l( u- K7 n# Y
alter table 表名 add address varchar(50) not null default '地址不详' ;, S& b( e# f* S7 o% A1 \4 G9 w
4 C6 u$ q9 ?9 Z! M v. H 修改字段(列)名,添加唯一键(唯一性约束)" s8 O2 S G7 L
alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;; Z- Z2 e$ \0 ]: ~! U
unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)
& Y4 W" m Y5 K primary key (主键) :唯一且非空% E' k9 W9 H6 ^# V' g0 E/ X
alter table 表名 change name user_ name varchar(10) unique key;, B5 q, F4 D7 l- [ t
change可修改字段名、数据类型、约束等所有项。! s C$ A' q. R- k# b4 h9 G' Y! N
, X0 i A$ ^/ k; r! l: V, m$ H
删除字段1 w2 X- a& F. D! z0 H
格式:9 D) ~ L- z o
alter table 表名 drop 字段名;" a) \1 h: Z! @1 S+ W0 X
( ]3 o9 G5 ?: l! X B2 W1 n7 @6 i7 j ————————————————* V3 E+ K. b* b. H1 l
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。6 `/ X% ~/ { p- @
原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177 m; ^* p, K8 W- L
; ~$ h9 r6 e1 ?9 h. E6 g8 m
. j5 U7 z3 F6 d4 X+ _( D
zan