创建表

语法:如下

create table     table_name     (column_name         column_type(parametes)options,…);

注意:

⑴     SQL语句对大小写不敏感

⑵     通常忽略空白—应该使用空白使SQL命令具有更好的可读性。

⑶     表名和字段不能和SQL的保留字相同

一下示例师范如何创建表cd_collection:

create      table         cd_collection

(

id      int    not null,

title  varchar(50)      not null,

artist        varchar(50)      not null,

year          varchar(50)      not null,

rating       varchar(50)      not null

);

向表中插入数据

语法:如下

按数据库表中列的顺序插入

insert        into           table_name     values(‘value1’,        ‘value2’,   ‘value3’,   …);

不按数据库表中列的顺序出入(特殊插入)

insert        into           table_name     values(column1,       column4) values (‘value1’,       ‘value2’);

在一条insert语句中填入多行数据,使用如下语法

insert        into           table_name     values(‘value1’,        ‘value2’), (‘value3’, ‘value4’);

Notice:     value1 and value2 inserted into first column, value3 and value4 inserted into second column.

insert        into          cd_collection   values(9, ‘Nevermind’, ‘ ’Nirvana’, ‘1991’, ’ ’NULL);

如果处于中间位置的列为空,则需要在insert  语句中显式声明为NULL.

从数据库中检索数据

select       column1, column2, column3   from          table_name     where search_criteria;

column1, column2, column3   表明需要返回的列的列名。

如果需要返回所有列,则可以使用通配符*来显示 匹配搜索条件的所有列。

select * from cd_collection;

select title from cd_collection;

select title, year from cd_collection;

select (title||” (“||year||”) ”) as titleyear from cd_collection;

select * from   cd_collection   where       rating =5;

select * from cd_collection where rating =5 and          year!=2003;

启动postmaster:

$postmaster –D /usr/local/pgsql/data &

在PostgreSQL中创建数据库

在shell提示符下发出如下命令:

#su – postgres

$createdb         database          #在不登陆和不使用psql的情况下创建数据库

#create    database          testdatabase;           #在psql里创建数据库

$psql         testdatabase;           #启动psql程序并链接到testdatabase数据库

在命令行下切换数据库

$\c database_name

在postgres用户下创建允许访问数据库的用户或创建多个新的数据库用户

$createuser     pgtest (with password)

y

y

用postgres用户在命令行创建数据库用户

psql           testdatabase

create user pgtest(with password);

删除数据库用户

$dropuser         pgtest

也可以使用psql登陆到数据库,然后使用drop user 命令

$psql       testdatabase

testdatabase=#       drop user pgtest;

testdatabase=#\q

在PostgreSQL中授予和撤销特权:GRANT  和        REVOKE语句实现

以下是GRANT语句的语法:

GRANT     what_to_grant         ON   where_to_grant      TO    user_name;

下面的语句在数据库testdatabase上授予用户pgtest所有的特权

GRANT     ALL   ON   testdatabase TO      pgtest;

撤销特权

REVOKE   ALL ON testdatabase    FROM       pgtest;

PostgreSQL命令行客户端

psql可以接受若干参数

-h      hostname         链接远程主机hostname(如果数据库服务器不位于本地系统上)

-p n                              指定n为客户端应当连接到的端口号。注意这里是小写的p

-U username             以用户username连接数据库

-W                                在链接数据库后提示输入口令。

-?                                  显示帮助消息

几个PostgreSQL数据库操作总结的更多相关文章

  1. PostgreSQL 数据库备份与恢复 pd_dump pg_restore

    备份 PG 数据库生成的文件可以有两种,一种是 SQL 文件,一种是二进制文件,二进制文件只能使用 pg_restore 进行恢复. PostgreSQL 数据库操作简要说明 PostgreSQL数据 ...

  2. postgresql数据库安装及简单操作

    自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQL的安装和基本用法,供初次使用者上手.以下内容基于Debian操作系统,其他操作系 ...

  3. hibernate 操作 Postgresql 数据库报 operator does not exist: integer = character varying

    网上的说法如下: Java开发Postgresql 数据库兼容应用的问题,与Oracle有一些不同: Java类型映射数据库类型的不同,Oracle jdbc驱动程序处理Java String类型可正 ...

  4. C#/Python/MATLAB操作PostgreSQL数据库

    PostgreSQL数据库是一个功能非常强大的开源数据库,支持多种SQL特性,非常好用.此外由于结合PostGIS可以实现空间数据库功能,故非常适合GIS领域的使用.本文旨在介绍C#.Python.M ...

  5. Python 操作 PostgreSQL 数据库

    我使用的是 Python 3.7.0 PostgreSQL可以使用psycopg2模块与Python集成. sycopg2是用于Python编程语言的PostgreSQL数据库适配器. psycopg ...

  6. postgresql数据库学习-win平台下SQLshell基础操作及语法

    由于在学习https://www.bilibili.com/video/av24590479小马视频时, up主采用的linux虚拟机进行教学, 而本人采用window7进行操作,故在基础操作和语法上 ...

  7. 数据库操作之Spring JDBCTemplate(postgresql)

    本文总结了两种使用JDBCTemplate进行数据库CRUD操作的例子,我用的是pg,废话不说,直接开始吧. 先贴一张目录结果图吧: 上图中最主要的是配置文件和所需的各种jar包. 一.通过属性文件的 ...

  8. [转载]php连接postgreSQL数据库及其操作(php5,postgreSQL9)

    数据库连接:dbconn.php<?php$conn = pg_connect("host=localhost port=5432 dbname=myd user=postgres p ...

  9. 访问GitLab的PostgreSQL数据库,查询、修改、替换等操作

    1.登陆gitlab的安装服务查看配置文件 cat /var/opt/gitlab/gitlab-rails/etc/database.yml production: adapter: postgre ...

随机推荐

  1. Centos下使用Heartbeat实现集群[转]

    Linux 包括 CentOS 下高可用性(HA:High Availability)集群方案很多,而 Heartbeat 是比较常见和性价比比较高的一种。一、硬件及网络连接 群集一般需要2台以上服务 ...

  2. [转载]推荐不伤眼睛的文字背景色 VS背景色

    天天使用电脑要主要保护眼睛.下面介绍下不伤眼睛的文字背景色 苹果绿 RGB 204,255,204 #CCFFCC 杏仁黄 rgb 250 249 222 #FAF9DE 青草绿 rgb 227 23 ...

  3. jquery easyui Combobox 实现 两级联动

    具体效果如下图:

  4. 【Android测试】【第一节】性能——CPU

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/5065083.html 前言 本来打算写完全部的自动化测试之 ...

  5. 【Android测试】【第十一节】Uiautomator——简介

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/4872244.html 前言 在App的测试中,除了单元测试 ...

  6. C++ 简单中文敏感词检测工具类

    具体思路: 1->敏感词库,可从数据库读取,也可以从文件加载. 2->将敏感词转化为gbk编码,因为gbk严格按照字符一个字节,汉字两个字节的格式编码,便于容易切分文字段. 3->将 ...

  7. highchat中的category编程object问题

    设置highchart时的category时我是动态赋值的形式category=cat;cat是['title','title']是X轴的坐标显示但当单击chat的图例时X轴变成了object: ca ...

  8. LightOj1285 - Drawing Simple Polygon(连接多边形各点)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1285 题意:给你一些点,然后把它们用一条线把它们连起来,构成一个多边形,不能有相交,必 ...

  9. Xcode --自动注释插件VVDocumenter-Xcode(配置须知)

    VVDocumenter-Xcode 是由 @onevcat 喵神开发的一个Xcode插件,其作用是在Xcode中输入"///"后自动生成规范的文档注释,的确非常好用而且实用. 百 ...

  10. js保留n位小数

    1.功能:将浮点数四舍五入,取小数点后2位 function toDecimal(num) { var f = parseFloat(num); if (isNaN(f)) { return; } f ...