MySQLデータベーステーブルの追加、削除、変更、およびクエリ
1.yumのインストール
yum -y install mysql mysql-server centos6
yum -y install mariadb mariadb-server centos7
启动mysql centos6
service mysqld start
chkconfig mysqld on
启动mariadb centos7
service mysqld start
chkconfig mysqld on
2.MySQLにログインします
mysql -ujack -p123 -h 192.168.189.171 -P 3306
选项:
-u 指定登录用户名
-p 登录的密码
-h 链接的mysql主机ip地址
-P 链接数据库的端口
# 默认用户为root,mysql5.6之前密码为空
3.データベースとテーブルを作成します
3.1データベースにあるデータベースを確認する
show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| test |
+--------------------+
3 rows in set (0.00 sec)
3.2データベースを作成する
create database db;
Query OK, 1 row affected (0.00 sec)\
1.データベースに入る
use mysql
2.表を表示します
show tables;
3.テーブルを作成します
语句: create table 表名(字段1 字段类型 约束条件,字段2 字段类型 约束条件);
create table stu(ID int(5),NAME varchar(10));
4.テーブル構造を表示します
desc stu;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| ID | int(5) | YES | | NULL | |
| NAME | varchar(10) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
5.データをテーブルに挿入します
insert into stu values(1,"tom");
查询一下
select * from stu;
+------+------+
| ID | NAME |
+------+------+
| 1 | tom |
+------+------+
4.デフォルトの文字エンコーディングを変更します
修改mysql 5.1版本 默认编码字符为UTF8
修改配置文件
# vim /etc/my.cnf
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
systemctl restart mariadb
MariaDB [(none)]> show variables like '%char%';
5.チェック
説明ビューテーブルの構造
desc stu;
+--------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+----------------+
| 学号 | int(8) | NO | PRI | NULL | auto_increment |
| 姓名 | varchar(10) | NO | | NULL | |
| 性别 | varchar(5) | YES | | NULL | |
+--------+-------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)
テーブル名[where条件]からレコード選択フィールドを照会します。
例子:
查看“学号”为“2”,的学生的“姓名”和“性别”
select 姓名,性别 from stu where 学号='2';
插入三条测试数据
insert into stu values(3,'王五','女','15');
insert into stu values(4,'王二','男','25');
insert into stu values(5,'张六','女','17');
1.查询年龄大于等于18岁的学生信息
select * from stu where 年龄 >= 18;
2.查询年龄大于18岁的女生的信息
select * from stu where 性别='女' and 年龄 >= 18;
3.查询年龄在17到20岁之间的信息
select * from stu where age between 17 to 20; 4.Zhangという名前
のクラスメートの情報を照会する
select * from stu where 姓名 like '张%';
5.信息按年龄进行降序显示
select * from stu order by 年龄 DESC;
6.查询班级男生和女生各多少个
select 性别,count(学号) from stu group by 性别;
7.查询班级女生有多少个
select 性别,count(学号) from stu group by 性别 having 性别="女";
8.查询年龄最大的
select 姓名,max(年龄) from stu;
年龄最小的
select 姓名,min(年龄) from stu;
平均年龄
select avg(年龄) from stu;
年龄总和
select sum(年龄) from stu;
9.查询年龄最小的学生的信息
select * from stu where 年龄 = (select min(年龄) from stu);
10.查询第3行到第5行
select * from stu where 学号 limit 2,3;
6.変更
フィールドを追加します。
alter table 表名 add 新字段 字段类型 [after 字段 ];
学生番号の後に大学のフィールドを追加します
alter table stu add 学院 varchar(10) after 学号;
フィールドを削除します。
alter table 表名 drop 字段名;
「大学」フィールドを削除します
alter table stu drop 学院;
フィールドの種類を変更する
alter table 表名 modify 字段名 新的类型 新的约束条件;
「gender」フィールドタイプをchar(2)に変更します
alter table stu modify 性别 char(2) not null;
フィールド名を変更する
alter table stu change 旧字段名 新字段名 字段类型;
「名前」フィールドを「名前」に変更します
alter table stu change 姓名 NAME char(10) not null;
テーブル名を変更します。
alter table 表名 rename [to] 新表名;
テーブル名stuをstudentに変更します
alter table stu rename student;
rename table 旧表名 to 新表名;
テーブル名studentをstuに変更します
rename table student to stu;
7.削除
レコードの
削除:すべてのレコードを削除します
delete from stu;
条件に従ってレコードを削除し、条件を満たすレコードを削除し、満たさないレコードは削除しないでください。
「WangWu」という名前のレコードを削除してください。
delete from stu where 姓名="王五";
レコードの内容を変更します。
蒋性别这一列的值全部改为男
update stu set 性别="男";
蒋李四的"性别"改为"女"
update stu set 性别="女" where 姓名="李四";
8.増やす
テーブルのコピー:
テーブル構造のみをコピーします
create table 表名 like 旧表名;
テーブル構造とテーブルコンテンツをコピーする
create table 表名 select * from 旧表名;
レコードを追加
します:すべての列を挿入します:
insert into 表名 values(值1,值2,....);
部分的な列の挿入:
insert into 表名(字段1,字段2...) values(值1,值2,....);