根据SQL的功能(数据定义、数据操纵、数据查询、数据控制)给大家依次例举了一些SQL的常用语法格式以及实例,希望能对各位初识SQL的伙伴一些帮助。由于篇幅原因,本文只介绍数据定义与数据操纵部分。

数据定义:

用于定义数据库、基本表等机构,基本命令包括:create、drop、alter。

先讲一下命令的用法:

命令 功能
create database 库名 创建数据库
create table 表名 (列名1 类型1 [约束列1],
列名2 类型2 [约束列2],
…)
创建数据表
drop table 表名 删除表
alter table 表名 修改内容 修改表结构(alter后面可以接的命令直接在实例里举出)

实例1:

创建数据库与基本表

建立“Practice”数据库,建立“student”数据表(结构如下):

id name age sex
int(5) char(5) int(3) char(2)
主键 非空
create database practice;  -- 创建数据库use practice;  -- 选择要操作的数据库create table student (id int(5) primary key,name char(5) not null,age char(3),sex char(2));    -- 创建表
desc student;  -- 查看数据表结构/***注意每条SQL语句的结尾要加分号,在SQL里面分号是一条语句结束的标志***/

逐条运行的结果是这样的:

mysql> create database practice;  -- 创建数据库
Query OK, 1 row affected (0.01 sec)mysql> use practice;  -- 选择要操作的数据库
Database changed
mysql> create table student (id int(5) primary key,->   name char(5) not null,->   age char(3),sex char(2));    -- 创建表
Query OK, 0 rows affected (0.34 sec)mysql> desc student;  -- 查看数据表结构
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id    | int(5)  | NO   | PRI | NULL    |       |
| name  | char(5) | NO   |     | NULL    |       |
| age   | char(3) | YES  |     | NULL    |       |
| sex   | char(2) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
4 rows in set (0.01 sec)

  drop table 删除表,直接用就可以了,没有那么多弯弯绕绕的,简单易懂,所以就略过了。但是值得注意的是drop与delete的区别,drop是删除表,delete是删除表中的记录。其语法格式在之后的数据操纵中再向大家讲明。

  alter table 用于对表的结构进行修改,可以添加、删除字段:
添加字段:

alter table student add address char(50);  -- 添加地址字段
alter table student drop sex; -- 删除性别字段

结果是这样的:

mysql> desc student;
+---------+----------+------+-----+---------+-------+
| Field   | Type     | Null | Key | Default | Extra |
+---------+----------+------+-----+---------+-------+
| id      | int(5)   | NO   | PRI | NULL    |       |
| name    | char(5)  | NO   |     | NULL    |       |
| age     | char(3)  | YES  |     | NULL    |       |
| address | char(50) | YES  |     | NULL    |       |
+---------+----------+------+-----+---------+-------+

当然alter还可以对字段的数据类型等进行设置,感兴趣的朋友可以自己再去了解一下。

数据操纵:

数据操纵可以分为数据查询和数据跟新两类,数据更新又分为插入、删除和修改,基本命令如下:

命令 功能
insert into 表名(字段1,字段2, …) values (值1,值2,…) 插入记录
update 表名 set 列名 = 新值 where 列名 = 某值 跟新符合条件的记录
delete from 表名 where 列名 = 值 删除符合条件的记录

  insert 用于向表中插入记录,可以直接插入,也可以插入到指定列,两者的写法稍有不同,会在实例中给出。还有值得注意的是delete与drop的区别,上文中也有提到,delete的操作对象是表中的记录,而drop的操作对象是表结构。

实例2:

插入、跟新、删除表中的记录

向“student”表中插入一条、多条记录,跟新记录属性,删除记录

INSERT INTO student(id,NAME,age,address) VALUES(1,'李涵','15',''); -- 插入单条记录INSERT INTO student(id,NAME,age,address) VALUES(2,'张涵','20',''),(3,'王珂','21','上海'),(4,'彭军','20','北京'); -- 插入多条记录UPDATE student SET age='25' WHERE NAME='彭军'; -- 跟新记录(将彭军的年龄改为25)DELETE FROM student WHERE NAME='王珂'; -- 删除记录

结果如下:

mysql> insert into student(id,name,age,address) values(1,'李涵','15','');
Query OK, 1 row affected (0.14 sec)mysql> insert into student(id,name,age,address) values(2,'张涵','20',''),(3,'王珂','21','上海'),(4,'彭军','20','北京');
Query OK, 3 rows affected (0.08 sec)
Records: 3  Duplicates: 0  Warnings: 0mysql> UPDATE student SET age='25' WHERE NAME='彭军';
Query OK, 1 row affected (0.10 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> UPDATE student SET age='25' WHERE NAME='彭军'; -- 跟新记录(将彭军的年龄改为25)
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1  Changed: 0  Warnings: 0mysql> DELETE FROM student WHERE NAME='王珂'; -- 删除记录
Query OK, 1 row affected (0.11 sec)mysql> select * from student;
+----+--------+------+---------+
| id | name   | age  | address |
+----+--------+------+---------+
|  1 | 李涵   | 15   |         |
|  2 | 张涵   | 20   |         |
|  4 | 彭军   | 25   | 北京    |
+----+--------+------+---------+
3 rows in set (0.00 sec)

SQL之数据定义、数据操纵相关推荐

  1. mysql对所有列的数据进行修改6_MySQL的SQL语句 - 数据定义语句(6)- ALTER TABLE 语句 (3)...

    添加和删除列 使用ADD向表中添加新列,使用DROP删除现有列.DROP col_name是对标准SQL的MySQL扩展. 若要在表行的特定位置添加列,请使用FIRST col_name 或者 AFT ...

  2. SQL的数据定义功能及语句:

    定义各种数据库的"对象" 模式定义 表定义 视图定义 索引定义 SQL的数据定义语句 操作对象 操作方式 创建 删除 修改   模式 CREATE SCHEMA DROP  SCH ...

  3. 【ClickHouse SQL 极简教程】ClickHouse SQL之数据定义语言 DDL

    1.1. ClickHouse SQL之数据定义语言 DDL  本节介绍 ClickHouse 中进行数据库.表结构的定义和管理. 1.1.1. 概述 在SQL中,数据定义语言( DDL ) 用来创建 ...

  4. 数据库 ----- 实验二:SQL的数据定义和数据更新

    实验二 SQL的数据定义和数据更新 [实验目的和要求] 1.掌握SQL Server Management Studio中以SQL 命令方式和以向导方式操作表和数据的操作: 2.掌握SQL 的数据定义 ...

  5. 【数据库系统】第一部分 数据库基础(3) 关系数据库标准语言SQL(3) 数据定义

    本文属于「数据库系统」系列文章之一,这一系列着重于「数据库系统知识的学习与实践」.由于文章内容随时可能发生更新变动,欢迎关注和收藏数据库系统系列文章汇总目录一文以作备忘.需要特别说明的是,为了透彻理解 ...

  6. MySQL→数据库、启动连接数据库、SQL→DDL数据定义语言及数据类型、DML数据操作语言、DQL数据查询语言、数据库约束→主键、唯一、非空、默认、外键、SQL、三大范式及一多关系、视图、内外连接

    MySQL连接退出命令 mysql –uroot -proot mysql –h127.0.0.1 –uroot -proot mysql --host=localhost --user=root - ...

  7. 交互式SQL(数据定义部分)

    在Oracle Database XE 的SQL命令窗口中,使用SQL语言定义Student表,该表的结构描述如下: 表3.1 Student表结构 列名 数据类型 是否为空 约束 Sno CHAR( ...

  8. MySQL中定义fk语句_MySQL的SQL语句 - 数据定义语句(6)- ALTER TABLE 语句 (4)

    外键和其他约束 InnoDB和NDB存储引擎支持 FOREIGN KEY 和 REFERENCES 子句,这些存储引擎实现了ADD [CONSTRAINT [symbol]] FOREIGN KEY ...

  9. 数据库技术与应用(SQL Server)——【SQL Server数据定义功能】

    目录 数据库的创建 使用SQL语句创建 表的创建 添加约束 添加主键约束 外键约束 唯一值约束UNIQUE 非空约束NOT NULL 默认值约束DEFAULT CHECK约束 数据库的创建 使用SQL ...

最新文章

  1. Leon系列处理器结构
  2. JAVA记录-Servlet RequestDispatcher请求转发
  3. 江苏c语言二级试题及答案,江苏省计算机二级C语言试题及答案.doc
  4. python计算思维训练文件操作与异常处理_054 Python程序设计思维
  5. linux cp 命令使用一角
  6. linux 故障注入_用软件中断实现的Linux内核故障注入方法
  7. Oracle创建表语句(Create table)语法详解及示例
  8. Leetcode: Pascal's Triangle II
  9. TotalCommander增加回到桌面功能
  10. nlp基础—7.隐马尔可夫模型(HMM算法)
  11. Java基础,无需使用复杂语句,实现输出0-130之间的数字,每行显示7个数字。
  12. CWMP\TR069协议学习随笔1——入门基础知识及环境搭建
  13. 6月读书《有效的管理者》笔记
  14. 窃取5亿雅虎用户信息的黑客 被判处5年有期徒刑
  15. speedoffice(Excel)表格如何添加边框?
  16. 考研数据库复习(一) 过一遍教材
  17. 凸包(Convex Hull)问题算法详解
  18. LAPARDIN WEDLUTS Romantic Wedding LUTs 浪漫唯美婚礼电影调色预设
  19. Python一对一题目辅导「PTA 题目讲解·难度系数:基础」
  20. 牛客竞赛:第三届超越杯程序设计团体赛题解

热门文章

  1. 用OpenSSL做自签名的证书(by quqi99)
  2. 【社区图书馆】30+危机,最值得读烂的5本书|必读
  3. 高职院校计算机应用基础教学探讨,高职院校计算机应用基础课程教学改革探讨论文...
  4. 路缘石成型机工艺结构和使用标准解读
  5. 深度分析|DEVITA:一个基于区块链技术和Web3生态打造的先进数字医疗平台
  6. android 开放聊天室
  7. Scrapy的基础知识
  8. 百度地图API_BMap接口的使用形式
  9. 云计算期末考试知识点
  10. ElasticSearch 集群安装,简单使用