mysql..sql语句入门

本文介绍了MySQL中的数据加载、查询、删除及表管理等基本操作。涵盖了从外部文件加载数据到表中、执行数据查询、删除特定记录的过程,并展示了如何使用变量、连续插入多条记录以及管理自动增长字段的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

– 从表里面加载数据

mysql> load data local infile '/home/mysqldba/pet.txt' into table pet  lines terminated by '\r\n';

– 查询

mysql> select * from pet;
+--------+--------+----------------------+------+------------+------------+
| name   | owner  | species              | sex  | birth      | death      |
+--------+--------+----------------------+------+------------+------------+
| name   | owner  | species              | s    | 0000-00-00 | 0000-00-00 |
| Fluffy | Harold | cat                  | f    | 1993-02-04 | 0000-00-00 |
| Claws  | Gwen   | cat                  | m    | 1994-03-17 | 0000-00-00 |
| Buffy  | Harold | dog                  | f    | 1989-05-13 | 0000-00-00 |
| Fang   | Benny  | dog                  | m    | 1990-08-27 | 0000-00-00 |
| Bowser | Diane  | dog                  | m    | 1979-08-31 | 1995-07-29 |
| Chirpy | Gwen   | bird                 | f    | 1998-09-11 | 0000-00-00 |
| Whis   | Gwen   | bird            1997 |      | NULL       | NULL       |
| Slim   | Benny  | snake                | m    | 1996-04-29 | 0000-00-00 |
+--------+--------+----------------------+------+------------+------------+
9 rows in set (0.00 sec)



mysql> delete from pet where name='Whis'
    -> ;
Query OK, 1 row affected (0.01 sec)

mysql> select * from pet;
+--------+--------+---------+------+------------+------------+
| name   | owner  | species | sex  | birth      | death      |
+--------+--------+---------+------+------------+------------+
| name   | owner  | species | s    | 0000-00-00 | 0000-00-00 |
| Fluffy | Harold | cat     | f    | 1993-02-04 | 0000-00-00 |
| Claws  | Gwen   | cat     | m    | 1994-03-17 | 0000-00-00 |
| Buffy  | Harold | dog     | f    | 1989-05-13 | 0000-00-00 |
| Fang   | Benny  | dog     | m    | 1990-08-27 | 0000-00-00 |
| Bowser | Diane  | dog     | m    | 1979-08-31 | 1995-07-29 |
| Chirpy | Gwen   | bird    | f    | 1998-09-11 | 0000-00-00 |
| Slim   | Benny  | snake   | m    | 1996-04-29 | 0000-00-00 |
+--------+--------+---------+------+------------+------------+
8 rows in set (0.01 sec)

mysql>

– 查看表的元信息

mysql> show create table person\G
*************************** 1. row ***************************
       Table: person
Create Table: CREATE TABLE `person` (
  `id` smallint(5) unsigned NOT NULL AUTO_INCREMENT,
  `name` char(60) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8
1 row in set (0.00 sec)

– mysql 可以直接用变量

mysql> SELECT @last := LAST_INSERT_ID();
+---------------------------+
| @last := LAST_INSERT_ID() |
+---------------------------+
|                         3 |
+---------------------------+
1 row in set (0.00 sec)

– 描述表的信息,界面比oracle好看多了,最起码不用自己定义访问方式了

mysql> describe person;
+-------+----------------------+------+-----+---------+----------------+
| Field | Type                 | Null | Key | Default | Extra          |
+-------+----------------------+------+-----+---------+----------------+
| id    | smallint(5) unsigned | NO   | PRI | NULL    | auto_increment |
| name  | char(60)             | NO   |     | NULL    |                |
+-------+----------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

– 可以连续插入多个值

mysql> INSERT INTO t1 VALUES(2000,1,1),(2000,1,20),(2000,1,30),(2000,2,2),
    ->             (2000,2,23),(2000,2,23);
Query OK, 6 rows affected (0.01 sec)
Records: 6  Duplicates: 0  Warnings: 0

– 测试 AUTO_INCREMENT,估计是封装了oracle的序列吧,当然这是猜测

mysql> CREATE TABLE animals (
    ->      id MEDIUMINT NOT NULL AUTO_INCREMENT,
    ->      name CHAR(30) NOT NULL,
    ->      PRIMARY KEY (id)
    -> );
Query OK, 0 rows affected (0.03 sec)
mysql> select * from animals;
Empty set (0.01 sec)

mysql> desc animals;
+-------+--------------+------+-----+---------+----------------+
| Field | Type         | Null | Key | Default | Extra          |
+-------+--------------+------+-----+---------+----------------+
| id    | mediumint(9) | NO   | PRI | NULL    | auto_increment |
| name  | char(30)     | NO   |     | NULL    |                |
+-------+--------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)
mysql> select * from animals;
+----+---------+
| id | name    |
+----+---------+
|  1 | dog     |
|  2 | cat     |
|  3 | penguin |
|  4 | lax     |
|  5 | whale   |
|  6 | ostrich |
|  7 | cat     |
+----+---------+
7 rows in set (0.00 sec)

mysql> ALTER TABLE animals AUTO_INCREMENT = 100;
Query OK, 0 rows affected (0.00 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> insert into animals(name) values('bird');
Query OK, 1 row affected (0.01 sec)

mysql> select * from animals;
+-----+---------+
| id  | name    |
+-----+---------+
|   1 | dog     |
|   2 | cat     |
|   3 | penguin |
|   4 | lax     |
|   5 | whale   |
|   6 | ostrich |
|   7 | cat     |
| 100 | bird    |
+-----+---------+
8 rows in set (0.00 sec)

mysql> insert into animals(name) values('bird');
Query OK, 1 row affected (0.01 sec)

mysql> select * from animals;
+-----+---------+
| id  | name    |
+-----+---------+
|   1 | dog     |
|   2 | cat     |
|   3 | penguin |
|   4 | lax     |
|   5 | whale   |
|   6 | ostrich |
|   7 | cat     |
| 100 | bird    |
| 101 | bird    |
+-----+---------+
9 rows in set (0.00 sec)




mysql> alter table  animals   AUTO_INCREMENT=8388605
    -> ;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> insert into animals(name) values('bird');
Query OK, 1 row affected (0.01 sec)

mysql> insert into animals(name) values('bird');
Query OK, 1 row affected (0.00 sec)

mysql> insert into animals(name) values('bird');
ERROR 1062 (23000): Duplicate entry '8388607' for key 'PRIMARY'
mysql> insert into animals(name) values('bird');
ERROR 1062 (23000): Duplicate entry '8388607' for key 'PRIMARY'

查看DDL

MEDIUMINT的 Maximum Value Signed 为8388607

mysql> show create table animals\G;
*************************** 1. row ***************************
       Table: animals
Create Table: CREATE TABLE `animals` (
  `id` mediumint(9) NOT NULL AUTO_INCREMENT,
  `name` char(30) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `inx_a_id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8388607 DEFAULT CHARSET=utf8
1 row in set (0.01 sec)

ERROR:
No query specified

–其中BIGINT能支持的位数是最大的

– 查看mysql支持的存储引擎,默认InnoDB ,支持事物

mysql> show engines
    -> ;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine             | Support | Comment                                                        | Transactions | XA   | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MEMORY             | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         |
| CSV                | YES     | CSV storage engine                                             | NO           | NO   | NO         |
| MRG_MYISAM         | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         |
| BLACKHOLE          | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         |
| InnoDB             | DEFAULT | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        |
| PERFORMANCE_SCHEMA | YES     | Performance Schema                                             | NO           | NO   | NO         |
| ARCHIVE            | YES     | Archive storage engine                                         | NO           | NO   | NO         |
| MyISAM             | YES     | MyISAM storage engine                                          | NO           | NO   | NO         |
| FEDERATED          | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
9 rows in set (0.00 sec)

– 导出 hdp 数据库

[mysqldba@mysql5 ~]$ mysqldump -uroot -h127.0.0.1 -p hdp >hdp.dmp
Enter password:
[mysqldba@mysql5 ~]$ ls
1.sql  db_login.sh  hdp.dmp  pet.txt

– 再导入测试

mysql> drop database hdp;
Query OK, 7 rows affected (0.06 sec)


mysql> create database hdp;
Query OK, 1 row affected (0.00 sec)

mysql> exit
Bye
[mysqldba@mysql5 ~]$ mysql -u root -h 127.0.0.1  -p hdp <hdp.dmp
Enter password:

–其实dmp文件里面是一些sql语句

–这里只截取一部分

mysqldba@mysql5 ~]$ strings hdp.dmp
-- MySQL dump 10.13  Distrib 5.7.21, for linux-glibc2.12 (x86_64)
-- Host: 127.0.0.1    Database: hdp
-- ------------------------------------------------------
-- Server version   5.7.21
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
-- Table structure for table `animals`
DROP TABLE IF EXISTS `animals`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `animals` (
  `id` mediumint(9) NOT NULL AUTO_INCREMENT,
  `name` char(30) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `inx_a_id` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
内容概要:本文详细探讨了基于阻尼连续可调减振器(CDC)的半主动悬架系统的控制策略。首先建立了CDC减振器的动力学模型,验证了其阻尼特性,并通过实验确认了模型的准确性。接着,搭建了1/4车辆悬架模型,分析了不同阻尼系数对悬架性能的影响。随后,引入了PID、自适应模糊PID和模糊-PID并联三种控制策略,通过仿真比较它们的性能提升效果。研究表明,模糊-PID并联控制能最优地提升悬架综合性能,在平顺性和稳定性间取得最佳平衡。此外,还深入分析了CDC减振器的特性,优化了控制策略,并进行了系统级验证。 适用人群:从事汽车工程、机械工程及相关领域的研究人员和技术人员,尤其是对车辆悬架系统和控制策略感兴趣的读者。 使用场景及目标:①适用于研究和开发基于CDC减振器的半主动悬架系统的工程师;②帮助理解不同控制策略(如PID、模糊PID、模糊-PID并联)在悬架系统中的应用及其性能差异;③为优化车辆行驶舒适性和稳定性提供理论依据和技术支持。 其他说明:本文不仅提供了详细的数学模型和仿真代码,还通过实验数据验证了模型的准确性。对于希望深入了解CDC减振器工作原理及其控制策略的读者来说,本文是一份极具价值的参考资料。同时,文中还介绍了多种控制策略的具体实现方法及其优缺点,为后续的研究和实际应用提供了有益的借鉴。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值