- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 569615 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 176107
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作
* i4 v4 i1 M8 v Z: ^/ e5 C. F8 }7 T' [6 d' Z4 ~
目录6 Z5 ]! B( X6 h. k
D& y* H; V9 q0 o0 W2 S: P
一、SQL语句 (mysql 数据库中的语言)
& i- L3 o; D+ _4 s! x
: E+ g$ W0 d; s3 ]二、DDL- M' q% C9 S5 A' n; r( ` N$ W
9 n2 _5 Q3 q2 X. A5 ?* E& K- C1.DDL语句
" s* l$ |$ O) k# ~% X4 P; m& T9 M7 N `8 o) ?! D+ ~7 z" h
(1)创建新的数据库
9 y$ ]0 y3 A* l+ q. X% r5 L0 n6 T
# I+ l; ]: T" u" j(2)创建新的表, Q2 w7 `1 g W* {3 w, C
0 @1 S* X7 F Y! K7 t- d* x 2.删除数据库和表4 T; M' s6 j" v1 N/ X" D
% i# B5 _$ l i# v3 A5 v; J% S4 J
三、DML) y- a: W+ N2 O5 A: @
/ r, u+ @' ^! }& ~4 U
1.insert插入新数据
" ^1 z: h! }/ W; m# c) o/ f3 |+ x5 d% \* P
2.update更新原有数据6 R5 [) I/ U7 U- |1 W
. c |; P$ C0 ?! v: m1 q2 h" t3.delete: 删除不需要的数据(表内容)0 `) v: Y9 {. @& p- G& _9 c" L: ^
! l! o& g' a- ]' u, y
四、DQL查询数据记录
; `* a2 A. B# b/ O( ?( d
; n9 q. @# R# i, _( L四、DCL 5 r- c8 c0 }+ V# R" F7 A8 A: g
6 u2 o; F( {, r- ?& B1 I
1.alter 修改表名和表结构(表结构)' G5 G7 }7 e% j2 s7 H+ c
2 @8 _/ V) ]' i一、SQL语句 (mysql 数据库中的语言)
0 `& L9 [; y6 y ~" S! ]1 K/ |9 U+ v) rshow databases;查看数据库, J2 B9 ], l5 P$ B- L" k ~
use "database_ name" ;进入数据库
, ^) ^) W0 D4 \. C- i- gshow tables; 查看当前数据库中有哪些表
) D1 J1 H6 t- N; L6 Xselect * from "table_ name";查询数据表中的所有内容+ O2 f1 F) K2 x% X5 O, Q
describe "table_ name"; 查看表结构
# s: d7 M, }( G0 ^desc "table_ name";$ a4 K, j$ C2 F: O9 V N: }& l. [
. y1 y' ?5 P O1 a! F9 }
/ n8 N0 Y' Y9 |; l0 r$ A- u' J
* ?4 k( }1 x- x$ S& d( Z
# r) z! |$ o8 H. ~& j
9 L1 R4 M8 `- f9 x5 Q6 I6 N# l: }3 D& X0 s" v$ @
2 D& ? T8 A U$ p2 O6 C) c
& ~. i# d* p/ @" m$ f* b1 ]1 R( Y8 A$ A8 w% y- { ~" v& w
7 j) i) Z! w' H9 W- R
# {7 e& b2 B5 d/ `! ^. K5 J- z# o
& y6 q; c1 Q! g+ P3 v
/ `& h0 N5 e# h" _1 Y- [
1 G6 \% f: G* N, l# _类比excel表格8 H- S7 m3 Z: L' h- F8 y
_ R: ^# \/ v
# o8 }. a. Y5 ^! P0 s5 e3 u/ b8 S6 \2 O) |+ [: _# B
2 {0 Z6 C/ [$ S6 q
- N, Q7 a7 l' Z! r% k' o' U. z1 y5 u$ T& x" J$ L3 Y
. ` L! A/ d" j. \. Y! @
, r# B8 I, `) o3 T; N' K
7 S) Q/ Y3 I6 i 类比excel表格
7 J0 _& q8 X- ]1 j, G @. P' C# J2 C- c* Z( N" d- U
5 L. e) ~ b+ u; ?" _* H" F
9 d' }/ Y; x$ l, O9 o* o6 b; l* z; G4 m% w' Q4 H
5 v6 C; ?9 ?( Y3 t. c( V简写 ) k7 d9 {+ O: y8 q
, K: P& `; R' H Afiled 字段名7 K3 X: _# p3 Z% O
0 K' r$ U4 ] N/ Z3 {# N+ E
7 ^6 k0 E7 G& C1 |/ g; C9 b1 Z2 C/ r1 n
二、DDL7 u6 V. @. O. t3 H2 u9 G- @ ?% f
1.DDL语句, Z+ q5 l+ I6 J) m3 Q$ z
用于创建数据库对象(库、表、索引等)
" R7 ]4 @9 b6 S' n1 C& a4 |- \) E C; a G
(1)创建新的数据库. Z8 r& L' I6 [! B
create database 数据库名;! W2 P( J+ s" L; B. I2 z: y3 U
4 \+ J) Q j* X6 W! Z# X6 r
(2)创建新的表# c/ l4 F( W. F: ?" m0 i
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);
* q5 L, ]0 W: B主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。1 l& k8 K. L+ C8 o& a# G
- z- n1 y$ p" N! J2 A
create database 数据库名;) T2 A; Q; V# Q- T! _+ Q5 s: M' B
use 数据库名;; h0 R5 k9 K% j% ~0 L
create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;7 V, w7 Q6 I2 ^* [
, o% |' ]* o, o9 |
desc 表名;
0 U' z( Z# T" N) K' O( a& ]) Q' x/ [* Y9 T! g O6 ^- q
not null 不允许为空值/ H) I* t7 Q$ q3 Z0 r
4 b$ L N5 @) w9 |, O
default ' ' 默认值为空
* |% |/ W' K; A7 s
( ~* W. N, n0 S) iprimary key : 主键一般选择没有重复并且不为空值的字段
/ t% |9 }9 ]/ d' a4 P9 d# Q; B9 k
例子
0 D" L& G. S: L- O* w6 Ccreate table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));6 Z% x3 [& l9 P3 o
create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));, A! O9 ~1 ]5 b* L+ W4 V* c
6 ~+ c' V0 q0 a. Q9 j# i: ~2 S- A6 v& r, g- {; ~
$ ]- E$ u- d6 X8 m- l& i% \; z( t3 P. M) c3 B. Z/ ]! E
1 s+ |% O- o$ p7 z: u% [
?2 ]- Q3 q2 \2 U1 Z, {
/ ~5 [: I9 B; j/ X' h( n
2 H! x+ o7 a+ T$ d! i
' V; Z6 L8 G1 A9 ]$ ?; D
; ?; K" f! J o1 i7 F6 U4 a& b1 k
2.删除数据库和表1 ]) B7 N& B5 A- g0 ^8 X) c
删除指定的数据表5 E! ~& v0 A6 W
0 S. z0 Q( V8 \9 E$ E; @, T2 u* f0 C5 U
drop 删除表内容(数据)和表结构+ o8 P% I* I7 ~& i
* s/ {2 K# F- \/ M
use 数据库名
6 `1 {: U+ u' Y& y7 Zdrop table 表名
, \1 O% D9 j+ B3 Z3 n$ M4 K. Jdrop table [数据库名.] 表名;
Z8 @5 Q4 f! ]# W8 p m如不用use进入库中,则需加上数据库名
0 R- W! F' ?4 o! K6 h6 t+ R; t& y删除指定的数据库; V3 T: U0 `% b3 \0 W: d4 @& o
drop database 数据库名;
I0 g1 T, J6 w% B! `, E3 S1 i! [8 ?6 X& D
/ \& E* O' x/ ~ e3 v
! M9 X6 W0 E0 u& q( c2 p
' u8 h2 R/ z+ ]. p# o J) n6 o6 ?/ e: ~% n2 k3 P
+ y. `$ I n3 A+ t( X D/ `0 v' }* |+ ^+ O& _4 R* A; D
( M; A6 [! m) u0 |) i ^! Y# [( T6 o# R0 v0 ?2 G
7 w8 p, S6 A, R# J# x: Z0 Q
* @6 d: I: ]7 x" z8 o' N4 o; {% m R1 |! |
+ ?) T0 Q" j7 O2 B- M
7 [$ s3 y. @8 `& \, Y. Y" P' a) ?" J4 K* D( l; J7 i( [
. Q' z& a0 g- A" K
三、DML8 j! S8 x3 e; Q _
管理表中的数据记录& z$ E1 }% }8 ^
& F8 k7 k# \# H6 n9 t' ?, B4 |insert: 插入新数据
+ L A* n3 k4 O% F- l& } Pupdate: 更新原有数据
. F/ i- ^: v' u3 ?4 W$ Kdelete: 删除不需要的数据
, V' l6 l# ?6 Y$ e, e5 W" c1 N1.insert插入新数据
; `! g1 |2 p% d% _4 @ U4 V9 y) u格式:/ w( I4 S- p+ E9 M _/ \2 O
" U% i8 `: } A1 A8 N. Z! [" Linsert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);
. G. F; `: t* q& j7 C# B% {( X, d1 u. }+ T
例子:
7 l$ q+ q8 c0 ~, t- i, C m8 H8 Z2 ^insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;
$ J5 n) a; S6 C
# f; D1 D. @- x5 ?- P9 Dpasswd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。; i q. q% p e# E" C7 @
1 i9 t' ~( Z5 @; f% E& y) ]密码复杂性验证, y ^7 b' ^2 P9 k7 ~ O
- n1 m T/ Y! G8 C8 ~7 u* Finsert into 表名 values(2,'自定义',90.5, 654321) ;
r% u8 V$ D2 vselect * from 表名 ; 查询表的数据记录- h- w" d3 W; H5 _% Q" a
* D3 `% e: g, X, O& R+ ~$ h
insert插入表数据
: V5 P: `+ n( R) _. }, D/ Z4 _8 b+ b
在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)
% l6 X! [7 Y4 P; K7 H- A. E% _+ C# V+ D+ ]1 t$ G
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写
' i2 C$ l6 f5 j/ ]1 _6 b
: c5 Q3 W4 u4 \$ c: X, Q7 h' z( a+ ]( r/ F9 J- h! a
7 |- r$ D5 L+ B
4 O0 D/ P/ H7 |2 l4 A. \2 M, r( Y! F
/ R* j. z n) J D' ?- b9 ]: l6 B4 |; S6 p. G5 g4 m* m9 C/ g
2.update更新原有数据" U1 _' G. ~1 e7 u
修改、更新数据表中的数据记录5 E, j/ ~3 o) [
9 A9 P; \% J% }/ m9 L
格式:/ u" h6 R; t7 R
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
+ B- G( c* R2 p! [! I' u4 f' r7 x4 X1 E* L" e5 O& C& q' _5 r
例子:
2 b& _% N& @% E! D" B: Iupdate 表名 set passwd=PASSWORD('') where name='自定义';1 a3 ]2 H& ~) h/ A7 E, v. l$ d9 I3 P
update 表名 set name= '自定义' , passwd='' where id=3;
* a' R( Q# ?- u! B6 r
9 s6 ^! W2 H5 W- y* z- J/ ~1 Q) y4 H* ^3 w2 P
! V8 ~) s8 f2 i( p9 A/ j
2 g. T1 M6 d$ S+ R, }) W
5 }- J b: \6 b% D5 J! Z$ |9 p" x2 X& i/ y/ |0 n
3.delete: 删除不需要的数据(表内容)
, ~$ O. I( O$ Z) v2 L4 h在数据表中删除指定的数据记录(行)) J1 d/ e+ H2 P
# x; v. ~' U( r6 e, S8 h
格式:.. Q8 a7 v* w3 Z4 f3 z* o
* K; D0 [+ p4 ?+ s# b
delete from 表名 [where 条件表达式];
2 n0 Q# ^ E9 k0 C; n3 y6 ]+ X, H- P0 @* g# h) g: Y% [' {
例子:5 F" C; E, i& F
- S& l- K x% N& w. ~delete from 表名 where id=4;- m& ]0 a$ t0 l3 n6 F; x
. }, W, u; V i7 {( x% v, q
: T) H* s8 c2 P% x- V四、DQL查询数据记录
4 o2 K2 Y2 \( H0 Sselect
) j- o1 x0 e5 @! I- F) `
& T% B5 A0 |4 p1 \格式:
& A- ~: U+ u7 _7 V, n
5 w) \2 k0 r- X* I+ u& fseleect 字段名1,字段名2[,...] from 表名[where 条件表达式];
1 C% W6 N2 Q/ I+ x5 L
8 ]! c( m+ ^% H例子:
- O! N( W& p: J2 b* qseleect * from 表名;
9 M& j/ ~' U$ |3 J' aseleect id, name from 表名;
5 q- g) X9 g) ] \seleect id, name, score from 表名 where id=2;( {% y$ {$ u" r+ a' s- [: W
! H# I* e- c: ~, x& e. H) {
select name from 表名\G 以列表方式竖向显示- ^" o" x( \* W# m: W
select * from info limit 2; 只显示头3行
6 l) o% q0 I& d5 \; ^; U3 Gselect * from info limit 2,3; 显示第3行后的前3行
& e* o0 @4 n+ n( e/ R0 G9 M; ^
0 _) H8 x3 X p5 Z& B9 c8 {( ^# P& A( J( F! i
1 p( }2 @5 w7 B z6 `8 z: b. U9 q' W
& K( ~& }7 B3 q, W2 p) V
0 K. z9 \1 s7 B* ?类比excel表格
' \" o/ H& F$ | k7 `5 t- \/ K& l) v/ `4 Q! D; r0 X* E
% x0 L; C- \8 f$ j W3 |4 n4 Y! m# n! M4 x+ ~
四、DCL , P0 m( i& H! s1 F& |
1.alter 修改表名和表结构(表结构)
# j# [! O# K9 M* u/ y0 galter table 旧表名 rename 新表名;
6 m J- e4 B9 o) n/ S
& T5 q' L- |5 ~( }' i* G b. z扩展表结构(增加字段)3 N5 @( x; H; m+ H4 P& a
alter table 表名 add address varchar(50) default '地址不详' ;
3 b! y8 `' G1 G* xdefault ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用6 m: x7 m& V. Q1 d- W. @) `
alter table 表名 add address varchar(50) not null default '地址不详' ;
' i$ n! _4 W$ ]6 t: F0 o/ G8 v% y. J' P! @8 o- s0 [7 R4 K( v
修改字段(列)名,添加唯一键(唯一性约束)+ m; c. |/ f/ j6 l
alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;. n% N. P# e; u8 [
unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)
, R; z- n0 F" w$ fprimary key (主键) :唯一且非空
& R3 {# C( V; Yalter table 表名 change name user_ name varchar(10) unique key;
, S6 L9 X2 `* A0 schange可修改字段名、数据类型、约束等所有项。! U. p( A- `' x! K
4 l/ `; \2 P+ m- P0 y" E, {/ j2 d9 Y
删除字段9 j. J" y5 A$ J; h' {' U
格式:
9 L( l1 z( P7 N7 E. S, E1 l7 |alter table 表名 drop 字段名;
( V* u- b+ [ `! B
5 u- E9 b* l7 U6 E; M————————————————* h$ m( n. a0 B( k2 } F& c
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
1 y* V, k* e6 F; c- \原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177+ W6 j& N: b# q
( t; S( j9 [0 ?' ? S) @4 O( T, g) c, _- E/ V8 K* p
|
zan
|