postgresql数据库怎么查询所有的序列名

postgresql数据库怎么查询所有的序列名,第1张

postgresql中一个序列对象通常用于为行或者表生成唯一的标识符。查看序列:psql

\d

命令输出一个数据库对象,包括

Sequence,表,视图和索引。你还可以使用

\ds

命令只查看当前数据库的所有序列。例如:pigdb-#

\ds

List

of

relations

Schema

|

Name

|

Type

|

Owner--------+-----------------------+----------+--------

public

|

author_ids

|

sequence

|

ichexw

public

|

shipments_ship_id_seq

|

sequence

|

ichexw(2

rows)

一、序列号保存在哪

不要被ProductCode迷惑,就算只安装了SQL Server客户端,注册表里也会有这个键值,并不是序列号,DigitalProductID才是,但经过了Base24编码,需要解码才行。

可以看到,对于不同版本,注册表的路径不一样,但是键是一致的。

Express版是免费的,没有序列号,从而注册表也没DigitalProductID这个键。

二、如何解码序列号

利用Powershell 解码

以下powershell函数用于解码/找回SQL Server序列号,在SQL Server 2008, 2008 R2实例上测试通过:

SQL Server 2012序列号里字符的格式发生了变化, data.uValue)[0..16] 不同于SQL Server 2008的 data.uValue)[52..66],同时别忘了改下注册表路径$regPath = "SOFTWARE\Microsoft\Microsoft SQL Server\110\Tools\Setup",修改后如下,在SQL Server 2012实例上测试通过:

调用powershell函数并输出序列号

打开powershell,把上面的函数贴进去,回车,输入Get-SQLServerKey 并回车;

或者把上面的函数存为.ps1文件直接引用:

输出结果如下:

根据powershell 脚本翻译成的Python base24 解码函数:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6460271.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-22
下一篇 2023-03-22

发表评论

登录后才能评论

评论列表(0条)

保存