- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 563253 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174199
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作
# l8 J+ ~+ W) P% Z- r
7 f' _ K! x$ z0 V; \目录
1 W, A1 w9 k2 Q0 `
( b& N2 N5 K: f) J: d+ k一、SQL语句 (mysql 数据库中的语言)# z. N7 {$ g: \/ J5 _2 @3 ]
4 x) W, N9 @; X" t7 G" y; _二、DDL- |* s( A$ k( \/ I; ?7 y0 P2 b; g2 y/ ~
& ]8 e- [4 y5 l, `5 r1 O/ B1.DDL语句$ c$ {* n( b. [- x, S+ L
! K# O( X+ d* d+ u% h(1)创建新的数据库; t# I4 y+ ^/ q+ i9 [! Z' X/ p8 H( x
0 s* E4 b* |, P(2)创建新的表9 W) O$ E9 N9 p7 |! ^0 X0 i, I) J
+ y- e8 P0 ^/ J( n- s1 z0 r
2.删除数据库和表" E' R% w+ z0 R% h3 t: { s; n
5 C- \- C$ q- C1 E j
三、DML0 e, N: p2 r1 ?+ ~
0 k: f9 n/ g6 h6 x8 B1 T5 [
1.insert插入新数据
$ n4 G. m2 U/ \% f1 ]# \" D; V! Q
3 I( i# x! W* ~/ _0 Y+ y5 ?; P, R2.update更新原有数据
. \" k5 d/ Y! f7 v3 p9 e% S ]* R5 B1 ?7 _! r+ w; |1 j
3.delete: 删除不需要的数据(表内容)) `, K; X, m# U
n! p" x6 ], e' ^2 d/ [5 V# O
四、DQL查询数据记录
1 E: W+ x" L( u2 u" L: O
; g/ y. _+ L. c& L& U; |4 B四、DCL
7 j4 n1 j! B8 |) f2 {; M
' A) U# X3 B, e7 S3 d1.alter 修改表名和表结构(表结构)% c& a2 P% h: e( t' T
4 S( J% ?! M" c; j) T; y! E! p一、SQL语句 (mysql 数据库中的语言)
+ U9 V1 E) R6 X7 a; l6 @( @3 A3 Qshow databases;查看数据库
% g7 H5 G1 r- }( T( u2 Ouse "database_ name" ;进入数据库$ L( d" k! H: N* L
show tables; 查看当前数据库中有哪些表7 b: w% k4 k( `1 Z7 {
select * from "table_ name";查询数据表中的所有内容
0 N/ z" d5 O' j" Bdescribe "table_ name"; 查看表结构
/ `/ c! D: }, ^# H: jdesc "table_ name";5 Z' J* E. d4 A. m! G& w; E
( h) L& s$ L7 a) S$ e; E4 f6 [ r3 E
7 g# q$ T* |5 u) |0 i. \& G, _! `
' P3 G9 R$ D2 M
/ @8 b( m5 K% k$ U3 [; U$ U
" U# f z# a3 ?5 y8 |( \
7 X2 ?8 w* b$ Y7 W! L3 f* n1 T* F$ R4 u" v
7 A6 a/ p! c+ m( p! G+ D3 y i$ |" _4 p( h7 z0 S# @
" i( J8 L( o; n/ x m8 d3 E
& @0 R9 E% b+ f7 {0 C
% E" `) P: h0 h- {/ h0 k& B3 x0 D. H/ i- D0 I& K5 j" D% I
类比excel表格3 B7 T* g) s- s& s5 c( u: {
+ ^/ [$ U8 Z/ r5 }. _- s# _# e2 G
/ |7 K% L H, G9 V; X9 Z1 }; z/ A4 v1 [ Q' _, S+ s, W% ^* H
5 a# L6 m2 F2 x* S8 I/ P4 G
4 I" v8 Z1 _# k0 X* j* H2 W4 ], N. F$ Z5 u" g
! c) k7 f* g+ u% u$ J) H! Y
# {2 ~6 o: |8 X) Y3 r 类比excel表格
8 Z+ M. ]4 O1 F% Y& w- b- m U+ h1 `
0 a2 h# r- i- J' i; P6 u6 H
# n1 H1 h* S3 c+ W, b
7 \0 m T: _+ N" `0 u$ f- w) G1 T; z1 S2 _; ~) q7 }
简写
3 c4 G# O) E) P" F2 r$ U. a q" I3 p7 G; K4 ]
filed 字段名
1 N$ X3 U3 N& n; p9 [ c4 I* I, w2 L
6 ?* A5 l# a" R1 c& B# k z3 _! P! z" ^6 D. J
1 U5 v% C+ N g: P& e# f1 `% [
二、DDL8 L* Q( T$ o! {0 n# }% O/ k
1.DDL语句
0 d. L( Z4 m+ n3 U0 y* Q用于创建数据库对象(库、表、索引等)
! Q. A" d6 ^4 g- V& X$ W
! d7 c0 F: E; i7 c+ M% I ^8 P(1)创建新的数据库. ?) l6 r, p- C2 v X; {# d3 X
create database 数据库名;# R2 `" h! f) i2 b& `$ ~! I6 a
5 p+ T3 X) K$ i1 u
(2)创建新的表* J/ Y, I3 \7 g: N- W- v
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);3 C1 I& u! `4 c: S
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。7 G3 u' s7 r6 K4 v6 Y1 \
7 \! J& ]! c* P4 a* E; ccreate database 数据库名;0 _2 b# {( B# [9 c3 n. |0 H, [
use 数据库名;
) S. I- o* `( Ocreate table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;
7 |: u5 c6 _5 ]. I: d* G# Q% Y! N7 z* F3 Y
desc 表名;; Z1 r# i' I: }2 O
2 h2 E: K! a* h* B' [! h5 g! anot null 不允许为空值2 }( }: J3 _- X8 A
$ W. q$ P9 S# n3 _7 m5 w7 ~default ' ' 默认值为空2 k3 T! w+ D/ m% f
; l5 v m! j$ g' K. {4 Oprimary key : 主键一般选择没有重复并且不为空值的字段
, }- [- y1 I1 i/ ?* i% d6 ?" O! U7 D: @8 n M/ u# g
例子
% Q: T8 a# r/ D: v) T1 U# B2 Tcreate table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
$ L: {2 r# ]4 `! @create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));2 Q m, V Z+ ~. T0 k# p
& l, T' j& o, B U; o2 O" F# k$ ~4 h( m3 s+ d; f4 W9 ?
- g+ o* \7 w! v
1 a4 t( F- o% A6 ^5 }6 s8 k
5 T8 |0 F- S% y4 O* @* E0 r2 V, i# W+ v# `: k
7 |6 H; M* A7 l1 l7 b1 ?9 ~! V
6 T$ O3 P2 H0 h; K
0 G w$ W8 v, S' P& p
! n' a* }9 C# U7 s, y
2.删除数据库和表
+ m" s; D7 i; D, B7 v删除指定的数据表, ~9 {- ]$ L. R+ }
( q) M. W3 X+ M6 sdrop 删除表内容(数据)和表结构
~+ I& w4 z0 _: Z6 J" X3 S' L4 S$ X' W
use 数据库名 Y6 s& [/ }" ]7 N& V$ v% Q# Z4 Z# g
drop table 表名
! D% M }9 s# v) W0 H# c9 p6 K: Ndrop table [数据库名.] 表名;. L4 @9 F. s& ]1 e5 b' z1 C' I$ \
如不用use进入库中,则需加上数据库名
8 O! V6 s) {6 y2 ^删除指定的数据库
) S0 n! g& @" J9 n+ I* ^4 a6 Qdrop database 数据库名;
# M9 b m/ ^+ o' w/ R6 c
8 s) w& S" W( d7 f: }0 ~3 G! v5 u; S+ P/ i; g, c
! {2 J' n, v7 B- _9 S
; k: q- T4 r- k/ a7 a" e2 [
, w1 ]/ v Z9 e& n. I( X$ u
1 N8 \8 E) e' z9 ?3 R) r5 x1 P8 U8 c0 z' B: X% o& G' ?
8 Q0 i+ L1 i" x ?* V5 |% B
4 f3 O' ]3 P7 ~3 ~2 @% S
" {* k9 J( F+ f/ G' }. ~% Q! Q6 }" E# Y% l( _4 t b
1 d) k; y; R8 G
9 u$ R9 B* |7 C% X3 r0 _8 y4 u, l$ W/ p$ A
" {$ {& r4 E3 t1 ~7 f! }* q/ u0 P
8 g2 ~( ]4 d. d4 ]! O: Y- `0 D ]# Q
三、DML, k% k+ h! Y6 O! Z
管理表中的数据记录2 L4 r; C0 b" A' u+ }
* ~, W: B9 i/ b
insert: 插入新数据
& b% T6 h# a2 j! X- y) bupdate: 更新原有数据8 {4 W4 t# u. E7 ?. }, r. F3 _) `
delete: 删除不需要的数据5 f1 o; M: M2 h1 F8 M' J
1.insert插入新数据
% w. o- o5 `. Q, V1 ~! A. N$ E" `3 b格式:/ C+ j: ?& q1 Y8 b0 f* o
7 b3 W2 N' k$ {
insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);
3 F# x8 X; Z- ]( ?$ B" d0 s% B0 U
例子:
- z9 d# k: J( M" M$ G/ E4 Ginsert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;
" M* D- g' R! x# B& w; i' [* i- v5 ^6 ]# @5 w' A' ]" W
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
( D' X- F A9 L6 L6 f+ a
8 F0 @$ W& m, V& f8 x$ O密码复杂性验证
' d9 i) ~8 r/ x$ M6 y8 `: G! F3 s1 {, Y- Z) Q. ]& R8 Y, q
insert into 表名 values(2,'自定义',90.5, 654321) ;
" O' e: r2 h/ w, D, e1 P) hselect * from 表名 ; 查询表的数据记录
* Z4 E- s( ^3 u2 V9 l9 ^' c0 {* l. e7 Q3 \( N3 J3 J
insert插入表数据
# v. o' ?5 y# n' X4 z( a( M$ W2 [/ \6 K) l) E- W+ Z
在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)2 n. ~+ H# y9 \3 t
( s" X: s: K( r
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写
# D6 R/ x2 W0 d, P& L5 i0 u& R# T" M
8 @0 A4 o$ H; p
" i* P$ @; ^+ m( |1 [0 p/ B3 M( s& }" Z& ?& f4 }$ n; S( J* `
4 f9 p+ Q- S9 v2 Q3 ]; z3 U$ L& b
: @" L* {- I* o" {$ ?
5 y2 T. Z% e8 K; A, s( u& L5 P7 z0 o% l
2.update更新原有数据* o2 a6 Z: U# y" g, q, A! K" f
修改、更新数据表中的数据记录
7 k( W! s/ D* C! h8 o3 G3 l! B: Q. {9 V* g, y
格式:, d$ _) n3 @/ |2 b& r
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
7 b, M' E2 a% n/ P1 {1 o; M6 n( N. [
例子:8 m$ k1 x6 X5 V! @4 V7 D) Z
update 表名 set passwd=PASSWORD('') where name='自定义';; j9 }! N7 ^' Y/ G# z+ n
update 表名 set name= '自定义' , passwd='' where id=3;9 `! i1 M- F6 @2 E6 X0 b$ u6 V
8 T% k6 e! S' d4 _, X
1 c P! c: z; `/ ~" m! O5 D4 ?0 p- m
7 n# d3 O; v& i& h; m: e
( O0 h( V9 b8 J1 [8 [
( ?$ X, S4 u4 J( a7 v/ R
: t; Z- u4 Z) q+ i3 K1 H3.delete: 删除不需要的数据(表内容)- e* d( h4 b1 E! K
在数据表中删除指定的数据记录(行)% {( H3 b8 e2 h; _* ]1 o& l6 k+ U: L
1 x1 c$ G: g0 V ^6 q
格式:.( }7 ^! F8 z' P/ \
7 |$ H6 q4 E9 R m3 Z% ]4 k ~. D
delete from 表名 [where 条件表达式];- Y; E1 }6 T p& J5 L* N2 C. s% l2 O
& w. k9 |# i ^2 h; k, B
例子:
: R; X/ P0 ~8 L( Y4 o. N# L& J7 U5 E
delete from 表名 where id=4;
8 @/ l, O4 R5 y+ b* ]
! x9 Y" ~# l/ ^, f
9 w8 X9 p& @& @) ]# I四、DQL查询数据记录
" _# o$ x, [! l, ]select
% l2 K3 c- P- [/ t- J
; l9 S/ T2 Z$ Z4 [# g格式:3 s7 ?5 Q+ s" I# v2 l& h# Z! q% O- ?
6 Q m$ ^6 K! }8 u: `/ O
seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];& A% N2 I) ], C" T8 v
2 O+ C6 W& z* X0 M$ |/ U例子:/ W+ _3 H$ g6 ?1 C* r/ d, b7 X% X, \
seleect * from 表名;
) A) k% N2 W/ B4 i: `2 k& rseleect id, name from 表名;
0 V8 m' S. M6 i5 W$ V9 Lseleect id, name, score from 表名 where id=2;
2 o0 S* U& v, Z, z+ L6 a" V- T4 O% E% T( T( X" k) v6 i( A; h
select name from 表名\G 以列表方式竖向显示# A/ x" y; O, W. D" W3 e
select * from info limit 2; 只显示头3行
9 p3 p' N a2 p6 vselect * from info limit 2,3; 显示第3行后的前3行3 C& `% `4 n; \% u4 m% y4 T' ]
. e v/ y3 d& `) o) w
7 y& _, C% E1 X: ^+ D, Y' i0 [
8 d, @+ K5 {9 e' w- ~) J
0 s6 {. F! P! p9 w8 ?- l" x1 E, V% y# L; W& ?
6 l: A" d2 N0 y- M: Q- i
类比excel表格 A D2 N( x6 r8 G% G
4 F/ }5 C" n. \0 R
9 Y+ _+ ?* @5 T% t/ X9 v5 N+ W8 i; U; T. \0 s9 m5 k! @
四、DCL X1 i, E0 m; h; g
1.alter 修改表名和表结构(表结构)
8 S9 R1 |" B" Lalter table 旧表名 rename 新表名;
4 E, M& ? `; ^. F2 }& T3 a3 Y( l* S3 C q% F9 j3 c8 |
扩展表结构(增加字段)2 @0 ~! b! j; @. u
alter table 表名 add address varchar(50) default '地址不详' ;' Y% N* ~* h' S% [* `
default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用6 P7 A9 S a) n1 ~
alter table 表名 add address varchar(50) not null default '地址不详' ;
' `. Q/ J0 k. }5 f8 c3 K# E
8 u8 R7 w/ \2 o3 r修改字段(列)名,添加唯一键(唯一性约束)3 O% N7 t' [. Y9 Z6 r* a/ E
alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;. x4 \, j! l+ O5 Z: q4 a
unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次). J0 y! ]% X" c
primary key (主键) :唯一且非空
& C5 A$ t1 z$ y# j2 L8 |2 xalter table 表名 change name user_ name varchar(10) unique key;6 {8 S" K* m: @6 n9 [( t) U7 b% U7 F% B
change可修改字段名、数据类型、约束等所有项。
- z/ ?' i0 W8 K6 @/ \3 w- H$ z8 d
$ A c5 f. x9 q1 ?* T$ l3 \删除字段' R& A8 E9 ]8 Z
格式:$ d5 ~4 Q+ T" |) {6 V6 B$ h
alter table 表名 drop 字段名;# x' \( X- p! O! a$ d, V( @& Z0 c
# {2 |# }4 K* D3 t$ T————————————————
( |. v6 T- Y& V( Q2 }; L版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。- n H1 H2 j4 K6 ^, v
原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177* F2 l+ }7 g/ b! S8 O/ m; n4 Y+ t4 H
. v' B$ r k2 B! A8 f/ @7 z( I6 K7 p( C$ p3 m: n/ l; Q3 B
|
zan
|