- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 564695 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174631
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作" O/ Z8 T9 z: `/ T* t* D
! r" g3 \( V1 R2 |2 i; q
目录
5 o1 v9 i; e( l( \! q* ?/ E C0 `) T+ a5 S k
一、SQL语句 (mysql 数据库中的语言)
* e3 T- S# k2 }# S) I& D1 a! p* L" x9 w9 N1 j3 P2 A
二、DDL
) z3 d4 @+ Q! |5 U; z0 L
: @: r3 @, @+ f' E2 ?+ ^1.DDL语句8 Z3 y/ M& W! k! i' x G% M3 a
; x. [# O- ^$ d" d! V# r* h A(1)创建新的数据库
; I, d3 d/ }- k' R5 `2 b$ K. \, _
- Y* j1 _8 b; J(2)创建新的表) |& r" Y" a6 [0 Y( Q0 f
6 y( O+ n# V _+ O3 s 2.删除数据库和表6 H, I% @* a" {: m: T9 a
) ?9 Q; m z [1 I9 B& G 三、DML" K# l: @# q- p$ B0 q. y9 L
# O5 G0 b' H# B4 {( |+ r1.insert插入新数据
+ {' R4 J: ]7 D" A4 e+ h# |5 E. @, ^5 f$ h
2.update更新原有数据
7 X3 O' a' p. N$ \: k. }/ v U; ^6 S1 X. }2 \3 O$ K
3.delete: 删除不需要的数据(表内容)
2 H1 ~; t, S Y ` r7 u0 R
6 R; K1 ~4 D, [/ ^6 I6 l6 Y四、DQL查询数据记录
" E L9 d4 E; L7 }9 F
$ S* U g, Y9 f% i! j0 x7 G0 [四、DCL ; z8 `; i6 h! t; u- R; ?
4 C! i8 P# } Y' R1.alter 修改表名和表结构(表结构)) q- t" o- V# z$ m# ~- O
$ T( M. [$ |/ Q t! O一、SQL语句 (mysql 数据库中的语言)
8 _' Z( A# F% S" y' Cshow databases;查看数据库3 l. t* G* s! ?; R+ U I: r
use "database_ name" ;进入数据库+ Y0 @, C# ^8 ~+ c j1 a# D
show tables; 查看当前数据库中有哪些表
5 ~7 E+ a) Z8 r/ ~( }, k3 j! Yselect * from "table_ name";查询数据表中的所有内容
% u# F8 [' r' D. N" qdescribe "table_ name"; 查看表结构; b1 f# H, @: }7 J4 r
desc "table_ name";
4 S7 a& W- [$ t, A+ `) t, h
?5 w3 u" f, i H$ d3 c
9 C f' a5 P1 p; I6 @! }4 u+ T( k. j1 N; \6 |% T
) i7 D; Y; o' |" Z: v/ ~7 x
& ]; h9 d& \3 Y9 H/ B9 H5 T
! X( B- [* p. x# a& K/ @! a' ?5 k* J$ @; x7 d8 K O
9 z. i6 W( l; X2 D: w/ J) _
0 F9 w) Y! Y: u$ J: F5 u. L( n
' n1 o; l& N7 P. C' p G
7 y/ A- X0 [% m: j7 Z
) u/ T( q" m4 h/ \0 D' F* q4 \: h# j2 l: o0 v! e
L* g4 J* j/ a' G! {5 j' |
类比excel表格
, d. U% a1 ]* D- s8 d$ Q' Z' }
+ G3 h4 M3 p8 ~' ]1 Q2 p
. l3 y* l" f' k! Q! F' X% k5 w/ ^3 D4 v5 E; I
6 m/ I# m, u5 }5 e9 Y$ d/ J) x5 p; H+ d0 Y
5 c% R! g9 R. c* V7 w
' i; M5 r9 T6 f4 X0 W: z2 h; `1 c- O4 o. D0 }
类比excel表格
G' Y5 h9 Q5 B5 N4 r. c- J
# @- b% `5 n, ~/ A/ A' C$ y
1 L; Q$ X }; H4 c' D
, v; E# C; u+ N1 O# W
% Y% d* X! y8 ~4 T5 ?, c( L
% g! H4 }1 @1 Z& \ L+ u# W* B简写 + S- R4 h4 o' \7 T1 j: d
0 l0 c! _) S0 w& E" S$ Efiled 字段名
( `1 {0 E8 x5 _( {+ M$ m: G2 o" S$ F2 V8 }
& }8 [& f a& ]3 {( [5 E2 K ?, `* A# X* J0 f) r5 j0 C7 v2 w' }
二、DDL
) z+ A: \9 U& }; g, Z2 j$ M1.DDL语句5 F: q4 Y/ h# u: E8 V, s
用于创建数据库对象(库、表、索引等)0 [1 @# \- C, ?# V2 I; q& ^
* ^, j! ?& n- I5 d( l(1)创建新的数据库6 v' f* B9 N2 F1 [
create database 数据库名;( Q! I) Y! k- h
' D7 p: E6 I# S; w+ Y: Z9 O' |(2)创建新的表1 j* Z; \5 V+ f, m
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);& m* _8 ~% K3 d% e
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。
) C; }" k# H$ F4 ~* ?
) b' O. t4 n6 [, {! `& X% f" ]5 s& Bcreate database 数据库名;
! F9 a) {" s7 f* T( g) t2 M# Wuse 数据库名;9 s/ g7 f' f! c1 c3 Y
create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;
8 G+ C! L3 d& d6 j# P% e0 N6 ]+ P
desc 表名;5 X; o, b; j }8 t
$ B, M/ v% O, W2 F) N- i
not null 不允许为空值
+ K8 V- N+ ~$ K; \' E! z. w2 y
* q1 h) C& e1 u4 N( \) Udefault ' ' 默认值为空4 z( x% y1 s" G- ^6 r9 C
( F5 x" U2 A! Z! Z V* e
primary key : 主键一般选择没有重复并且不为空值的字段. { p* Q- Q6 x( J; q; Y) A
2 m: b4 ~4 q) _例子
* I( ~6 P- I7 B3 I, T7 `create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));( j% J/ v6 v; }5 Q
create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));! J- q1 N8 A+ P, J2 X. ~
4 x& d- y7 J4 B+ _& s9 r
( W( L* M3 w% P4 i6 _0 W
" d; ~$ \6 n( p3 Z4 Z2 S6 W: P( _6 m3 G' P: n6 U" P( O2 i
2 ^$ c" S U, Y- m2 J/ n1 H" `* r
/ K' f" j, z* n# C4 b! n6 G8 x/ e. D' H' [) Z: Y1 G
$ V, w; d) m1 {& t! j( z2 m
0 F, G2 U( O) ?2 {2 c 2.删除数据库和表
6 K9 p6 u7 \1 Q m' H删除指定的数据表8 C9 A9 j' e8 V) I5 k' o/ T# U
. z5 O# |+ @* @: o$ C, l
drop 删除表内容(数据)和表结构
2 S( N) P Q, p% D& m0 {! u( f* j+ S9 I& R# o, a- M
use 数据库名
3 P/ K& _, n! I/ [! m! Cdrop table 表名
3 t9 I; j H D* g+ @- I* Ldrop table [数据库名.] 表名;; j8 V# U% J, B. }. r3 q* A
如不用use进入库中,则需加上数据库名
8 }# ~9 X8 m+ k! F删除指定的数据库( _( ~/ Z" C. j. N
drop database 数据库名;& c# v6 u1 h' E5 _, b+ {. P
0 h, q- S) u# n8 ?1 ]
) Z V& ~' N' Z( T4 Y/ } r
- u- p5 ?2 |/ X1 s$ f
; p0 m& J5 T5 |1 B0 g# N4 u
# l' L9 f. k% _3 `: i Z) D$ C0 }6 w9 c0 Y+ W, X) U
) T7 A, K0 C7 l8 I. J
' {. n8 {4 x3 w( l3 Q+ ], w- v" f7 a' G2 A8 d
4 t3 E5 d/ s& [5 a5 d2 s q: }; u) v$ c9 n1 v7 Z6 C
7 S% Z: `; f/ y9 H3 f
; t% A/ B& @3 w$ @+ g' q5 ?$ ~) e' ]; l
- X' d+ B3 i* n! y1 m8 R" b
' r) a/ `7 l: n/ _! D6 p- Q1 k 三、DML
L- |3 {# a0 }7 C6 m4 i# F+ R$ p管理表中的数据记录& Q2 }3 t9 ~' O g+ a
5 ~- J) b( ~3 \* D' cinsert: 插入新数据$ z# S% y1 V5 D: E- h/ Z5 e
update: 更新原有数据" \' }8 t V+ d' x0 z: X' _
delete: 删除不需要的数据/ x$ ?6 C. N3 u7 I
1.insert插入新数据
! S& w! d; C8 k9 A" J% x格式:
3 _! t- d. @, L8 s' j0 Q9 o1 }# U
insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);
- X: ~+ I- z6 w3 {# } Y8 J$ e: c" P1 j5 Q$ T9 t8 x9 {) v* a) n
例子:
4 s: T5 L y* P2 q: Sinsert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;
# A. c/ d, \( Z4 {2 H& @, J! r9 y5 W: m
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
1 [, j3 l3 q) A% g! _' Z2 t5 c! V* m7 k% }
密码复杂性验证
1 p, n& ]3 T6 {9 z* l
+ G4 o+ ~) V9 I9 w# H% W& [2 iinsert into 表名 values(2,'自定义',90.5, 654321) ;
+ f% h. W- l. t1 [! G' j' _select * from 表名 ; 查询表的数据记录
+ d% \1 T6 b& ^3 C2 P1 c4 \$ N+ ^- R" A C/ S' T# U. Z, a* Y
insert插入表数据
; j: \: G) O, G! e: c. j1 }( G$ B
) N8 E6 o4 R- j. e* c0 p7 S在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值); ~% A$ `3 ]1 {2 [
/ a9 ]" i0 A% v o5 `1 E# m
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写1 Y9 F1 t8 F( E( [+ M
. [+ k/ y5 q& v0 Z
* O2 J" x+ L- w; v6 D8 |7 O4 v2 ~& H/ g
O' ^9 |; L; r* e7 O& t- @7 D) e7 R) P4 }( H) l
8 B7 K7 Z( M i H# u( C, R) n
/ Z" d# c; N/ V6 [ L2.update更新原有数据" g @0 m, \! |: o
修改、更新数据表中的数据记录
+ F% c" @5 W: i# d2 `$ s; ]* h( g9 h+ T4 S& p- _5 H0 u$ [
格式:- R. p: x3 I/ K; z9 `) g
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];) k5 d; X9 B1 ^! v: ?+ Y: ^
6 U! T- S8 @" I例子:7 a9 N" C9 c; D
update 表名 set passwd=PASSWORD('') where name='自定义'; _, k5 ?* |! ?+ }7 p. N
update 表名 set name= '自定义' , passwd='' where id=3;
7 q0 J* {* z% ]& t2 M$ M7 L. O" w+ i0 f% B/ ]$ M" M: [
: H0 L% C- y4 T7 N ^& a5 Y2 g5 y/ z) g: I5 O2 c# }: D0 c4 w8 d5 v! p; i
$ k o$ B0 P J8 |0 x
6 q2 {1 C) C( D; C9 s9 I: m8 G
& i2 {; D* B& R3.delete: 删除不需要的数据(表内容)) ]0 f& Q/ w- [2 h- j3 D
在数据表中删除指定的数据记录(行)7 |2 }$ h2 v/ Z S& m. k
/ [5 Z" _4 s; I. a3 y& c0 v: P) n
格式:.8 q4 Y+ i# U3 Z; N
. ~- S- Q# a8 i/ m* ^& l# W% ^% Mdelete from 表名 [where 条件表达式];
4 u" d: {6 y6 {4 Q
8 o) C$ \. v( O5 z例子:
# n/ j5 y. @7 b7 e" r7 q- R. C5 ^& x1 ~& N+ s( \ Z3 W$ M
delete from 表名 where id=4;/ @/ a. [! p" V- C! n' ^) m
) q \" B) X. @5 ~9 \' ^
Z0 f: K L- t' }6 G四、DQL查询数据记录
2 D: b3 O ~3 I( n2 W9 J4 Aselect
9 e: s& t, b) S$ }0 S) D8 o8 T ^6 Y! c
格式:& |) W$ A3 \% W4 p4 {
, a% K) }: ]4 |3 L
seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];4 T _, \, I# `6 p+ D9 p6 {
, [ R( x Q; b1 T& o6 E9 r
例子:
7 r! G* |8 e! M* ? t: b7 ~/ o7 ?( Jseleect * from 表名;; O9 l( H+ ?$ S$ }( W6 ?. D
seleect id, name from 表名;
% @: M0 @. b; I. M& X7 Zseleect id, name, score from 表名 where id=2; A: b% E" K* c$ y
- w2 _+ i0 V3 L- Z3 {/ R2 p1 A* \
select name from 表名\G 以列表方式竖向显示
1 U7 ^; e) A! m. s8 o7 wselect * from info limit 2; 只显示头3行
) h2 x- t& C. y1 B. oselect * from info limit 2,3; 显示第3行后的前3行
# z! b. A4 G( O- |6 U6 k% U6 A- ^# ^( T/ R$ ^
3 y6 D; J. I& {" m
2 n2 A5 c# _# Y! l: L( I/ e3 S9 ^! o e
) H3 H& K7 C' u/ k$ X I
* X. W3 T3 r# Q$ |6 Z类比excel表格4 P; _1 U. n3 A+ D; J3 F
- M2 I/ h( r; H2 d- v" ]
* E. q& w, Y# R4 @+ d) x8 Q# n" N3 N" P
四、DCL
! n, i4 N9 r# I0 N5 C$ s1.alter 修改表名和表结构(表结构)
8 S; X7 u, U, y' _# L1 balter table 旧表名 rename 新表名;. y/ R+ M/ G8 v
8 ]! M$ b, v# S- o* @7 t/ p扩展表结构(增加字段)
, N0 ^8 s- Z" N% s4 Kalter table 表名 add address varchar(50) default '地址不详' ;
: E9 S: Z' _) n$ b4 jdefault ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用
0 Z3 [5 ?( H6 Halter table 表名 add address varchar(50) not null default '地址不详' ;
2 ?; ~9 B, a2 i& z. e) |* x& Y& p+ B2 ~
修改字段(列)名,添加唯一键(唯一性约束)
, s6 f# x: i9 J& Walter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
1 W+ L1 d* A$ C8 Bunique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)
- Y, |2 T7 R* P U! A7 ^- ^7 S4 B/ tprimary key (主键) :唯一且非空
1 Y& @" c3 `; e; Y8 Salter table 表名 change name user_ name varchar(10) unique key;- \; z5 W, F9 A- j" Q. c4 q
change可修改字段名、数据类型、约束等所有项。
9 b8 v8 ]& Z% ]
( O: E" q" L( T3 N# v删除字段 C# v5 ~4 k t: O* V' U7 N
格式:4 i; b) I7 k. [- e
alter table 表名 drop 字段名;
- v0 E/ f' g5 C) V' z+ R1 t' ]7 y4 H6 `
————————————————5 o# g. O" j% w; U
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
, i7 K }' x6 o$ G, ~- ]原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177
+ t! R) t% _4 u/ \# |; d3 s# H4 j" X, x) C W
) f; r# n8 B7 H3 v9 ~% H |
zan
|