我正在尝试从 Postgres 9.4 转储模式,在 Cents 6.5 上运行,但出现错误:
pg_dump:找不到匹配的模式
这是我正在运行的命令:
pg_dump -U postgres -n "OLD-TODELETE-bushes" --verbose site > output_nf
Run Code Online (Sandbox Code Playgroud)
我对此有点困惑,因为当我运行时select schema_name from information_schema.schemata,我可以看到架构名称。
如果我为所有模式运行 pg_dump,则按OLD-TODELETE-bushes预期将其转储到文件中。
Postgres 日志中没有错误。
谁有想法?
我有这张桌子:
我正在尝试创建一个更新触发器,每当对or列执行更新时,该触发器就会更新last_updated_on = GETDATE()和last_updated_by = SYSTEM_USER列。step_numberstep_name
我开始创建它
ALTER TRIGGER tr_app_bread_crumbs_afterupdate
ON [dbo].[app_bread_crumbs]
AFTER UPDATE
AS
BEGIN
UPDATE [dbo].[app_bread_crumbs]
SET last_updated_by = SYSTEM_USER,
last_updated_on = GETDATE()
END
Run Code Online (Sandbox Code Playgroud)
但这将一次更新所有行。我正在尝试弄清楚如何指定仅更新last_updated_on和last_updated_by由正在更新的特定行的触发器。
例如,如果他们更新:
UPDATE [dbo].[app_bread_crumbs]
SET step_name = 'DAMAGE' WHERE step_number = 1
Run Code Online (Sandbox Code Playgroud)
触发器应该只更新第一行
trigger sql-server t-sql sql-server-2012 row-modification-time
我正在尝试从 PostgreSQL 数据库users_data_circulation中导出图像文件。该表有一个photo(bytea) 列。
我的命令:
copy (select encode(photo,'hex') from users_data_circulation limit 1)
TO '/tmp/imagetest.hext';
Run Code Online (Sandbox Code Playgroud)
在操作系统中:
$> xxd -p -r /tmp/imagetest.hex > /tmp/imagetest.jpg
$> file /tmp/imagetest.jpg
/tmp/imagetest.jpg: ASCII TEXT
Run Code Online (Sandbox Code Playgroud)
我无法打开jpg文件。我怎样才能把这个文件转换成jpg?
devinim@devinimpostgresql:~$ hexdump -C /tmp/image.hex | more
00000000 5c 5c 33 37 37 5c 5c 33 33 30 5c 5c 33 37 37 5c |\\377\\330\\377\|
00000010 5c 33 34 30 5c 5c 30 30 30 10 4a 46 49 46 5c 5c |\340\\000.JFIF\\|
00000020 30 30 …Run Code Online (Sandbox Code Playgroud) SQL Server 2012。
每当我的表中的记录发生更改时,我都需要使用当前日期和时间更新列 [LastUpdated]。目前我有:
CREATE TRIGGER Trig_LastUpdated ON Contact AFTER UPDATE
AS
SET NOCOUNT ON
UPDATE ct
SET LastUpdated = GETDATE()
FROM Contact ct
INNER JOIN Inserted i
ON ct.IDContact = i.IDContact
Run Code Online (Sandbox Code Playgroud)
但这是递归的,我不希望这样,会导致死锁和其他奇怪的事情。我无法全局关闭递归触发器。我看到 INSTEAD OF 触发器是非递归的,但是如果我这样做,我是否必须检查 Inserted 中的所有其他列以查看它是否已更新,或者 SQL Server 是否会为我处理?做到这一点的最佳方法是什么?
trigger sql-server deadlock sql-server-2012 row-modification-time
我有一个PostgreSQL包含数百个函数的旧数据库模式。我知道其中一些不再使用了,我想删除它们。
查找有时执行哪些过程而哪些不执行的最简单方法是什么?PostgreSQL 中是否有任何关于过程使用的统计数据?
使用的引擎版本为 PostgreSQL 9.5。
FROM提供column_alias,SQL 规范调用这些<derived column list>子句。这就是 postgres 文档对它们的描述,
FROM包含别名的项目的替代名称。别名用于简洁或消除自联接(多次扫描同一个表)的歧义。当提供别名时,它完全隐藏了表或函数的实际名称;例如 givenFROM foo AS f, 的其余部分SELECT必须将此FROM项目称为fnotfoo。如果编写了别名,还可以编写列别名列表来为表的一列或多列提供替代名称。
什么时候需要这些?我什么时候不能只使用 COLUMN 别名?
SELECT t.*
FROM table_name AS t (a,b,c);
Run Code Online (Sandbox Code Playgroud)
对比
SELECT t.col1 AS a, t.col2 AS b, t.col3 AS c
FROM table_name AS t;
Run Code Online (Sandbox Code Playgroud)
这个例子取自@ypercube 选择的答案??这似乎不太有用。
上述上下文中的 FROM 别名不会提供真正的好处,除非您是
这样做似乎依赖于常规t.*堆叠的危害,并增加了晦涩。那么什么时候FROM别名有用呢?
例如,假设我想为 Chicken Ranch 解析这些地址
Chicken Ranch
10511 Homestead Rd
Pahrump, NV 89061
Chicken Ranch
1600 Pennsylvania Avenue
NW Washington, D.C. 20500
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,我都想摆脱Rd和Avenue。例如,在第一种情况下,我想获得“Homestead”,而在第二个“Pennsylvania”中。不过,并非每个地址都有这样的名称。
我正在使用 PostgreSQL 9.5.6。我有空格分隔的多字串,我需要缩短说 3 个字?
我查看了文档,为了使用 substring() 函数,我需要知道要开始提取的字符的索引位置,但我正在使用的字符串长度不同。
我也看过 split_part() 并且只返回一个词。
我怎样才能得到类似的东西:
hello everyone out there somewhere
Run Code Online (Sandbox Code Playgroud)
缩短为
hello everyone out
Run Code Online (Sandbox Code Playgroud) 是否有任何工具/软件可以将数据库中的所有表结构(列名,其数据类型)导出为 pdf/excel/word.txt 文件。额外的图表导出将增加优势。
Microsoft 提供主机两个存储库,
在这种情况下,GDR 代表什么。
SQL Server 2016 SP1 的 GDR 更新包
你也可以在这里看到。
postgresql ×7
sql-server ×3
export ×2
trigger ×2
address ×1
alias ×1
array ×1
bytea ×1
deadlock ×1
erd ×1
functions ×1
linux ×1
pg-dump ×1
statistics ×1
string ×1
t-sql ×1
terminology ×1
update ×1