Rumah  >  Artikel  >  pangkalan data  >  Pengenalan terperinci kepada perintah biasa asas MySQL

Pengenalan terperinci kepada perintah biasa asas MySQL

WBOY
WBOYke hadapan
2021-12-23 18:37:142853semak imbas

Artikel ini membawakan anda ringkasan arahan asas MySQL Selain cara menyambung ke pangkalan data dan menukar kata laluan, terdapat juga beberapa arahan yang biasa digunakan saya harap ia akan membantu anda.

Pengenalan terperinci kepada perintah biasa asas MySQL

1 Sambung ke MySQL

Format: alamat hos mysql -h -u nama pengguna -p kata laluan pengguna

1 Sambung ke MySQ pada mesin ini:

Mula-mula buka tetingkap cmd, masukkan mysql -uroot -p, dan kemudian masukkan konsol MySQL dengan ruang Gesaan MySQL ialah: mysql>.
mysql -uroot -p /*如果刚安装好MySQL,root是没有密码的*/

2. Sambung ke MySQL pada hos jauh:

Anggapkan bahawa IP hos jauh ialah: 192.168. 206.100, pengguna Nama adalah akar dan kata laluan ialah 12345678.
mysql> mysql -h192.168.206.100 -uroot -p12345678; /*u与root可以不加空格*/

3 Keluar dari arahan MySQL: keluar atau keluar (Masuk):

<.>
mysql> exit/quit;

2. MySQL--Tukar kata laluan

Format: mysqladmin -u nama pengguna -p kata laluan lama kata laluan baru

1 Apabila kata laluan akar kosong, tetapkan kata laluan akar:

mysql> mysqladmin -uroot newpassword;   -- 因为开始时root没有密码,所以-p旧密码 可以省略

2 Gunakan arahan sqladmin untuk menukar kata laluan : <.>

mysql> mysqladmin -uroot -p123456 password 12345678;

3 Gunakan arahan kata laluan yang ditetapkan untuk menukar kata laluan:

mysql> set password for 用户名@localhost = password('新密码');

4 Terlupa Dalam kes kata laluan root:

      ①关闭正在运行的MySQL服务。
      ②打开DOS窗口,转到mysql\bin目录。
      ③输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。
      ④再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),输入mysql回车,如果成功,将出现MySQL提示符 >。
      ⑤连接权限数据库: use mysql;
      ⑥改密码:update user set password=password("新密码") where user="root";(别忘了最后加分号) 。
      ⑦刷新权限(必须步骤):flush privileges; 。
      ⑧退出mysql  quit;
mysqld --skip-grant-tables   
mysql> use mysql;   --连接权限数据库
mysql> update user set password=password("新密码") where user="root";   -- 改密码
mysql> flush privileges;    -- 刷新权限
mysql> quit;    -- 退出mysql

三、MySQL--常用命令

1、创建数据库(Create)

mysql> create database db_name;  -- 创建数据库
mysql> show databases;           -- 显示所有的数据库
mysql> drop database db_name;    -- 删除数据库
mysql> use db_name;              -- 选择数据库
mysql> create table tb_name (字段名 varchar(20), 字段名 char(1));   -- 创建数据表模板
mysql> show tables;              -- 显示数据表
mysql> desc tb_name;            -- 显示表结构
mysql> drop table tb_name;      -- 删除表

    例如:

/*创建学生表*/
create table Student(
     Sno char(10) primary key,
     Sname char(20) unique,
     Ssex char(2),
     Sage smallint,
     Sdept char(20)
);

2、插入数据(Insert)

     insert into 语句用于向表格中插入新的行:
/*第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:*/
mysql> insert into tb_name values (value1,value2,value3,...);
/*第二种形式需要指定列名及被插入的值:*/
mysql> insert into tb_name (column1,column2,column3,...) values (value1,value2,value3,...);

     例如:

/*插入数据*/

mysql> insert into Student values ( 20180001,张三,男,20,CS);

mysql> insert into Student values ( 20180002,李四,男,19,CS);

mysql> insert into Student (Sno,Sname,Ssex,Sage,Sdept) values ( 20180003,王五,男,18,MA);

mysql> insert into Student (Sno,Sname,Ssex,Sage,Sdept) values ( 20180004,赵六,男,20,IS);

3、查询数据(Select)

Selain melihat maklumat tentang jadual dan paparan dalam pangkalan data, pernyataan pilih juga boleh melihat maklumat sistem SQL Server, menyalin dan mencipta jadual data. Fungsi pertanyaannya berkuasa dan ia adalah pernyataan jiwa bahasa SQL dan pernyataan yang paling kerap digunakan dalam SQL.
Pernyataan pilihan asas:
Pernyataan pilih asas boleh diuraikan Terbahagi kepada tiga bahagian: data apa yang hendak dicari (pilih), dari mana hendak dicari (dari), dan apakah syarat carian (di mana).
Format umum pernyataan pilih adalah seperti berikut:

🎜> [ke dalam nama jadual baharu]
daripada nama jadual atau lihat nama
[kumpulan mengikut ]
🎜>                                                                                                                 mengikut [ASC|DESC]]


(1) Pertanyaan lajur yang dinyatakan

 1. Tanya semua lajur dalam jadual

Apabila tanda * digunakan dalam kedudukan lajur yang dinyatakan dalam penyata pilih, ini bermakna semua lajur jadual pertanyaan.
Templat:
pilih * daripada tb_name

                                                                                                                                        s hendaklah dipisahkan dengan koma. Templat:

pilih tb_name.
,
Tentukan pengepala lajur dalam hasil pertanyaan Difahami. Apabila menentukan tajuk lajur, anda boleh menggunakan klausa AS selepas nama lajur anda juga boleh menggunakan: alias lajur = borang menentukan pengepala lajur.
Format klausa AS ialah: nama lajur atau ungkapan pengiraan [AS] tajuk lajur

Templat:

pilih
sebagai pengepala lajur 1, sebagai pengepala lajur 2,
sebagai pengepala lajur 3
daripada bt_name;

4. Tanya lajur yang dikira (iaitu, nilai ungkapan) Apabila menggunakan pilih untuk menanyakan lajur, bukan sahaja nilai asal lajur boleh digunakan secara langsung sebagai hasil, tetapi nilai yang diperoleh selepas mengira nilai lajur juga boleh digunakan sebagai hasil pertanyaan, iaitu klausa pilih boleh menanyakan nilai ungkapan , Ungkapan boleh terdiri daripada nama lajur, pemalar dan pengendali aritmetik.
Hasil pertanyaan mengira "Bukan Senarai", yang biasanya diperlukan untuk menambah tajuk pada lajur pengiraan.

Antaranya: Operator yang boleh digunakan dalam ungkapan termasuk: tambah, pengurangan-, pendaraban*, bahagi/, mengambil baki%

Templat : pilih , , tajuk lajur = * n daripada tb_name;

(2) Pilih baris: Pilih beberapa atau semua baris dalam jadual sebagai hasil pertanyaan

Format:

pilih [semua|berbeza] [atas n[peratus]] 🎜>daripada nama jadual
 
1. Hapuskan hasil pertanyaan Salin baris dalam

Untuk pangkalan data hubungan, setiap baris dalam jadual mestilah berbeza (iaitu, tiada baris pendua) . Walau bagaimanapun, jika anda memilih hanya lajur tertentu semasa menanyakan jadual, baris pendua mungkin muncul dalam hasil pertanyaan.

Gunakan kata kunci yang berbeza dalam penyataan pilih untuk menghapuskan baris pendua dalam set hasil,
Templat:
pilih [,,...] daripada tb_name ;
                                                                                                                               >

Gunakan pilihan teratas untuk mengehadkan bilangan baris yang dikembalikan dalam hasil pertanyaan, iaitu mengembalikan bilangan rekod yang ditentukan. Di mana: n ialah integer positif, menunjukkan bahawa n baris pertama set hasil pertanyaan dikembalikan jika kata kunci peratus disertakan, ini bermakna n pertama % daripada baris set hasil dikembalikan.

Templat
:
pilih atas n daripada tb_name; /*Pertanyaan Data n teratas*/
 Templat: pilih n peratus teratas daripada nama_tb; /* Pertanyaan data n% tb_name*/

(3) Tanya baris yang memenuhi syarat: Gunakan klausa where untuk melaksanakan pertanyaan bersyarat

Ia dilaksanakan melalui klausa where, yang mesti mengikut klausa From.
Formatnya ialah: pilih [semua|berbeza] [n[peratus]] daripada nama jadual di mana < ;Syarat>;
Penjelasan: Operator atau ungkapan berikut boleh digunakan dalam keadaan pertanyaan:
Operator                                                                                                                                                                                                                                                                                                                            ; ,! & Lt; Julat aritmetik berjalan ialah ... dan, bukan antara ... dan

hitungkan operator dalam, bukan dalam

                                                                                                                                                                                                              Operator pemadanan kabur seperti, bukan seperti Operator logik dan, atau, bukan


1. Gunakan perbandingan pengendali:
Templat

pilih * daripada tb_name di mana >= n ;

                                                                                                                                                                                                                     Satu: antara...dan bukan antara...dan.

Formatnya ialah: pilih * daripada tb_name di mana [bukan] antara dan ;
Di mana: apa yang mengikuti antara kata kunci ialah had bawah julat (iaitu nilai rendah), dan apa yang mengikuti dan kata kunci ialah had atas julat (iaitu nilai tinggi)
Digunakan untuk mencari baris yang nilai medannya berada dalam (atau tidak berada dalam) julat yang ditentukan.

 
3. Gunakan penghitungan:

Gunakan kata kunci dalam untuk menentukan set nilai Semua nilai yang mungkin disenaraikan dalam set Apabila nilai ungkapan sepadan dengan mana-mana elemen dalam set, benar dikembalikan, jika tidak palsu. Templat

pilih * daripada tb_name di mana [bukan] dalam (nilai 1, nilai 2,..., Nilai n );
 4 Gunakan kad bebas untuk pertanyaan kabur:

Anda boleh menggunakan klausa suka untuk melakukan pertanyaan padanan kabur pada rentetan Klausa suka akan mengembalikan nilai logik (benar atau Salah). Format klausa seperti: pilih * daripada tb_name di mana [tidak] suka ;

Maksudnya ialah: Cari rekod yang nilai medan yang ditentukan sepadan dengan rentetan yang sepadan. Rentetan padanan biasanya mengandungi aksara kad bebas % dan _ (garis bawah). Di mana:
%: mewakili rentetan dengan sebarang panjang (termasuk 0)

5.

Apabila tidak digunakan, jika nilai ungkapan adalah batal, benar dikembalikan, jika tidak palsu dikembalikan apabila tidak digunakan, hasilnya adalah sebaliknya.

Templatpilih * daripada tb_name di manae ialah [bukan] batal;

                                                                                                                                                                                            (Dan: kedua-dua syarat mesti dipenuhi) dan atau (atau: salah satu syarat dipenuhi) boleh digunakan untuk menyertai berbilang syarat pertanyaan. dan mempunyai keutamaan yang lebih tinggi daripada atau, tetapi keutamaan boleh diubah jika kurungan digunakan. Templat

pilih * daripada tb_name di manae = 'volume' dan n;
(4) Isih hasil pertanyaan

Susunan mengikut klausa boleh digunakan untuk menyusun keputusan pertanyaan dalam tertib menaik (ASC) atau tertib menurun (DESC) mengikut nilai satu atau lebih medan (atau nilai ungkapan lalainya menaik). pesanan.

Format:

susun mengikut {ungkapan isih [ASC|DESC]}[,...n];

Di mana: isihan ungkapan The formula boleh menjadi medan tunggal, ungkapan yang terdiri daripada medan, fungsi, pemalar, dsb., atau integer positif.
Templat: pilih * daripada tb_name pesan mengikut

(5) Gunakan fungsi statistik: juga dikenali sebagai fungsi set, fungsi agregat
Apabila mendapatkan semula jadual, selalunya perlu untuk mengira atau mengira keputusan T-SQL menyediakan beberapa fungsi statistik (juga dipanggil fungsi set atau fungsi agregat) untuk meningkatkan fungsi perolehan. Fungsi statistik digunakan untuk mengira data dalam jadual Fungsi ini digunakan untuk mengira set data dan mengembalikan satu nilai.

Jadual fungsi statistik yang biasa digunakan

🎜> AVG Cari nilai purata kiraan Cari bilangan rekod dan kembalikan int taip integer
maks Cari nilai maksimum
Cari nilai minimum Nilai min Jumlah Qiuhe

1. SUM dan AVG

Fungsi: Cari ungkapan berangka yang ditentukan Jumlah atau purata bagi.
Templat:
pilih purata() sebagai purata,jumlah() sebagai jumlah daripada tb_name di mana ='rentetan';

🎜> 2. Maks dan Min

Fungsi: Cari nilai maksimum atau minimum bagi ungkapan yang ditentukan.

Templat:
pilih maks() sebagai nilai maksimum, min() sebagai nilai minimum
daripada tb_name;
   

3. > Fungsi ini mempunyai dua format: count(*) dan count([semua]|[distinct] nama medan). beberapa nilai, gunakan count(nama medan yang berbeza).                                                                                         Templat:

PILIH Kiraan (*) SEBAGAI Jumlah Daripada tb_name;
).bilangan([semua]| [distinct] field name) Fungsi: Kira bilangan rekod dengan nilai medan tertentu yang tidak kosong Jenis data medan boleh berupa teks, imej, nteks, pengecam unik apa-apa jenis lain daripada .
Templat:
pilih kiraan() sebagai jumlah nombor daripada tb_name;
(6) Himpunkan hasil pertanyaan

Kumpulan mengikut klausa digunakan untuk mengumpulkan jadual hasil pertanyaan mengikut lajur tertentu atau berbilang lajur Nilai lajur dikumpulkan, dan lajur yang mempunyai nilai lajur yang sama dikumpulkan ke dalam satu kumpulan, dan satu hasil dikira untuk setiap kumpulan. Klausa ini sering digunakan bersama dengan fungsi statistik untuk melaksanakan statistik kumpulan. Formatnya ialah: kumpulan mengikut kumpulan medan[,...n][mempunyai ]; >

1. Selepas menggunakan kumpulan mengikut klausa
Senarai PILIH hanya boleh termasuk: kumpulan Kumpulan itu medan dan fungsi statistik yang dinyatakan dalam klausa mengikut.
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  Klausa digunakan bersama untuk menapis hasil terkumpul (syarat penapisan selalunya mengandungi fungsi statistik).
3
Syarat yang tidak termasuk fungsi statistik semasa mengumpulkan pertanyaan
Biasanya menggunakan. di mana Klausa; jika syarat mengandungi fungsi statistik, hanya klausa yang boleh digunakan.
Templat:
pilih ,kira(*) sebagai pengepala lajur
daripada tb_name di mana < ;=Kumpulan 'rentetan' mengikut ;
4 Ubah suai data (Kemas kini)

Pernyataan Kemas Kini digunakan untuk mengubah suai data dalam jadual. Format:

kemas kini tb_name set nama lajur = nilai baharu dengan nama lajur = nilai tertentu; 5. Padamkan data (Padam)

Format:
padam daripada tb_name di mana nama lajur = nilai;

 
Padam semua baris

Anda boleh melakukan ini tanpa memadamkan jadual Padam semua baris di bawah. Ini bermakna struktur, atribut dan indeks jadual adalah lengkap:

Format:
padam * daripada tb_name atau padam daripada tb_name;
4 MySQL -- alter command

alter add

digunakan untuk menambah medan pada jadual. ubah tambah

Format arahan: ubah jadual tambah nama jadual
medan Taip Lain-lain; > Sebagai contoh, medan pastest >, jenisnya ialah int(4), nilai lalai ialah 0
:
mysql> alter table MyClass add passtest int(4) default '0';
 添加两个字段  
mysql> alter table Person add age int,add address varchar(11);
 删除两个字段
mysql> alter table Person drop column age,drop column address;
 修改字段的注释
mysql> alter table `student` modify column `id` comment '学号';
 1) 加索引
      mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);

 mysql> alter table employee add index emp_name (name);
 2) 加主关键字的索引
      mysql> alter table 表名 add primary key (字段名);

mysql> alter table employee add primary key(id);
 3) 加唯一限制条件的索引
      mysql> alter table 表名 add unique 索引名 (字段名);

 mysql> alter table employee add unique emp_name2(cardnumber);
 4) 删除某个索引
      mysql> alter table 表名 drop index 索引名;

mysql>alter table employee drop index emp_name;
 5) 增加字段
mysql> ALTER TABLE table_name ADD field_name field_type;
 6) 修改原字段名称及类型
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
 7) 删除字段
MySQL ALTER TABLE table_name DROP field_name;

五、MySQL -- 应用

学生-课程数据库

 学生表:Student(Sno,Sname,Ssex,Sage,Sdept)
 课程表:Course(Cno,Cname,Cpno,Ccredit)
 学生选课表:SC(SnoCno,Grade)
 关系的主码加下划线表示。各个表中的数据示例如图所示:

Student表

学号

Sno

姓名

Sname

性别

Ssex

年龄

Sage

所在系

Sdept

20180001 张三 20 CS
20180002 李四 19 CS
20180003 王五 18 MA
20180004 赵六 20 IS
Course表

课程号

Cno

课程名

Cname

先修课

Cpno

学分

Ccredit

1 数据库 5 4
2 数学   2
3 信息系统 1 4
4 操作系统 6 3
5 数据结构 7 4
6 数据处理   2
7 PASCAL语言 6 4
SC表

学号

Sno

课程号

Cno

成绩

Grade

20180001

1 92
20180001 2 85
20180001 3 88
20180002 2 90
20180002 3 80

 建立一个“学生”表Student:

create table Student(
  Sno char(9) peimary key, /*列级完整性约束条件,Sno是主码*/
  Sname char(20) unique, /* Sname取唯一值*/
  Ssex char(2),
  Sage smallint,
  Sdept char(20)
);
 建立一个“课程”表Course:
create table Course(
  Sno char(4) primary key, /*列级完整性约束条件,Cname不能取空值*/
  Sname char(40) not null, /*Cpno的含义是先修课*/
  Cpno char(4)
  Ccredit smallint,
  foreign key (Cpnoo) references Course(Cno) /*表级完整性约束条件,Cpno是外码,被参照表是Course,被参照列是Cno*/
);
 建立学生选课表SC:
create table SC(
  Sno char(9),
  Cno char(4),
  Grade smallint,
  frimary key (Sno,Cno), /*主码由两个属性构成,必须作为表级完整性进行定义*/
  foreign key (Sno) references Student(Sno), /*表级完整性约束条件,Sno是外码,被参照表是Student*/
  foreign key (Cno) references Course(Cno)   /*表级完整性约束条件,Cno是外码,被参照表是Course */
);

推荐学习:mysql视频教程

Atas ialah kandungan terperinci Pengenalan terperinci kepada perintah biasa asas MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam