MySQL增删查改语句(入门)
数据库定义语句:
- create:创建数据库及表对象
- drop:删除数据库及表对象
- alter:修改数据库及表对象
数据库控制语句:
- insert:向表中插入数据
- delete:将表中数据删除
- update:更改表中数据
- select:检索表中数据
数据库管理语句:
- grant:给用户授权
- revoke:回收用户权限
create
mysql> create table customers
-> (
-> cust_id int(4) primary key not null auto_increment, #创建表格,指定了主键,不允许为空,自增张
-> cust_name char(20) not null,
-> cust_sex char(5) not null,
-> cust_add char(20) not null default 'china', #默认值为'China'
-> cust_city char(20) not null default 'beijing'
-> );
alter:
1. MariaDB [test]> alter table test.customers
-> change column cust_sex sex char(2) null default 'M';
//修改表中字段名称及数据类型,change子句。
2. MariaDB [test]> alter table test.customers
-> alter column cust_city set default 'hangzhou';
//alter子句用来修改表中字段的默认值的。
3. MariaDB [test]> alter table test.customers
-> modify column cust_name char(20) first;
//modify子句用来修改表中字段的数据类型,first表示将这个字段设为第一列。
4. MariaDB [test]> alter table test.customers
-> drop column sex;
//drop子句用来删除表中字段(列,一个意思,别混淆)
MariaDB [test]> desc test.customers;
+--------------+-------------+------+-----+----------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+-------------+------+-----+----------+----------------+
| cust_name | char(20) | YES | | NULL | |
| cust_id | int(11) | NO | PRI | NULL | auto_increment |
| cust_add | varchar(50) | NO | | fd | |
| cust_city | char(10) | NO | | hangzhou | |
| cust_contact | char(50) | NO | | NULL | |
+--------------+-------------+------+-----+----------+----------------+
5. MariaDB [test]> alter table test.customers
-> rename to test.customers_backup;
MariaDB [test]> rename table test.customers_backup to test.customers;
//rename子句用来修改表的名称
6. MariaDB [test]> show tables from test;
//查看test库下表
7. MariaDB [test]> show columns from test.customers;
//查看该表的字段以及数据类型
insert
MariaDB [(none)]> insert into
-> test.customers
-> values
-> ('zhangsan',101,'qiao','BeiJing','Ali');
//向表中插入数据,千万要注意符合设定的约束即数据类型,字符要加引号。
MariaDB [(none)]> insert into test.customers
-> set cust_name='111',cust_add='WU';
//插入单个或多个指定字段的数据。
还有一个用法就是,insert……select,将从某个表对象查询的表插入到这个表对象中,需要注意的是,要注意数据类型一致性
delete
MariaDB [(none)]> delete from test.customers
-> where cust_name='lisi';
//删除满足条件的行记录
update
MariaDB [(none)]> update test.customers
-> set cust_add='ShanTou'
-> where cust_name='zhangsan';
select
MariaDB [(none)]> select cust_name from test.customers where cust_name='qiao1';
//查询指定字段,并满足where子句的条件。
MariaDB [(none)]> select cust_name,cust_add as dizhi from test.customers;
+-----------+-------+
| cust_name | dizhi |
+-----------+-------+
| qiao1 | BJ |
| qiao2 | CD |
+-----------+-------+
//as后起一个别名,并不改变表中数据
MariaDB [(none)]> select cust_name, case when cust_add='BJ' then 'BeiJing' else 'other city' end as dizhi from test.customers;
+-----------+------------+
| cust_name | dizhi |
+-----------+------------+
| qiao1 | BeiJing |
| qiao2 | other city |
+-----------+------------+
MariaDB [(none)]> select cust_name,cust_id+1000000000000000000000000000000 from test.customers;
+-----------+-----------------------------------------+
| cust_name | cust_id+1000000000000000000000000000000 |
+-----------+-----------------------------------------+
| qiao1 | 1000000000000000000000000000111 |
| qiao2 | 1000000000000000000000000000112 |
+-----------+-----------------------------------------+
MySQL增删查改语句(入门)的更多相关文章
- php mysql增删查改
php mysql增删查改代码段 $conn=mysql_connect('localhost','root','root'); //连接数据库代码 mysql_query("set na ...
- mysql 增删查改
非关系型数据库关系型数据库Oracle mysql sqlserver db2 Postgresql Sqlite access sqlserver 微软db2 ibm================ ...
- Mysql常用增删查改及入门(二)
常用:数据库常用就是DML:增删查改 1.增加数据: insert into 表名 values (值1,值2...); insert into 表名 (字段1,字段2) values (值1,值2) ...
- node.js+mysql增删查改
数据库和表: -- -- 数据库: `test` -- -- -------------------------------------------------------- -- -- 表的结构 ` ...
- 后端Spring Boot+前端Android交互+MySQL增删查改
2021.1.27 更新 已更新新版本博客,更新内容很多,因此新开了一篇博客,戳这里. 1 概述 使用spring boot作为后端框架与Android端配合mysql进行基本的交互,包含了最基本的增 ...
- 后端Spring Boot+前端Android交互+MySQL增删查改(Java+Kotlin实现)
1 前言&概述 这篇文章是基于这篇文章的更新,主要是更新了一些技术栈以及开发工具的版本,还有修复了一些Bug. 本文是SpringBoot+Android+MySQL的增删查改的简单实现,用到 ...
- MySQL 增删查改 必知必会
MySQL 数据库中的基础操作 3.表的修改 对表的表名.字段.字段类型.字段长度.约束等进行修改. 3.1 表的名称修改 -- 语法: ALTER TABLE 库名.表名 RENAME TO 新表名 ...
- mysql数据库,数据表,数据的增删查改语句
查询mysql支持的引擎 show engines; 查询mysql支持的字符集 show character set; 设置mysql默认存储引擎 set default_storage_engin ...
- Hibernate增删查改语句
我用的数据库是MySQL,实体类叫Product create table Product ( proId integer not null auto_increment, proName varch ...
随机推荐
- QML工程加载main.qml的两种方式
1. QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); if (e ...
- **209. Minimum Size Subarray Sum 长度最小的子数组
1. 题目描述 给定一个含有 n 个正整数的数组和一个正整数 s ,找出该数组中满足其和 ≥ s 的长度最小的连续子数组.如果不存在符合条件的连续子数组,返回 0. 示例: 输入: s = 7, nu ...
- Python - Django - ORM 多对多操作
models.py: from django.db import models # 出版社 class Publisher(models.Model): id = models.AutoField(p ...
- 【docker 使用】创建镜像docker build
创建镜像命令 docker build -t [镜像name]:[镜像tag] -f [dockerfile路径] [资源目录] 执行该命令后,docker会将[资源目录]打包,之后在dockerfi ...
- idea的alt+enter可以从菜单点吗
在idea中,当java某个类的包没有引入的时候,可以通过alt+enter来实现包的引入,那么可以通过菜单按钮,或者右键的方式点出来吗? 我们知道eclipse如果某个类为止,放在这个报错的类上,e ...
- 关于STM32F405的GPIO中断问题
1. 下面的图,应该是多个引脚中断挂在同一个中断号上面,也就是PA0和PB0同时挂在一个中断源上面,那么就是说只能同时使用其中一个 寄存器的配置,确实只能有一个使用
- Deepin Linux下为Wine创建文件关联
在Deepin Linux下,默认地,使用apt安装的Wine并没有创建文件关联,这使得在文件管理器中双击exe等Windows可执行文件时,不能直接运行.为此,必须手动在桌面环境中创建文件关联. 文 ...
- Nginx负载均衡总结2
如果要支持健康检查需要开启health_check(好吧,这个是nginx plus版本才有的功能,plus是付费版) 还有一点,Windows的nginx不支持udp等协议,所以有一些测试还必须用l ...
- [转帖]进程上下文频繁切换导致load average过高
进程上下文频繁切换导致load average过高 2016年6月26日admin发表评论阅读评论 http://www.361way.com/linux-context-switch/5131.ht ...
- [SourceTree] - 使用内置 PuTTY 克隆项目出现 fatal: early EOF 问题之解决
背景 使用 PuTTY 克隆 Asp.Net Core 项目失败. 错误 git -c filter.lfs.smudge= -c filter.lfs.required=false -c diff. ...