在线时间 1630 小时 最后登录 2024-1-29 注册时间 2017-5-16 听众数 82 收听数 1 能力 120 分 体力 558301 点 威望 12 点 阅读权限 255 积分 172863 相册 1 日志 0 记录 0 帖子 5313 主题 5273 精华 18 分享 0 好友 163
TA的每日心情 开心 2021-8-11 17:59
签到天数: 17 天
[LV.4]偶尔看看III
网络挑战赛参赛者
网络挑战赛参赛者
自我介绍 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
群组 : 2018美赛大象算法课程
群组 : 2018美赛护航培训课程
群组 : 2019年 数学中国站长建
群组 : 2019年数据分析师课程
群组 : 2018年大象老师国赛优
MySQL数据库基本操作
% }* N# t9 q t$ C8 S4 M
+ W' c2 d: }3 p' K' J 目录( }% q$ V" \4 }+ U5 N* w! c/ [
4 R% T8 R% p) l: P9 M7 k! ` 一、SQL语句 (mysql 数据库中的语言)2 Q; E8 M, G- R
1 w9 c3 S4 p* f& `) p/ Z) ? 二、DDL
2 ]4 I0 D; @ |( s$ P * {4 ]/ e- l/ F N2 ~& R* u
1.DDL语句
! J$ n( w* W) H- U" |
$ E; m2 \' D: }- X" j (1)创建新的数据库
1 Q' C# ?# r+ t+ u( S |
3 _ L5 w( f5 P9 ?0 Y- h0 [3 s (2)创建新的表1 W) Y% |; F3 g! a% `0 [6 Z
: Y/ ?" z* ~4 C5 g8 ~' E 2.删除数据库和表
$ O: k, _0 s+ F* s ' Q# U' k( g r0 ~" U
三、DML8 X( n* V- Z7 J. b; g
3 O: e$ ~; p; c f/ l0 F ?2 q0 n 1.insert插入新数据0 F# h. ]' I8 w
4 W) ^ }* M" J' b 2.update更新原有数据
! K- L |% d1 }6 w' q
: {; n N( Q* L+ |- |& z 3.delete: 删除不需要的数据(表内容); ?4 B; _% K5 C$ v+ ~5 @
S/ ^/ y9 ~" z7 i4 W
四、DQL查询数据记录0 F! k4 j6 G0 k0 [3 S) |4 s# F
, u+ a5 L4 ~! o% d7 W; _0 { 四、DCL : P/ Y" a! o& @$ |$ V
& Q& d2 s- z9 z7 x5 U0 x
1.alter 修改表名和表结构(表结构)# F! \* G4 n& D& m# X
9 B( N3 d5 f6 w- O, B 一、SQL语句 (mysql 数据库中的语言)
. O, Z. S" H' a8 o" n5 n show databases;查看数据库
/ V/ V I, d/ J, z# E& { use "database_ name" ;进入数据库# [+ z6 J( H) D% l! S3 g
show tables; 查看当前数据库中有哪些表# X% a* Q9 F0 x. K" d# h
select * from "table_ name";查询数据表中的所有内容) m6 e; V" L* X4 N$ |3 ^. z3 N# T: W& I
describe "table_ name"; 查看表结构
; S( d7 g8 }: O% m4 w% I: ` desc "table_ name";
: P8 r$ r4 {# K/ n3 M+ G0 M
$ I% U, m& u$ z1 u! O
2 X5 O) j/ B9 e6 l
* n; M2 x$ c2 t+ A0 ~! _ # J1 j+ a& x- `8 J
, h) Z, e5 I" B: o) K . W/ j3 m) k0 a9 P/ d
- r. B# w( M* F w0 R( \
' A" w. w* ~, q7 _# _- Z8 Z ( [" Q3 @3 T' Q& k9 c4 B7 W6 l
3 d5 K# D2 B3 ]; S3 M
9 e2 Q$ S* y4 u! u' w
3 l, ]1 t& N8 m3 }* i# L
. h& Y4 H. }. U3 L1 [( _* q' ~
) k6 }+ T. j# ?5 A9 p+ l" w 类比excel表格
3 Q2 I2 j- F6 w" C+ ] {% T6 F: i% }
: {7 Q0 S) v, h . b- }' y9 D# G( F) y2 E
8 i3 g9 S3 m3 X/ D! L( g9 W8 z) [
+ j" _. P# c7 I# M: B% ?6 A" U 3 G$ G& f# Z& w) C
* u% t* |& H2 A5 r! z
6 `+ U: I8 V+ ]) ?$ U% A
/ h* `) L* D) P, k* T4 N
4 x& @+ T7 s$ G, t& l- f0 ? 类比excel表格
! t$ `' I. J0 O' t+ y; z( W- G 3 Y& {5 w! P2 J$ b1 N
4 L8 L+ b8 _# x7 z7 S) X; I a1 O + R% c" X) u) Q, }) Z4 r; @* X
9 z( B3 T6 C; l* M; t# W2 k& n( o7 f ]- W2 M8 }" s& U: |: S
简写
6 t2 v4 z. b7 w' ^+ i( T
& I/ h; v5 Y7 Z: c5 w+ [ filed 字段名" g) v% H: w2 }. R/ _
% n/ h& R) L0 B
5 }& C* m% |4 m6 R* L1 [
7 r+ Q- z* r1 w& a' S" ?+ j. K
二、DDL
: Q5 v5 B: k: u: o2 {- { 1.DDL语句
5 w4 Z/ I; h7 f. q 用于创建数据库对象(库、表、索引等)4 q5 a# B' u4 D; F, ?
! C7 C. s1 I7 r
(1)创建新的数据库
' `: m' J( [% f7 H create database 数据库名;: v. h2 ~0 @8 K( J4 W
4 U2 b' n2 a, U5 c7 k( K% K% @
(2)创建新的表
) X3 z" m1 L7 B: y0 C create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);
/ E, P5 K3 R4 U 主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。
; z, Q; U4 T" ~7 e/ {, Z, o- d
, P3 ^. w' }$ v: H! [$ F9 H create database 数据库名;
9 ]. f4 F: d: i( t7 V: h2 A1 e! J use 数据库名;
, D# t4 B- ?5 n+ P `7 H create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;8 M6 @5 s* G, J; V/ g
2 V3 \! P* W l$ v
desc 表名;
4 z4 ?) n3 g# Q. @( X # b8 j1 _! L: U% h" r7 ~
not null 不允许为空值$ R% j0 t V5 B! o" o0 d
! g7 |4 k- \; O' f
default ' ' 默认值为空
/ @0 P0 Y- z% U: l2 X7 P
0 k: y' U n! e4 |0 {9 |4 H primary key : 主键一般选择没有重复并且不为空值的字段
) U' v* t0 v0 _ {7 s8 t/ A& _
% \5 u: g7 z6 `, b5 m: T 例子. m5 n( N3 e) T& C* ^* z
create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
- I- V. Z8 C6 |4 {7 l4 c @ U create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));
2 k/ b- a: W G9 r+ c / D* t3 d0 N: e
. [7 Z# w/ R6 ^% N, k0 Z. a6 ^ $ o2 P$ o( d; A/ l4 z' e
) k- W* B4 Z9 a& w h0 _+ ?* B' h
) w5 {7 m3 n0 H5 s/ L
2 W/ Q" X& @0 j/ E; j+ j& s8 E
1 R7 X# M, b, ?( q3 k$ k6 n
7 w* B' Q5 i a5 P
* ^7 V+ j6 J- g/ ?) }( E& f7 c1 S
$ y6 L6 b8 i7 U, l* w* n 2.删除数据库和表
! C5 u! @- ^/ l" q 删除指定的数据表
0 H7 I6 m# r0 ?+ W , V9 C3 b; Q# D0 o0 v( G3 `+ m
drop 删除表内容(数据)和表结构
/ m; C$ I7 ^- |( @. @
3 }# r" {/ O0 l, [, Q* j use 数据库名# E: o9 E% `6 _$ h. e( M
drop table 表名 ( f& ~9 f1 z8 I+ V- c3 S. s5 O1 K
drop table [数据库名.] 表名;& }1 X( l7 H; K* h& m2 q
如不用use进入库中,则需加上数据库名& l3 G% A. L1 ?7 P( g: d! z0 S7 b) ?. D
删除指定的数据库
9 x1 Y& k( A) V: T$ Q. p drop database 数据库名;( R6 n( q J1 Y2 A
* ]! a5 v8 X/ Y, R) _+ C4 I3 Z
( g& ?. b) |( C0 r' v: X $ D) b3 S8 u4 H8 E% G7 U7 p8 {6 q
" O! H* d" d' b( S, t$ Q2 i' A 0 |1 }% c$ [# v% B7 \' J
1 B4 C- @4 ^$ ` 3 c t0 ^/ m! i" a6 L( O
9 C' B3 a# y) _5 {2 F
9 u. N2 m- Q7 o6 K) E , y' P$ \: W5 T# f7 r2 Y" p
- O2 C+ T/ E2 r9 X, v
5 _6 S$ ^8 Z, u; e * a: v$ g8 X0 r& s1 b: ~) O+ C
! c+ t4 @, v' N1 c% f * x* G% s* s! b/ J
k; ^% }9 j/ ?0 D 三、DML
' a; x) R% }- X2 y 管理表中的数据记录$ x! y @' `7 L# w
" v- U( A! P% _8 b) W; _4 E) ^* ~
insert: 插入新数据
9 f* Y' ~* q, K& r9 I! Z update: 更新原有数据
* H% }" ]7 K7 k delete: 删除不需要的数据
, i$ a: e# c& F# G( j 1.insert插入新数据
' G$ a: U( z! N2 s$ o! e! z 格式:6 s4 m$ l, n y" Z
* j1 C* G L& G, _0 y2 S2 K9 q. m insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);% [+ |/ e0 y: V
$ R, l9 z& B( u/ c 例子:6 C5 i8 \0 \4 H2 D
insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;
' n! L' I0 o- `5 D; v+ D; u 5 u3 Y5 n- J- D. m' m+ j
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。
0 p: _2 M; o$ c4 K& K% A, w
1 F$ E4 Q8 U b# F% m+ j- J# N! H, S 密码复杂性验证
! \5 ?* O% n: o' Q7 p9 A, k( b
% o3 M% v9 `* j$ }: r* [! P, @ insert into 表名 values(2,'自定义',90.5, 654321) ;0 m7 h- D w# e, \" e& q
select * from 表名 ; 查询表的数据记录
# t& {9 J5 H2 o8 _
+ T! i. G8 o2 v( G/ z insert插入表数据
0 x: M. ]5 r6 f* k1 u9 E& |5 ^ ; r" n% B3 q3 X) A& T) ~) A
在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)
2 K( w! P E) q( W% S / \9 j- _ T0 v9 ~
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写
' v- C5 t+ m- x ! O' b5 M+ a' V6 c& l5 B7 c0 z
/ }: V( K, E" o
. \6 Q- X# L% P. N
& `0 X" d) v# ]/ p* g8 b . _) V) j* X$ N: l
6 M& g( ~6 a# B! `3 m! W( [
" \2 ?& t% s- x( u1 D
2.update更新原有数据
; W. d' B& y9 y 修改、更新数据表中的数据记录
0 S6 s6 q& O! o * h3 E O6 j+ I
格式:" K1 b" ?0 T& m9 K0 P
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];* h1 u5 M3 f. F! H
3 p+ L' O8 [6 J 例子:
: R& m5 N5 L" c. {# f7 ] update 表名 set passwd=PASSWORD('') where name='自定义';2 {6 L1 ]8 f% N, O! N
update 表名 set name= '自定义' , passwd='' where id=3;( u. ^3 P, k( X1 Y6 d
) w) l W6 |) E: W" B, h% C* m " m1 M Z/ I7 T2 m+ O' ?
; p" d5 z; g f& _2 ]
& Z a3 K; Y$ X& C Y X/ I+ a& v3 N2 H
' s# ^9 H" S% K" J* b8 t 3.delete: 删除不需要的数据(表内容)5 w7 `0 x, z$ L$ _, J6 x0 L" u
在数据表中删除指定的数据记录(行), g, W: j9 W F8 C
- l. D$ I) ]6 K6 N" x Z 格式:.* y+ ]1 i$ ^. e9 w: ?6 e! S0 B% x8 r& K
+ q1 p; t. a, ~; F delete from 表名 [where 条件表达式];. V+ h% L L: A5 X1 ~
% w/ n0 n' ^ A: d, [9 p4 f
例子:5 n) G& x, Q* a( Z$ Z- G4 g) K
3 d2 ?) g& K7 e3 m/ e; i: U+ L
delete from 表名 where id=4;! e# \' B d X+ x" n
& Y- ]8 s, a" j v6 e: g
5 v- `$ J: z/ E 四、DQL查询数据记录
* ^" C4 `3 [3 Y3 g5 D8 N select7 b; s) R8 N. K
# C6 x" d8 B2 z6 d( }+ H
格式:5 b$ Q% I' T4 V8 ~. u1 p8 _
) V4 i1 u% J3 g" K. v seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];
! C+ G; }2 X$ q( a: ^6 a1 B" a ' g8 e3 { {* r- M0 b* |, G, _2 B
例子:$ [# G3 k" L/ x
seleect * from 表名;9 } U$ F/ i1 G: ?$ w( d, Y2 I' O
seleect id, name from 表名;
& c, U6 a# ^. r+ e& E3 x4 [ i2 @ seleect id, name, score from 表名 where id=2;7 Y! |" D: j/ U
' T# G K8 j8 O0 b5 u
select name from 表名\G 以列表方式竖向显示
; N# s( I3 _ a3 a select * from info limit 2; 只显示头3行
' V% A% v& C, m6 k3 I: |" _/ h select * from info limit 2,3; 显示第3行后的前3行# D2 @7 ]4 B, g( O( p2 F
6 ]6 U7 U" u/ u/ a5 v: \0 w0 K
0 z4 E3 r6 i/ \" H& K
; m, ?4 p4 ?6 x5 G# H9 t2 c
P2 Y9 U e% [6 l
/ \0 T" y( e9 e5 Q0 \' W$ {0 s* ]
* l. i4 v5 u \% ` 类比excel表格7 L$ V, C5 p2 B/ i' C% T' I V1 d
2 l( E0 h! k; C2 u' b' E
5 H# g+ s( z; _ n" a0 O2 ? m
' Q2 z7 R S8 l 四、DCL , o- ~, t f% r5 C9 m Q2 U+ ]- {
1.alter 修改表名和表结构(表结构)( O# d: a+ W/ K9 Y, U, e) k3 }8 X- q( h
alter table 旧表名 rename 新表名;
8 m. F& V* ]$ K4 _ 9 s! d2 g# G6 e4 q0 W f
扩展表结构(增加字段)/ O* c9 H4 Y% B( c P2 C+ V. b
alter table 表名 add address varchar(50) default '地址不详' ;: e9 j9 I5 r+ I6 ~) N) A; l3 K3 t
default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用
% G4 c) E7 F2 O alter table 表名 add address varchar(50) not null default '地址不详' ;; w* Y" n. T; H
1 k+ W, g8 _' _; s) v7 Z+ L 修改字段(列)名,添加唯一键(唯一性约束)
8 f1 b% D" `! V. R4 f alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
" G0 o" u; `: E) I4 d! U# B* p1 M unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次) I0 @, \. O3 s
primary key (主键) :唯一且非空- L! D; o! T" C- }
alter table 表名 change name user_ name varchar(10) unique key;
]( \# B" c, p: k" S& \ change可修改字段名、数据类型、约束等所有项。
5 L7 P1 s) b5 x0 \7 q, {4 ~
/ F \) j E# }- W1 U; K) U$ l 删除字段
, Y8 g' ~6 O' B( r4 y 格式:
; R- y- F U$ C6 q9 { alter table 表名 drop 字段名;& }& x& d) ]$ q1 a/ C
. N+ n# @6 v! I. t5 h ————————————————: ], v( |9 b* |" N3 x
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
; y0 }+ G+ g) K( y 原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177% o4 u( G/ ~8 q; S
& T, I- V) V7 R- i& v
$ C# {* k H- k3 M' Z' e2 O
zan