1.创建表Teacher:create table Teacher( teaid int not null, teaname varcha
create table Teacher(
teaid int not null,
teaname varchar(100),
age int,
sex enum('M', 'F'),
phone int);
注意:
char 和varchar区别:
‘123’ ------>varchar(10) # 3位
'123 ' -------> char(10) # 10位 不足10位空格补全
查看新建的Teacher表:
MariaDB [(none)]> use test;
Database changed
MariaDB [test]> show tables;
+----------------+
| Tables_in_test |
+----------------+
| Teacher |
+----------------+
1 row in set (0.00 sec)
grant all privileges on *.* to 'fxq'@'%' identified by '123456' with grant option;
insert into Teacher(teaid,teaname,age) values(1,'feng',20);
insert into Teater(teaid,teaname,age) values(101,'fengxiaoqing',20),(102,'zhangsan',30),(103,'wangwu',40);
MariaDB [test]> select * from Teacher;
+-------+--------------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+------------+
| 1 | feng | 20 | NULL | NULL |
| 2 | wang | 20 | M | 2147483647 |
| 2 | wang | 20 | M | 2147483647 |
| 3 | zhang | 30 | M | 2147483647 |
| 4 | li | 40 | M | 2147483647 |
| 5 | zhao | 50 | F | 2147483647 |
| 5 | zhao | 50 | F | 1821113120 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
| 103 | wangwu | 40 | NULL | NULL |
+-------+--------------+------+------+------------+
10 rows in set (0.00 sec)
MariaDB [test]>
select * from Teacher where teaId > 4;
select * from Teacher where teaId in(1,4,101);
select * from Teacher where teaId like ('%1%');
MariaDB [test]> select * from Teacher where teaId > 3;
+-------+--------------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+------------+
| 4 | li | 40 | M | 2147483647 |
| 5 | zhao | 50 | F | 2147483647 |
| 5 | zhao | 50 | F | 1821113120 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
+-------+--------------+------+------+------------+
5 rows in set (0.00 sec)
MariaDB [test]> select * from Teacher where teaId in(1,4,101);
+-------+--------------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+------------+
| 1 | feng | 20 | NULL | 188188188 |
| 4 | li | 40 | M | 2147483647 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
+-------+--------------+------+------+------------+
3 rows in set (0.01 sec)
MariaDB [test]> select * from Teacher where teaId like ('%1%');
+-------+--------------+------+------+-----------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+-----------+
| 1 | feng | 20 | NULL | 188188188 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
+-------+--------------+------+------+-----------+
3 rows in set (0.00 sec)
MariaDB [test]>
MariaDB [test]>
select * from Teacher group by teaname having count(*) >1;
MariaDB [test]> select * from Teacher;
+-------+--------------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+------------+
| 1 | feng | 20 | NULL | 188188188 |
| 2 | wang | 20 | M | 2147483647 |
| 2 | wang | 20 | M | 2147483647 |
| 3 | zhang | 30 | M | 2147483647 |
| 4 | li | 40 | M | 2147483647 |
| 5 | zhao | 50 | F | 2147483647 |
| 5 | zhao | 50 | F | 1821113120 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
+-------+--------------+------+------+------------+
9 rows in set (0.01 sec)
MariaDB [test]> select * from Teacher group by teaname having count(*) >1;
+-------+---------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+---------+------+------+------------+
| 2 | wang | 20 | M | 2147483647 |
| 5 | zhao | 50 | F | 2147483647 |
+-------+---------+------+------+------------+
2 rows in set (0.00 sec)
MariaDB [test]>
select * from a,c where a.id = c.组id
show create Teacher\G;
desc Teacher;
MariaDB [test]> show create table Teacher \G;
*************************** 1. row ***************************
Table: Teacher
Create Table: CREATE TABLE `Teacher` (
`teaId` int(11) NOT NULL,
`teaname` varchar(100) DEFAULT NULL,
`age` int(11) DEFAULT NULL,
`sex` enum('M','F') DEFAULT NULL,
`phone` int(11) DEFAULT NULL,
KEY `test_Teacher_teaId_teaname` (`teaId`,`teaname`)
) ENGINE=InnoDB DEFAULT CHARSET=latin11 row in set (0.00 sec)
ERROR: No query specified
MariaDB [test]>
MariaDB [test]> desc Teacher;
+---------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+---------------+------+-----+---------+-------+
| teaId | int(11) | NO | MUL | NULL | |
| teaname | varchar(100) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| sex | enum('M','F') | YES | | NULL | |
| phone | int(11) | YES | | NULL | |
+---------+---------------+------+-----+---------+-------+
5 rows in set (0.01 sec)
MariaDB [test]>
delete from Teacher where teaid='103' #删除指定id数据truncate Teacher1; #清空数据drop table Teacher1; #删除表
MariaDB [test]> delete from Teacher where teaid='103';
Query OK, 1 row affected (0.02 sec)
MariaDB [test]> select * from Teacher;
+-------+--------------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+------------+
| 1 | feng | 20 | NULL | NULL |
| 2 | wang | 20 | M | 2147483647 |
| 2 | wang | 20 | M | 2147483647 |
| 3 | zhang | 30 | M | 2147483647 |
| 4 | li | 40 | M | 2147483647 |
| 5 | zhao | 50 | F | 2147483647 |
| 5 | zhao | 50 | F | 1821113120 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
+-------+--------------+------+------+------------+
9 rows in set (0.00 sec)
MariaDB [test]>
MariaDB [test]> select * from Teacher1;
+-------+---------------+------+------+-------+
| teaId | teaname | age | sex | phone |
+-------+---------------+------+------+-------+
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
| 103 | wangwu | 40 | NULL | NULL |
| 104 | fengxiaoqing1 | 20 | NULL | NULL |
| 105 | zhangsan2 | 30 | NULL | NULL |
| 106 | wangwu3 | 40 | NULL | NULL |
| 107 | fengxiaoqing4 | 20 | NULL | NULL |
| 108 | zhangsan5 | 30 | NULL | NULL |
| 109 | wangwu6 | 40 | NULL | NULL |
| 110 | fengxiaoqing7 | 20 | NULL | NULL |
| 111 | zhangsan8 | 30 | NULL | NULL |
| 112 | wangwu9 | 40 | NULL | NULL |
+-------+---------------+------+------+-------+
12 rows in set (0.00 sec)
MariaDB [test]> truncate Teacher1;
Query OK, 0 rows affected (0.02 sec)
MariaDB [test]> select * from Teacher1;
Empty set (0.00 sec)
MariaDB [test]>
MariaDB [test]> drop table Teacher1;
Query OK, 0 rows affected (0.01 sec)
MariaDB [test]> show tables;
+----------------+
| Tables_in_test |
+----------------+
| Teacher |
+----------------+
1 row in set (0.00 sec)
MariaDB [test]>
update Teacher set phone=188188188 where teaId=1;
MariaDB [test]> select * from Teacher;
+-------+--------------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+------------+
| 1 | feng | 20 | NULL | NULL |
| 2 | wang | 20 | M | 2147483647 |
| 2 | wang | 20 | M | 2147483647 |
| 3 | zhang | 30 | M | 2147483647 |
| 4 | li | 40 | M | 2147483647 |
| 5 | zhao | 50 | F | 2147483647 |
| 5 | zhao | 50 | F | 1821113120 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
+-------+--------------+------+------+------------+
9 rows in set (0.01 sec)
MariaDB [test]> update Teacher set phone=188188188 where teaId=1;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [test]> select * from Teacher;
+-------+--------------+------+------+------------+
| teaId | teaname | age | sex | phone |
+-------+--------------+------+------+------------+
| 1 | feng | 20 | NULL | 188188188 |
| 2 | wang | 20 | M | 2147483647 |
| 2 | wang | 20 | M | 2147483647 |
| 3 | zhang | 30 | M | 2147483647 |
| 4 | li | 40 | M | 2147483647 |
| 5 | zhao | 50 | F | 2147483647 |
| 5 | zhao | 50 | F | 1821113120 |
| 101 | fengxiaoqing | 20 | NULL | NULL |
| 102 | zhangsan | 30 | NULL | NULL |
+-------+--------------+------+------+------------+
9 rows in set (0.00 sec)
MariaDB [test]>
create index 库名_表名_列名1_列名2 (列名1,列名2);
create index test_Teacher_teaId_teaname (teaId,teaname);
MariaDB [test]> show index from Teacher;
Empty set (0.01 sec)
MariaDB [test]> show index from Teacher; #查看Empty set (0.01 sec)
MariaDB [test]> alter table Teacher add index test_Teacher_teaId_teaname (teaId,teaname); #创建索引
Query OK, 0 rows affected (0.34 sec)
Records: 0 Duplicates: 0 Warnings:
0MariaDB [test]> show index from Teacher; #再查看,索引就会创建成功
+---------+------------+----------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+---------+------------+----------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
| Teacher | 1 | test_Teacher_teaId_teaname | 1 | teaId | A | 9 | NULL | NULL | | BTREE | | |
| Teacher | 1 | test_Teacher_teaId_teaname | 2 | teaname | A | 9 | NULL | NULL | YES | BTREE | | |
+---------+------------+----------------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
2 rows in set (0.00 sec)
MariaDB [test]>
explain select * from Teacher where teaname = 'feng';
MariaDB [test]> explain select * from Teacher where teaname = 'feng';
+------+-------------+---------+------+---------------+------+---------+------+------+-------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+------+-------------+---------+------+---------------+------+---------+------+------+-------------+
| 1 | SIMPLE | Teacher | ALL | NULL | NULL | NULL | NULL | 9 | Using where |
+------+-------------+---------+------+---------------+------+---------+------+------+-------------+
1 row in set (0.00 sec)
MariaDB [test]> explain select * from Teacher where teaname = 'feng' and teaId = 1;
+------+-------------+---------+------+----------------------------+----------------------------+---------+-------------+------+-----------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+------+-------------+---------+------+----------------------------+----------------------------+---------+-------------+------+-----------------------+
| 1 | SIMPLE | Teacher | ref | test_Teacher_teaId_teaname | test_Teacher_teaId_teaname | 107 | const,const | 1 | Using index condition |
+------+-------------+---------+------+----------------------------+----------------------------+---------+-------------+------+-----------------------+
1 row in set (0.01 sec)
MariaDB [test]>
MariaDB [test]> select * from Teacher where teaname = 'feng' and teaId = 1;
+-------+---------+------+------+-----------+
| teaId | teaname | age | sex | phone |
+-------+---------+------+------+-----------+
| 1 | feng | 20 | NULL | 188188188 |
+-------+---------+------+------+-----------+
1 row in set (0.01 sec)
MariaDB [test]>
--结束END--
本文标题: Python中操作mysql知识(二)
本文链接: https://lsjlt.com/news/36688.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-10-23
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
2024-10-22
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0