PostgreSQL之INSERT,DELETE,UPDATE

插入数据

每一列都赋值的话,可以省略列名

INSERT INTO Product VALUES(value1,value2,DEFAULT,value3,NULL)

只对部分列赋值,需要加上列名。被省略列名的列,如果存在默认值则默认值,如果不存在默认值则NULL。如果既不存在默认值又有非空约束,则执行失败

INSERT INTO Product (column1,column2,column3) VALUES(value1,value2,value3)

删除数据

清空表而不删除表

DELETE FROM 表名

删除表

DROP TABLE 表名

更新表

UPDATE 表名 SET 列1 = value1,列2 = value2 WHERE ...

如果没有WHERE,那么所有行的指定列都会被改变。

原文地址:https://www.cnblogs.com/zhenguan/p/11443009.html

时间: 2024-07-31 21:38:40

PostgreSQL之INSERT,DELETE,UPDATE的相关文章

MySQL5.7 支持一个表有多个INSERT/DELETE/UPDATE触发器

在MySQL5.6版本里,不支持一个表有多个INSERT/DELETE/UPDATE触发器. 例如创建t1表两个INSERT的触发器: DELIMITER $$ USE `test`$$ DROP TRIGGER /*!50032 IF EXISTS */ `t1_1`$$ CREATE     /*!50017 DEFINER = 'admin'@'%' */     TRIGGER `t1_1` AFTER INSERT ON `t1`      FOR EACH ROW BEGIN INS

sqlserver触发器insert,delete,update

-- ============================================= -- Author: 王伟 -- Create date: 2017-07-06 -- Description: 增.删.改开放时间表时,同步数据至考勤安排表 -- ============================================= CREATE TRIGGER [dbo].[TR_LM_SYS_KaiFangShiJian_IDU] ON [dbo].[LM_SYS_Kai

DML -- 数据操纵预言: insert/delete/update --多表连接修改/.多表连接删除/多表连接查询-- truncate 和 delete的区别

/* DML -- 数据操纵预言: insert/delete/update */ #一: 插入语句 /* 语法1: insert into 表名(列名,..,列名....) values(值1,值2,...),(值1,值2,...),(值1,值2,...); 语法2: insert into 表名 set 列名1=值1,列名2=值2,....; */ /*二: 修改语句 1.修改单表的记录 语法: update 表名 set 列1=新值1,列2=新值2,列2=新值2... where 筛选条件

MyBatis insert/delete/update 的返回值

insert,返回值是:新插入行的主键(primary key):需要包含<selectKey>语句,才会返回主键,否则返回值为null. update/delete,返回值是:更新或删除的行数:无需指明resultClass:但如果有约束异常而删除失败,只能去捕捉异常. 参考资料: 1.Mybatis/Ibatis,数据库操作的返回值 https://blog.csdn.net/gaojinshan/article/details/24308313 原文地址:https://blog.csd

深入浅出Mybatis系列(七)---mapper映射文件配置之insert、update、delete[转]

上篇文章<深入浅出Mybatis系列(六)---objectFactory.plugins.mappers简介与配置>简单地给mybatis的配置画上了一个句号.那么从本篇文章开始,将会介绍mapper映射文件的配置, 这是mybatis的核心之一,一定要学好.在mapper文件中,以mapper作为根节点,其下面可以配置的元素节点有: select, insert, update, delete, cache, cache-ref, resultMap, sql . 本篇文章将简单介绍 in

利用insert,update和delete注入获取数据

0x00 简介 利用SQL注入获取数据库数据,利用的方法可以大致分为联合查询.报错.布尔盲注以及延时注入,通常这些方法都是基于select查询语句中的SQL注射点来实现的.那么,当我们发现了一个基于insert.update.delete语句的注射点时(比如有的网站会记录用户浏览记录,包括referer.client_ip.user-agent等,还有类似于用户注册.密码修改.信息删除等功能),还可以用如上方法获取我们需要的数据吗?在这里,我们以MYSQL的显错为例,看一下如何在insert.u

触发器中判断操作是Insert还是Update还是Delete

在Sql Server触发器中判断操作是Insert还是Update还是Delete DECLARE @IsInsert bit, @IsUpdate bit, @IsDelete bit IF EXISTS(SELECT 1 FROM inserted) AND NOT EXISTS(SELECT 1 FROM deleted) SET @IsInsert = 1 ELSE SET @IsInsert = 0 IF EXISTS(SELECT 1 FROM inserted) AND EXIS

mysql并发insert deadlock分析以及解决,无delete/update/for update

关于并发insert操作发生deadlock这个情况,一直有很多争议,而且网上的帖子所有的例证和模拟其实不一定反映了真实的情况,例如:https://www.percona.com/blog/2012/03/27/innodbs-gap-locks/http://www.cnblogs.com/LBSer/p/5183300.html http://www.cnblogs.com/bamboos/p/3532150.html 不少的类似例子应该来说其实不少有猜测和为了重现而重现的目的.事实上开两

操作数据(insert、update、delete)

插入数据 使用Insert Into 插入 if(exists(select * from sys.databases where name = 'webDB')) drop database webDB go --创建数据库 create database webDB on primary ( name = 'webDB', filename='d:\webDB.mdf', size = 5mb, maxsize=unlimited, filegrowth=10% ) log on ( nam