添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
豁达的圣诞树  ·  PostgreSQL ...·  3 月前    · 
犯傻的蟠桃  ·  迁移 Oracle 到 ...·  2 月前    · 
活泼的领结  ·  SELECT·  2 月前    · 

如果想把整个文件或图片存储在数据表的一个字段内,该字段可以选择二进制类型,然后将文件按二进制存储起来,文本文件也可以存在text字段内。

示例如下:

二进制类型bytea 的操作(在最大值内,有内存限制)

1、 创建表

Create table byteatable(id int,obj bytea);

2、 将文件放到coordinator目录下/mnt/postgresql/coord

通过pg_read_binary_file()函数,插入一张图片- 目录:/mnt/postgresql/coord/1.jpg

postgresql =# Insert into byteatablevalues(256,pg_read_binary_file('1.jpg'));
INSERT 0 1 
postgresql =# Insert into byteatablevalues(256,pg_read_binary_file('weibo.txt'));
INSERT 0 1

3、 也可以调用pg_read _file()将一个文本文件存储在一个text字段内

postgresql=#ALTER TABLE byteatable ADD COLUMN body text;
ALTER TABLE
postgresql=#Insert into  byteatable values(256,pg_read_binary_file('weibo.txt'),
pg_read_file('weibo.txt'));
INSERT 0 1
postgresql =# select body from byteatable whereid='256';

注意:函数 pg_read_binary_file() pg_read_file() 中的路径必须是相对路径,默认路径是 coordinator 目录下,并且必须在 coordinator 目录下或者 coordinator 目录的子目录下。