Navicat 博客

使用纯 SQL 将表复制到新表 2021 年 4 月 28 日,由 Robert Gravelle 撰写

很多时候,我们可能需要将数据从一个现有的表复制到一个新的表中,例如,备份数据,或将一个环境中的数据复制到另一个环境中,就像出于测试目的所做的那样。在 SQL 中,通常会使用 CREATE TABLE 和 SELECT 语句,如下所示:

CREATE TABLE new_table; 
SELECT SELECT col, col2, col3 
INTO new_table 
FROM
    existing_table;

在第一个语句中,数据库使用 CREATE TABLE 语句中指定的名创建一个新表。新表的结构由 SELECT 语句的结果集定义。然后,数据库将 SELECT 语句的结果填充到新表中。

尽管上述的过程可以完美地复制表,但是有一种更简单的方法,我们可以使用 CREATE TABLE 语句的变体将表复制到新表中!今天我们将在这里学习如何使用它。

在存储过程中使用事务来防止数据不一致 2021 年 4 月 20 日,由 Robert Gravelle 撰写

认识数据库事务文章中,我们探究了事务是如何通过保证使用事务执行的所有操作同时成功或同时失败来防止数据丢失和不一致。在今天的后续文章中,我们将学习如何在存储过程中使用事务,以确保所涉及的所有表保持一致状态。

认识数据库事务 2021 年 4 月 16 日,由 Robert Gravelle 撰写

Atomicity Consistency Isolation Durability(原子性、一致性、隔离性、持久性),或称(ACID),由 Andreas Reuter 于 1983 年提出。它是数据库管理系统(DBMS)中的一个概念,它标识了一组用于保证数据库可靠性的标准属性。ACID 属性可确保所有数据库事务保持准确且一致,并支持从处理操作期间可能发生的故障中恢复。因此,几乎所有关系数据库都实现了它。

在数据库层面上防止 SQL 注入 2021 年 4 月 14 日,由 Robert Gravelle 撰写

许多组织通过在其应用程序中实施输入验证来致力保护其数据。事实上,大多数网络攻击直接针对数据库服务器本身,而应用程序安全性根本没有发挥作用!作为一个数据库管理员(DBA)或数据库开发人员,你具有强大的能力来降低网络攻击的风险和/或由此造成的损害,包括最常见的网络攻击形式:SQL 注入。在今天的文章中,我们将探索一些可以大大减少遭受 SQL 注入攻击的做法。

关系数据库的原子性 2021 年 3 月 30 日,由 Robert Gravelle 撰写

不久前,“原子”一词指的是无法进一步分裂的最小粒子。尽管我们已经发现原子本身是由更小的粒子组成,但该术语继续保留其原始含义。对于关系数据库而言,原子性(Atomicity)意味着数据库执行的操作(DML 或 DDL等)将是原子的。关系数据库通常提供的原子性单位是事务(Transaction)。为什么这很重要?原子性保证可以防止更新时仅更新了部分数据库,这比直接拒绝整系列的操作会引起更大的问题。在今天的文章中,我们将学习原子性是什么以及如何在你的数据库实例中实施它。

Navicat 文章
频道条目
分享
文章归档