小编Ahm*_*buğ的帖子

从 bytea 列导出图像文件

我正在尝试从 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)

postgresql export postgresql-9.3 bytea

6
推荐指数
1
解决办法
1万
查看次数

Oracle 限制用户使用 USERS 表空间

我有一个架构“TEST”,该架构拥有自己的表空间“TEST”。但是当我在 USERS 表空间上创建索引时,它创建了。如何限制在 ORACLE 数据库中使用 USERS 表空间?

CREATE UNIQUE INDEX "TEST"."INDEX1" ON "TEST"."TESTTABLE" ("TESTNO") 
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT) 
TABLESPACE "USERS"
Run Code Online (Sandbox Code Playgroud)

它成功了,我希望 TEST 用户不能在 USERS 表空间上创建任何对象。它有自己的 TEST 表空间。有什么配置吗?用户应该使用 TABLESPACE "TEST" 而不是 TABLESPACE "USERS" 吗?

oracle oracle-11g-r2 oracle-12c

2
推荐指数
1
解决办法
4855
查看次数

20亿列数据从varchar转int的缺点

我想将一列从 转换varchar(50)bigintint

SQL Server 2012中表有20亿条数据有什么缺点?

数据长度为 11,数据只有数字。它们被存储为 varchar。现在我必须为它创建索引。所以我想我必须转换int为创建索引。该表没有约束和索引。目前没有人使用那张桌子。例如:

data
-----
12345678911
12345678915
12345678911
12345678911
12345678914
12345678913
12345678912
Run Code Online (Sandbox Code Playgroud)

sql-server alter-table sql-server-2012

-2
推荐指数
1
解决办法
218
查看次数