博客
关于我
SQL语句
阅读量:411 次
发布时间:2019-03-06

本文共 2545 字,大约阅读时间需要 8 分钟。

SQL全名是什么?它的分类以及基本语法操作

SQL,全称是结构化查询语言(Structured Query Language),是关系数据库管理系统的标准语言。作为数据库管理的核心工具,SQL在数据处理、数据存储与检索中发挥着重要作用。

在开始了解SQL之前,我们需要了解它的主要分类。SQL可以划分为以下几大类:

1. 数据定义语言(DDL)

数据定义语言用于定义数据库中的数据结构,包括表、列、索引等。常用的命令包括:

  • CREATE TABLE: 用于创建新表。
  • ALTER TABLE: 用于修改表结构。
  • DROP TABLE: 用于删除表。
  • CREATE INDEX: 用于创建索引。

2. 数据操作语言(DML)

数据操作语言用于对数据库中的数据进行增删查改操作。常用的命令包括:

  • INSERT INTO: 用于插入新数据。
  • DELETE FROM: 用于删除数据。
  • UPDATE: 用于修改数据。

3. 数据控制语言(DCL)

数据控制语言用于对数据库或交易进行管理。常用的命令包括:

  • COMMIT: 提交事务。
  • ROLLBACK: 回滚事务。
  • LOCK: 锁定资源。

4. 数据查询语言(DQL)

数据查询语言用于从数据库中检索数据。常用的命令包括:

  • SELECT: 用于查询数据。
  • WHERE: 用于筛选查询结果。

SQL的基本增删查改操作

掌握SQL的基本操作是学习任何数据库管理技能的基础。以下是几种最常用的操作:

1. 增加数据(INSERT)

插入新数据到表中,可以使用以下语法:

INSERT INTO 表名 (字段1,字段2,...字段n) VALUES (值1,值2,...值n);

注意事项:

  • 如果表中字段顺序与插入顺序不一致,可以通过指定字段名进行插入。
  • 典型示例:
    INSERT INTO MyClass(C_Name, C_ID, C_Descr) VALUES('软件1106班', 6, '武汉软件工程职业学院,软件开发技术专业1106');

2. 删除数据(DELETE)

删除数据可以选择删除全部数据或按条件删除:

  • 删除全部数据:
    DELETE FROM 表名;
  • 删除部分数据:
    DELETE FROM 表名 WHERE 条件;

注意事项:

  • DELETE会生成大量日志,而TRUNCATE TABLE只生成一行日志,效率更高。

3. 查询数据(SELECT)

从表中检索数据可以使用以下语法:

SELECT * FROM 表名;

典型示例:

SELECT * FROM MyClass;SELECT * FROM MyStudent;

4. 修改数据(UPDATE)

修改表中的部分数据可以使用以下语法:

UPDATE 表名 SET 字段1='值1', 字段2='值2'...;

注意事项:

  • 修改多个字段时,字段间使用英文逗号分隔。
  • 典型示例:
    UPDATE MyStudent SET S_Name='李四', S_Birthday='1992-01-18';

数据库脚本与实际操作示例

以下是创建一个数据库以及对数据库中的表进行增删查改的完整脚本:

USE master;GOIF EXISTS(SELECT * FROM sysdatabases WHERE name=N'DB_MyStudentLife')    DROP DATABASE [DB_MyStudentLife];GOCREATE DATABASE [DB_MyStudentLife];GOUSE [DB_MyStudentLife];GOIF EXISTS(SELECT * FROM sysobjects WHERE name=N'MyClass')    DROP TABLE [MyClass];GOCREATE TABLE MyClass (    C_ID INT NOT NULL PRIMARY KEY,    C_Name NVARCHAR(200) NOT NULL,    C_Descr NVARCHAR(MAX) NOT NULL);GOIF EXISTS(SELECT * FROM sysobjects WHERE name=N'MyStudent')    DROP TABLE MyStudent;GOCREATE TABLE MyStudent (    S_ID INT NOT NULL PRIMARY KEY IDENTITY(1,1),    S_Name NVARCHAR(50) NOT NULL,    S_Gender CHAR(2) NOT NULL,    S_Address NVARCHAR(MAX) NOT NULL,    S_Phone NVARCHAR(50) NOT NULL,    S_Age INT NOT NULL,    S_Birthday DATETIME NOT NULL,    S_CardID INT NOT NULL,    S_CID INT NOT NULL REFERENCES MyClass(C_ID));GO

以下是对数据库表的增删查改操作示例:

-- 增加数据到MyClass表INSERT INTO MyClass(C_ID, C_Name, C_Descr) VALUES(1, '软件1101班', '武汉软件工程职业学院,软件开发技术专业1101');INSERT INTO MyClass(C_ID, C_Name, C_Descr) VALUES(2, '软件1102班', '武汉软件工程职业学院,软件开发技术专业1102');-- 其他插入语句...-- 查询数据SELECT * FROM MyClass;SELECT * FROM MyStudent;-- 修改数据UPDATE MyStudent SET S_Name='李四', S_Birthday='1992-01-18';-- 删除数据DELETE FROM MyClass WHERE C_ID='13';

以上内容可以根据实际需求进行扩展或调整,适用于不同场景的数据库操作。

转载地址:http://wxxkz.baihongyu.com/

你可能感兴趣的文章
python编程读取写入excel_Python读取txt内容写入xls格式excel中的方法
查看>>
Python 基础语法:基本数据类型(字典)
查看>>
Python 基础语法:基本数据类型(字符串)
查看>>
Python 基础语法:基本数据类型(集合)
查看>>
Python编程的终极十大工具
查看>>
python 堆排序
查看>>
python编程方式之一-函数式编程
查看>>
python 复习计划
查看>>
Python 多处理 apply_async 永远不会在 Windows 7 上返回结果
查看>>
Python 多处理 Numpy 随机
查看>>
Python 多处理 >= 125 列表永远不会完成
查看>>
Python 多处理:在第一个子错误时中止映射
查看>>
Python 多处理不断产生 pythonw.exe 进程而不做任何实际工作
查看>>
Python 多处理从不加入
查看>>
Python 多处理如何优雅地退出?
查看>>
Python 多处理将子进程的标准输出重定向到 Tkinter 文本
查看>>
Python 多处理库错误(AttributeError:__exit__)
查看>>
Python 多处理模块的 .join() 方法到底在做什么?
查看>>
python 多线程与GIL
查看>>
Python 多线程学习(转)
查看>>