華為云數據庫 GaussDB的 nvarchar2隱式類型轉換的坑

bigint 與 nvarchar2比較時發生隱式類型轉換的坑

1. 案例分析

假設:

  1. table1有下面兩個字段:id:bigintsource_id nvarchar2(50)
  2. 數據庫中id 的值一定大于 int4 的最大值,例如存在一條單據: id=1947854462980792321source_id= 1947849730132353025

滿足上面兩個條件后,執行下面的sql,一定會報錯:ERROR: Value "1947849730132353025" is out of range for type integer. 這就是因為再進行a.id = p.source_id 這塊計算時,nvarchar2 的source_id 隱式轉換為 int4 失敗導致的。

SELECT a.id, a.source_id, FROM table1 a INNER JOIN (SELECT id, source_id, approve_dt, wf_flg FROM table1 WHERE id = 1947854462980792321) p ON a.id = p.source_id

2. 解決方法:

2.1 方案 1:設置 id 和 source_id 的類型一致

  • 要么都采用 varchar
  • 要么都采用 bigint(但是要注意前端 number 類型超長問題)

2.2 方案 2:寫 sql 手動進行類型轉換

 SELECT a.id, a.source_id, FROM table1 a INNER JOIN (SELECT id, source_id, approve_dt, wf_flg FROM table1 WHERE id = 1947854462980792321) p ON a.id = p.source_id::BIGINT

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/90244.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/90244.shtml
英文地址,請注明出處:http://en.pswp.cn/web/90244.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

spring boot 集成netty,及其一些基本概念

一、基本概念 1、channel:通道,入站或者出站數據的載體 2、ChannelHandler:通道處理器,業務邏輯寫在這里面,netty 5版本將入戰和出站合并成了ChannelHandler 3、ChannelPipeline:通道里的管道,是一個或者多…

7月23日華為機考真題第一題100分

?? 點擊直達筆試專欄 ??《大廠筆試突圍》 ?? 春秋招筆試突圍在線OJ ?? bishipass.com 01. 創業投資收益優化 問題描述 K小姐剛剛大學畢業,手頭有 m m m 元資金想要進行創業投資。她發現了 k k

HTML5 跨文檔通信機制:postMessage API 詳解與應用

postMessage 是 HTML5 規范中定義的跨文檔通信(Cross-Document Messaging)API,其設計目的是解決不同源(協議、域名、端口任一存在差異)的窗口(如 iframe 嵌入的文檔、window.open 創建的新窗口)…

Kafka——Kafka中的位移提交

引言:為什么位移提交至關重要?在Kafka的分布式消息系統中,消費者組(Consumer Group)通過分區分配機制實現負載均衡和容錯,但如何準確記錄每個消費者的消費進度,是保證消息不丟失、不重復的關鍵。…

java設計模式 -【裝飾器模式】

裝飾器模式的定義 裝飾器模式(Decorator Pattern)是一種結構型設計模式,允許向一個現有對象動態添加新功能,同時不改變其結構。它通過創建包裝對象(裝飾器)來包裹原始對象,并在保持原始對象方法…

手寫字體生成器:一鍵模擬真實筆跡

軟件介紹 在自媒體創作領域,手寫體文案因其獨特的藝術感而備受青睞。然而,真實的手寫往往效率低下且效果難以保證。今天為大家推薦一款專業的手寫模擬軟件,能夠一鍵生成逼真的手寫字體效果,完美解決創作效率與質量的雙重需求。…

【Android】用 ViewPager2 + Fragment + TabLayout 實現標簽頁切換

文章目錄【Android】用 ViewPager2 Fragment TabLayout 實現標簽頁切換一、引入:什么是 ViewPager2 ?二、ViewPager2 的基礎使用1. 在布局文件 (activity_main.xml)中添加 ViewPager22. 制作一個 Fragment2.1 創建一個布局文件2.2 創建一個 Fragment 類…

嵌入式學習-土堆目標檢測(4)-day28

Pytorch中加載自定義數據集 - VOC其中需要pip install xmltodict#voc_dataset.pyimport os import torch import xmltodict from PIL import Image from torch.utils.data import Dataset import torchvision.transforms as transformsclass VOCDataset(Dataset): def __init_…

Spring MVC上下文容器在Web容器中是如何啟動的(源碼深入剖析)?

文章目錄一、雙容器架構:MVC容器與根容器的關系二、啟動全流程解析1. 啟動流程全景圖2. 初始化根容器(Root WebApplicationContext)2.1 Tomcat 中啟動入口源碼解析2.2 Spring 根上下文啟動源碼解析3. 初始化 MVC 容器(DispatcherS…

【iOS】編譯和鏈接、動靜態庫及dyld的簡單學習

文章目錄編譯和鏈接1??核心結論:一句話區分2??編譯過程:從源代碼到目標文件(.o)2.1 預處理(Preprocessing):“替換變量復制粘貼”2.2 編譯(Compilation):…

金山辦公WPS項目產品總監陳智新受邀為第十四屆中國PMO大會演講嘉賓

全國PMO專業人士年度盛會珠海金山辦公軟件有限公司WPS項目產品總監 陳智新先生 受邀為“PMO評論”主辦的2025第十四屆中國PMO大會演講嘉賓,演講議題為:中小團隊PMO的成長之路,敬請關注!議題簡要:在競爭激烈、需求多變的…

web安全 | docker復雜環境下的內網打點

本文作者:Track-syst1m一.前言本文涉及的相關漏洞均已修復、本文中技術和方法僅用于教育目的;文中討論的所有案例和技術均旨在幫助讀者更好地理解相關安全問題,并采取適當的防護措施來保護自身系統免受攻擊。二.大概流程1. 外網打點? 漏洞利…

iTwin 幾何屬性獲取

面積體積半徑獲取幾何屬性,如面積,體積,半徑,可以使用getMassProperties這個接口async onGetMassProperty(){const vp IModelApp.viewManager.selectedView;const iModel vp?.iModel;if (!iModel) return;console.log("iM…

OpenLayers 快速入門(九)Extent 介紹

看過的知識不等于學會。唯有用心總結、系統記錄,并通過溫故知新反復實踐,才能真正掌握一二 作為一名摸爬滾打三年的前端開發,開源社區給了我飯碗,我也將所學的知識體系回饋給大家,助你少走彎路! OpenLayers…

LeetCode 121. 買賣股票的最佳時機 LeetCode 122. 買賣股票的最佳時機II LeetCode 123.買賣股票的最佳時機III

LeetCode 121. 買賣股票的最佳時機嘗試一:暴力解決方法常用兩個指針去遍歷prices數組,dp[i]用于記錄在第i天所獲得的最大利潤。時間復雜度是O(N^2),超出時間限制。Codeclass Solution(object):def maxProfit(self, prices):"""…

【LeNet網絡架構】——深度學習.卷積神經網絡

目錄 1 MLP 2 LeNet簡介 3 Minst數據集 3.1 MINST數據集簡介 3.2 MNIST數據集的預處理 4 LeNet手寫數字識別 LeNet由Yann Lecun 提出,是一種經典的卷積神經網絡,是現代卷積神經網絡的起源之一。Yann將該網絡用于郵局的郵政的郵政編碼識別&#xff…

Python筆記完整版

常用pip源 (1)阿里云 http://mirrors.aliyun.com/pypi/simple/(2)豆瓣 http://pypi.douban.com/simple/(3)清華大學 https://pypi.tuna.tsinghua.edu.cn/simple/(4)中國科學技術大學…

2025 鴻蒙創新賽又來了,萬少教你如何強勢切入 HarmonyOS AI特性

2025 鴻蒙創新賽又來了,萬少教你如何強勢切入 前言 ? 2025 華為HarmonyOS 創新賽又來了,創新賽是鴻蒙生態最大規模開發者官方賽事,最高獲百萬激勵。 參賽資格 面向所有開發者開放以隊伍的形式來參加,可以一個人報名一個隊伍&a…

【智能模型系列】Unity通過訪問Ollama調用DeepSeek模型進行本地部署

【智能模型系列】Unity通過訪問Ollama調用DeepSeek模型進行本地部署 目錄 一、前言 二、環境準備 三、核心代碼解析 1、參數配置 2. CallDeepSeek.cs - API交互控制器 3、 MainPanel.cs - 用戶界面控制器 四、源碼 一、前言 在本教程中,我將分享如何在Unity中集成本地…

什么是5G-A三防平板?有什么特點?哪些領域能用到?

在工業自動化與數字化轉型浪潮中,三防平板電腦已成為“危、急、特”場景的核心工具。這類設備不僅具備堅固耐用的物理防護特性,更融合了先進的通信技術與智能處理能力。而隨著5G技術向5G-A階段演進,新一代三防平板正為行業應用注入全新動能。…