Mysql数据库基础+备份

1增加字段
(1)增加一个字段
alter table 表名 add 新字段名 类型(长度)
ps:给s表增加一个字段:class_no charƖ)
alter table s add class_no charƖ)
(2)增加多个字段
alter table 表名 add (新字段名1 类型(长度),新字段名2 类型(长度),新字段名2 类型(长度))
alter table s add (class_no1 charƖ),class_no2 charƖ))


2删除字段
(1)删除一个字段  
alter table 表名 drop 字段名 
ps: alter table s drop class_no
(2)删除多个字段
alter table 表名 drop 字段名1,drop 字段名2
ps: alter table s drop class_no1,drop class_no2


3修改字段(修改字段宽度)
alter table 表名 modify column 字段名 类型(修改后的宽度)
ps: alter table s modify column sno charƘ)

4.增加主关键字
alter table 表名 add primary key(字段名)
alter table 表名 add constraint 约束名 primary key(字段名)
ps: alter table t1 add primary key(sno)

5.删除主关键字
alter table 表名 drop primary key
ps: alter table t1 drop primary key

6.增加外键约束
alter table 表名 
add constraint 约束名1 foreign key(外键字段名) references 主表1(主键),
add constraint 约束名2 foreign key(外键字段名) references 主表2(主键),

ps:alter table sc1 
add constraint sc1_fore1 foreign key(sno) references s(sno),
add constraint sc1_fore2 foreign key(cno) references c(cno)


7.删除外键约束
Ƒ)先删除外键
alter table 表名 drop foreign key 外键名
ps: alter table sc1 drop  foreign key sc1_fore1,drop foreign key sc1_fore2


ƒ)再删除索引
alter table 表名 drop index 外键名
ps: alter table cs1 drop index sc1_fore2


8.删除表
drop table 表名
ps: drop table s


*1插入记录
Ƒ)插入一条完整记录
insert into 表名(字段名1.字段名2.....) values(值1,值2,值3......)
//字段名1,字段名2可省略
ps: insert into s values(‘st1’,‘张三1’‘女’,21,‘计算机’)
(2)插入一条部分字段的记录
insert into 表名(字段名1,字段名2,...) values(值1,值2,值3)
//字段名不能省略


插入数据
insert into 表名(字段名1.字段名2) values(值1,值2...)
(1)插入一条完整的记录(包括所有字段)
insert into 表名 values(值1,值2)
insert into s values()
(2插入部分字段)
insert into 表名(字段名) values (值)


修改数据 update set
update 表名 set 字段名=值,字段名=值 where 查询条件


删除记录 delete from
delete from 表名  删除所有表中数据
delete from 表名 where 条件


order by asc/desc limit  /*limit限制*/

select distinct sno from sc  distinct 将结果中的重复行去掉

加别名
select sno as 学号, sname as 姓名 from s as 学生表

%任意0个或多个字符
_任意一个字符

备份表中的数据到外部文件中:
select * from s into OUTFILE ";d:\;s.txt";  
还原外部文件中的表数据:
load data infile ";d:\;s1.txt"; into table s (s表要存在, 结构与s表一致)
也可以用mysqlimport还原一个文件文件中的数据,但使用该命令,首先要在bin目录下,并且还原的目标数据库中必须创建一个与备份数据表结构一样的同名表。 (文本文件名必须要和还原的表名一致)如:
mysqlimport -uroot -p123456 test d:\;s.txt

 
备份数据库中的表:
mysqldump -uroot -p123456 test s > d:\;s.sql   
还原数据库中的表:如还原到test1数据库中,还原的目标表不需要新建。
mysql -uroot -p123456 test1 < d:\;s.sql

备份数据库中指定的多个表
mysqldump -u username -ppassword -t 数据库名 --tables 表名1表名2 表名3 >d:\;s.sql
在还原的时候,必须在目标数据库中新建三个结构和表名1,表名2,表名3一样的表才能将数据恢复。
mysql -uroot -p123456 test1 < d:\;s.sql 

mysql -uroot -p123456 test1 < d:\;s.sql


备份多个数据库:(备份一个数据库时,--databases可以省略)
mysqldump -uroot -p123456 --databases 数据库1 数据库2 >备份文件路径(sql文件)
如:mysqldump -uroot -p123456 --databases test test1>d:\;part.sql
(在目的数据库中,还原的目标表要存在,表名、结构和备份的数据表一致)
备份服务器的所有数据库:
mysqldump -uroot -p123456 --all-databases>备份文件路径(sql文件) 
如:mysqldump -uroot -p123456 --all-databases>d:\;all.sql


还原一次备份的多个数据库:备份文件存放在f:\;mysql\;t.sql,备份时可以把原数据库删除
在bin下执行,登录 root 用户,然后执行: 
mysql>  source f:\;mysql\;t.sql


还原数据库:(也可以将备份的数据库表还原到指定数据库中)
mysql -uroot -p123456 新数据库名 < 数据库备份文件路径  
如:mysql -uroot -p123456 test1 < d:\;test.sql


查询结果存到一个新表中:
create table s1(select * from s where ssex=';男';)  

创建用户
create user ‘用户名’@‘主机名’ identified by ';密码';

PS:create user ';san';@';localhost'; identified by';123456';

授权
grant 权限
on 对象 (or *.*拥有所有的权限)
to 新用户名 with grant option

用户登录
mysql -h hostname|hospip-p port-u username-p

用户授权
grant 对象权限 on 对象名 to用户
grant 系统权限 to 用户

用户收权
revoke 系统权限 from用户
revoke 对象权限 on对象名 from用户

删除用户
drop user 用户名
delece from mysql.user where host=? and user=?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值