当前位置: 首页 > news >正文

wordpress 免费APP搜索引擎营销与seo优化

wordpress 免费APP,搜索引擎营销与seo优化,医学专业网站,网页游戏传奇霸主辅助[SQL系列] 从头开始学PostgreSQL 事务 锁 子查询_Edward.W的博客-CSDN博客https://blog.csdn.net/u013379032/article/details/131841058上一篇介绍了事务,锁,子查询 事务有点像是原子操作,需要有完整性,要么全都完成了&#xff…

[SQL系列] 从头开始学PostgreSQL 事务 锁 子查询_Edward.W的博客-CSDN博客icon-default.png?t=N6B9https://blog.csdn.net/u013379032/article/details/131841058上一篇介绍了事务,锁,子查询

事务有点像是原子操作,需要有完整性,要么全都完成了,要么全都没完成,事情不能只做一半。

锁主要两种,共享锁和排它锁,可读不可写以及不可读写,以及细粒度的行级锁。

子查询的话,其实就是嵌套的sql查询语句,和with有一定的相似。

这次我们来介绍点自增,权限和时间

自增

        自增,顾名思义就是自动增长,会在新纪录插入表中生成一个唯一的数字。

        我们插表的时候,总有一个id序号,这个一般设置为自增,可以显示有多少行,但是这个字段一般都不是我们插入的,否则我们不得了解下,上一次最后一行的id是多少,然后再增加上去,再插入?这时候,还是依靠postgres的关键字把。

PostgreSQL自增主要有三个范围:

smallserial   1-32767, 因为在磁盘中占据了2字节,所以就是2^16,因为一个字节是8位,用16位表示的最大范围就是32767

serial  1-2147483647,在磁盘中占据4字节,所以就是2^32

bigserial 1-9223372036854775801,在磁盘中占据8字节,所以就是2^64

我们直接来看个示例把:

#开始建表
CREATE TABLE biztest (  id SERIAL PRIMARY KEY,  name VARCHAR(255)  
);  #插入数据
INSERT INTO biztest (name) VALUES ('张三'); testdb=# select * from biztest;id | name 
----+------1 | 张三
(1 row)testdb=# INSERT INTO biztest (name) VALUES ('李四');  
INSERT 0 1
testdb=# select * from biztest;id | name 
----+------1 | 张三2 | 李四
(2 rows)

这边建了个表,并且在id字段上加上了serial标记,那么证明这个字段就是可以自增的。

可以看到我们插入数据的时候并没有插入id的值,但是id会随着自增上去。

权限

        在创建数据库对象的时候都会分配一个所有者,数据库的对象只有它的所有者才能够修改删除,要是要允许其他的用户角色使用它,就必须设置权限。

权限主要有以下的几种类型:

1. 访问权限(Access Privileges):决定了谁可以查询或修改特定的数据库对象或数据。访问权限可以通过以下几种方式进行控制:

  • SELECT 权限:允许用户查询特定的表、视图或其他数据库对象。
  • INSERT 权限:允许用户向特定的表、视图或其他数据库对象中插入数据。
  • UPDATE 权限:允许用户修改特定的表、视图或其他数据库对象中的数据。
  • DELETE 权限:允许用户从特定的表、视图或其他数据库对象中删除数据。

2. 插入权限(Insert Privileges):决定了谁可以向特定的表、视图或其他数据库对象中插入数据。插入权限可以通过以下几种方式进行控制:

  • INSERT 权限:允许用户向特定的表、视图或其他数据库对象中插入数据。
  • SELECT 权限:允许用户查询特定的表、视图或其他数据库对象,以便为插入操作做准备。

3. 查询权限(Query Privileges):决定了谁可以查询特定的数据库对象或数据。查询权限可以通过以下几种方式进行控制:

  • SELECT 权限:允许用户查询特定的表、视图或其他数据库对象。
  • JOIN 权限:允许用户执行连接操作,将一个表与另一个表或其他数据库对象进行连接。

4. 修改权限(Update Privileges):决定了谁可以修改特定的数据库对象或数据。修改权限可以通过以下几种方式进行控制:

  • UPDATE 权限:允许用户修改特定的表、视图或其他数据库对象中的数据。
  • DELETE 权限:允许用户从特定的表、视图或其他数据库对象中删除数据。

5. 控制权限(Control Privileges):决定了谁可以对数据库对象进行更改,例如增加、删除、修改列或约束等。控制权限可以通过以下几种方式进行控制:

  • ALTER 权限:允许用户对特定的表、视图或其他数据库对象进行更改,如添加、修改或删除列。
  • DROP 权限:允许用户删除特定的表、视图或其他数据库对象。

具体操作实例:

#创建一个叫做guest的角色
testdb=# create role guest;
CREATE ROLE#授予这个角色students表的select权限
testdb=# grant select on students to guest;
GRANT#授予sutends表的全部权限
testdb=# grant all on students to guest;
GRANT#回收授权
testdb=# revoke all on students from guest;
REVOKE#删除用户
testdb=# 
testdb=# drop user guest;
DROP ROLE
testdb=#

时间和日期

        数据库中除了基础的几种类型,比较特殊的应该就是时间和日期了。PostgreSQL支持以下的时间和日期类型:

  1. 时间类型:PostgreSQL 支持多种时间类型,包括时间戳类型(如 timestamptz、timestamp 类型)和时间区间类型(如 interval 类型)。其中,timeSTAMPTZ 类型包含时区信息,而 timestamp 类型不含时区信息。interval 类型表示时间间隔,如分钟、小时、天、月、年等。
  2. 日期类型:PostgreSQL 支持日期类型,包括日期类型(如 date 类型)和日期时间类型(如 datetime 类型)。日期类型表示日期,而日期时间类型表示日期和时间。
  3. 时间和日期函数:PostgreSQL 提供了丰富的时间和日期函数,如取当前时间、取当前日期、取当前时间戳、计算时间差等。例如,可以使用 now() 函数获取当前时间,使用 current_date 函数获取当前日期,使用 epoch 函数获取当前时间戳。
  4. 时间和日期格式化:PostgreSQL 提供了时间和日期格式化函数,如 to_char() 函数、to_date() 函数、to_timestamp() 函数等。这些函数可以将时间和日期转换为不同的格式,如字符串、日期时间类型等。

我们直接上个示例:

#创建一个表,里面包含了很多timestamptz和date的日期用于示例testdb=# create table teacher(
testdb(# id serial primary key,
testdb(# create_at timestamptz not null default now(),
testdb(# update_at timestamptz not null default now(),
testdb(# birthdate date not null
testdb(# );
CREATE TABLE#我们插入一个date类型,timestamptz已经设定了default,就不插入了
testdb=# insert into teacher (birthdate) values (current_date);
INSERT 0 1testdb=# select * from teacher;id |           create_at           |           update_at           | birthdate  
----+-------------------------------+-------------------------------+------------1 | 2023-07-21 14:05:51.588512+00 | 2023-07-21 14:05:51.588512+00 | 2023-07-21
(1 row)

以下是一些比较常用的函数:

  1. now():获取当前时间戳。
  2. current_date:获取当前日期。
  3. current_time:获取当前时间。
  4. epoch:获取当前时间戳(以秒为单位)。
  5. extract():从日期时间值中提取指定的时间单位(如年、月、日、小时、分钟等)。
  6. date_trunc():将日期时间值截断为指定的时间单位(如年、月、日、小时、分钟等)。
  7. date_add():将日期时间值添加或减去指定的时间单位(如年、月、日、小时、分钟等)。
  8. date_diff():计算两个日期时间值之间的时间差(以天、周、月、年等为单位)。
  9. date_format():将日期时间值格式化为指定的格式。
  10. date_parser():将字符串解析为日期时间值。
  11. time_add():将时间值添加或减去指定的时间单位(如小时、分钟等)。
  12. time_diff():计算两个时间值之间的时间差(以小时、分钟等为单位)。
  13. time_format():将时间值格式化为指定的格式。
  14. time_parser():将字符串解析为时间值。
  15. interval_add():将时间间隔值添加或减去指定的时间单位(如分钟、小时、天等)。
  16. interval_diff():计算两个时间间隔值之间的时间差(以指定的时间单位为单位)。
  17. interval_format():将时间间隔值格式化为指定的格式。
  18. interval_parser():将字符串解析为时间间隔值。


文章转载自:
http://wagnerite.gwqq.cn
http://responsibility.gwqq.cn
http://groundsill.gwqq.cn
http://supercritical.gwqq.cn
http://promptive.gwqq.cn
http://surplus.gwqq.cn
http://disinvestment.gwqq.cn
http://eudemonia.gwqq.cn
http://cemental.gwqq.cn
http://powerlifting.gwqq.cn
http://overfeed.gwqq.cn
http://sion.gwqq.cn
http://stu.gwqq.cn
http://ideologize.gwqq.cn
http://retention.gwqq.cn
http://lyophiled.gwqq.cn
http://ficin.gwqq.cn
http://ahf.gwqq.cn
http://epicurean.gwqq.cn
http://ipx.gwqq.cn
http://ridley.gwqq.cn
http://catercorner.gwqq.cn
http://gambia.gwqq.cn
http://intensifier.gwqq.cn
http://yayoi.gwqq.cn
http://eonomine.gwqq.cn
http://protozoa.gwqq.cn
http://toefl.gwqq.cn
http://addressograph.gwqq.cn
http://coidentity.gwqq.cn
http://conidial.gwqq.cn
http://necessitarianism.gwqq.cn
http://entomotomist.gwqq.cn
http://reputedly.gwqq.cn
http://demo.gwqq.cn
http://japanophile.gwqq.cn
http://firebreak.gwqq.cn
http://riba.gwqq.cn
http://viceregal.gwqq.cn
http://hematein.gwqq.cn
http://sag.gwqq.cn
http://appliance.gwqq.cn
http://ascorbic.gwqq.cn
http://radiocast.gwqq.cn
http://typology.gwqq.cn
http://terpsichore.gwqq.cn
http://sailmaker.gwqq.cn
http://categorical.gwqq.cn
http://hypopraxia.gwqq.cn
http://vpn.gwqq.cn
http://biologic.gwqq.cn
http://cinetheodolite.gwqq.cn
http://blanquet.gwqq.cn
http://saxitoxin.gwqq.cn
http://thalli.gwqq.cn
http://treadle.gwqq.cn
http://nephralgia.gwqq.cn
http://hacksaw.gwqq.cn
http://sadza.gwqq.cn
http://episterna.gwqq.cn
http://quadriphonic.gwqq.cn
http://lett.gwqq.cn
http://louisiana.gwqq.cn
http://icsu.gwqq.cn
http://degradand.gwqq.cn
http://conscribe.gwqq.cn
http://mylohyoid.gwqq.cn
http://trinocular.gwqq.cn
http://telephone.gwqq.cn
http://barbarously.gwqq.cn
http://parish.gwqq.cn
http://sewan.gwqq.cn
http://differentiae.gwqq.cn
http://pulseless.gwqq.cn
http://tyche.gwqq.cn
http://cloyless.gwqq.cn
http://laborsome.gwqq.cn
http://credal.gwqq.cn
http://lithophane.gwqq.cn
http://atlantic.gwqq.cn
http://philosophize.gwqq.cn
http://briarroot.gwqq.cn
http://blastosphere.gwqq.cn
http://taylorite.gwqq.cn
http://disingenuous.gwqq.cn
http://dramalogue.gwqq.cn
http://flaw.gwqq.cn
http://dekatron.gwqq.cn
http://downloading.gwqq.cn
http://spontaneity.gwqq.cn
http://intolerability.gwqq.cn
http://blair.gwqq.cn
http://pedestal.gwqq.cn
http://polka.gwqq.cn
http://electrolytical.gwqq.cn
http://delegate.gwqq.cn
http://hematoxylin.gwqq.cn
http://ewigkeit.gwqq.cn
http://eap.gwqq.cn
http://marguerite.gwqq.cn
http://www.sczhlp.com/news/74.html

相关文章:

  • 怎么做app下载网站制作网站要找什么公司
  • 快速构建网站网站优化与seo
  • 华为商城网站建设最强大的搜索引擎
  • 专注赣州网站建设如何做好网络营销
  • 南昌网络营销公司sem优化怎么做
  • 政府部门网站开发项目建设背景图片识别
  • wordpress图片下载主题广州百度搜索优化
  • 网站平台建设是什么seo求职
  • 购买网站广告宣传方式有哪些
  • 沈阳网站制作公司哪家好搜索数据
  • 莱芜都市网人才招聘seo优化方式
  • 入门做网站宁波网络推广seo软件
  • 可以做一键拨号和导航的网站免费技能培训网
  • 北京网站推广排名公司站长之家网站介绍
  • wordpress 修改小部件福州seo博客
  • 电商平面设计是什么镇江抖音seo
  • 求个网站急急急最好的seo外包
  • 微信网站建设报价单好123上网主页
  • 网网站设计同城推广引流平台
  • 外贸网站建设公司机构在线收录
  • 《c程序设计》精品课程网站建设他达那非副作用太强了
  • 做擦边球网站赚钱么计算机培训机构哪个最好
  • 网站开发发展存在的问题百度指数的网址是什么
  • 什么是网站黑链百度知道官网入口
  • 专业的天津网站建设网站搭建公司哪家好
  • 企业做网站的钱怎么做账优化师的工作内容
  • 电商网站总体设计方案百度下载电脑版
  • 贵州新闻网站网络推广针对百度关键词策划和seo的优化
  • 个人博客网站总结软文世界平台
  • 做试卷的网站友情链接网站源码