文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

msyql 数据库

2024-04-02 19:55

关注

### 忘记密码

vim /etc/my.cf

在[mysqld]中添加 skip-grant-tables

重启Mysql

现在可以直接进入mysql,改掉root密码

执行以下命令

USE mysql;

UPDATE user SET Password = password('新密码') WHERE User = 'root';更新user表中root密码

flush privileges;

删掉/etc/my.cf中添加的 skip-grant-tables

重启mysql 就OK了


mysql具体操作

  1. 登录 

mysql -h 登录主机 -u用户名 -p密码

2.创建一个数据库

create database 数据库名 character set gbk; 

选择要使用的数据库 : use 数据库名;

也可以在登录时直接选择:mysql -D 数据库名 -uroot -p

3.创建数据库表

create table 表名 (列声明);

以创建成绩表为例,内容为学号(id)、姓名(name)、性别(sex)、成绩(grade):

create table student (

  id int unsigned not null auto_increment primary key,

  name char(8) not null,

  sex char(4) not null,

  grade int unsigned  null default "absent"

);

对于一些较长的语句,可以通过任意文本编辑器将语句写好保存为createtable.sql,通过命令提示符下的文件重定向执行执行该脚本。

mysql -D 数据库名 -uroot -p < createtable.sql

语句解释:

括号内声明了4列内容, id、name、sex、grade为每列的名称, 后面跟的是数据类型描述, 列与列的描述之间用逗号(,)隔开;

            int指定该列的类型为int(范围为-83888608到83888607),在后面又有unsigned加以修饰,表示该类型为无符号类型,此时该列的取值为0到16777215;

            not null 表示该列值不能为空,必须填,如果不指定该属性,默认可为空;

            auto_increment 需在整数列中使用, 其作用是在插入数据时若该列为 NULL, MySQL将自动产生一个比现存值更大的唯一标识符值。在每张表中仅能有一个这样的值且所在列必须为索引列。

    primary key 表示该列是表的主键, 本列的值必须唯一, MySQL将自动索引该列。

    char(8)表示字符长度为8,tinyint取值范围是-127到128 加上unsigned就是0到255

用show tables;就可以查看记得表了

4.向表中插入数据

insert into student values(值1,值2,值3,值4...)

有时只需要插入部分数据 insert into student (列名1,列名2,列名3) values(值1,值2,值3)

5.查询表中数据

select 列名称 from 表名 [WHERE 查询条件]

例:查询所有人名字

select name from student;

查询所有人学号和姓名

select id,name from student;

查询所有内容

select * from student;

按条件查询

= < > !=  is[not]null in like

例:查询所有女生信息

select * from student where sex = '女’;


查询成绩在60分以上的人

select * from student where grade > 60;


查询姓王的人

select * from student name like '%王%'


查询id小于10且成绩大于60的人

select * from stutdent where id<10 and grade>60;


6.更新表中的数据

update 表名 set 列名=新值 where 条件;

例:

将id为10的成绩改成70

update student set grade=70 where id=10;


将姓名为吕江涛的id改为10,grade改为60

update student set id=10,grade=60 where name='吕江涛’;

7.删除表中数据

delete from 表名 where 条件

例:

删除id=2的行:

delete from student where id=2;


删除成绩<30的数据:

delete from student where grade<30;


删除表中所有数据:

delete from student;


8.创建后表的修改

添加列

alter table 表名 add 列名称 [after 插入位置];

例:

在表后面追加列地址address:

 alter table student add address char(60);


在名为grade的后面追加tel:

alter table student add tel char(13) after grade;


修改列

alter table student change 列名称 新列名称 新数据类型

例:

将id列改为idnum

alter table student change id idnum int unsigned auto_increment primary key;


将name数据类型改为char(16)

alter table student change name name char(16) not null;


删除列

alter table 表名 drop 列名称

删除tel列

alter table student drop tel;


重命名表

alter table student rename students;


删除整张表

drop table 表名;


删除整个数据库

drop datebase 数据库名;


修改用户密码

mysqladmin -uroot -p password 新密码


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯