溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

msyql 數(shù)據(jù)庫(kù)

發(fā)布時(shí)間:2020-07-12 10:18:02 來源:網(wǎng)絡(luò) 閱讀:372 作者:大魔王哈 欄目:數(shù)據(jù)庫(kù)

### 忘記密碼

vim /etc/my.cf

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

重啟Mysql

現(xiàn)在可以直接進(jìn)入mysql,改掉root密碼

執(zhí)行以下命令

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 登錄主機(jī) -u用戶名 -p密碼

2.創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)

create database 數(shù)據(jù)庫(kù)名 character set gbk; 

選擇要使用的數(shù)據(jù)庫(kù) : use 數(shù)據(jù)庫(kù)名;

也可以在登錄時(shí)直接選擇:mysql -D 數(shù)據(jù)庫(kù)名 -uroot -p

3.創(chuàng)建數(shù)據(jù)庫(kù)表

create table 表名 (列聲明);

以創(chuàng)建成績(jī)表為例,內(nèi)容為學(xué)號(hào)(id)、姓名(name)、性別(sex)、成績(jī)(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"

);

對(duì)于一些較長(zhǎng)的語句,可以通過任意文本編輯器將語句寫好保存為createtable.sql,通過命令提示符下的文件重定向執(zhí)行執(zhí)行該腳本。

mysql -D 數(shù)據(jù)庫(kù)名 -uroot -p < createtable.sql

語句解釋:

括號(hào)內(nèi)聲明了4列內(nèi)容, id、name、sex、grade為每列的名稱, 后面跟的是數(shù)據(jù)類型描述, 列與列的描述之間用逗號(hào)(,)隔開;

            int指定該列的類型為int(范圍為-83888608到83888607),在后面又有unsigned加以修飾,表示該類型為無符號(hào)類型,此時(shí)該列的取值為0到16777215;

            not null 表示該列值不能為空,必須填,如果不指定該屬性,默認(rèn)可為空;

            auto_increment 需在整數(shù)列中使用, 其作用是在插入數(shù)據(jù)時(shí)若該列為 NULL, MySQL將自動(dòng)產(chǎn)生一個(gè)比現(xiàn)存值更大的唯一標(biāo)識(shí)符值。在每張表中僅能有一個(gè)這樣的值且所在列必須為索引列。

    primary key 表示該列是表的主鍵, 本列的值必須唯一, MySQL將自動(dòng)索引該列。

    char(8)表示字符長(zhǎng)度為8,tinyint取值范圍是-127到128 加上unsigned就是0到255

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

4.向表中插入數(shù)據(jù)

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

有時(shí)只需要插入部分?jǐn)?shù)據(jù) insert into student (列名1,列名2,列名3) values(值1,值2,值3)

5.查詢表中數(shù)據(jù)

select 列名稱 from 表名 [WHERE 查詢條件]

例:查詢所有人名字

select name from student;

查詢所有人學(xué)號(hào)和姓名

select id,name from student;

查詢所有內(nèi)容

select * from student;

按條件查詢

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

例:查詢所有女生信息

select * from student where sex = '女’;


查詢成績(jī)?cè)?0分以上的人

select * from student where grade > 60;


查詢姓王的人

select * from student name like '%王%'


查詢id小于10且成績(jī)大于60的人

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


6.更新表中的數(shù)據(jù)

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

例:

將id為10的成績(jī)改成70

update student set grade=70 where id=10;


將姓名為呂江濤的id改為10,grade改為60

update student set id=10,grade=60 where name='呂江濤’;

7.刪除表中數(shù)據(jù)

delete from 表名 where 條件

例:

刪除id=2的行:

delete from student where id=2;


刪除成績(jī)<30的數(shù)據(jù):

delete from student where grade<30;


刪除表中所有數(shù)據(jù):

delete from student;


8.創(chuàng)建后表的修改

添加列

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 列名稱 新列名稱 新數(shù)據(jù)類型

例:

將id列改為idnum

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


將name數(shù)據(jù)類型改為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 表名;


刪除整個(gè)數(shù)據(jù)庫(kù)

drop datebase 數(shù)據(jù)庫(kù)名;


修改用戶密碼

mysqladmin -uroot -p password 新密碼


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI