PostgreSQL学会如何建表

开始使用PostgreSQL之前, 上一节我们说了怎样安装它。

PostgreSQL可能已经安装到你的电脑上了,安装后postgre服务默认在电脑开机时运行启动。

一.了解PostgreSQL的运行

PostgreSQL使用一种客户端/服务器(C/S)模型。

和其他典型的客户端/服务器应用一样,客户端和服务器可以在不同的主机上,这时它们通过 TCP/IP 网络连接通讯。

1.客户端应用是多种多样的,你可以使用很多的工具来连接上它。我们使用的现在有两种 pgAdmin 和 sql命令行工具。

        1.1 pgAdmin

        1.2 sql命令行工具

2.服务器有一个守护进程总是在等待着客户端来连接。

    当一个客户端连接时会运行一个服务器进程,多个客户端连接时会分别对应运行多个服务器进程。

    所以说一次连接就是建立了一次PostgreSQL会话,会话可以是长时的,就是说一个会话可以分别执行多个sql命令。

3.每一个服务器进程,管理数据库文件、接收客户端与数据库的连接,并且代表客户端在数据库上执行操作。

    数据库服务器程序就叫做postgres,这是它的由来。

二.创建一个数据库

首先通过默认用户postpre登录。

一个新的数据库,在我们例子数据库叫 firstdb ,可以使用下面的命令:

create database firstdb; --创建名称为firstdb的数据库

注意创建数据库需要;结尾

如果不产生任何响应则表示该步骤成功。

注意新的数据库,默认可以使用超级用户postgre登录,我们就使用超级用户postgre重新连接新数据库firstdb。

之后试验一下下面的命令:

select version(); -- 输出当前数据库版本信息

select current_date; -- 打印当前日期

select 2 + 2; -- 计算2+2

两个方式执行,哪个都行。

如果使用的是sql命令行工具,psql程序有一些不属于SQL命令的内部命令,以反斜线开头 \,获取各种SQL命令的帮助语法:

  • \h 表示帮助语法 help

   

     firstdb=> \h

  • \q 表示退出psql

       

 firstdb=> \q

三.SQL语言说明


PostgreSQL是一种关系型数据库管理系统(RDBMS)。是一种用于管理存储在关系中的数据的系统。关系是表的数学术语。

现今把数据存储在表里的概念已经快成了固有的常识。

1.单个PostgreSQL服务器实例管理的全部数据库的集合,组成了一个数据库集簇。

2.一个数据库可以分组为多个表,可以与excel表格类比。

3.每个表都是一个行集合,每一行由一组命名列组成,而每一列都有一个特定的数据类型。

四.创建表天气表

指定表的名字weather(天气) 和所有列的名字及类型来创建一个表∶

 

create table weather ( --创建表天气id varchar(20), --id为表的行标识id 1、2、3、4.... varchar(20)为字符数据类型,最大20个字符city varchar(80), -- 城市名词 varchar(80) 为存储最长80个字符的任意字符串的数据类型temp_low int, -- 最低温度 int是整数类型temp_high int, -- 最高温度 int是整数类型prcp real, -- 湿度 real存储单精度浮点数的类型(知道就行,不常用)date date -- 时间字段 就是类型为date的列名字也是date
);
 

-- 这个标志为注释,就是说明,在sql中不会进行执行,会被忽略。

上面的sql命令以及换行符,直到分号才结束。

在 SQL 命令中可以自由使用空白(即空格、制表符和换行符)。

SQL 是对关键字和标识符大小写不敏感的语言。

PostgreSQL支持标准的SQL类型有int、smallint、real、double precision、char(N)、varchar(N)、date、time、timestamp和interval,还支持其他的通用功能的类型和丰富的几何类型。

甚至可以定制任意数量的用户自定义数据类型。因而类型名并不是语法关键字,除了SQL标准要求支持的特例外。

五.创建表城市表

用来保存城市和相关的地理位置:

create table cities ( --创建表城市id varchar(20), --id为表的行标识id varchar(20)为字符数据类型,最大20个字符name varchar(80), --name为城市名称 varchar(80) 为存储最长80个字符的任意字符串的数据类型location point --location地理位置字段 类型point就是一种PostgreSQL特有数据类型的例子(知道就行,不常用)
);

 

看了两个表的创建应该明白了,它的形式都一样,就看我们存储什么。

六.删除城市表

如果你不再需要某个表,或者以不同的形式要重建它,那么你可以用下面的命令删除对应的表。

drop table cities; -- drop 执行会删除表,删除后无法恢复

甚至可以直接删除刚新建的数据库firstdb

drop database firstdb; -- 删除数据库(DROP DATABASE 大小写都有)

当前登录为firstdb数据库,自己不能删除自己的库。

若真要删除可以登录postgres用户删除,因为建库是用postgres用户。

最后

下次说表中增加行和查询表

完毕!

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

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

相关文章

Linux驱动学习笔记(十)

热插拔 1.热插拔:就是带电插拔,即允许用户在不关闭系统,不切断电源的情况下拆卸或安装硬盘,板卡等设备。热插拔是内核和用户空间之间,通过调用用户空间程序实现交互来实现的,当内核发生了某种热拔插事件时…

大模型应用开发第五讲:成熟度模型:从ChatGPT(L2)到未来自主Agent(L4)

大模型应用开发第五讲:成熟度模型:从ChatGPT(L2)到未来自主Agent(L4) 资料取自《大模型应用开发:动手做AI Agent 》。 查看总目录:学习大纲 关于DeepSeek本地部署指南可以看下我之…

Delphi 导入excel

Delphi导入Excel的常见方法可分为两种主流方案:基于OLE自动化操作Excel原生接口和利用第三方组件库。以下为具体实现流程及注意事项: ‌一、OLE自动化方案(推荐基础场景)‌ 该方法通过COM接口调用本地安装的Excel程序&#xff0c…

Selenium的第四天打卡——Selenium浏览器应用(完整版)

Selenium浏览器应用 目录 Selenium浏览器应用 一、浏览器操作示例代码 1.设置浏览器缩放大小 2.浏览器前进和后退 3.浏览器刷新 二、WebDriver常见方法 三、鼠标事件示例 四、键盘事件示例 五、获取断言信息 六、窗口的切换 七、关键注意事项 一、浏览器操作示例代…

PMO价值重构:从项目管理“交付机器”到“战略推手”

在数字化转型浪潮中,项目管理办公室(PMO)正经历着前所未有的角色蜕变。传统上,PMO往往被视为项目管理的“交付机器”,专注于项目的按时交付和资源分配。然而,随着企业对战略执行的重视,PMO正逐渐…

本地依赖库的版本和库依赖的版本不一致如何解决?

我用的 yarn v4 版本,所以以下教程命令都基于yarn 这里假设我报错的库名字叫 XXXXXXXX,依赖他的库叫 AAAAAAAA 排查解决思路分析: 首先查看一下 XXXXXXXX 的依赖关系,执行 yarn why XXXXXXXX 首先我们要知道 yarn 自动做了库…

SQLiteStudio - 免费开源、轻量高效,跨平台的 SQLite 数据库管理工具,代替 Navicat for SQLite

管理 SQLite 数据库就用这款软件,真的早该摒弃破解和盗版的 Navicat 了。 SQLiteStudio 是一款专注于管理 SQLite 数据库 的桌面软件,用于浏览和编辑 SQLite 数据库文件。软件的作者是来自波兰的开发者 Paweł Salawa,他是一位拥有 20 年 Ja…

DeepSeek R1-0528 新开源推理模型(免费且快速)

DeepSeek推出了新模型,但这不是R2! R1-0528是DeepSeek的最新模型,在发布仅数小时后就在开源社区获得了巨大关注。 这个悄然发布的模型DeepSeek R1-0528,已经开始与OpenAI的o3一较高下。 让我来详细介绍这次更新的新内容。 DeepSeek R1-0528 发布 DeepSeek在这次发布中采…

Opera Neon发布该公司首款“AI代理”浏览器

Opera 的浏览器产品组合今日迎来了新成员。Opera Neon 是该公司首款“AI 代理”浏览器,旨在“重新思考浏览器在代理网络中的角色”。开发人员声称,Neon 能够理解用户的意图,并利用 AI 驱动的功能将其转化为行动。 Opera Neon 由三个主要部分…

网络安全之Web渗透加解密

项目基本使用 准备环境:node.js python chrome npm install chrome-remote-interface pip install playwright playwright install chromium pip install mitmproxy ............... 第一步启动cdp.js。 第二步使用python .\cdp_load.py vue_demo,连…

【VSCode-Qt】Docker远程连接的项目UI文件在 VSCode 上无法预览

Docker远程连接的UI文件在 VSCode 上无法预览,通常是因为 VSCode 通过远程开发扩展(Remote - SSH/Docker)连接到 Docker 容器时,某些图形化功能未正确配置或支持。以下是可能原因和解决方案: 原因分析 X11 转发未配置…

【HW系列】—web组件漏洞(Strtus2和Apache Log4j2)

本文仅用于技术研究,禁止用于非法用途。 文章目录 Struts2Struts2 框架介绍Struts2 历史漏洞汇总(表格)Struts2-045 漏洞详解 Log4j2Log4j2 框架介绍Log4j2 漏洞原理1. JNDI 注入2. 利用过程 Log4j2 历史漏洞JNDILDAP 反弹 Shell 流程 Strut…

《深度关系-从建立关系到彼此信任》

陈海贤老师推荐的书,花了几个小时,感觉现在的人与人之间特别缺乏这种深度的关系,但是与一个人建立深度的关系并没有那么简单,反正至今为止,自己好像没有与任何一个人建立了这种深度的关系,那种双方高度同频…

sass基础语法

Sass(Syntactically Awesome Style Sheets)是一种 CSS 预处理器,提供了比原生 CSS 更强大、更灵活的语法功能。它有两种语法格式: Sass(缩进语法,.sass 文件)SCSS(CSS-like 语法&am…

【JavaWeb】基本概念、web服务器、Tomcat、HTTP协议

目录 1. 基本概念1.1 基本概念1.2 web应用程序1.3 静态web1.4 动态web 2. web服务器3. tomcat详解3.1 安装3.2 启动3.3 配置3.3.1 配置启动的端口号3.3.2 配置主机的名称3.3.3 其他常用配置项日志配置数据源配置安全配置 3.4 发布一个网站 4. Http协议4.1 什么是http4.2 http的…

AI in Game,大模型能力与实时音视频技术融合,交出AI应用新答卷

随着AI的技术进步和工具普及,尤其是在这两年的跃进之后,AI在游戏行业内的应用已经逐步由理念设想推向落地实践。从蔡浩宇披露的AI新游《Whispers From The Star》到GDC上各大厂家呈现的游戏AI新亮点,我们看到了更多AI与游戏的结合方式&#x…

Android Studio 2022.2.1.20 汉化教程

查看Android Studio 版本 Android Studio Flamingo | 2022.2.1 Patch 2 下载:https://plugins.jetbrains.com/plugin/13710-chinese-simplified-language-pack----/versions/stable

常见的分词算法

常见的分词方法分类如下: 类型名称说明优缺点1️⃣ 基于空格/标点Word-level以空格或标点划分,如 "Hello, world!" → ["Hello", ",", "world", "!"]✅简单,❌无法处理新词,词…

湖北理元理律师事务所观察:债务优化如何成为民生安全网

据央行2023年报告,中国家庭债务收入比达137.8%。面对债务高压,湖北理元理律师事务所的实践揭示:专业债务规划的价值不仅是减负数字,更是构建社会稳定的微观防线。 一、从“催收恐惧”到“主动管理”的转变 该所服务数据显示&…

服务器密码安全运维解决新思路:凭据管理SMS+双因素SLA认证结合的方案

引言:云服务器安全成本困局 在云计算渗透率突破60%的今天,中小企业正面临严峻的安全悖论:某权威机构数据显示,72%的云上数据泄露事件源于凭据管理不当,而传统安全解决方案的采购成本往往超过中小企业年利润的8%。这种…