在线时间 1630 小时 最后登录 2024-1-29 注册时间 2017-5-16 听众数 82 收听数 1 能力 120 分 体力 567226 点 威望 12 点 阅读权限 255 积分 175391 相册 1 日志 0 记录 0 帖子 5313 主题 5273 精华 3 分享 0 好友 163
TA的每日心情 开心 2021-8-11 17:59
签到天数: 17 天
[LV.4]偶尔看看III
网络挑战赛参赛者
网络挑战赛参赛者
自我介绍 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
群组 : 2018美赛大象算法课程
群组 : 2018美赛护航培训课程
群组 : 2019年 数学中国站长建
群组 : 2019年数据分析师课程
群组 : 2018年大象老师国赛优
MySQL数据库基本操作 ! y# y# R+ E- R' w
' n& H# e" h% _3 C& k: ` 目录% R" j8 f: `5 U9 o' }- Y
. b2 {; Y5 e. O1 Y2 L5 Z% A& B: f 一、SQL语句 (mysql 数据库中的语言)
7 E/ g% ]; i& B+ T8 y8 y' \
, h8 `" C6 r$ h 二、DDL) q( o" h0 z& S6 b7 Z% e5 z: W& b
6 A j0 U# ~* d6 j" a) u& k% A
1.DDL语句
' J2 S0 X- ]- L" G9 c7 {9 W + P( X9 I, L) P1 |3 x! H9 F) c% A& A
(1)创建新的数据库( h; T& v2 k) H5 ^. G- ?' E% R! T
8 K8 d; U( D! U& d9 w O: n (2)创建新的表; I* A+ l6 g& h
; A) h' Y6 Q k6 d 2.删除数据库和表
$ B) w. F% G, ^ ) L3 y- W; E2 j/ O. K* Q& ^% t
三、DML
( z+ G' w0 I0 P) j 3 D" [ q9 G9 n& }
1.insert插入新数据0 b5 v; z; I$ X" I# _
+ u' i( z* k+ |! Z% y2 ~6 C. A6 [/ J 2.update更新原有数据/ F; N9 v% V, o% A9 l* ]' q
) D. ?- V; B) X
3.delete: 删除不需要的数据(表内容)& r, r: @$ u* X) M/ I0 R# _
4 s, l0 i% ~# I, k! d& g3 b 四、DQL查询数据记录
7 L8 [/ U3 ~/ a: W/ [/ a' N4 n: T
& k- _9 s' W- p D$ C" D# E: J 四、DCL
, T+ u$ a! A0 A" D
7 h* m; W; Q/ G8 z8 U0 i5 S 1.alter 修改表名和表结构(表结构). h7 R5 E( t, i
5 X; h7 m. o$ |2 u& c
一、SQL语句 (mysql 数据库中的语言)
, Z! F! K; v: d1 [& E show databases;查看数据库8 T$ x3 f4 C# Y' Z7 a4 [
use "database_ name" ;进入数据库
' ` D; Q% M0 R: i- F/ o show tables; 查看当前数据库中有哪些表
4 _% \7 W" N) d: f" ^" S select * from "table_ name";查询数据表中的所有内容. _9 T- p0 x& j: M) M* R4 o
describe "table_ name"; 查看表结构7 ]' Y% {' G$ m: T
desc "table_ name";, z$ Y. m! _ t9 n4 N
( W( h' z7 E. T ` r* u& A+ k* Y( e4 L' i
* T' O3 F( N A6 ]
7 h0 S2 ^5 ]' N, R
2 T' i0 a$ }7 R! c0 S- g$ n ) V! P9 H+ W7 x0 U8 p- B2 S/ m) h
! C4 u- O* K( L( @$ `$ J 3 y* W8 n6 s) n
( u; v; c9 X0 b5 K4 s# x/ L
; W2 Y+ i9 ~7 O0 g7 F4 l
0 ^- i8 n6 T* [7 {/ t; I. J ! G/ N7 ^% {# J* c* X3 |
9 x- a, y `; V. e8 X
2 c0 w! M, {" a 类比excel表格
; ]1 E7 B- A* e
" D. l1 @5 x4 w$ O6 n5 d
( b3 h0 o( t- O7 q2 A
w0 t" Y$ o/ v, R! L $ {# U. |, J1 g5 ]
- a7 J- H4 b! v r' a, s/ T
# x* }# a1 [; B+ d
C7 g( ]8 ?) I" d% T. D
/ {: o8 n# L/ E, a9 L0 f+ q ; N: e2 h: R5 P$ f
类比excel表格
/ D" E# ^9 r2 a$ i( T+ n; q! t# d$ }9 F
# d) k, l0 i$ H$ P1 x ' e2 r1 ?5 s% e
$ s2 j. k+ i: [ 2 W$ \1 \3 y; j) k* x$ a
/ ^; i c e$ B2 @- A6 h 简写 + w p, b; }+ u4 L3 a
8 H e. X1 ~. A/ ]+ j/ a filed 字段名
8 R% z2 i4 G8 e ^( F" r ( r' u5 y1 b* ?) V" i" ?0 t ^
: G! h5 D8 V6 R3 a+ R/ P
# X T7 D. N, E# d3 y 二、DDL
1 T9 C2 ^3 g9 D+ Y4 R 1.DDL语句) h0 {) M* P7 T: p" ^! W& {
用于创建数据库对象(库、表、索引等)
) C, w r7 L% B0 x1 E 5 ^) A5 w# u) ~9 P- k- S0 n8 W; X
(1)创建新的数据库! }$ O |' [7 n2 d( I
create database 数据库名;
; r1 }/ z% Z0 N( l# d0 @
5 F% T$ l5 J# h% y; y; c (2)创建新的表8 K" z9 }- C7 G$ f
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);
% W9 G8 S* [0 r; u7 @ 主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。
6 `8 |0 ~+ I$ y5 G/ x( B7 d2 c
; N$ `1 P, Y$ Y1 t create database 数据库名;
; L) {4 \6 m5 W# ~; R' S' r+ N use 数据库名;, M" O6 @; Q( D4 R
create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;8 k8 Z; h$ C. {8 S
, p7 Z- ]7 W$ r4 T* p. |+ h2 l desc 表名;1 J- A; [# x' {9 w+ X# v
8 R$ G I" U$ [* E: A+ Y
not null 不允许为空值
$ [8 u7 H B$ O' H2 ^& ~- c8 Q / f7 J6 M8 P/ ]. n) `
default ' ' 默认值为空1 E N3 j. g4 H/ F( K: g: n$ a. D
0 L! n O I ^3 r primary key : 主键一般选择没有重复并且不为空值的字段% Y& g1 J% {. D- H; z7 V$ D
& J' D/ u; `3 p& b8 A0 `- m$ x
例子( |; i2 k! w& ]. Z3 d9 ~# ^) s" Q
create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));; e% Z" f0 }" G- P' A, H3 v
create table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));
7 U% j% _9 d" | 0 J/ {/ ~9 L7 W5 \
. r2 t" g' B* r b) ~+ e 1 H. o! _# u3 {) O% z) I7 o
" u9 v' m% U" b
5 U [* {" @# e: G3 M 8 O5 l4 W+ {# d1 r! d) M* k3 V
$ n+ z, `2 E f ( g6 J4 Q- @. l
1 f7 t$ b% T' Q 2 `) W: a* r& p) e* O" l
2.删除数据库和表
0 P2 W) s" _9 X3 e7 ] n9 h) U 删除指定的数据表$ ?/ T/ R$ X5 s# M+ f& d
2 _% d4 s: f* S/ V drop 删除表内容(数据)和表结构
* D( D* H; y, n# {
Z& A2 o9 A' |/ ` use 数据库名
4 K) c0 k; p: W9 j) p drop table 表名
+ U, ]* @: C, w! H( T5 v1 k; j7 S; Y drop table [数据库名.] 表名;
$ }2 A2 A w2 h8 D& h 如不用use进入库中,则需加上数据库名9 S9 _' m7 v5 _# _" S( x3 b. [4 J
删除指定的数据库
, w. D V: D: \, A2 [0 U drop database 数据库名;' ^, y( W- t9 H/ Y7 w' Z
8 L) K7 F. l- |& h
/ Q. }; ^* z) @- T$ x
" t; W2 S9 G7 \* Z) d
* F' V, P# s( I, R/ e' ]7 R9 K0 k
& M: g* ~# `! K/ {, c, o. J $ w. ] [* J8 s& r# ~# `% f! F
4 \% E, r, h7 ^1 } ; d/ Z: T8 Y2 `" c* m
2 w5 p( O& `7 ]) O- }
" `, H* G; L9 y3 z- _
3 j* T1 r/ C/ V) P- s % Y/ e' z+ z* B+ m, f# t
. X; D z* r5 S: }
. b' {4 m: V" u( j
0 z+ \; ~* Z4 ?- e / ]0 ^0 N/ J/ y( L0 ~
三、DML
1 ^" H+ \4 I- N( O 管理表中的数据记录
$ j+ [+ p' ]% B b
; x! l. `8 Z5 D1 ?" B* j! x insert: 插入新数据
K% q7 Q: J- N' ~$ I update: 更新原有数据
. f4 D& ~2 [0 z) P delete: 删除不需要的数据* N7 h' \6 \- e" C, P: e8 O( F
1.insert插入新数据
, `5 [$ d$ Y$ Y! ]7 k4 e 格式:/ u, E5 j7 P1 ]9 B1 N
8 T+ ^ R* H: L/ ] U: f
insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);' e- N& d5 a# S7 { i) B/ K9 o1 N
7 V, P) I1 k( X- `
例子:
A2 R+ l1 q% W X* ^9 x insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;& Y; O! j) p! c, I) t
7 Q. `/ [& z! V' V" n d [/ y
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。+ a; s, q2 G# \) y
/ u: }% c |/ [: S7 k' V; C
密码复杂性验证. Z( T7 _( ?6 D: |( B9 {
9 P; e0 W1 v4 e4 Z g2 ~) k
insert into 表名 values(2,'自定义',90.5, 654321) ;: O! d8 `" ?/ A* w' u
select * from 表名 ; 查询表的数据记录) u' c" t) @" ] {( p8 J
" a; l3 j8 ~; l2 H
insert插入表数据( ]* b9 I5 O$ L7 ]( {' S6 z
4 p6 z0 h$ A, y: G4 Z5 j2 f; s: @ 在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)* D& b$ X- y0 d
8 ]- W4 `% {# o$ f+ }4 X
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写
) w s) N H+ l( ?+ b8 c $ f( n+ I. P5 m) A8 {
- F7 u1 v! M; j3 N* g
( ?# O3 b/ h3 v! y: N/ v
4 n0 N- f. k3 B7 z: g, [9 V
- X! O1 Q/ U+ J1 t2 H: g% k. c3 T 2 d) V4 C/ ?4 E5 \1 t+ Z+ p1 R: @, w
B2 w+ K9 u3 Z; C! I& U, w
2.update更新原有数据, p0 h0 r8 g. ]/ X; Q: s* h4 h
修改、更新数据表中的数据记录
; O! _2 n) ^6 N/ Q ) `! z, ]/ s x6 @4 F
格式:! Z2 d5 K9 w, V/ @( u. \
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];
Q4 R5 n; ]" h% M5 Z
, r# U" `4 E' |" W 例子:
; z1 c$ g: g" Y% X: _: Q( h update 表名 set passwd=PASSWORD('') where name='自定义';
5 c2 F+ {: f. r9 ^6 Q update 表名 set name= '自定义' , passwd='' where id=3;! M0 S) T+ R' Y$ l5 d9 J
* s! N1 @9 G3 R
) Q$ F+ p+ R+ V1 Y v a$ Y# I& u/ |
7 s5 `2 S/ Z; c$ M. {6 O 8 l1 x( s3 t" k" H
3 z! [" b4 G, n! } \) C
7 q' K/ q. r' k8 I3 A 3.delete: 删除不需要的数据(表内容)1 ~+ I: T% i, }
在数据表中删除指定的数据记录(行)$ U4 p5 l- C, g2 x2 j/ s/ }
) J+ D( Q& L3 t( A& M# n. m
格式:.. E4 X/ V6 z% h& O$ N7 l6 C
8 S9 i5 A. z2 h9 m2 U, v
delete from 表名 [where 条件表达式];8 ~1 s" y3 U0 O: A/ a) g9 c
3 T! Q3 @8 n! {% _* Z4 v 例子:5 h/ X7 l+ b+ a2 p* ^
& Y3 x0 a2 k0 ?7 D% o: h delete from 表名 where id=4;% L/ d! }( A. M l+ T
' c1 Y _& X3 } }
1 y3 \: H% q/ I* z! L% s
四、DQL查询数据记录
6 t h- Z: L" l: w select
g4 K+ d* e) f7 R" d
8 H& F2 P6 d3 D3 O 格式:
' I# p G/ @3 h) n: j& Q
7 @3 t# T5 [ | seleect 字段名1,字段名2[,...] from 表名[where 条件表达式];
: M8 W$ C8 P/ v4 P: i! s+ d
& o0 N0 Y! m) Q4 e9 w4 R, | 例子:
9 M& r0 _: v8 {2 J# m seleect * from 表名;
" L; W$ _6 j7 u9 a# {1 \, v& v seleect id, name from 表名;* a$ k# H2 {& Z9 z* c; ?/ s$ d
seleect id, name, score from 表名 where id=2;
9 a8 G; x6 K* d: Y4 s* D% J# T' L 2 L" J' B3 R5 j" _, |
select name from 表名\G 以列表方式竖向显示
2 I/ i* [& w( s6 i select * from info limit 2; 只显示头3行+ @! i# [) {' d* M1 A
select * from info limit 2,3; 显示第3行后的前3行( s" c1 ~) y+ t5 i' C. R
9 H1 L( s4 Q1 \6 ` e. x& Q: r1 p' |7 T; ]4 k6 O
* B1 G# s: O* J' X1 i1 g
R& c X0 l5 P* Q- |, v
. q; l: B& j7 B, A, l
p) g4 U, j6 h2 G
类比excel表格
$ Z) j! T! T- T, E ! }$ a: {& _* W- q% P' C5 g
/ N7 Y9 U, D( a8 |2 |. R3 w ' z/ f; s q: V, k6 Z: G2 u
四、DCL ' q3 ?, C- c. l" P: c$ o
1.alter 修改表名和表结构(表结构)' Y$ O" _( k( A( J G
alter table 旧表名 rename 新表名;
- \+ t% N# D2 [2 P ' x2 X8 t" M* c( o9 f5 V
扩展表结构(增加字段), [& X: {! ?0 ~# [
alter table 表名 add address varchar(50) default '地址不详' ;6 Z2 Y* {5 m. L; @
default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用
' G/ B% `6 s A alter table 表名 add address varchar(50) not null default '地址不详' ;, ~% V1 J9 X1 u) _+ O4 R
1 w1 l8 `5 v, f7 m; e6 P) E 修改字段(列)名,添加唯一键(唯一性约束)9 D0 c1 `$ [" U: N) Z2 g; Q
alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
7 |, K4 r/ v, H* V. _; _ unique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次)
) {, d& R C# i" {' g primary key (主键) :唯一且非空& n5 e0 W! `2 `4 l
alter table 表名 change name user_ name varchar(10) unique key;
( I! u! |/ F& k! x change可修改字段名、数据类型、约束等所有项。/ G0 J1 F; F* C& Y4 _+ ?# ^, z4 k
& Z" n! ^: m9 a5 j! e 删除字段
' J/ F6 b+ ~# h% b J p/ D 格式: v/ Q4 X' u- v a
alter table 表名 drop 字段名;
% I9 h) F& A+ g. O% x
) ?) S8 [5 I0 V* U+ ^, y( C ————————————————
* y& u2 q) ^8 c7 n2 S6 @$ g, G 版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
! C7 [: M8 I" p% _% ` 原文链接:https://blog.csdn.net/Drw_Dcm/article/details/1267701770 V4 C2 V; @) X2 F. D: a8 O6 _
4 c: Q# E) _" w
+ U$ O* M; V3 o( a5 w8 X: O
zan