几个PostgreSQL数据库操作总结
创建表
语法:如下
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数据库操作总结的更多相关文章
- PostgreSQL 数据库备份与恢复 pd_dump pg_restore
备份 PG 数据库生成的文件可以有两种,一种是 SQL 文件,一种是二进制文件,二进制文件只能使用 pg_restore 进行恢复. PostgreSQL 数据库操作简要说明 PostgreSQL数据 ...
- postgresql数据库安装及简单操作
自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQL的安装和基本用法,供初次使用者上手.以下内容基于Debian操作系统,其他操作系 ...
- hibernate 操作 Postgresql 数据库报 operator does not exist: integer = character varying
网上的说法如下: Java开发Postgresql 数据库兼容应用的问题,与Oracle有一些不同: Java类型映射数据库类型的不同,Oracle jdbc驱动程序处理Java String类型可正 ...
- C#/Python/MATLAB操作PostgreSQL数据库
PostgreSQL数据库是一个功能非常强大的开源数据库,支持多种SQL特性,非常好用.此外由于结合PostGIS可以实现空间数据库功能,故非常适合GIS领域的使用.本文旨在介绍C#.Python.M ...
- Python 操作 PostgreSQL 数据库
我使用的是 Python 3.7.0 PostgreSQL可以使用psycopg2模块与Python集成. sycopg2是用于Python编程语言的PostgreSQL数据库适配器. psycopg ...
- postgresql数据库学习-win平台下SQLshell基础操作及语法
由于在学习https://www.bilibili.com/video/av24590479小马视频时, up主采用的linux虚拟机进行教学, 而本人采用window7进行操作,故在基础操作和语法上 ...
- 数据库操作之Spring JDBCTemplate(postgresql)
本文总结了两种使用JDBCTemplate进行数据库CRUD操作的例子,我用的是pg,废话不说,直接开始吧. 先贴一张目录结果图吧: 上图中最主要的是配置文件和所需的各种jar包. 一.通过属性文件的 ...
- [转载]php连接postgreSQL数据库及其操作(php5,postgreSQL9)
数据库连接:dbconn.php<?php$conn = pg_connect("host=localhost port=5432 dbname=myd user=postgres p ...
- 访问GitLab的PostgreSQL数据库,查询、修改、替换等操作
1.登陆gitlab的安装服务查看配置文件 cat /var/opt/gitlab/gitlab-rails/etc/database.yml production: adapter: postgre ...
随机推荐
- MySQL常用SQL/函数汇总(持续更新)
自动生成ROWNUN SELECT (@rowNO := @rowNo+1) AS rowno,a.uuid FROM (SELECT * FROM h_log_proc) a,(SELECT @ro ...
- DefaultHttpClient使用
转自:http://username2.iteye.com/blog/1664995 博客分类: java 工具类 javaio ]; } json = JSONObject.fromObject ...
- 500Internal Server Error
在今晚测试wamp的项目时,当我导入一个项目到www目录下时出现如下错误:Internal Server ErrorThe server encountered an internal error o ...
- 读书笔记——《图解TCP/IP》(4/4)
经典摘抄 第八章 应用层协议概要 1.应用协议是为了实现某种应用而设计和创造的协议. 2.TCP/IP的应用层包含了管理通信连接的会话层功能.转换数据格式的表示层功能,还包括与对端主机交互的应用层功能 ...
- CDH商业版本的搭建(hadoop+hive+sqoop)
一:准备工作 1.步骤 1)hadoop ->下载解压 ->修改配置文件 ->hadoop-env JAVA_HOME ->core-site fs.defaultFS had ...
- fseek的使用
一:概述 在官方文档里,对于fseek的描述是 Move to specified position in file,移到文件的某一个特殊位置 二:语法 status = fseek(fileID, ...
- c 生成随机不重复的整数序列
#include <stdio.h> #include <malloc.h> #include <stdlib.h> #include <time.h> ...
- CSS动画控制器
<html> <head> <title>animation</title> <style> div{ width: 100px; heig ...
- ArcGIS API for JavaScript 4.0(一)
原文:ArcGIS API for JavaScript 4.0(一) 最近ArcGIS推出了ArcGIS API for JavaScript 4.0,支持无插件3D显示,而且比较Unity和Sky ...
- zendstudio
如何查看大纲类 1.浏览 ->大纲 2.窗口->显示视图->大纲 在php中 右键 ->源代码->格式,方便我们整理代码