- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 564679 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174627
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作" ~7 t/ G4 V" \' s
* [4 T! C) J+ E' D! w目录
9 @8 u9 {/ A$ r0 y/ V- T D
0 N! L, P; y; l5 ]一、SQL语句 (mysql 数据库中的语言)
1 U% W2 ?6 |' k/ [% t
5 ~3 s% F. w/ c$ }二、DDL
8 h, u9 K( A3 \/ I3 H
) B2 z u5 P, n1.DDL语句
( Y! ?. W5 s3 v" s* h# h* k+ ~: d t& `% I& v
(1)创建新的数据库
' e- Y! w' k; `; |" Q& j9 a' `+ t
/ n8 V3 ?3 J# D M- D# ?1 Y! b(2)创建新的表, ?, n9 l; j! c x$ K' e! f
( |$ Q- a; X4 {3 I
2.删除数据库和表 n$ G' m- d- R6 H1 w4 x6 J, A
5 B, i# O3 Y: H& h+ m- @ 三、DML+ @2 U2 v I: k5 a: j( W4 H
6 T7 u8 o6 O8 J1.insert插入新数据2 T8 ?; l/ }6 H5 U
w* ^- v5 h/ g/ n+ ]( d
2.update更新原有数据$ X1 [/ t0 W4 d4 b
$ _, R. o) k& L, o
3.delete: 删除不需要的数据(表内容)
$ \ O& Z: Q! b F9 c
( O9 A% q+ H5 e# N' m0 j四、DQL查询数据记录8 w- b9 K) t2 j+ x+ p& A
5 `' R, P! C' B2 \8 b7 n0 H2 @四、DCL
: Q$ G1 }: H- V# \( o. L- C+ { ~* t8 z0 Q4 r; |% ]# A
1.alter 修改表名和表结构(表结构)# Q8 c3 S) X! v* q4 j* ?, ^
0 S" d1 ^+ T! N1 G% S1 _
一、SQL语句 (mysql 数据库中的语言)9 b! ?/ N7 X2 b+ K
show databases;查看数据库
* B3 A. B/ ~ A" j+ g. s0 x& V( ause "database_ name" ;进入数据库0 P5 J% K" Z5 I% Z+ c- v/ a. r7 [5 a
show tables; 查看当前数据库中有哪些表- a: W" h% [: ]* `
select * from "table_ name";查询数据表中的所有内容: p* L, C9 n& m# I2 _& M# Y
describe "table_ name"; 查看表结构
4 f9 J6 D& l* S! Wdesc "table_ name";% z! V0 G) ]& }1 s# {# P
5 y9 {5 `* A# v4 ?! r# j) e
3 @3 q) G' a$ {" T# o! F& R7 V! y" ^( Z& K
3 f5 F8 e2 t( r
6 M1 [7 t6 O+ x, [, h/ }" j& w' H
4 a/ @" i1 J3 P( B. K
4 @5 ?8 F D. l8 W- s+ P$ {
$ s; ~, X: x" p7 k* p9 t" q* Y
: V% N: e2 I6 A/ e; f
$ H% x5 P7 b! S7 f* e1 g0 g2 x' p/ n7 k, _
: G6 j9 O1 x5 ^- p
9 @; ~3 V F3 T, _! {9 g. o
e6 h+ H9 k4 |' d& a8 @类比excel表格) n& n/ q l) H- W7 z
3 o9 F. w% S0 _, p d2 G
1 E7 O# X% {0 U+ Q
3 N' g) e2 Q I, g% \0 G6 B
* X- I; N; e3 X" m, z# f$ F/ }5 h
( Q' c, o: p1 J) L0 F0 v0 v
3 S) K0 v+ ]6 ?1 y1 e. K( H
) M# n. H) q, h4 Y+ U" t& R0 Y) t3 C
! `1 m# K( U3 \' @ d" A1 y: H
类比excel表格
( } R0 U- [9 Q" I- [
) X) K' K! j ]3 Z! `
' G3 c$ a- f$ i- V! ^$ ~' ^; B9 t
7 J/ G0 V! t' `3 L. M1 }% k$ T9 ~* ]6 |
/ E5 D. Z; Q- ?& h) w* `简写
9 M0 Y9 y7 a# Q( t
2 {8 t$ y% ]0 n, qfiled 字段名
# ^, }3 Y0 w: N; _% n9 _, u
/ \, z8 d; v ^6 I) g* _- q& n0 \/ `1 U1 \; Y$ P# H. w' v) d6 e
, ? F: g% e7 j+ k/ y. a二、DDL& m, p2 B& ?( Y
1.DDL语句+ k7 c" `4 d9 g1 T. t
用于创建数据库对象(库、表、索引等)
, t' E2 y' i; ~- D2 w: Z: r2 x. j5 p3 S' X$ g
(1)创建新的数据库( M6 B* Z% u. Q/ P" ?+ [* }% e1 [7 h
create database 数据库名;
& m# h2 s# q) w$ H5 p% X* w$ e N! `- H# g8 H
(2)创建新的表' N, E8 P( ?" a5 r" m7 x3 R* b6 B3 k0 k
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);
/ x3 v" D$ a' X3 {& |主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。( L' w5 U! K1 |/ w! Z
% S, k1 R+ b j
create database 数据库名;
# X, N8 f' u; h0 S, P7 g- ause 数据库名;
0 C, I' L& i) q6 pcreate table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;
! v# |2 A L, V; q" X' P A5 J% p' E& `) ^# P8 y( c( d
desc 表名;
/ l$ x1 j4 z9 f" j6 C% I- L5 X( Q: k, Y
not null 不允许为空值
" x- F7 _' N& \% ]( L8 q' U9 B$ Q
; J s4 K) Z p. C% c& _, kdefault ' ' 默认值为空" u; t2 u6 b: x; m. `: x; d$ T
2 L( \6 l3 D7 v' b6 W( ]
primary key : 主键一般选择没有重复并且不为空值的字段- m) W* b5 P# ]/ ^8 s) u& Q
# N& W4 K: [6 ~% ^# p' r; u9 t
例子4 G9 A" s5 ?8 }9 F
create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
3 P8 L6 C* I! q- D4 W# Kcreate table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));
1 @! F* `% j! x# ^. c, s/ x- q& |8 \" `( M) V7 Q
( e8 R! x, m2 S$ |% c7 E( G2 [9 d! q0 t# ^
7 X1 p# ?' q. n4 t7 Q2 M! S7 @/ P+ M6 [4 q, n1 s+ E$ a
: B3 t% X& w, i/ D3 b m$ b9 E
& e( U( P; v! `2 {/ B* `! w7 M
6 i* l7 V5 [7 C6 }% `1 M4 o/ J3 Q( _, l3 J' a6 z6 U3 D G1 q
8 V3 x5 I% f$ E" m; I4 U 2.删除数据库和表3 B3 t) c( s0 z/ c
删除指定的数据表- N! E* l4 Z L* x
3 ^- I5 m0 y% n$ l
drop 删除表内容(数据)和表结构# J; L) @' y9 v: b8 j5 G
, d" l' X& }. R2 Huse 数据库名
; B8 m; W2 A7 j/ s, ]drop table 表名
" H: G' {% h S0 \4 ~, n* _' }: W* }drop table [数据库名.] 表名;" ~7 T+ E8 `3 O2 b
如不用use进入库中,则需加上数据库名4 p; |" N0 M% S5 i. V) r) v
删除指定的数据库* L! @, ?5 s) A* E7 P7 T
drop database 数据库名;
' N! E0 s d8 T$ P% e, B
, L, y( b4 z. {
+ k9 X# I# j: g& d! a8 w! Y/ K" i0 o8 j& i+ K: \9 X
0 A' V' D/ f, F5 ~' i- c
* q1 f( j& f2 K7 v( l) v$ j0 w, a
) r+ b. z. ]* D" P8 |
1 p* O2 d) y' t4 I' R" w) e f8 K) n1 q( J( I
; q$ K, P2 V( D0 B2 @% A7 N6 G/ u
2 k* O- I/ S# @- L: x7 T/ M& t0 B1 C! R0 L9 |- t
( t# x) t7 ^9 I& a+ C2 i
( Y2 w' i% b9 R6 m2 M
4 @8 `( q7 e! s6 E
) H7 `0 p0 F5 a4 b- v) Q/ V) J8 G. C5 z- d* C" E6 {$ K- s
三、DML4 @/ Y1 u& }8 S" M9 @
管理表中的数据记录! _6 N3 D( Z1 j! U! W2 D
" u5 E) Y2 ^+ Y1 ainsert: 插入新数据, K8 r* W$ C ~
update: 更新原有数据
3 P2 J& L' d( t3 Z1 T" A4 Udelete: 删除不需要的数据# j- T; H# q2 v& t
1.insert插入新数据
' Z J9 J/ }$ ^6 j( F! N格式:
& U/ S6 q, {- W( m
* f8 Y9 F/ w/ V# Xinsert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);
) I; K9 i; @; A1 h
% C, ]0 G# x& ^; c$ ` _3 w) Q3 w例子:
, W: F0 c( N ?0 V& Xinsert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;) d9 ? c* A4 g! a e
, j4 ^5 M* j# ?7 [ L( x( Spasswd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
) o) p( A- s& C0 `( f8 q- d
0 }8 K, \' R6 G- P: z密码复杂性验证
, m9 b) V% p8 W6 q
7 p" [) O) F2 L. m$ f4 rinsert into 表名 values(2,'自定义',90.5, 654321) ;& Q4 g1 \( N2 A* J6 a3 o- B' y
select * from 表名 ; 查询表的数据记录
" n$ K. f* e/ r2 j9 r9 o$ `' J
i. n4 H# F, r# k+ T3 L! }, _insert插入表数据5 H( I& g2 U2 @# e/ ^: _' w
( E+ C% T1 S! B) b
在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)$ r: |$ r6 I/ M; }1 ]7 K
/ l- z6 X/ b/ m7 F' Y
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写# }0 b5 J6 l' A* N2 e
( C2 H# u7 h% I; j6 ?" U, C+ l$ ~' V: `; C0 _% U: D3 b5 b
6 C; C y4 R; D2 J. a+ `
5 J H; ^) T; u* S. s% D
5 }. M- L, [8 R/ b/ G# H% `
, h) k* z' T% U) L7 }% h
- F; Y. j' f" s3 ~ i
2.update更新原有数据; C# D' a! ^4 E2 d/ q' w6 p' v
修改、更新数据表中的数据记录
5 V; v3 T; j2 n( z7 g, b
1 |# ?3 M( U: ?$ [, x+ ~0 H# ^& x格式:6 B9 t T8 |0 j! a5 p# v; p
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
6 y8 m7 h$ B/ v4 l( X( L" a
1 p/ [: u2 f( [7 ?* O/ E例子:3 l& W) {5 q# L. C, T
update 表名 set passwd=PASSWORD('') where name='自定义';
3 Z# b7 O0 c1 p) K5 ]9 h- jupdate 表名 set name= '自定义' , passwd='' where id=3;+ `) r7 ?/ n; ]. J; a
u g* v# o6 T" [) y9 y/ ~8 f8 J
7 e7 e! k7 E* a. A9 W+ Z) V( d ^- W3 m `$ u; k$ N/ i
- C( {7 q# y/ x: N, [
, M' o( s, M4 v9 N7 e- Z! [& z
3.delete: 删除不需要的数据(表内容)1 d' B \' J: n4 P
在数据表中删除指定的数据记录(行)
3 E, `5 M3 ^8 g+ X
$ \/ k& A: R5 v: K: h格式:.
" z4 _1 C1 T, ~8 Y
0 z4 a8 O; S& o' c1 mdelete from 表名 [where 条件表达式];
6 X& @7 k1 p2 r4 b+ L: r, {' ]1 ~2 K6 p
例子:( }1 |' R5 [+ w- O
c/ p7 U2 s4 X/ N& q. T. k
delete from 表名 where id=4;
2 q- R/ n' A/ n/ F
8 P, Q0 o$ d5 d, r& X4 G6 t8 b/ D( u. W5 E! R, O' v* G4 t/ ? u: [: r
四、DQL查询数据记录# u- B4 @% D8 O# a; w3 a9 h( ~
select" B( @2 I: S6 L) q& s* R
0 e# U3 z7 _/ y s* r' a
格式:9 [1 E, A, N% _6 ~; p
5 L3 @, e% I& \! Y
seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];8 ]' [. O; I% Q* c# ]' f6 l
* e- [4 i2 D) A5 _; x% j1 @例子:
4 y7 n) v/ I* q7 Q( R1 H1 _* zseleect * from 表名;
" U; ]- y* H( g0 B+ Eseleect id, name from 表名;
) Y& ~3 q& V; H& W# [5 G0 Sseleect id, name, score from 表名 where id=2;
" R5 O" M: V+ s# n: A' v6 P$ |, h8 ] u: n
select name from 表名\G 以列表方式竖向显示
- A$ {5 R F3 D) Y) }select * from info limit 2; 只显示头3行$ u" s& s0 F; e" {. L) F
select * from info limit 2,3; 显示第3行后的前3行# p3 g0 Q9 p! K6 T9 N
8 d& g. Z; q7 j; }7 [9 C
B' ~) `3 n* e( A# V+ z0 w2 t4 L
+ h3 Y( B4 A. K. H, U& n6 V6 o( V. M8 u4 I" |
& t7 k. L* E+ v `2 _# e
& a) X, M3 N; V z类比excel表格
& p% J$ D' u1 S* v+ a% ^
# N, X6 Y) y' R D1 J5 g4 H `3 \6 S- q
/ N2 \1 o3 e) O1 C四、DCL
4 d3 d1 a+ b5 d: R( q5 K1.alter 修改表名和表结构(表结构)
E) C3 p* u: _ m7 ealter table 旧表名 rename 新表名;
0 x$ T4 Z) r5 @0 b/ {$ a2 p
" W& S4 F7 ^! k7 _扩展表结构(增加字段)
8 \6 w# n0 R: `4 m! W6 H0 P9 {! Malter table 表名 add address varchar(50) default '地址不详' ; |' O' E0 y8 C* i
default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用% v1 G) q: I, O, ^' R
alter table 表名 add address varchar(50) not null default '地址不详' ;
& Q N/ _5 | c, X5 f
' Y0 u4 R. ~4 ^* h* c# ]$ @, m9 p修改字段(列)名,添加唯一键(唯一性约束); J' u0 q) L9 o5 D1 F0 x
alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;: [0 x: `5 G) p$ C
unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)
. k- r# q0 B& `- Gprimary key (主键) :唯一且非空
& B# _0 k7 F+ q, ^% L% nalter table 表名 change name user_ name varchar(10) unique key;
2 `* m7 D/ r- W6 l. d7 `( R6 }change可修改字段名、数据类型、约束等所有项。7 B* Y4 u! k" x1 ~) _
, I/ F8 T7 ?% Y
删除字段3 T) [2 U7 Z$ o+ y5 [. f. v, V
格式:2 J% }2 t& P! S) a: V! U' U0 t
alter table 表名 drop 字段名;
7 g( i% V! K5 a& M" X5 z5 }+ Z
( g7 u; C1 i& ?' {) ]+ |. E: \" w————————————————1 m0 s) d5 V! r C( c8 ~
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
" q" Y8 G: Y& W/ E/ l原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177
% l; }- q) j* j0 b
+ m7 F' h4 |6 r0 Q) [9 v/ f; ]1 N6 P5 T
|
zan
|