QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2189|回复: 0
打印 上一主题 下一主题

[其他资源] MySQL数据库基本操作

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2022-9-12 18:07 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    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 n1.insert插入新数据0 F# h. ]' I8 w

    4 W) ^  }* M" J' b2.update更新原有数据
    ! K- L  |% d1 }6 w' q
    : {; n  N( Q* L+ |- |& z3.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 nshow 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" U3 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- G3 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 Hcreate 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 Ccreate 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 Hcreate database 数据库名;
    9 ]. f4 F: d: i( t7 V: h2 A1 e! Juse 数据库名;
    , D# t4 B- ?5 n+ P  `7 Hcreate 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 Hprimary 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  @  Ucreate 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* juse  数据库名# 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. pdrop 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' A0 |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! Zupdate: 更新原有数据
    * H% }" ]7 K7 kdelete: 删除不需要的数据
    , i$ a: e# c& F# G( j1.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. minsert 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; u5 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/ zinsert插入表数据
    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 t3.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, ~; Fdelete 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 Nselect7 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. vseleect 字段名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 aselect * from info limit 2;      只显示头3行
    ' V% A% v& C, m6 k3 I: |" _/ hselect * 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 Oalter 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 falter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
    " G0 o" u; `: E) I4 d! U# B* p1 Munique 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
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-8-16 12:02 , Processed in 0.467465 second(s), 50 queries .

    回顶部