PostgreSQL 表的创建、删除、更新

psql工具

psql工具,可通过命令行执行SQL语句。

D:\program files\PostgreSQL\14\bin>psql -U postgres
用户 postgres 的口令:
psql (14.2)
输入 "help" 来获取帮助信息.postgres=#

创建数据库

创建表之前,先创建存储表的数据库。

CREATE DATABASE <数据库名称>;CREATE DATABASE shop;

创建表

一个数据库中,表的名字不能重复。

一个表中,列的名字也不能重复。

格式如下。

CREATE TABLE <表名>
(<列名1> <数据类型> <该列的约束>,
<列名2> <数据类型> <该列的约束>,
...
<该表的约束1>,<该表的约束2>...)

数据类型

所有的列,都必须指定数据类型,如数字型、字符型、日期型。

INTEGER型,存储整数类型,不能存小数。

CHAR型,存储字符串类型。表中存储的字符串,区分大小写。字符串以定长字符串形式存储,CHAR(5)输入‘abc’,以‘abc ’(补两个空格)形式保存;输入‘abcdef’,保存的是‘abcde’。

VARCHAR型,存储字符串类型。字符串以可变长字符串形式存储。如果字符数没达到最大长度,不会补空格。

DATA型,存储日期。

约束

NOT NULL约束,该列必须输入数据。

主键约束:

主键primary key,可以唯一确定一行数据的列。

下面这句话,把product_id列设为主键,如果向product_id列中,输入重复数据,就无法取出唯一的数据。所以,主键约束下,这一列的数据不能重复。

PRIMARY KEY (product_id));
CREATE TABLE Product
(product_id      CHAR(4)      NOT NULL,product_name    VARCHAR(100) NOT NULL,product_type    VARCHAR(32)  NOT NULL,sale_price      INTEGER ,purchase_price  INTEGER ,regist_date     DATE ,PRIMARY KEY (product_id));

删除表

DROP TABLE <表名>;
DROP TABLE Product;

更新表

添加列:

ALTER TABLE <表名> ADD COLUMN <列的定义>;ALTER TABLE Product ADD COLUMN product_name_pinyin VARCHAR(100);

删除列:

ALTER TABLE <表名> DROP COLUMN <列名>;ALTER TABLE Product DROP COLUMN product_name_pinyin;

向表中插入数据

BEGIN TRANSACTION;开始插入行。

COMMIT;确定插入行。

BEGIN TRANSACTION;
INSERT INTO Product VALUES ('0001', 'T恤' ,'衣服', 1000, 500, '2222-02-22');
INSERT INTO Product VALUES ('0002', '钢笔', '办公用品', 500, 320, '2222-02-22');
INSERT INTO Product VALUES ('0003', '裤子', '衣服', 4000, 2800, NULL);
INSERT INTO Product VALUES ('0004', '筷子', '厨房用具', 3000, 2800, '2222-02-22');
INSERT INTO Product VALUES ('0005', '锅', '厨房用具', 6800, 5000, '2222-06-22');
INSERT INTO Product VALUES ('0006', '勺子', '厨房用具', 500, NULL, '2222-06-22');
INSERT INTO Product VALUES ('0007', '盆', '厨房用具', 880, 790, '2222-02-22');
INSERT INTO Product VALUES ('0008', '水笔', '办公用品', 100, NULL, '2222-06-22');
COMMIT;

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/560154.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PostgreSQL 简单的查询

查询列 SELECT语句&#xff0c;用于从表中选取数据。 格式&#xff1a; SELECT <列名>,... FROM <表名>;从Product表中&#xff0c;查询三列。 SELECT product_id, product_name, purchase_price FROM Product;查询所有列&#xff0c;格式&#xff1a; SELECT …

PostgreSQL 聚合、分组、排序

聚合函数 用于汇总的函数。 COUNT COUNT&#xff0c;计算表中的行数(记录数)。 计算全部数据的行数&#xff1a; SELECT COUNT(*)FROM Product;NULL之外的数据行数&#xff1a; SELECT COUNT(purchase_price)FROM Product;结果如下图。 对于一个含NULL的表&#xff1a; …

PostgreSQL 插入、删除、更新、事务

INSERT 使用INSERT语句可以向表中插入数据。 创建一个表&#xff1a; CREATE TABLE ProductIns (product_id CHAR(4) NOT NULL,product_name VARCHAR(100) NOT NULL,product_type VARCHAR(32) NOT NULL,sale_price INTEGER DEFAULT 0,purchase_p…

PostgreSQL 视图、子查询

视图 表里面保存的是实际数据&#xff0c;视图里面保存的是SELECT语句(视图本身不存储数据)。 从视图中读取数据&#xff0c;此时视图在内部执行SELECT语句&#xff0c;创建一张临时表。 使用视图的好处&#xff1a;其一&#xff0c;视图不保存数据&#xff0c;节省存储设备…

GD32F307 DAC 输出波形

文章目录DACDAC_CTL 控制寄存器定时器TIMERx_CTL1 控制寄存器改变波形频率DMADMA和外设配合DMA_CHxCNT计数寄存器波形曲线总结源码DAC 如下面框图所示&#xff0c;使能外部触发后&#xff08;通过设置 DAC_CTL 寄存器的 DTENx 位&#xff09;&#xff0c; 当已经选择的触发事件…

GD32 ADC采集电压

文章目录ADCTIMDMA其他一些初始化main总结使用芯片为GD32F307 ADC 连续转换模式&#xff0c;可以运行在规则组通道上&#xff0c;一旦相应软件触发或者外部触发产生&#xff0c;ADC就会采样和转换规定的通道。 采样时间&#xff0c;每个通道可以用不同的时间采样。ADC使用若…

DAC、ADC、FFT使用总结

目录计算公式波形生成DAC波形频率ADC采样时间离散傅里叶变换DFTFFT计算公式 DAC、ADC、FFT之间有些参数环环相扣&#xff0c;所以先整合一下公式。 1.系统时钟周期72MHZ。 2.定时器的单个时钟周期。 3.定时器的触发周期。 4.正弦波一个周期的时间&#xff0c;其中N为正弦波一…

c++代码根据点位连线_邹军:数控车倒角C与自动倒圆角R编程方法

提示&#xff1a;点击上方↑↑"数控达人"即可每天免费订阅【邹军&#xff0c;十多年数控工作经验&#xff0c;现自创一套有理论&#xff0c;有干货&#xff0c;还有方法论做支撑的实战编程教程(PDF)&#xff0c;从而让你编写程序就像做填空题一样简单。在没有人指引你…

不愿意和别人打交道_始终和人保持距离,最不合群的3星座,孤僻却有真本事,能成大事...

始终和人保持距离&#xff0c;最不合群的3星座&#xff0c;孤僻却有真本事&#xff0c;能成大事巨蟹座巨蟹座的人真的是天生孤僻&#xff0c;他们始终和人保持距离&#xff0c;也不喜欢跟别人打交道&#xff0c;最怕就是应酬的事&#xff0c;看起来很不合群&#xff0c;但是巨蟹…

stc15w4k32s4芯片引脚图片_单片机引脚功能初识及提高(3)

40个接口我们已经了解了29个了&#xff0c;在开始我们 今天的内容之前&#xff0c;我们先对之前的内容总结一下。图片来源网络最小系统电源部分(20脚GND,40脚VCC[5v])复位部分(9脚&#xff0c;给高电平进行复位)下载部分(ISP下载接6&#xff0c;7&#xff0c;8脚&#xff0c;ch…

tsd3dmapper软件使用方法_TOYO模组选型软件使用方法

直线模组选型对于机械工程师和采购人员来说&#xff0c;是最基础的硬性要求。直线滑台模组选型中性能是其中之一&#xff0c;还要根据需求考虑&#xff1a;相对应的&#xff0c;在选购直线滑台模组时&#xff0c;先根据下面几点需求来断定直线滑台模组的详细参数需求。可以参考…

pdf从结构新建书签_强力推荐一款PDF神器

某阅读器作为一款在全球范围内流行的PDF阅读器&#xff0c;能够快速打开、浏览、审阅、注释、签署及打印任何PDF文件&#xff0c;具有轻快、高效、安全等特性&#xff0c;是目前一款带有PDF创建功能的阅读器。此外&#xff0c;它以安全著称&#xff0c;从底层技术、应用设计、功…

二元相图软件_Materials Studio 领先的材料模拟软件

BIOVIA MATERIALS STUDIO拥有完善的建模和模拟工具&#xff0c;能够帮助材料科学与化学领域的研究者对材料中原子、分子结构与性质、性能间的关系进行预测。利用Materials Studio&#xff0c;各工业领域的研究者能够对诸多类型的材料&#xff0c;如制药、催化剂、高分子及复合材…

java8 stream 做累加_《Java 8 in Action》Chapter 1:为什么要关心Java 8

自1998年 JDK 1.0(Java 1.0) 发布以来&#xff0c;Java 已经受到了学生、项目经理和程序员等一大批活跃用户的欢迎。这一语言极富活力&#xff0c;不断被用在大大小小的项目里。从 Java 1.1(1997年) 一直到 Java 7(2011年)&#xff0c;Java 通过增加新功能&#xff0c;不断得到…

fabric go sdk 依赖的安装_从这些角度看 Go 是一门很棒的语言

Go 当前引起了很多关注。让我们看一下 Go 好的部分。我最近用 Go 写了一个 SSH 服务器[1]&#xff0c;在其中启动容器。该项目已经发展到很大规模&#xff0c;并且我向 Go 发起了 PR[2]&#xff0c;以修复我发现的错误。在积累了比 “Hello world&#xff01;” 更多的经验之后…

程序win10_win10该文件没有与之关联的程序来执行操作

当初我遇到这个问题的时候&#xff0c;也是一脸懵&#xff01;在度娘那里尝试了许多种方法&#xff0c;都没有得到解决&#xff01;那些方法我就不一一介绍了&#xff0c;百度一大堆&#xff01;下面就来分享一下我解决的办法&#xff01;1.打开默认程序2.找到设置程序访问和计…

node工程默认url_node 爬虫入门实例,简单易懂

前言本文介绍一个 koa 的爬虫项目&#xff0c;受众对象为初学前端不久的小伙伴&#xff0c;通过这个项目能对 node 爬虫有一个简单的认识&#xff0c;也能自己动手写一些简单的爬虫。项目地址&#xff1a;Fe-Icy/firm-spider​github.com启动 koa 服务Koa (koajs) -- 基于 Node…

xshell6 不更新无法使用_世纪金花商联卡无法正常使用 客服:因门店面临改造,涉及品牌、规则每天都在更新...

有效期10年、无消费限制的世纪金花商联卡在半年前开始无法正常使用&#xff0c;11月22日&#xff0c;世纪金花赛高店内200多个零售品牌&#xff0c;只有一个品牌可以无金额限制地正常使用商联卡&#xff0c;世纪金花各门店每日可使用的品牌数量、规则都在变化&#xff0c;什么时…

linux ls 中文乱码_每天一个linux命令:Linux文件类型与扩展名

Linux文件类型和Linux文件的文件名所代表的意义是两个不同的概念。我们通过一般应用程序而创建的比如file.txt、file.tar.gz &#xff0c;这些文件虽然要用不同的程序来打开&#xff0c;但放在Linux文件类型中衡量的话&#xff0c;大多是常规文件&#xff08;也被称为普通文件&…

linux中cooy命令_Linux:CentOS 7中常用的基础命令

对于学习Linux系统来说&#xff0c;命令是必须熟练掌握的第一个部分。Linux系统中的命令有600多个&#xff0c;但常用的基础命令并不多。虽然不同版本的Linux系统的命令稍有不同&#xff0c;但命令的语法与使用方法基本相同&#xff0c;因此读者只要掌握了CentOS 7中常用的基础…