在线时间 1630 小时 最后登录 2024-1-29 注册时间 2017-5-16 听众数 82 收听数 1 能力 120 分 体力 563333 点 威望 12 点 阅读权限 255 积分 174223 相册 1 日志 0 记录 0 帖子 5313 主题 5273 精华 3 分享 0 好友 163
TA的每日心情 开心 2021-8-11 17:59
签到天数: 17 天
[LV.4]偶尔看看III
网络挑战赛参赛者
网络挑战赛参赛者
自我介绍 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
群组 : 2018美赛大象算法课程
群组 : 2018美赛护航培训课程
群组 : 2019年 数学中国站长建
群组 : 2019年数据分析师课程
群组 : 2018年大象老师国赛优
MySQL数据库基本操作 5 u- a. t! ?- c, s/ b8 g9 B
! F9 M( w) ?2 c7 _- p0 T- F 目录8 H9 J, y, p ^+ a6 v; W
5 y, m& W$ _! ?
一、SQL语句 (mysql 数据库中的语言)5 q% Q( g8 `3 B+ t+ E3 `4 u
0 Z: {+ K/ I8 y5 B% x+ l" a
二、DDL' K8 x8 @) [9 g* q. |6 s# G
0 i/ T, U$ P' Z$ M; v& }
1.DDL语句6 p O0 \# q2 p" `/ y; H% h
+ X) G* f7 d% |/ N& F, X
(1)创建新的数据库
5 P7 [1 _& J! j' z4 ^# R. N
% k, ]1 ~. t& P4 O (2)创建新的表
# N6 w3 L0 E* ^) e( c- Q" { 2 J: \: x5 w# {
2.删除数据库和表
0 I6 |" d/ ?( `1 [1 A2 a " o o( j- G7 I. t1 o0 w% G
三、DML7 q/ q% ~, e5 n# h* E8 G8 I2 N' f
T2 z, y% g O7 _2 D 1.insert插入新数据
/ E5 h7 y" M1 W9 z! r
4 H* n$ v! Y$ q: \) n% o- Z 2.update更新原有数据' f# `! ?" y5 ], @2 ?" I
, [; h6 C1 L/ n! b 3.delete: 删除不需要的数据(表内容). C2 Y+ t" H# M+ m( L6 \6 K, G/ S
8 y! i3 M3 m; s% K, s
四、DQL查询数据记录) f6 O6 [$ j# M. P& l2 z9 z: V7 s
- a, L5 Z" _7 l9 @0 \
四、DCL
* D( R: O3 X4 w u# \* W ( |& N& D4 v6 q3 T9 E! `) N
1.alter 修改表名和表结构(表结构)
% i6 A) N z& d( d N+ L$ d, Q# f
+ y, x; r3 `: ]$ s+ W7 f 一、SQL语句 (mysql 数据库中的语言)6 |: U" b/ |( H1 ?1 F* c
show databases;查看数据库
$ S9 f8 O V. F" @3 F* p& l$ H use "database_ name" ;进入数据库8 O% b6 q9 c7 N$ h2 y* {3 E
show tables; 查看当前数据库中有哪些表7 d x/ M9 e$ U' h) Q
select * from "table_ name";查询数据表中的所有内容
9 c1 {# _4 f/ w' ]4 D describe "table_ name"; 查看表结构
5 [* f% ?/ q/ c1 z# `' @$ G desc "table_ name";3 p& X9 I, W7 c7 X5 Y5 V* ^
7 p" |' K, N3 G7 ^9 a
# }1 Q7 N& m$ ?" K& |3 S- K 3 P! i- {2 f0 R& C: ?
/ i. n* p M" m* Q/ n) ?$ {7 [# o
( S7 D; m4 T8 |* b) L3 } % f* q- D! n9 O) D" h! c0 V
# K6 q i- S- M& z0 T+ v
! t. z9 ?; g5 U0 g. O1 O) K % N/ @5 {1 Q4 n0 a; b( c) n/ _
# ?5 l# X: R( C$ c. E# f) C, s
" N: J6 K' j; u u! h) u" b 2 Z1 \5 y) {0 G$ A/ k+ i
1 z! q1 m2 [* L2 P! l I7 K
/ B. b- I$ K; O- Y9 u 类比excel表格
2 w7 i: Y) |# X9 `! |$ z ; D$ G# m. y2 c
' L# A" H: p5 V v) W" O) ]2 W + [: [5 g, D( [; e% [0 v5 h
5 |# b/ A; K4 p+ ?* }
3 H* N4 V$ ?0 o+ u
/ f" ^* @$ G+ h9 U
" `' Q: [9 U& m: z# n. w ' r" @/ `, ^+ {- Z: P& p, l
1 f9 O C, d1 A4 Y9 i R
类比excel表格2 s$ z* a! X/ i! b3 i
9 s/ U' f! B; m) g! ~9 s; ^% h $ w7 J& D5 s: ~ `! B; D
1 j! Z0 m' |8 u6 J % Z7 w" p! D8 ^
, t0 k4 F7 f s. S
简写 ! ~% V3 _; b1 H1 a( p
" b$ y/ ~% O5 V! W0 ^ filed 字段名
" {3 @% j; F) R1 q/ t9 ~2 J4 q7 o
' f! H/ m# S+ X7 M: ?$ O5 Q5 w
1 }9 w5 Z8 o. e7 @1 |* S0 Z& n) Y0 h
( @# F5 j5 Y2 m- C5 J- c 二、DDL
9 b5 x' _. K5 u$ s* Z' U 1.DDL语句
+ e9 o. g# ^: g* i& w4 L Y9 S+ o+ A 用于创建数据库对象(库、表、索引等)6 b0 K4 |8 A: S
) |/ P" I& v: b* y) Z
(1)创建新的数据库9 Z& \9 O0 b- E0 y
create database 数据库名;
2 h# W1 @* w( B" B7 j( { : G6 u B0 u/ f3 B6 ~/ {
(2)创建新的表, @! q' k# w6 J/ j
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);% S6 h0 [! {( S- ?- v- @( O: [5 h1 d
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。
0 ^+ k |3 M" j% ~! K 0 p7 u9 S9 `% X& ]% N$ [* T% e- n/ I6 i
create database 数据库名;
+ m s" x/ W0 U- h$ r0 | use 数据库名;
- q8 t6 Z4 O& Q create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;
8 i: n8 d+ R$ t# Z / E$ P! n w" L
desc 表名;( F1 b4 k: C# t, s& r
; f6 G* R# @) l* `1 x( x not null 不允许为空值
7 h7 X" U& M3 d0 A* t; m( h; y+ {
* N u L4 D& n5 h$ @7 b: I) | default ' ' 默认值为空
8 h6 P# {. d7 J$ h/ O2 t8 l- J. F1 X
0 u! t- w3 T6 U- V1 l% c8 Q primary key : 主键一般选择没有重复并且不为空值的字段: J. H' ~. V) |$ U" E
* ~/ j* i9 l0 Z5 c 例子
( a+ D& I$ T7 i% u0 j create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));5 Y8 P$ Q# d4 s, b" `& i
create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));
9 r1 Q- U1 K) o4 ^ 2 b3 X3 O6 h b8 @: z
4 ]: H+ ~- Y. f: u
' T8 o y. ]2 @$ P1 |5 V/ B W% r+ ~- ~: {6 E1 r: z
( J9 O7 f6 ?5 F3 t " V: G- e( Y) C, n3 p- X
. L7 K1 e# e7 m1 ^6 r
. r; a" G& l3 U# j 8 P0 H* D- M9 W' T1 S
" U4 Q/ C M6 l% b$ v5 {4 c
2.删除数据库和表
0 E7 ^. { p) }; u9 s0 D5 l 删除指定的数据表
- i v) C& Q5 v0 a% h 8 I9 ^: j0 j1 S m, l, B7 [# ]
drop 删除表内容(数据)和表结构
# o. M' w: |' ^, G0 {0 |
4 g! x/ K9 C5 x, A# H use 数据库名
! W9 r& j' x5 Z# O: Y) J' K drop table 表名 , d( J9 x" {3 i6 C9 C N
drop table [数据库名.] 表名;
( I( R: f+ {, N 如不用use进入库中,则需加上数据库名
+ P; {$ f3 z( a0 \; Q+ l 删除指定的数据库
! o4 `" j' I! F' N& J drop database 数据库名;
' B$ L5 y- d* U: V d
6 T( z2 j4 O1 L! p9 n
" o( u& v0 ]) M4 R9 w( K
0 k1 f4 K3 l7 ^; @1 ~: B& R / K5 k! E7 t2 N4 X- {2 s* r$ q) R
2 {9 d" m8 O7 i8 h \# b* F0 H 8 k% V, \) X: x! v
, E' [+ I% T" \; ?1 ~ f0 {
3 D8 m% w' n. ?7 x2 S* w 2 e% _, Z* P% G- d. q$ N+ w9 R& n5 h
/ }7 D5 e- S4 F9 \2 v
$ ?& e% ?, ?# b
& r v6 T7 o& c6 Y6 g7 v- ~5 U
& }; B% I- T4 i7 U- A$ X6 T- }
) P9 c5 Q+ R$ }
! T, w+ s- J5 g8 P1 f2 c5 g2 Z
. l u( p3 w3 j- k; k& n 三、DML
! z# Q! J3 i+ h( C, q/ z 管理表中的数据记录! W7 [* P3 j* _, B% q
' p! r) a) o2 P) w- d
insert: 插入新数据 o/ y t% d2 K N& B( h/ X5 `
update: 更新原有数据" `+ V' P6 s; H% f
delete: 删除不需要的数据1 V5 d# {( Q9 B& y# g2 n
1.insert插入新数据
3 c; e5 [: B* {' F+ f9 i 格式:8 e* P0 `$ p6 Y# T. ]
- C! d, X: _' b1 b' O0 o& [( ` insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);9 e! L3 }( M. h5 v
# W1 x/ N' c( ]; c, d8 a 例子:4 A5 c8 D) q- T' m, b ]# Q
insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;/ Q2 b' w. `5 ^7 }- N) R
% V5 Z" l$ |, X+ `6 L passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。( p1 X2 n) D d
# O. N( A6 a: i. S 密码复杂性验证
+ U" p: R2 V1 [- g: i: F 0 g/ S m4 {% f' W1 K5 {8 C
insert into 表名 values(2,'自定义',90.5, 654321) ; u! M( g5 _9 |& |( r+ m d) y
select * from 表名 ; 查询表的数据记录+ l3 |& \1 S' K5 o
! F: W2 Q; U, B! S insert插入表数据
+ B6 S" d5 c" O! d, q. D# V6 m * L4 W; D! v& S& O0 {
在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)
7 ~% q& R" K" ~) Y2 p& d
3 \& W Z4 a% A! x) q1 R% P 使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写; r; ~9 ?1 m3 A- N+ ?+ b& T
# o8 k! }& x0 M/ X8 {; [ - d7 K& S; J6 |" y/ m, L- i
* N1 {, j* `3 T# r # A. C6 W7 }' c; X4 t
. @7 d# ?* B; C* k+ _0 t0 F& F
. F5 O0 z* y5 k. G$ g n & G2 [* j" f5 U+ t1 r
2.update更新原有数据
; k( @* s' Q' S% P( [; ? 修改、更新数据表中的数据记录
4 C! j$ D0 }% k" o/ M
$ e, H, n4 h+ H) d/ X/ @ 格式:
& o- n; E' q/ o! Q2 H: D update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
( V1 x* k) D) Y8 U : a$ A, h: \% q4 r9 ^, T5 ~5 N
例子:4 b1 X6 N6 z4 z& h
update 表名 set passwd=PASSWORD('') where name='自定义';
5 H" U# f9 h* A* ^) H5 U update 表名 set name= '自定义' , passwd='' where id=3;: Q( {# w3 A q+ s
9 ^, R- U; m7 l1 N
" `* W l. b7 _/ O! g
1 l( [+ Q2 K2 B. S: h# W$ I H t8 ^* ^, z
' }) o, w0 l. ^ T9 C0 C 9 \* ~- h& e' Y m: i: V: ~
3.delete: 删除不需要的数据(表内容)- c) \/ y# s( e* `- H
在数据表中删除指定的数据记录(行)6 @8 u. O! p% V& Q$ N
" \, C& S1 A4 N6 A 格式:.1 w: T5 I' G6 ]7 v" d& }
8 L: y \7 r# e8 a7 X( K' [0 E/ s
delete from 表名 [where 条件表达式];
7 _+ w$ r- W, E
0 B; G: E a; ~ 例子:; V, [# ]; \% K6 g! f
0 ^% v& P1 r5 M. Y7 M+ b! V; l4 y) I
delete from 表名 where id=4;
1 Z% ]9 c9 I; @1 d/ F/ J& y , S! ?" G* Z' P: |( a* G, j; c, \
5 X$ f) Z5 y. z! j 四、DQL查询数据记录; ?* ~8 D* b3 ^2 i) Y/ ?. L5 g
select# @* u1 ~# o, m5 r: D# H i
- ~4 B& ~4 Z3 c6 ]$ s' w 格式:
7 B5 @& \; _) v# l1 a+ ?9 L$ [3 W 7 l9 D, U5 I7 E* ^( B [5 O7 i( y& d9 u
seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];, J! U0 t7 R0 O9 R
7 x! z4 A7 U/ @7 D$ D- m3 n
例子:
& F" a2 \7 T4 Y8 l. Z( f seleect * from 表名;
% ~1 d7 x4 z1 D% ]) ] seleect id, name from 表名;6 W4 G# S. \: J! O5 u
seleect id, name, score from 表名 where id=2;
* C! g, t! E. {# |
8 O/ c* e; K5 E select name from 表名\G 以列表方式竖向显示4 i/ f- X3 `0 }- F" }, P2 C
select * from info limit 2; 只显示头3行 M" q) H0 N) f6 G
select * from info limit 2,3; 显示第3行后的前3行
) b5 s3 T5 i {- @
E8 n6 p, W- [9 u: v- ]: Q 7 Q" V. ] |) v8 Z, n0 j
- X, Z3 k5 x# \, M 3 H/ s; Y+ _4 u% B
. B5 b' A. ]( N3 I$ ]
" ?; Z/ Q* {2 j8 H0 a
类比excel表格3 y( R7 s7 @. n% e5 M9 S }
; ^: j9 r" h/ {* s 8 S% I) y; s. Z9 v2 L) ]+ s* ^ Z2 e
. X$ M8 E: q) g3 e$ j# A
四、DCL
) \; {5 d3 C- O. b+ o2 K. u 1.alter 修改表名和表结构(表结构) x& f3 |4 f# w
alter table 旧表名 rename 新表名;
) p. v# N$ ]7 p5 j 5 p1 S; e6 O+ t5 T0 J
扩展表结构(增加字段)
( e9 s3 g* u! P2 ?& t3 o$ k2 f. b alter table 表名 add address varchar(50) default '地址不详' ;
$ R9 |( w/ o# ~8 x N, m6 c5 X default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用
: e+ H! J+ t( Z! q7 L4 K4 T6 T! ` alter table 表名 add address varchar(50) not null default '地址不详' ;
2 `0 z6 |5 B8 b0 E3 L5 [. ~9 U 6 K6 E/ p* u& ~' z: S, F
修改字段(列)名,添加唯一键(唯一性约束)
: u3 Q" D* v/ U) @ alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;1 M% r5 R, v+ r6 [
unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)) h* N. t' @) H8 ^9 m
primary key (主键) :唯一且非空( Z8 I$ _0 ^: w. ?) w; [
alter table 表名 change name user_ name varchar(10) unique key;
9 X/ S1 X1 } d4 z7 n4 ^- |& T! w( \ change可修改字段名、数据类型、约束等所有项。7 B; L) J8 G S# E
9 R# A. Z6 w2 W
删除字段7 S+ [! M, z; K! M6 e
格式:
$ r" i8 U% m2 j U alter table 表名 drop 字段名;
4 A9 ~2 F/ M' n# [ 4 M C0 E+ C o; u5 e& ]3 q
————————————————
: m1 U, W7 i) U* B7 e3 q+ l' J% R Q 版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
' s: I# L6 ~# ^- T( Z! w7 [: y7 a8 Z 原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177
+ P3 U- m/ L( C, r , z0 F+ h2 [0 I/ A+ E. @
$ D P/ A$ s$ I7 p* v& h& O
zan