- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 563319 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174219
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
MySQL数据库基本操作2 A0 s% B' Y# X, G8 O7 k
' S* W6 w0 r+ k+ X+ {
目录
6 F" i S9 B$ q6 n$ l6 S
, p& J, S' m* `8 k: a- t一、SQL语句 (mysql 数据库中的语言)# V! k; @( J* D; l" `
& ~. t: W4 L. ^) T- l' ?) Y二、DDL. M) ]. z9 T3 B( k7 R( }
" s: j8 d: p' `3 x( j
1.DDL语句* b& X3 S! Q6 \, h# h* e; b) D
$ D. i5 g5 u" T+ d) i, z/ N(1)创建新的数据库
" P$ i( {+ `# v5 I8 B6 F& E' J6 ~& V0 W4 p5 V; y
(2)创建新的表
9 v1 { F0 j h7 A% Z
( b6 a* ]. W8 B+ F, U& u9 p) Y 2.删除数据库和表
1 x# f$ U2 S$ q" M* ~* H) t
5 U% [$ u( l1 i$ m" C* C9 O1 V 三、DML
% F9 ]; w4 x! }, i0 G: R! Q5 P" ]; l1 q$ E8 D% H
1.insert插入新数据+ V8 J5 ?7 P% f( Q* q3 h* W9 b
2 i, d- y5 m8 Y8 v$ O7 T A. ~7 f& o
2.update更新原有数据- h6 ^, E+ l2 T: a$ \; k
$ J2 k- F2 Y8 c7 b4 I" W t2 w; h
3.delete: 删除不需要的数据(表内容)
* G2 n1 ?0 Z* E1 g, y1 G& t7 O+ `& n$ t% o
四、DQL查询数据记录
- |2 N | N3 `' S7 O9 \+ M
% O( i5 e* f8 h1 B5 r8 z5 r四、DCL
9 N8 o/ p8 y! |' x/ C0 }' S* L9 W. c8 m1 f2 u
1.alter 修改表名和表结构(表结构)
5 L( }6 s. p' h" ]: S2 p1 s
) i4 O8 B( @, @9 h% D2 f一、SQL语句 (mysql 数据库中的语言)/ m+ P n/ L& n
show databases;查看数据库
8 F0 S- {. \" nuse "database_ name" ;进入数据库
; p) w9 b9 V2 d+ u Z, Rshow tables; 查看当前数据库中有哪些表
* F$ D( ~+ ^$ zselect * from "table_ name";查询数据表中的所有内容9 e h: N( f" f5 x- |8 a- A& W
describe "table_ name"; 查看表结构$ u* Z/ T( O+ ]# o3 y" a1 N
desc "table_ name";5 y& M( U1 _' t" G: J: h: r2 d8 z/ p1 D$ C
0 m( }+ n, d' k' q+ a, x% g
# |9 x' ?6 c9 w Y4 I
0 A, a# e- {. H- _1 j1 W5 E. [ C
% F* _1 Q0 T4 Z* t# c
; T( P$ [0 a% Q' e5 Q2 a8 J9 _, j, _2 V( g7 f" ~
0 W: Y0 A+ ^8 z% Y' q
5 I# H4 g3 X8 q9 R+ ~# V) ^8 f
8 ~- c2 H8 M5 p3 h3 M* {+ t* I* Z) R$ Y0 ~( \8 j4 d4 \
- D& `) ?7 C0 q. N! {3 B
- N4 f& k$ |( U$ ?) z# d
) ]8 \5 i3 v5 I R$ g类比excel表格
+ [, S5 e5 ]$ T' k
v- P- J& g1 }6 m3 a! H! @$ ]$ Q' r0 T" l, ~% Q5 r' Y
: n0 N- M; m# [1 L6 M
- w- s; Y4 T$ d3 Y
0 y/ O# d- K+ h) X+ S, N
, b( j ]$ T! p
1 g& f1 a5 l$ b) U* D8 a, ~" ]% o! z- F
& W+ @/ o/ E: U/ H6 n: {& a8 a; F, S+ M
类比excel表格
& M, Z9 Z3 t. p
; C l2 r- \9 x% P1 X# I H9 c# S. e$ l
. N! s. {& ]. M
& ^% V7 x) _2 V- c
$ V* m, f8 F Z7 i" X$ k
简写 & ]1 ?- |% P i; x! k; F3 S0 l
; C5 R" h* v* _) C, q7 y6 t
filed 字段名
% J7 _' Q' u* r- j
- x& k m9 {9 R5 g, ?5 A: k
' P0 y: \7 x: Z, Z- c3 U4 O" p* N" y: q* m/ z( ` g' f3 f
二、DDL
9 q+ ~1 r) _; i; W$ z9 A1.DDL语句
: D8 [ ^: X& l' b用于创建数据库对象(库、表、索引等)
3 H' O( H c) N3 g4 B l2 v( ?; |3 b
(1)创建新的数据库' t1 s) Z2 q6 N$ A
create database 数据库名;- s3 C5 g; Y i& y0 u
1 _! d7 F/ }9 H( {. {0 v/ W1 Y+ a
(2)创建新的表6 K, y7 U7 }& X! k/ g: _
create table 表名(字段1 数据类型,字段2 数据类型[, ...] [, primary key (主键名)]);4 {1 g8 J9 s3 g' {1 g9 Q
主键一般选择能代表唯一性的字段不允许取空值(NULL) ,一个表只能有一个主键。
/ j0 @& o8 Y/ c! l+ s4 S6 W! }, F5 S+ w" y1 a
create database 数据库名;
/ @% \* `. n0 o: Ruse 数据库名;6 g/ l7 j# q. ^
create table 表名 (id int not null, name char(10) not null, score decimal (5,2) ,passwd char (48) defalt' ',primary key (id)) ;
& v3 y5 Z" R5 z$ E9 @1 S S& a1 x) H, T. m
desc 表名;
9 ?" W4 e; V1 h! s: O# M" N* e! S9 u
7 E+ G: Y# T8 {) j" ~& @/ R! vnot null 不允许为空值2 U5 J& e8 v/ q
* p( Q/ e% X, D0 l3 R3 j- D
default ' ' 默认值为空# P8 z$ H# M7 ^& `) i d; j
4 ]/ w7 A: r( D3 d! vprimary key : 主键一般选择没有重复并且不为空值的字段" w: W3 E& q9 c
2 X! _5 B& V. K
例子 u/ Z, {# w+ ]; a0 \, R: {
create table 表名 (id int(10) not null primary key, name varchar(40) ,age int(3));
7 P$ @/ H, e% y T! ~# e$ b' a; pcreate table food (id int(3) , name varchar (40) ,money decimal (3,1) ,primary key (id));
' s E: z, I. G7 ?8 T1 z( L( F7 S; Q6 I
8 f2 g/ E% {9 A, U( i! M
+ ^' P2 B# {/ C% k3 E. j+ R8 |( b
3 Z. g0 Q/ d. ?1 e% [
9 I# Z; E' M2 V% B2 g; f" X z- m" o. x+ i% f) X
2 E. p" a* u4 O1 \: B
. }) ~- V6 t- S7 t1 t0 P3 S0 ~$ ^
/ h3 @3 q+ [) y% W: [& Z: `/ m
0 |6 S" S ?! H$ R- q. e \2 O 2.删除数据库和表# ^! b u4 z$ }& ^4 Q
删除指定的数据表
9 {; s' X, `. \/ x
$ A4 y. Z4 T% R4 c" t( M/ Q+ fdrop 删除表内容(数据)和表结构7 B6 i2 p- K# U7 E8 p/ B! j
& m) r; n9 _2 H' G1 ^
use 数据库名# l0 n j% ~" |2 q5 c0 a4 @
drop table 表名 + I8 H) T" M; v& x1 K; h
drop table [数据库名.] 表名;& d! z. |/ ~( |$ Q7 M) Q8 Z
如不用use进入库中,则需加上数据库名6 u N/ s0 T! [# m3 C
删除指定的数据库7 Y0 L( F! x( a" r7 m, O
drop database 数据库名;+ u5 f. y# V) B& g2 y. M
( p7 J! M$ ~! Z6 h e7 u
7 |& i- J5 F1 G+ O2 ]6 f
, ^7 y3 z$ \, C- Q$ B
7 b4 d: w3 @2 m; H D9 D$ h7 }4 \, F0 C' W4 h9 n
" V4 j7 p7 v% f7 l+ o/ i: X5 n) e4 h# R6 D1 x$ I: h
7 m8 h7 I2 \6 h
4 G" E- L' ^6 m( u; ?
) {" W: Y4 M6 g8 S2 K" w: v/ N3 L7 b8 t, K
' Y( e7 @4 Z8 g) F/ B* E2 Q
* z8 K# @2 j9 [, O
, m# a; x8 `0 g8 V5 W# j) |
6 @1 ^( q- Q7 H; e2 ~* W) P
& o0 m! q9 z8 U$ l" d% n% n# L% |. e 三、DML. k5 @1 T" d( r( p! N
管理表中的数据记录
7 a* D& E% c ]- w4 X" |% [; U0 C/ ]0 N
insert: 插入新数据3 }0 \ r/ T: y! N( I- I
update: 更新原有数据
6 J' A4 F8 H) ^: _+ A: M5 bdelete: 删除不需要的数据
+ [5 Y& t2 J; z- H B: a9 x+ i1.insert插入新数据. [# o3 L' h" e: A
格式:5 U( d3 r9 X2 e: m6 I; w
% x; Y" R1 v3 X
insert into 表名(字段1,字段2[,...]) values (字段1的值,字段2的值,...);9 N F! k- b( E$ n& F0 p
; s- N9 }" G. w2 d% U# [' w7 a3 l; s例子:8 N" x" P8 D1 I
insert into 表名 (id,name,score,passwd) values (1,'自定义',70.5,passwd('123456')) ;6 z* i( z2 g9 x
6 a# l B+ Q( v. l6 y
passwd('123456') :查询数据记录时,密码字串以加密形式显示:若不使用passwd(), 查询时以明文显示。- t3 U& X' Q7 m$ c* W
. e: b- N! {7 l0 A0 C9 r( l
密码复杂性验证7 l' @8 A, t; @; B9 R# I
2 g& n% T+ a4 f: r6 `7 U
insert into 表名 values(2,'自定义',90.5, 654321) ;, t' C) Q9 M: L
select * from 表名 ; 查询表的数据记录
/ Z1 c: D! M' O9 R8 M4 s6 ?' K4 ^2 A/ _0 Q5 W8 b
insert插入表数据$ X) B' S1 i5 N4 n
# {3 G4 ?4 z) T: q! }5 A在此之前需要进行查看desc table_ name; 来查看表结构(有哪些字段,有无主键,主键是哪个字段,type,是否允许为空,是否有默认值)5 k3 \$ J7 V1 D9 U: O
& A0 @# k! a4 n8 N5 }$ `& Y0 C: e
使用insert into table_ name进行插入,是根据查看到的表结构来判断,可以怎么写% n& A v" ]# w, a% {
6 t3 c* q1 ?) ~8 ^6 P/ L1 a. J0 ?7 {5 C# N' v! g) J1 {
' ] L+ N7 S. D
! l x9 Z# f e1 a) z2 A' t; c6 n4 L. O1 w- _3 M0 j
( @ a+ g3 j& d7 ~
8 Z& l" }3 F5 w+ f2.update更新原有数据
6 V/ {8 X+ o; t$ H: E% `! r8 B修改、更新数据表中的数据记录
& p$ w& j% u8 j, z+ a' | y1 @+ O4 Y& y; D
格式:6 F" T' b' V9 c; x/ b, [
update 表名 set 字段名1=字段值1[,字段名2=字段值2] [where 条件表达式];2 } ~2 [1 T+ T1 @& K' F# }) T
2 P5 J+ r7 p w- n5 A) K例子:
1 L0 L* K3 G4 M& z/ p% i7 oupdate 表名 set passwd=PASSWORD('') where name='自定义';2 E- \( P% h9 j& r, G& m2 a& C) Z$ a
update 表名 set name= '自定义' , passwd='' where id=3;$ o' l9 e- m( t/ e
5 f( X# X+ B2 i7 Y1 C' n
2 b; w$ t3 g% e' W0 b( b
( ~, Z+ p3 T* |# i1 r1 d: j$ v* d1 a5 w: r3 b; J) O P, Y7 @" y
" M. C1 ^4 r( x! ^
0 F7 f6 S# u' ]; T2 a4 u! ~" A6 S( d3.delete: 删除不需要的数据(表内容)7 o- E% u8 {; A7 `
在数据表中删除指定的数据记录(行). y- a- j7 @% G- g8 C
2 h# x4 K+ W3 b+ M; V
格式:.
+ v$ Z1 t' {, o$ f* {2 w
9 r; r! ] b# B/ p2 V! zdelete from 表名 [where 条件表达式];+ F1 d$ V, L. c5 I, X4 A+ N
* c! n3 C, S7 u' L
例子:
7 q j# p$ Q7 _/ Q* x j' j8 l& _- ]% T) l, @' g5 J# T
delete from 表名 where id=4;
( |, L2 `2 U4 s, \5 Q2 W9 `6 n/ J% `: H. |2 g, ^& Z
4 I' F+ s) a" w# ]$ Y
四、DQL查询数据记录. ^! i# g9 B! g
select
* w( X, z; h: y7 Z& A& n* l% I$ R( R; P8 Q1 c& E7 S
格式:
0 d8 }" q0 V& X/ k$ i }/ c
0 N9 ^( E3 e* x' m- kseleect 字段名1,字段名2[,...] from 表名[where 条件表达式];
" f/ T3 ]9 S, y* k' \2 ?. b' P. r: ?- f; `! k- {! v$ v
例子:
) v/ j$ L( T1 ~9 n+ J8 M0 u/ Kseleect * from 表名;
7 p( o' A. `0 P6 a1 Oseleect id, name from 表名;1 g/ D; ?# P+ m% C
seleect id, name, score from 表名 where id=2;
1 A- T2 m0 A$ J$ D" \, {2 H! W0 ^3 ^4 |5 r
select name from 表名\G 以列表方式竖向显示
- l+ a- k* l/ e8 uselect * from info limit 2; 只显示头3行& `0 J: s7 i" H
select * from info limit 2,3; 显示第3行后的前3行
# d/ T7 p. q7 a4 X# F: Q. d3 R% F" P1 o1 L4 C
2 h$ A0 h: @# f' l: K
& M3 H$ }0 y2 `) X$ j; _! _- y6 j* y+ A1 S: `" \6 B: q
5 [8 y: h7 |/ x' w& l+ I& z. w. \' s) P# k( A6 @
类比excel表格; u( R9 i+ W" u! b
% Q- p" h5 t: g
, h; L# M$ B9 m
* W6 e, h- _$ b" W
四、DCL
) b" b! K& M* f4 l h; h v1.alter 修改表名和表结构(表结构)/ j5 Y8 Z* o: T d
alter table 旧表名 rename 新表名;
1 o0 V3 |" ]# q8 I8 Q/ z y+ r& q% s/ w# }! L [% |
扩展表结构(增加字段)0 V) E* c: S) J H( v
alter table 表名 add address varchar(50) default '地址不详' ;, n) I. F4 h7 s0 T$ r& W. @5 I0 ]! H# s
default ' 地址不详':表示此字段设置默认值为地址不详,可与not null配合使用% l. a. L3 G9 W# T2 v
alter table 表名 add address varchar(50) not null default '地址不详' ;
$ [( _7 }/ B, M& I$ M8 N U0 ?- C# B Z0 R7 M1 L: l" X: [5 @0 P$ E
修改字段(列)名,添加唯一键(唯一性约束)
, j7 {& R8 w7 }& ~- _alter table 表名 change 旧列名 新列名 数据类型 [unique key] ;
. b9 Y+ }: X4 Z2 P, m0 [( uunique key:唯一键(特性:唯一, 但可以为空,空值只允许出现一次). Q- I1 ?8 ~! M* ^
primary key (主键) :唯一且非空# i6 ]1 o3 K6 G# S
alter table 表名 change name user_ name varchar(10) unique key;
" b% {. P( N9 h3 Gchange可修改字段名、数据类型、约束等所有项。5 K7 P/ e) R7 e5 |% ~1 q. m
! ^) e0 l5 i* I- ?0 T8 `
删除字段
" }, K, N0 C7 c. ~3 A2 b格式:
1 T# `8 N. G- ~. I0 V4 f' }5 N" ~alter table 表名 drop 字段名;6 S: D8 |, n" _1 \" x
6 ~4 z; W4 s- Z————————————————7 i2 A7 d& t' M/ p% e" ^
版权声明:本文为CSDN博主「Drw_Dcm」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
6 n5 m" Z+ `: p2 h- w9 k原文链接:https://blog.csdn.net/Drw_Dcm/article/details/126770177
* i% F6 r9 `8 [
, E5 e7 ~; H1 z; {$ b6 ?0 W3 T `
|
zan
|