在线时间 1630 小时 最后登录 2024-1-29 注册时间 2017-5-16 听众数 82 收听数 1 能力 120 分 体力 559041 点 威望 12 点 阅读权限 255 积分 173085 相册 1 日志 0 记录 0 帖子 5313 主题 5273 精华 18 分享 0 好友 163
TA的每日心情 开心 2021-8-11 17:59
签到天数: 17 天
[LV.4]偶尔看看III
网络挑战赛参赛者
网络挑战赛参赛者
自我介绍 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
群组 : 2018美赛大象算法课程
群组 : 2018美赛护航培训课程
群组 : 2019年 数学中国站长建
群组 : 2019年数据分析师课程
群组 : 2018年大象老师国赛优
MySQL数据库基本操作
! T6 T2 K% N! t! D) \( J. [& {/ o + \" ^. w1 r9 m' S7 g* T4 [: @ N
目录
( P6 i# S& H7 a6 l. E: G
. @ ]; c1 e! q% h" L1 |9 _- v4 L 一、SQL语句 (mysql 数据库中的语言)) _ w! G* A7 |% i* T5 _% |7 n
# z6 I- Y6 O& j1 [0 |4 ?4 I
二、DDL
- {# ^+ a$ R" B' f) d5 [
3 k4 G9 U4 t; ^9 t; z7 b; h8 F 1.DDL语句$ h/ H: q6 K2 J, u v5 J. ?
# y# I6 L9 R' m! Q, i* ] ]) W (1)创建新的数据库
; A' J; P- K8 K) l2 X* V2 y ) `2 ?5 \' W0 n0 I
(2)创建新的表
5 Z; U7 ^' S: K/ E & O4 o( \4 G$ [/ V
2.删除数据库和表
: H2 v0 j* ~* {, O: C- |; p6 s
8 p i x% J7 N( c& L5 M- `8 o 三、DML
1 F. f% \) s3 u( g
% _6 O+ y8 \; l9 W% k# |; m 1.insert插入新数据% ^8 @- e4 Q* u9 f* L3 _9 L; v" T* \
; M2 S# J8 _5 c: O
2.update更新原有数据
8 I5 o4 ]8 G( v s
5 `- k' v6 N9 P 3.delete: 删除不需要的数据(表内容)
5 x, x, h5 N# D: o
" \ O3 N5 _, V; r! I 四、DQL查询数据记录
0 ^# ~ i7 l; d) U9 ~9 ]& d
+ g9 O& L% u( z8 A! `0 q/ Y 四、DCL 5 Q5 |; x0 p$ v, w: r
6 K+ a5 s! }! S6 s4 j8 c6 o
1.alter 修改表名和表结构(表结构)% c( N8 j, Q" x ^- I0 c
$ M5 P3 i9 W( W
一、SQL语句 (mysql 数据库中的语言)
: Q& |% H4 N5 j3 S8 c5 u% b show databases;查看数据库% A+ Y1 H& L2 @
use "database_ name" ;进入数据库) _' D$ v. L8 g* J5 u$ {
show tables; 查看当前数据库中有哪些表
1 N5 _7 X& W+ S6 b/ M- A4 ` select * from "table_ name";查询数据表中的所有内容+ \* B3 f/ m; X; R. f8 _
describe "table_ name"; 查看表结构
5 g6 ^+ B" i" e I desc "table_ name";
5 @6 ~6 Y1 {( f& n, e# N
& R1 T" @: f4 U& V 3 ?: G6 {+ d, K" g& f9 Z/ }
; Z6 k$ f1 o# b
- @* v3 `$ t3 \2 ? 6 R) Y9 [- Z# O% I/ B
+ Q, |6 F" ~% w3 {! D! F
- l' N0 b( O' ~
: ?+ J/ D5 l- a; X0 ]( o5 i 4 a; F' F4 Q" Y/ f0 k% v$ J B) [. t
- }7 _+ G. |3 K; j! C, z
8 K* x! k1 n( j% }
$ f' V# q7 h! R9 ]- i * @% P3 Z" q& a7 ?+ J# Q
1 T* J! J: T9 ` 类比excel表格
! T5 r/ \ K1 W 9 V$ l6 ^- U8 @1 r" F% h- h
V; z; k M9 k
3 @' Q: R" {; B1 U' e" k 3 _: m" Z2 E& {2 i4 K6 U- O( Q7 `
9 U) S. D+ |# _8 R! R6 }" s* \( D8 m
' b2 ?) @; b0 B" ~6 _
! X+ u( S4 k$ c + K; i" e! C5 _6 w X- f3 K9 J9 J
- j! r! U; p; L+ z" n$ h 类比excel表格
$ I( K% r0 e8 x0 o3 n' d3 R; @$ Y u
7 g- W- ~" X, i. K& ^- s! F
* F0 J7 c4 O: X. |8 ^1 j1 \7 _7 m
9 S. j4 C3 r: S2 U6 E" ? , w' ~ z9 |: |
, F( a6 x: E/ N9 m- ]. Y
简写
4 R' p. h3 q: H7 c' w% C ( n M. p7 I5 s e; d% Q
filed 字段名
4 r7 F4 b+ r9 O `3 C9 j5 \7 M; N+ ~
! z0 c9 H" u7 o" T+ O/ m
' I8 {7 i9 J. R% { 二、DDL
: ^& A& W0 e1 `( f' c- v 1.DDL语句
@! N& c7 G! ~ 用于创建数据库对象(库、表、索引等)0 b9 v* b$ W: o$ M; M- z0 F
2 _/ S5 T& D Q/ C E. J- Z
(1)创建新的数据库
% U t' ]1 o: h9 r% C create database 数据库名;
; V4 A5 J) Y& v4 x8 U# J
' a c6 ?: o+ ]. u- H6 I1 V (2)创建新的表" i+ y! K9 }2 R" O4 [
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]); y% d' K p8 L2 z; r% y/ |
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。
' Z. I4 _' s* R' Y! ~: E4 q
3 ^; m1 \) p( F1 X+ a1 G& t8 w l3 ? create database 数据库名;
- {; A( p% N: g9 d5 i$ |0 ? use 数据库名;
3 S+ ]" W' z' `$ M create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;0 P7 V, o1 s3 G; r
( H# Y4 n, U5 g( X9 k
desc 表名;
( l2 R4 c& o! w" W7 p 9 l. `+ Q) a o5 G& X
not null 不允许为空值
8 m8 @: A' f2 }; N3 _$ {) } * r7 G; v7 V% W2 y3 a
default ' ' 默认值为空1 _5 t0 E4 | E# { s' Y
4 [2 a8 Q! \) S7 P primary key : 主键一般选择没有重复并且不为空值的字段
5 L: Z* Y g8 g& M* [ _ 1 t1 Z9 ]( C, K6 d. L" h7 v
例子. d% U" K7 ]- R2 T. Q2 p# w
create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
' I% l- @! S4 N2 s6 n% |! O) }% ^ create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));% f0 j. p% U4 k& `- i3 x; e, Y
$ T/ N- Q: d7 y/ } I
0 K! m* P( M2 S7 E8 ?
$ y6 J$ V6 ?5 l4 v3 |: j# y# _
* F- l9 r$ L l* ]* i. @. G
4 i% w7 C( L! q
% E( f$ ~6 _7 x' R1 ~2 P. f" `. e0 x ; ]) B0 E9 j9 n1 q) ~4 c
7 C3 [: R* d+ L! `9 O4 C
9 X0 u k; n; r6 @
* C7 Y9 v) V2 D9 j5 ^ {
2.删除数据库和表' l7 j F2 J" B. I
删除指定的数据表
0 w9 z3 Z$ U2 y . o" q* w0 P3 f: [
drop 删除表内容(数据)和表结构5 X% b O! n* I, y& p8 `* n# y
# ^4 \0 Z, ~8 @: F5 w
use 数据库名( Y e9 U' g, Y$ ^! |
drop table 表名 / P/ @ k: H4 n! o n& L7 ~
drop table [数据库名.] 表名;
6 C9 G/ j {% s! k$ W v 如不用use进入库中,则需加上数据库名
# B' {+ N% X a' |( A/ b 删除指定的数据库
* S* e2 G. N! E" n6 `# u* N& L drop database 数据库名;" }( D8 J3 b7 y
* ]3 m' `6 N! B/ E. v- _; g - B9 a0 w" k- z3 P7 F! l- M5 {
( V3 ]. A1 ~# i! K& B* U( R6 W- D 3 \. A4 o& {7 d/ j3 j: l
) n9 W% C- K1 s+ H" | ) [2 f, S6 D+ \" `8 F6 o* E
3 B- l) T" R% v6 H* m9 V6 q
; z2 H4 e8 g# U
4 O3 X f- j8 H0 W% @ b * @7 k o/ L7 t9 E
' o+ |8 `. \ x" c' C$ H- W" {
) y& W# h1 J1 |( k2 l ) V2 Q4 h) L1 i8 h6 \' _
9 ]6 E: T" Y% n( m1 _
E# o* \1 }- R8 Z/ _ ! m" X* Y+ e1 L. ^
三、DML
- L$ G2 c1 k5 e1 H: H1 D* m 管理表中的数据记录/ ]9 R9 u5 u: ~; d* a2 z7 ^
& u$ z3 I: X5 x' Q! N* N3 d ? insert: 插入新数据
, [0 H) q# X/ w4 W1 p) G- z update: 更新原有数据3 Z ?8 T$ L4 k, L
delete: 删除不需要的数据
' P( U( r$ r5 b& S; |) A; { 1.insert插入新数据" Y% K+ x h- {
格式:8 P6 Q+ u: @3 B+ S l
d9 d U3 H( E. d, R insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);
3 J& t) w( Q/ ^1 ^5 ^$ A
$ Y& v% `5 R' f$ \- Q+ Q 例子:
* y) |2 X" T7 f. p+ k q+ F$ l, t; H7 ^ insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;2 B9 N! p- M c1 S8 ]- |9 k! g
9 ?' |7 E5 F2 L( P; \- l5 r5 T7 H# S' O
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
6 U' s% u; [& A/ z# O0 Z+ _% S ) |* j8 p3 ?" p+ S
密码复杂性验证
; n' o( E2 i- u, L q) K4 q $ h) c b' T, L8 v8 d- i
insert into 表名 values(2,'自定义',90.5, 654321) ; j1 T$ W* Z5 i A2 o$ N2 D
select * from 表名 ; 查询表的数据记录
0 E& a9 Q; ^" X" V" \ 5 K( O; |& P/ r4 G, a: y
insert插入表数据5 j+ `' E3 w0 q. o
: O# N; B0 s& `. p: i 在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)
% _' U. ^+ q4 k, [ 8 o! h2 ?0 |% O }) I; e, S
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写
0 }3 r& g$ z/ x& s) _6 e' u+ `- H* ] 7 b5 m, i" u7 H' {9 ?
, p+ c6 o: d v2 V( V- n/ ? % D: r# z% Q& L
3 s! Y* l2 z- ?8 d
; z3 n, a; U3 j( M5 L6 r8 s% s! T 3 o, R, ^& j |( I9 P
q) s- b! e/ s' ^
2.update更新原有数据" N6 m Y2 A; y" o! c6 [
修改、更新数据表中的数据记录
9 v2 z+ ]8 U S8 J* e1 O% Z
% F" r+ O* K- X8 w 格式:0 R8 y) `& x' K' ]1 {/ ^6 O
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];" P% W! Q- O3 {, F9 m
& D, x7 X! C* R2 T y6 e8 a) q 例子:
& v" K! m6 u/ W* o5 N' Y$ _$ ]! s update 表名 set passwd=PASSWORD('') where name='自定义';/ e9 ^! u4 M! C' |& k
update 表名 set name= '自定义' , passwd='' where id=3;) s0 j' p' o h5 B) x
$ P& b T$ V( U0 W* d' Y8 B2 ~
( u$ K/ p% u. B3 i . C: [4 Z' i y/ U
" N2 J& g) s0 p
3 p# |5 l7 p# S( K2 O ; {& i3 N+ C9 ~$ x. g/ q/ Q
3.delete: 删除不需要的数据(表内容)
, {8 C H4 n- A9 J) q2 w$ f 在数据表中删除指定的数据记录(行): [$ y# o, `- n( k2 U7 _
. s- D6 U" q$ b8 a 格式:.
/ s+ L4 |$ }/ B; d3 C- Y2 x
; f2 t) W: h8 H0 S9 r delete from 表名 [where 条件表达式];# h/ y- t5 I* S) K U! M" I
/ @& d2 C$ t+ v% g+ @- [: _! { 例子:3 Z+ @0 S: M5 D: N* K
; k' B) i, X3 N( K5 T$ ^+ `& b
delete from 表名 where id=4;2 |( R6 Z7 u3 w( d8 R3 g- b- s
- y4 {6 K# t2 U( y ( y' M2 C2 O: b: S3 l) O
四、DQL查询数据记录/ e" E& \0 w* [) I; n L, E
select
0 F1 Q/ ~2 V7 Q8 Y1 t( @ s, x 4 ^0 T8 C4 s4 Y( j' { B1 C0 w ^3 q
格式:7 |4 o" s" |5 \1 J A' ?* {- g% e$ O
( ~; J/ P$ b- l seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];/ G* Y; h0 i1 O& T
7 m4 ^" L8 |: q" d3 |
例子:1 _+ b' Y. |5 p t& q
seleect * from 表名;: }; x4 F, O q" t
seleect id, name from 表名;4 C! ?' q# E0 a) r# ]
seleect id, name, score from 表名 where id=2;" G3 E7 u' ~5 _6 J
! @: r, u! T4 L3 V
select name from 表名\G 以列表方式竖向显示6 H% C( ^# q! Z( N
select * from info limit 2; 只显示头3行
7 z8 j- [: q) F! J# h1 @' Z: V% h select * from info limit 2,3; 显示第3行后的前3行
$ W, { s4 O* G1 d2 J, L ( A$ @4 W; r8 K/ L* [& z
' k* c; j7 d% c: z
+ j, x/ H; p! ^( m+ U
6 a' N5 G' L; i- c% g
3 w# w0 N" ]5 E6 m) c+ {; v, q( O
6 e' k2 n; c4 C/ T 类比excel表格
$ B! W5 `9 V, p
& `; j# [4 B L( C+ p) w8 J
. J' h4 R0 {- v J
$ ~" C" v& [ P# }: K7 }+ `. s6 o" B 四、DCL
9 }8 \" \/ d& \* o1 g 1.alter 修改表名和表结构(表结构)
6 ?% `9 J( J$ T- t1 I! P) |' y, ~ alter table 旧表名 rename 新表名;% ~2 M0 p; ]1 O$ |
2 {9 m9 j* ]3 b3 E+ d) W
扩展表结构(增加字段)5 }8 V) R0 g0 M& }3 H
alter table 表名 add address varchar(50) default '地址不详' ;5 ]7 m$ h# @/ u x. s
default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用# W5 v- f5 z s$ y/ g% B0 b
alter table 表名 add address varchar(50) not null default '地址不详' ;) T% }; x$ ^. i+ E7 Y; z! |
) F( K& E: p5 W0 Z0 T1 | 修改字段(列)名,添加唯一键(唯一性约束)
* `. Z" [, Y& ~. g# H8 Z v/ ] alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
1 j) x3 }6 q! g8 u" V9 l unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)& L0 Q: _$ g0 D1 `0 B& `
primary key (主键) :唯一且非空
% A3 z9 y+ n$ i alter table 表名 change name user_ name varchar(10) unique key;# l6 X3 p: y. w( `
change可修改字段名、数据类型、约束等所有项。
. l2 g: U- a$ ?( A' B" O
n( Y: d* l; P: B3 t6 L$ s5 d; y( y 删除字段3 c* v0 B v6 H" c- x. Y& V" C
格式:# D1 v2 P7 q5 P9 F8 Y0 X$ F
alter table 表名 drop 字段名;
' f* u; K0 |; ] X ; N# I3 u: ^8 D( H3 p0 i
————————————————
( U, W) I( p# _( h 版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
. L$ q- P$ A6 b 原文链接:https://blog.csdn.net/Drw_Dcm/article/details/1267701777 z F4 [1 Q, t& ] I
2 _3 S# {$ R. `% A( t
( _+ {: r' O0 V. p8 i' y
zan