爆款云主机低至25.83元/年
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 云聚517 · 好价翼起拼 NEW 爆款云主机低至25.83元/年,参与拼团享更多优惠,拼成得额外优惠券
  • 安全隔离版OpenClaw NEW OpenClaw云服务器专属“龙虾“套餐低至1.5折起
  • 聚力AI赋能 天翼云大模型专项 大模型特惠专区·Token Plan 轻享包低至9.9元起
  • 青云志云端助力计划 NEW 一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云
  • 企业出海解决方案 NEW 助力您的业务扬帆出海,通达全球!
  • 天翼云信创专区 NEW “一云多芯、一云多态”,国产化软件全面适配,国产操作系统及硬件芯片支持丰富
  • 中小企业服务商合作专区 国家云助力中小企业腾飞,高额上云补贴重磅上线
  • 云上钜惠 爆款云主机全场特惠,2核4G只要1.8折起!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

息壤智算

领先开放的智算服务平台,提供算力、平台、数据、模型、应用“五位一体”智算服务体系,构建全流程的AI基础设施能力
AI Store
  • 算力市场
  • 模型市场
  • 应用市场
公共算力服务
  • 裸金属
  • 定制裸金属
训推服务
  • 模型开发
  • 训练任务
  • 服务部署
Token服务
  • 模型广场
  • 体验中心
  • 服务接入
应用托管
  • 应用实例
科研助手
  • 科研智能体
  • 科研服务
  • 开发机
  • 并行计算
大模型
  • DeepSeek-V4-Flash
  • GLM-5.1
  • Qwen3.5-122B-A10B
  • DeepSeek-V3.2(旗舰版)
  • GLM-5(正式版)
智算一体机
  • 智算一体机
智能体引擎
  • 智能体引擎
模型适配专家服务
  • 模型适配专家服务
算力服务商
  • 入驻算力服务商

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场进入AI Store创新解决方案公有云生态专区智云上海应用生态专区
建站工具
  • 新域名服务
  • SSL证书
  • 翼建站
企业办公
  • 安全邮箱
  • WPS 365 天翼云版
  • 天翼企业云盘(标准服务版)
灾备迁移
  • 云管家2.0
  • 翼备份(SaaS版)

定价

协助您快速了解云产品计费模式、价格详情,轻松预估上云成本
价格计算器
  • 动态测算产品价格
定价策略
  • 快速了解计费模式

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼信创云专区
  • 信创云专区
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
培训与认证
  • 天翼云学堂
  • 天翼云认证
开源社区
  • 魔乐社区
  • OpenTeleDB

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 服务保障
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家
我要反馈
  • 建议与反馈
  • 用户体验官
信息公告
  • 客户公告

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2026智能云生态大会
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 息壤智算
  • 产品
  • 解决方案
  • 应用商城
  • 定价
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心
      EasyCoding敏捷开发平台_相关内容
      • 修改存储过程所属 schema
        本页介绍天翼云TeleDB数据库修改存储过程所属schema的语法。 修改不带参数的存储过程schema plaintext teledb CREATE OR REPLACE PROCEDURE public.proc1() AS $$ begin raise notice 'Hello teledbpg'; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb teledb alter procedure public.proc1() set schema myche; ALTER PROCEDURE teledb 修改带参数的存储过程schema plaintext teledb CREATE OR REPLACE PROCEDURE public.proc1(aint int) AS $$ begin raise notice '%',aint; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb alter procedure public.proc1 (int) set schema myche; ALTER PROCEDURE teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        修改存储过程所属 schema
      • OR REPLACE更新存储介绍
        本页介绍天翼云TeleDB数据库使用OR REPLACE更新存储的语法。 带OR REPLACE的作用,在建立存储过程时若存在则替换,建立存储时不带 OR REPLACE关键字,则遇到函数已经存系统则会报错,如下所示。 plaintext teledb select prosrc from pgproc where proname'proc1'; prosrc begin + raise notice 'Hello teledbpg';+ end; + (1 row) teledb CREATE OR REPLACE PROCEDURE proc1() AS $$ begin raise notice 'Hello,teledbpg'; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb select prosrc from pgproc where proname'proc1'; prosrc begin + raise notice 'Hello,teledbpg';+ end; + (1 row) teledb teledb call proc1(); NOTICE: Hello,teledbpg CALL teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        OR REPLACE更新存储介绍
      • Go SDK
        您可使用开源CloudEvents Go SDK发布事件。 前提条件 1. 您已下载Goland等Go研发IDE。 2. 在go.mod中加入依赖。 plaintext require ( github.com/cloudevents/sdkgo/v2 v2.15.1 github.com/google/uuid v1.1.1 ) // 然后执行更新依赖 go mod tidy go mod vendor 注:sdkgo可参考使用版本2.15.1。 签名生成工具 示例代码如下: plaintext package main import ( "bytes" "crypto/hmac" "crypto/sha1" "encoding/base64" "hash" "io" "sort" "strings" ) // Request is used wrap http request type Request struct { Protocol string Port int Method string Pathname string Domain string Headers map[string]string Query map[string]string } // NewRequest is used shortly create Request func NewRequest() (req Request) { return &Request{ Headers: map[string]string{}, Query: map[string]string{}, } } func String(a string) string { return &a } func StringValue(a string) string { if a nil { return "" } return a } type Sorter struct { Keys []string Vals []string } func newSorter(m map[string]string) Sorter { hs : &Sorter{ Keys: make([]string, 0, len(m)), Vals: make([]string, 0, len(m)), } for k, v : range m { hs.Keys append(hs.Keys, k) hs.Vals append(hs.Vals, v) } return hs } // Sort is an additional function for function SignHeader. func (hs Sorter) Sort() { sort.Sort(hs) } // Len is an additional function for function SignHeader. func (hs Sorter) Len() int { return len(hs.Vals) } // Less is an additional function for function SignHeader. func (hs Sorter) Less(i, j int) bool { return bytes.Compare([]byte(hs.Keys[i]), []byte(hs.Keys[j])) < 0 } // Swap is an additional function for function SignHeader. func (hs Sorter) Swap(i, j int) { hs.Vals[i], hs.Vals[j] hs.Vals[j], hs.Vals[i] hs.Keys[i], hs.Keys[j] hs.Keys[j], hs.Keys[i] } / Get the string to be signed according to request @param request which contains signed messages @return the signed string / func GetStringToSign(request Request) (result string) { return String(getStringToSign(request)) } func getStringToSign(request Request) string { resource : StringValue(request.Pathname) queryParams : request.Query // sort QueryParams by key var queryKeys []string for key : range queryParams { queryKeys append(queryKeys, key) } sort.Strings(queryKeys) tmp : "" for i : 0; i < len(queryKeys); i++ { queryKey : queryKeys[i] tmp tmp + "&" + queryKey + "" + StringValue(queryParams[queryKey]) } if tmp ! "" { tmp strings.TrimLeft(tmp, "&") resource resource + "?" + tmp } return getSignedStr(request, resource) } func getSignedStr(req Request, canonicalizedResource string) string { temp : make(map[string]string) for k, v : range req.Headers { if strings.HasPrefix(strings.ToLower(k), "xceb") { temp[strings.ToLower(k)] StringValue(v) } } hs : newSorter(temp) // Sort the temp by the ascending order hs.Sort() // Get the canonicalizedOSSHeaders canonicalizedHeaders : "" for i : range hs.Keys { canonicalizedHeaders + hs.Keys[i] + ":" + hs.Vals[i] + "n" } // Give other parameters values // when sign URL, date is expires date : StringValue(req.Headers["date"]) contentType : StringValue(req.Headers["contenttype"]) contentMd5 : StringValue(req.Headers["contentmd5"]) signStr : StringValue(req.Method) + "n" + contentMd5 + "n" + contentType + "n" + date + "n" + canonicalizedHeaders + canonicalizedResource return signStr } func GetSignature(stringToSign string, secret string) (result string) { h : hmac.New(func() hash.Hash { return sha1.New() }, []byte(StringValue(secret))) io.WriteString(h, StringValue(stringToSign)) signedStr : base64.StdEncoding.EncodeToString(h.Sum(nil)) return String(signedStr) }
        来自:
        帮助文档
        事件总线
        开发参考
        Cloudevents SDK参考
        Go SDK
      • C++ SDK
        开源CloudEvents 未提供C++SDK,但您可以通过发送一个http请求的形式来完成发送事件。 前提条件 1. 您的运行环境已安装libcurl、boost依赖库。支持c++11及以上,若不支持修改对应代码。 2. 下载eventBridgecppsdk.zip,查看示例代码。 签名生成工具 cpp include "EventSignHelper.h" include include include "crypt/hmac.h" include "crypt/sha1.h" include include using namespace std; string get(map m, const string &key) { string value; if (m.find(key) ! m.end()) { value m[key]; } return value; } string implode(const vector &vec, const string &glue) { string res; int n 0; for (const auto &str : vec) { if (n 0) { res str; } else { res + glue + str; } n++; } return res; } string uppercase(string str) { transform(str.begin(), str.end(), str.begin(), [](unsigned char c) { return toupper(c); }); return str; } bool startwith(string src, string prefix) { auto res mismatch(prefix.begin(), prefix.end(), src.begin()); return res.first prefix.end(); } void ltrim(string &s) { s.erase(s.begin(), findif(s.begin(), s.end(), [](unsigned char ch) { return !isspace(ch); })); } // trim from end (in place) void rtrim(string &s) { s.erase(findif(s.rbegin(), s.rend(), [](unsigned char ch) { return !isspace(ch); }) .base(), s.end()); } // trim from both ends (in place) void trim(string &s) { ltrim(s); rtrim(s); } string getCanonicalizedHeaders(const map &headers, const string &prefix "xceb") { stringstream result; for (const auto &item : headers) { if (startwith(item.first, prefix)) { string v item.second; trim(v); result query) { if (query.empty()) { return pathname; } vector tmp; tmp.reserve(query.size()); for (const auto &item : query) { tmp.pushback(string(item.first) + "" + item.second); } return pathname + "?" + implode(tmp, "&"); } string hmacsha1(const string &src, const string &key) { boost::uint8t hashval[sha1::HASHSIZE]; hmac ::calc(src, key, hashval); return base64::encodefromarray(hashval, sha1::HASHSIZE); } // 生成签名 string EventSignHelper::genSign(const string& httpMethod, const map & headers, const string& pathname, const map & query, const string& ak, const string& sk) { string contentmd5 get(headers, "contentmd5"); string contenttype get(headers, "contenttype"); string date get(headers, "date"); stringstream stringToSign; stringToSign << uppercase("POST") << "n" << contentmd5 << "n" << contenttype << "n" << date << "n"; stringToSign << getCanonicalizedHeaders(headers); stringToSign << getCanonicalizedResource(pathname, query); string sign hmacsha1(stringToSign.str(), sk); string token "ceb:" + ak + ":" + sign; return token; }
        来自:
        帮助文档
        事件总线
        开发参考
        Cloudevents SDK参考
        C++ SDK
      • 存储过程修改名称
        本页介绍天翼云TeleDB数据库修改存储过程名称的语法。 修改不带参数的存储过程名称 plaintext teledb CREATE OR REPLACE PROCEDURE proc1() AS $$ begin raise notice 'Hello telebdxpg'; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb alter procedure proc1() rename to proc11; ALTER PROCEDURE teledb 修改带参数的存储过程名称 plaintext teledb CREATE OR REPLACE PROCEDURE proc1(aint int) AS $$ begin raise notice '%',aint; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb alter procedure proc1 (aint int) rename to proc11; ALTER PROCEDURE
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        存储过程修改名称
      • Oracle GUC参数配置
        本页介绍天翼云TeleDB数据库的Oracle GUC参数配置。 session中生效 plaintext SET enableoraclecompatible to ON; 配置某个库默认生效 plaintext alter database teledb set enableoraclecompatible to on; 配置某个用户默认生效 plaintext alter role admin set enableoraclecompatible to on;
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        Oracle 兼容语法
        Oracle GUC参数配置
      • 俘获错误
        本页介绍天翼云TeleDB数据库PL/pgsql控制结构中的俘获处理和获取错误相关信息。 错误俘获处理 plaintext teledb CREATE TABLE texception (id integer not null,nc text); CREATE TABLE teledb create unique index texceptioniduidx on texception using btree(id); CREATE INDEX teledb CREATE OR REPLACE FUNCTION f27(aid integer,anc text) RETURNS TEXT AS teledb $$ teledb$ BEGIN teledb$ INSERT INTO texception VALUES(aid,anc); teledb$ RETURN ''; teledb$ EXCEPTION WHEN OTHERS THEN teledb$ RETURN '执行出错'; teledb$ END; teledb$ $$ teledb LANGUAGE plpgsql; CREATE FUNCTION teledb SELECT f27(1,'teledbpg'); f27 (1 row) teledb SELECT f27(1,'teledbpg'); f27 执行出错 (1 row) 获取错误相关信息 plaintext teledb CREATE OR REPLACE FUNCTION f27(aid integer,anc text) RETURNS TEXT AS teledb $$ teledb$ DECLARE teledb$ vsqlstate text; teledb$ vcontext text; teledb$ vmessagetext text; teledb$ BEGIN teledb$ INSERT INTO texception VALUES(aid,anc); teledb$ RETURN ''; teledb$ EXCEPTION WHEN OTHERS THEN teledb$ GET STACKED DIAGNOSTICS vsqlstate RETURNEDSQLSTATE, teledb$ vmessagetext MESSAGETEXT, teledb$ vcontext PGEXCEPTIONCONTEXT; teledb$ RAISE NOTICE '错误代码 : %',vsqlstate; teledb$ RAISE NOTICE '出错信息 : %',vmessagetext; teledb$ RAISE NOTICE '发生异常语句 : %',vcontext; teledb$ RETURN '错误代码 : 'vsqlstate 'n出错信息 : 'vmessagetext '发生异常语句 : 'vcontext; teledb$
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        PL:pgsql开发
        控制结构
        俘获错误
      • 多字段索引
        insert into tsimpleidx select t,t,t,t from generateseries(1,1000000) as t; INSERT 0 1000000 Time: 4186.401 ms (00:04.186) 多字段索引走非第一字段查询时性能比独立的单字段差。 多字段 plaintext teledb select from tmulidx where f11; f1 f2 f3 f4 +++ 1 1 1 1 (1 row) Time: 1.034 ms teledb select from tmulidx where f21; f1 f2 f3 f4 +++ 1 1 1 1 (1 row) Time: 37.072 ms teledb select from tmulidx where f31; f1 f2 f3 f4 +++ 1 1 1 1 (1 row) Time: 36.229 ms 单字段 plaintext teledb select from tsimpleidx where f11; f1 f2 f3 f4 +++ 1 1 1 1 (1 row) Time: 2.610 ms teledb select from tsimpleidx where f21; f1 f2 f3 f4 +++ 1 1 1 1 (1 row) Time: 3.266 ms teledb select from tsimpleidx where f31; f1 f2 f3 f4 +++ 1 1 1 1 (1 row) Time: 1.316 ms
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DDL操作
        索引管理
        多字段索引
      • 循环语句
        vrandom float8 : random() ; teledb$ BEGIN teledb$ WHILE vrandom > 0.8 LOOP teledb$ RAISE NOTICE '%',vid; teledb$ vid : vid + 1; teledb$ vrandom random(); teledb$ END LOOP; teledb$ END; teledb$ $$ teledb LANGUAGE plpgsql; CREATE FUNCTION teledb SELECT f27(); NOTICE: 1 f27 (1 row) FOR循环 plaintext teledb CREATE OR REPLACE FUNCTION f27() RETURNS VOID AS teledb $$ teledb$ BEGIN teledb$ FOR i IN 1..3 LOOP teledb$ RAISE NOTICE 'i %',i; teledb$ END LOOP; teledb$ END; teledb$ $$ teledb LANGUAGE plpgsql; CREATE FUNCTION teledb SELECT f27(); NOTICE: i 1 NOTICE: i 2 NOTICE: i 3 f27 (1 row) teledb CREATE OR REPLACE FUNCTION f27() RETURNS VOID AS teledb $$ teledb$ BEGIN teledb$ FOR i IN REVERSE 3..1 LOOP teledb$ RAISE NOTICE 'i %',i; teledb$ END LOOP; teledb$ END; teledb$ $$ teledb LANGUAGE plpgsql; CREATE FUNCTION teledb SELECT f27(); NOTICE: i 3 NOTICE: i 2 NOTICE: i 1 f27 (1 row) 使用REVERSE递减。 plaintext teledb CREATE OR REPLACE FUNCTION f27() RETURNS VOID AS teledb $$ teledb$ BEGIN teledb$ FOR i IN 1..8 BY 2 LOOP teledb$ RAISE NOTICE 'i %',i; teledb$ END LOOP; teledb$
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        PL:pgsql开发
        控制结构
        循环语句
      • jsonb应用
        select from tjsonb; id fjsonb + 1 {"col": "pgxz", "col1": 1, "col2": "teledb"} 2 {"col1": 1, "col2": "teledb"} 3 {"col1": 1, "col2": "teledbupdate"} (3 rows) teledb update tjsonb set fjsonb jsonbset( fjsonb , '{col2}' , '"pgxz"' , false ) where id3; UPDATE 1 teledb select from tjsonb; id fjsonb + 1 {"col": "pgxz", "col1": 1, "col2": "teledb"} 2 {"col1": 1, "col2": "teledb"} 3 {"col1": 1, "col2": "pgxz"} (3 rows) jsonb函数应用 jsonbeach() 将 json 对象转变键和值 plaintext teledb select fjsonb from tjsonb where id1; fjsonb {"col": "pgxz", "col1": 1, "col2": "teledb"} (1 row) teledb select from jsonbeach((select fjsonb from tjsonb where id1)); key value + col "pgxz" col1 1 col2 "teledb" (3 rows) jsonbeachtext() 将 json 对象转变文本类型的键和值 plaintext teledb select from jsonbeachtext((select fjsonb from tjsonb where id1)); key value + col pgxz col1 1 col2 teledb (3 rows) rowtojson() 将一行记录变成一个json对象 plaintext teledb create table t1(id int, name varchar); CREATE TABLE teledb insert into t1 values(1,'teledb'),(2,'pgxc'); COPY 2 teledb select from t1; id name + 1 teledb 2 pgxc (2 rows) teledb select rowtojson(t1) from t1; rowtojson {"id":1,"name":"teledb"} {"id":2,"name":"pgxc"} (2 rows)
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        json和jsonb使用
        jsonb应用
      • COLUMN设计
        本页介绍天翼云TeleDB数据库的COLUMN设计规范。 建议能用数值类型的,就不用字符类型。 建议能用varchar(N)就不用char(N),以利于节省存储空间。 建议能用varchar(N)就不用text,varchar。 建议使用default NULL,而不用 default '',以节省存储空间。 建议如有国际货业务的话,使用timestamp with time zone(timestamptz),而不用 timestamp without time zone,避免时间函数在对于不同时区的时间点返回值不同,也为业务国际化扫清障碍。 建议使用NUMERIC(precision,scale)来存储货币金额和其它要求精确计算的数值, 而不建议使用real,double precision。
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        进阶开发
        开发规范
        COLUMN设计
      • 存储过程执行
        本页介绍天翼云TeleDB数据库存储过程执行的语法。 不带参数 plaintext teledb create or replace procedure pnopara() as $$ begin raise notice 'nopara procedure'; end; $$ language plpgsql; CREATE PROCEDURE teledb call pnopara(); NOTICE: nopara procedure CALL teledb 带参数 plaintext teledb create or replace procedure ppara(aint integer) as $$ begin raise notice 'aint %',aint; end; $$ language plpgsql; CREATE PROCEDURE teledb call ppara(1); NOTICE: aint 1 CALL teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        存储过程执行
      • 游标使用
        提取剩下的所有数据 游标顺序往下遍历,提取所有数据 plaintext teledb fetch forward all from teledbcur; id goodsdesc beginunit begincity pubtime amount +++++ 8 旋挖附件35吨 河南省 三门峡市 20151005 10:48:38 9885.95 9 旋挖附件39吨 河南省 三门峡市 20151005 11:38:38 4971.79 10 设备 上海市 上海市 20151005 07:59:35 1784.63 11 普货40吨需13米半挂一辆 上海市 上海市 20151005 08:13:59 1425.64 (4 rows) 反向提取x行数据 plaintext teledb fetch backward 2 from teledbcur; id goodsdesc beginunit begincity pubtime amount +++++ 11 普货40吨需13米半挂一辆 上海市 上海市 20151005 08:13:59 1425.64 10 设备 上海市 上海市 20151005 07:59:35 1784.63 (2 rows) teledb fetch backward 3 from teledbcur; id goodsdesc beginunit begincity pubtime amount +++++ 9 旋挖附件39吨 河南省 三门峡市 20151005 11:38:38 4971.79 8 旋挖附件35吨 河南省 三门峡市 20151005 10:48:38 9885.95 7 旋挖附件38吨 河南省 三门峡市 20151005 10:48:38 9376.8 (3 rows) 游标反向移动,提取x行数据
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        游标使用
      • 删除模式
        本文为您介绍如何删除模式。 plaintext teledb drop schema teledbschemaowner; DROP SCHEMA 当模式中存在对象时,则会删除失败,提示如下。 plaintext teledb create table teledbschemanew.test(id int); CREATE TABLE teledb drop schema teledbschemanew; ERROR: cannot drop schema teledbschemanew because other objects depend on it DETAIL: table teledbschemanew.test depends on schema teledbschemanew HINT: Use DROP ... CASCADE to drop the dependent objects too. 参考如下强制删除,会将模式中的对象也级联删除掉。 plaintext teledb drop schema teledbschemanew cascade; NOTICE: drop cascades to table teledbschemanew.test DROP SCHEMA
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DDL操作
        模式管理
        删除模式
      • 参数模式
        本页介绍天翼云TeleDB数据库PL/pgsql函数的参数模式。 参数模式总共有三种,分别是IN(传入参数,这个是默认方式)、OUT(返回值参数)、INOUT(传入返回值参数),下面介绍这几个参数模式的用法。 IN 模式 IN 模式指的是执行函数时需要输入参数值,如下所示。 plaintext teledb CREATE OR REPLACE FUNCTION f1(IN axm text) RETURNS TEXT AS teledb $$ teledb$ BEGIN teledb$ RETURN axm; teledb$ END; teledb$ $$ teledb LANGUAGE PLPGSQL; CREATE FUNCTION teledb SELECT f1('teledb'); f1 teledb (1 row) teledb CREATE OR REPLACE FUNCTION f1(axm text) RETURNS TEXT AS $$ BEGIN RETURN axm; END; $$ LANGUAGE PLPGSQL; CREATE FUNCTION teledb SELECT from f1('teledb'); f1 teledb (1 row) 上面两种方式定义的参数效果是一样的。 OUT 模式 OUT 模式参数是指定了函数执行时返回的字段名及类型。 plaintext teledb CREATE OR REPLACE FUNCTION f1(OUT axm text) RETURNS TEXT AS teledb $$ teledb$ BEGIN teledb$ axm: 'teledb'; teledb$ END; teledb$ $$ teledb LANGUAGE PLPGSQL; CREATE FUNCTION teledb teledb SELECT from f1(); axm teledb (1 row) 采用OUT模式参数不能用 RETURN 返回,而是要对返回的OUT参数直接赋值。返回值类型与参数的数据类型必需一致。参数名就是返回的字段名。 INOUT 模式 INOUT模式是指参数即传入,同时又指定了返回值的字段名和类型。 plaintext teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        PL:pgsql开发
        参数详细介绍
        参数模式
      • 参数数据类型
        域类型 plaintext teledb CREATE DOMAIN xb AS TEXT CHECK teledb ( teledb( VALUE '男' teledb( OR VALUE '女' teledb( OR VALUE '' teledb( ); CREATE DOMAIN teledb CREATE OR REPLACE FUNCTION f4 (axb public.xb) RETURNS VOID AS teledb $$ teledb$ BEGIN teledb$ RAISE NOTICE 'axb %',axb; teledb$ END; teledb$ $$ teledb LANGUAGE PLPGSQL; CREATE FUNCTION teledb SELECT FROM f4('男'); NOTICE: axb 男 f4 (1 row) teledb SELECT FROM f4('她'); ERROR: value for domain xb violates check constraint "xbcheck" 域类型输入参数值时会检查是否违反规则。 游标类型 plaintext teledb CREATE OR REPLACE FUNCTION f5 (aref refcursor) RETURNS void AS teledb $$ teledb$ DECLARE teledb$ vrec record; teledb$ BEGIN teledb$ OPEN aref FOR SELECT FROM t LIMIT 1; teledb$ FETCH aref INTO vrec; teledb$ RAISE NOTICE 'vrec % ',vrec; teledb$ END; teledb$ $$ teledb LANGUAGE PLPGSQL; CREATE FUNCTION teledb SELECT FROM f5('a'); NOTICE: vrec (1,teledb) f5 (1 row) teledb CREATE OR REPLACE FUNCTION f6 (aref refcursor) RETURNS refcursor AS teledb $$ teledb$ BEGIN teledb$ OPEN aref FOR SELECT FROM t LIMIT 1; teledb$ RETURN aref; teledb$ END; teledb$ $$ teledb LANGUAGE PLPGSQL; CREATE FUNCTION 这里需要开启一个事务 teledb BEGIN; BEGIN teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        PL:pgsql开发
        参数详细介绍
        参数数据类型
      • 返回两个结果的交集
        本文介绍如何在使用SELECT语法时,返回两个结果的交集。 plaintext teledb select from teledbpg intersect select from teledbpg1; id nickname + 3 pg (1 row)
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DML操作
        SELECT语法
        返回两个结果的交集
      • 删除存储过程
        本页介绍天翼云TeleDB数据库删除存储过程的语法。 删除不带参数的存储过程 plaintext teledb CREATE OR REPLACE PROCEDURE proc1() AS $$ begin raise notice 'Hello teledbpg'; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb drop procedure proc1 ( ); DROP PROCEDURE teledb 删除带参数的存储过程 plaintext teledb CREATE OR REPLACE PROCEDURE proc1(aint int) AS $$ begin raise notice '%',aint; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb drop procedure proc1 ( aint int); DROP PROCEDURE teledb 也可以只指定参数的类型即可。 plaintext teledb drop procedure proc1 (int); DROP PROCEDURE teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        删除存储过程
      • 存储过程执行
        本页介绍天翼云TeleDB数据库存储过程执行的语法。 不带参数 plaintext teledb create or replace procedure pnopara() as $$ begin raise notice 'nopara procedure'; end; $$ language plpgsql; CREATE PROCEDURE teledb call pnopara(); NOTICE: nopara procedure CALL teledb 带参数 plaintext teledb create or replace procedure ppara(aint integer) as $$ begin raise notice 'aint %',aint; end; $$ language plpgsql; CREATE PROCEDURE teledb call ppara(1); NOTICE: aint 1 CALL teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V3.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        存储过程执行
      • gin索引
        explain select from ginmul where f12 and f3'20190218 16:59:52.872523'; QUERY PLAN Remote Fast Query Execution (cost0.00..0.00 rows0 width0) Node/s: dn01 > Bitmap Heap Scan on ginmul (cost36.00..40.02 rows1 width90) Recheck Cond: ((f1 2) AND (f3 '20190218 16:59:52.872523'::timestamp without time zone)) > Bitmap Index Scan on ginmulginidx (cost0.00..36.00 rows1 width0) Index Cond: ((f1 2) AND (f3 '20190218 16:59:52.872523'::timestamp without time zone)) (6 rows) 三字段组合索引 plaintext teledb explain select from ginmul where f12 and f3'20190218 16:59:52.872523' and f6'fa627dc16c2bd026150afa0453a0991d'; QUERY PLAN Remote Fast Query Execution (cost0.00..0.00 rows0 width0) Node/s: dn01 > Bitmap Heap Scan on ginmul (cost52.00..56.02 rows1 width90) Recheck Cond: ((f1 2) AND (f3 '20190218 16:59:52.872523'::timestamp without time zone) AND (f6 'fa627dc16c2bd026150afa0453a0991d'::text)) > Bitmap Index Scan on ginmulginidx (cost0.00..52.00 rows1 width0) Index Cond: ((f1 2) AND (f3 '20190218 16:59:52.872523'::timestamp without time zone) AND (f6 'fa627dc16c2bd026150afa0453a0991d'::text)) (6 rows)
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DDL操作
        索引管理
        gin索引
      • 自定义复合类型
        本文为您介绍如何增加一个复合类型。 增加一个复合类型 plaintext teledb create type mytype as (f1 int,f2 varchar(10)); CREATE TYPE
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DDL操作
        自定义复合类型
      • 修改存储过程所属用户
        本页介绍天翼云TeleDB数据库修改存储过程所属用户的语法。 修改不带参数的存储过程所属用户 plaintext teledb CREATE OR REPLACE PROCEDURE public.proc1() AS $$ begin raise notice 'Hello teledbpg'; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb alter procedure proc1() owner to teledbadmin; ALTER PROCEDURE teledb 修改带参数的存储过程所属用户 plaintext teledb CREATE OR REPLACE PROCEDURE proc1(aint int) AS $$ begin raise notice '%',aint; end; $$ LANGUAGE PLPGSQL; CREATE PROCEDURE teledb alter procedure proc1 (int) owner to teledbadmin; ALTER PROCEDURE teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        修改存储过程所属用户
      • 模式名.存储过程名介绍
        本页介绍天翼云TeleDB数据库存储过程名的语法。 建立存储过程,模式名可以指定,也可以不指定,不指定则存放在当前模式下,如上面例子就没有指定模式名,则就存放在当前模式下,如下所示。 plaintext teledb select from pgnamespace; nspname nspowner nspacl ++ pgtoast 10 pgtemp1 10 pgtoasttemp1 10 pgcatalog 10 {teledbUC/teledb,U/teledb} public 10 {teledbUC/teledb,UC/teledb} informationschema 10 {teledbUC/teledb,U/teledb} (6 行记录) teledb show searchpath; searchpath "$user",public (1 行记录) teledb select pgnamespace.nspname,pgproc.prosrc from pgproc,pgnamespace where pgproc.pronamespacepgnamespace.oid and pgproc.proname'proc1'; nspname prosrc + public + begin + raise notice 'Hello,teledbpg';+ end; + (1 row) 因为$user模式不存在,所以存在public模式下。
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        存储过程开发
        存储过程语法介绍
        模式名.存储过程名介绍
      • 事务控制
        本页介绍天翼云TeleDB数据库的事务控制方法。 1. 开始一个事务 plaintext teledb begin; BEGIN 或者 plaintext teledb begin TRANSACTION ; BEGIN 也可以定义事务的级别。 plaintext teledb begin transaction isolation level read committed ; BEGIN 2. 提交事务 会话1访问 plaintext teledb begin; BEGIN teledb delete from bills where id 11; DELETE 1 teledb select from bills; id goodsdesc beginunit begincity pubtime amount +++++ 1 衣服 海南省 三亚市 20151005 09:32:01 3714.15 2 建筑设备 福建省 三明市 20151005 07:21:22 8195.98 5 5 0铲车,后八轮翻斗车 河南省 三门峡市 20151005 07:53:13 6252.91 6 鲜香菇2000斤 河南省 三门峡市 20151005 10:38:29 1828.83 8 旋挖附件35吨 河南省 三门峡市 20151005 10:48:38 9885.95 9 旋挖附件39吨 河南省 三门峡市 20151005 11:38:38 4971.79 3 设备 福建省 三明市 20151005 11:21:54 6351.44 4 普货 福建省 三明市 20151005 15:19:17 7626.41 7 旋挖附件38吨 河南省 三门峡市 20151005 10:48:38 9376.8 10 设备 上海市 上海市 20151005 07:59:35 1784.63 (10 rows) TeleDB也是完全支持ACID特性,没提交前开启另一个连接查询,你会看到是11条记录,这是TeleDB隔离性和多版本视图的实现,如下所示 会话2访问 plaintext teledb
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        进阶开发
        事务控制
      • json和jsonb简介
        本文为您介绍 json和jsonb。 本产品支持非关系数据类型JSON,JSON 数据类型是用来存储JSON(JavaScript Object Notation)数据的。这种数据也可以被存储为text,但是JSON数据类型的优势在于能强制要求每个被存储的值符合JSON规则。 也有很多JSON相关的函数和操作符可以用于存储在这些数据类型中的数据。JSON数据类型有json 和jsonb。它们接受完全相同的值集合作为输入。主要的实际区别是效率。json数据类型存储输入文本的精准拷贝,处理函数必须在每次执行时必须重新解析该数据。而jsonb数据被存储在一种分解好的二进制格式中,它在输入时要稍慢一些,因为需要做附加的转换。但是jsonb在处理时要快很多,因为不需要解析。jsonb也支持索引,这也是一个令人瞩目的优势。
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        json和jsonb使用
        json和jsonb简介
      • UPDATE语法
        select from tupdate ; id name age ++ 1 multicolumn 0 (1 row) shard key禁止更新操作 plaintext teledb update tupdate set id 2 where id 1; ERROR: Distributed column or partition column "id" can't be updated in current version
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DML操作
        UPDATE语法
      • 只查某个DN的数据
        本文介绍只查询某个DN数据的操作。 plaintext teledb execute direct on (dn01) 'select from teledbpg'; id nickname + 1 teledb 1 hello,pgxc 2 TELEDB (3 rows) teledb execute direct on (dn02) 'select from teledbpg'; id nickname + 3 pg 4 (2 rows)
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DML操作
        SELECT语法
        只查某个DN的数据
      • 应用程序语法介绍
        nspname prosrc + public +
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V3.0.0版本产品文档
        开发手册
        PL:pgsql开发
        应用程序语法介绍
      • 异构数据库类型对照表
        与SQL Server对照表 SQL Server TeleDB int int smallint smallint bigint bigint tinyint smallint real real float double precision numeric numeric bit bit char char nchar char varchar varchar nvarchar varchar text text ntext text date date time time datetime timestamp datetime2 timestamp smalldatetime timestamp datetimeoffset timestamp uniqueidentifier uuid image bytea binary bytea varbinary bytea
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        异构数据库类型对照表
      • 删除数据库
        本文为您介绍如何删除数据库。 plaintext 删除数据库teledbdbnew teledb drop database teledbdbnew; 仍有会话连接数据库时,会报错 ERROR: database "teledbdbnew" is being accessed by other users DETAIL: There is 1 other session using the database. 停止该数据库的所有连接,后重新删除数据库 teledb select pgterminatebackend(pid) from pgstatactivity where datname'teledbdbnew'; pgterminatebackend t (1 row) teledb drop database teledbdbnew; DROP DATABASE
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DDL操作
        数据库管理
        删除数据库
      • gist 索引
        本文为您介绍如何使用gist 索引。 注意 此功能需加载插件pgtrgm。 plaintext teledb create extension pgtrgm; CREATE EXTENSION teledb create table ttrgm (id int,trgm text,notrgm text) ; ERROR: relation "ttrgm" already exists teledb create index ttrgmtrgmidx on ttrgm using gist(trgm gisttrgmops); CREATE INDEX
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DDL操作
        索引管理
        gist 索引
      • 聚集查询
        本文介绍如何在使用SELECT语法时进行聚集查询,例如统计记录数、不重复值的记录表,以及求和等。 统计记录数。 plaintext teledb select count(1) from teledbpg; count 5 (1 row) 统计不重复值的记录表。 plaintext teledb select count(distinct id) from teledbpg; count 4 (1 row) 求和。 plaintext teledb select sum(id) from teledbpg; sum 11 (1 row) 求最大值。 plaintext teledb select max(id) from teledbpg; max 4 (1 row) 求最小值。 plaintext teledb select min(id) from teledbpg; min 1 (1 row) 求平均值。 plaintext teledb select avg(id) from teledbpg; avg 2.2000000000000000 (1 row)
        来自:
        帮助文档
        分布式融合数据库HTAP
        私有云产品历史版本
        V2.0.0版本产品文档
        开发手册
        数据库基础开发
        DML操作
        SELECT语法
        聚集查询
      • 1
      • ...
      • 125
      • 126
      • 127
      • 128
      • 129
      • ...
      • 170
      跳转至
      推荐热词
      天翼云运维管理审计系统天翼云云服务平台云服务备份云日志服务应用运维管理云手机云电脑天翼云云hbase数据库电信云大数据saas服务电信云大数据paas服务轻量型云主机天翼云客户服务电话应用编排服务天翼云云安全解决方案云服务总线CSB天翼云服务器配置天翼云联邦学习产品天翼云云安全天翼云企业上云解决方案天翼云产品天翼云视频云存储

      天翼云最新活动

      云聚517 · 好价翼起拼

      爆款云主机低至25.83元/年,参与拼团享更多优惠,拼成得额外优惠券

      安全隔离版OpenClaw

      OpenClaw云服务器专属“龙虾“套餐低至1.5折起

      聚力AI赋能 天翼云大模型专项

      大模型特惠专区·Token Plan 轻享包低至9.9元起

      青云志云端助力计划

      一站式科研助手,海外资源安全访问平台,助力青年翼展宏图,平步青云

      企业出海解决方案

      助力您的业务扬帆出海,通达全球!

      天翼云信创专区

      “一云多芯、一云多态”,国产化软件全面适配,国产操作系统及硬件芯片支持丰富

      中小企业服务商合作专区

      国家云助力中小企业腾飞,高额上云补贴重磅上线

      云上钜惠

      爆款云主机全场特惠,2核4G只要1.8折起!

      产品推荐

      物理机 DPS

      GPU云主机

      镜像服务 IMS

      弹性伸缩服务 AS

      天翼云CTyunOS系统

      公共算力服务

      应用托管

      智算一体机

      知识库问答

      推荐文档

      【2019】633号关于调整非经营性互联网信息服务备案编号的通知

      RDP/VNC访问

      消费消息

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 息壤智算平台
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 天翼云国际站
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2026 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号