数据库的基本操作
admin
2023-05-16 08:02:36
0
数据库的操作笔记:加油!
跳过授权登录:1,关闭mysql;mysqld --skip-grant-tables
重新启动客户端不用密码就可以登录


远程登录数据库:
select user()  查看当前登录用户

建立本机账号
create user 'admin'@'localhost' identified by '123456';

建立远程账号
create user 'admin'@'%' identified by '123456';   任意主机
create user 'admin'@'192.168.20.%' identified by '123456';    固定网段主机

远程登录:mysql -h(IP) -uname -p      192.168.20.35

insert,delete,update,select
用户授权:
级别1:对所有库,下的所有表,下的所有字段

grant select on *.* to 'admin'@'%' identified by '123456';

级别2:对库db,下的所有表,下的所有字段
grant select on db.* to 'admin'@'%' identified by '123456';

级别3;对表table,下的所有字段
grant select on db.table to 'admin'@'%' identified by '123456';

级别4: 对表table 下的字段
grant select(id,name) on db.table to 'admin'@'%' identified by '123456';

flush privileges;       刷新



1 操作文件夹(数据库):
增:
create database database_name charset utf8;
查;
show databases;查看所有的数据库
show create database database_name 查看database_name 创建信息
改:
alter database database_name charset gbk;
删:
drop database database_name;

\c取消命令执行
进入文件夹操作文件(进入库操作表)user database_name



2 操作文件(表):
增:
create table table_name(id int,name char)engine=innodb default utf8;
查:
show tables;(查看所有表)
show create table_name;(查看创建表的信息)
desc table_name;(查看表结构)
改:
alter table table_name add age int;(增加字段)
alter table table_name modify name char(12);
删:
drop table table_name;




3 操作文件的一行行内容(记录):
增:
insert into table_name values(1,'egon'),(2,'alex');
insert into table_name() values();
查:
select * from table_name;    (查看所有)
select name,id from table_name;
改:
update table_name set name='SB' where id=4;
删:
delete from table_name;(整体干掉)
delete from table_name where id =4;(删除ID=4的)
#推荐truncate删除,速度快,
delete from table_name;
truncate table_name;(干掉所有,数据量大的时候删除速度快)



自增ID   (ID递增在上一个的基础上递增)
create table table_name(id int primary key auto_increment,name char);        primary key =not null unique




复制表(所有内容):create table new_table_name select * from table_name;

复制表(不要内容):create table new_table_name select * from table_name where 1=2;(条件为假,内容不拷贝)






作业一:
建库
create database db1 charset utf8;


建表插入字段
create table student(id int primary key auto_increment,name char,sex char,age int,lesson char,clsses char);
create table teacher(id int primary key auto_increment,name char,sex char,age int,profess char,lesson char,clsses char);
create table class(id int primary key auto_increment,name char);
create table lesson(id int primary key auto_increment,name char,price int,period int);

插入数据
学生:
insert into student(name,sex,age,lesson,clsses) values 
('egon1','male',18,'pyhton','six'),
('egon2','male',18,'pyhton','six'),
('egon3','male',18,'pyhton','six');
老师:
insert into teacher(name,sex,age,profess,lesson,clsses) values 
('egon1','male',18,'teachering','pyhton','six'),
('egon2','male',18,'teachering','pyhton','six'),
('egon3','male',18,'teachering','pyhton','six');
班级:
insert into class(name) values
('egon1'),
('egon2'),
('egon3');
课程:
insert into lesson(name,price,period)values
('pyhton0',18000,6),
('pyhton1',18000,6),
('pyhton2',18000,6);



作业二:
创建用户lili,只是开放lili对学生表的查询(select)与修改(update)权限
grant select,update on db1.student to 'lili'@'%' identified by '123456';

flush privileges;
创建用户Jack,只开房Jack对老师表的查询权限
grant select on db1.teacher to 'jack'@'%' identified by '123456';

flush privileges;
创建用户Tom,只允许Tom查询和修改课程表的名字和周期
grant select(name,period),update(name,period) on db1.lesson to 'tom'@'%' identified by '123456';

flush privileges;


相关内容

热门资讯

高三女生高考前确诊罕见病,母亲... 极目新闻记者 张裕5月15日,武汉市第三十九中学成人礼现场,高三学生杨乐乐在母亲搀扶下走过“成人门”...
台中队誓师大会登场,黄国昌:民... 海峡导报综合报道 台湾民众党“台中队”16日亮相,跨足山海屯、市区目前提名6名市议员参选人,白营党主...
“美国稀土联盟跑不起来:日本不... 【文/观察者网 王一】美国想拉盟友重建稀土供应链,却发现队伍不好带。美国彭博社5月15日发长文分析称...
大连爱碧克取得管口自动辊凸台装... 国家知识产权局信息显示,大连爱碧克空调配件有限公司取得一项名为“一种管口自动辊凸台装置”的专利,授权...
免费开放!机器人足球赛等趣味科... 5月16日至17日,中国科学院第22届公众科学日在全国一百余家高校科研院所举行,并面向社会免费开放。...
“智云上海,智惠全城”中国电信... 5月15日,2026年中国电信第六届科技节上海站正式启幕。活动主论坛以“智云上海,智惠全城”为主题,...
孙燕姿演唱会中突发不适,多名工... 5月15日晚,孙燕姿在台北举行演唱会,表演途中她腿部突然有些不适,疑似抽筋。但她仍坚持唱完当前曲目,...
燃气热水器通电显示屏不亮 1、可能是燃气热水器的显示屏连接线发生断路的情况。2、可能是家庭内的电压出现大幅度波动,或者电压过低...
长虹电视机开机后显示屏不亮是什... 果液晶电视出现这种情况的话,很有可能是由于电视内部排线接触不好造成的。因为在液晶电视内部,各个援建在...
墙面扣板材料有哪几种类型 现代墙面装饰材料种类众多,不局限油漆涂料,市面上还有各种扣板材料。那么墙面扣板材料有哪几种呢??马上...