达梦数据库操作以及报错修改
执行失败(语句1)
-6105:: 数据类型不匹配
第12 行附近出现错误
插入sql语句
INSERT INTO "by_ioc_rbac"."user_info" ("user_account", "user_name", "birthday", "password", "gender", "mobile", "email", "supplier_id", "user_type", "create_time", "duties", "dispatch_mode", "status", "id_copy", "uuid", "online_status", "update_time", "authentication_status", "id_card"
)
VALUES ('user123', 'John Doe', '1990-01-01', 'securepassword', 1, '1234567890', 'john.doe@example.com', 1001, 2, CURRENT_TIMESTAMP, 'Manager', 1, 1, NULL, 'uuid-12345', 0, CURRENT_TIMESTAMP, 0, '123456789012345678'
);
数据库ddl
CREATE TABLE "by_ioc_rbac"."user_info" ("id" BIGINT NOT NULL AUTO_INCREMENT,"user_account" VARCHAR(90) NULL,"user_name" VARCHAR(90) NULL,"birthday" VARCHAR(90) NULL,"password" VARCHAR(248) NULL,"gender" SMALLINT NULL,"mobile" VARCHAR(32) NULL,"email" VARCHAR(64) NULL,"supplier_id" BIGINT NULL,"user_type" SMALLINT NULL,"create_time" TIMESTAMP NULL,"duties" VARCHAR(2048) NULL,"dispatch_mode" SMALLINT NULL,"status" SMALLINT NULL,"id_copy" BIGINT NULL,"uuid" VARCHAR(90) NULL,"online_status" TINYINT NULL,"update_time" TIMESTAMP NULL,"authentication_status" SMALLINT DEFAULT 0 NULL,"id_card" VARCHAR(128) NULL,CONSTRAINT CONS134219136 PRIMARY KEY ("id")
);
CREATE UNIQUE INDEX INDEX33556236 ON "by_ioc_rbac"."user_info" ("id");
CREATE INDEX "idx_user_info_email" ON "by_ioc_rbac"."user_info" ("email");
CREATE INDEX "idx_user_info_mobile" ON "by_ioc_rbac"."user_info" ("mobile");
CREATE INDEX "idx_user_info_status" ON "by_ioc_rbac"."user_info" ("status");
CREATE INDEX "idx_user_info_supplier_id" ON "by_ioc_rbac"."user_info" ("supplier_id");
CREATE INDEX "idx_user_info_supplier_id_status" ON "by_ioc_rbac"."user_info" ("supplier_id","status");
CREATE INDEX "idx_user_info_user_account" ON "by_ioc_rbac"."user_info" ("user_account");
CREATE INDEX "idx_user_info_user_account_user_name_mobile_email" ON "by_ioc_rbac"."user_info" ("user_account","user_name","mobile","email");
CREATE INDEX "idx_user_info_user_name" ON "by_ioc_rbac"."user_info" ("user_name");
CREATE INDEX "idx_user_info_user_type" ON "by_ioc_rbac"."user_info" ("user_type");
异常
dm.jdbc.driver.DMException: 无效的数据类型at dm.jdbc.driver.DBError.throwException(SourceFile:738)at dm.jdbc.a.a.y.r(SourceFile:623)at dm.jdbc.a.a.f.r(SourceFile:138)at dm.jdbc.a.a.y.z(SourceFile:555)at dm.jdbc.a.a.y.L(SourceFile:536)at dm.jdbc.a.a.a(SourceFile:269)at dm.jdbc.a.a.a(SourceFile:803)at dm.jdbc.driver.DmdbStatement.executeInner(SourceFile:771)at dm.jdbc.driver.DmdbStatement.do_execute(SourceFile:196)at dm.jdbc.driver.DmdbStatement.do_execute(SourceFile:188)at dm.jdbc.driver.DmdbStatement.execute(SourceFile:1341)at org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.execute(JDBCStatementImpl.java:330)at org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.executeStatement(JDBCStatementImpl.java:131)at org.jkiss.dbeaver.model.exec.DBExecUtils.executePersistAction(DBExecUtils.java:361)at org.jkiss.dbeaver.model.impl.edit.AbstractObjectManager.executePersistAction(AbstractObjectManager.java:40)at org.jkiss.dbeaver.model.impl.edit.AbstractCommandContext.executeCommands(AbstractCommandContext.java:198)at org.jkiss.dbeaver.model.impl.edit.AbstractCommandContext.saveChanges(AbstractCommandContext.java:125)at org.jkiss.dbeaver.ui.editors.entity.EntityEditor.lambda$1(EntityEditor.java:392)at org.jkiss.dbeaver.model.exec.DBExecUtils.tryExecuteRecover(DBExecUtils.java:192)at org.jkiss.dbeaver.ui.editors.entity.EntityEditor.saveCommandContext(EntityEditor.java:390)at org.jkiss.dbeaver.ui.editors.entity.EntityEditor$SaveJob.run(EntityEditor.java:1261)at org.jkiss.dbeaver.model.runtime.AbstractJob.run(AbstractJob.java:117)at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
排查思路:
1、首先想到的是插入的字段类型与数据库定义的字段类型不匹配导致的,经过检查insert语句的只字段类型于数据库定义一致。所以不是此原因。
2、因为是数据库存在数据记录,将数据复制为insert语句执行插入也失败。
3、执行update语句也报此异常;
解决方案:
1、复制已有表ddl语句,只保留create语句。建立一个测试表,往测试表插入数据正常。
2、分析原有表的ddl语句发现存在约束"create_time" >= 0
3、数据库最原始的时间字段是DECIMAL类型,存入数据是时间戳。设置了一个大0的约束。之后时间字段为DATETIME类型之后,时间字段的值不能和0比较。所以报错。
总结:数据库数据类型不匹配,分析是否存在约束数据,如果存在则查插入或者更新的数据是否不符合数据表已有的约束信息
数据库操作
1、新增字段
ALTER TABLE "数据库名"."表名" ADD 字段名 字段类型;
-- 举例:
ALTER TABLE "SZZY"."feedback_info" ADD mark VARCHAR2(256);
2、修改字段
alter table test_table modify (test_column varchar(19) not null);
3、删除表中的字段
ALTER TABLE "数据库名"."表名" DROP COLUMN 字段名;
-- 举例:
ALTER TABLE "SZZY"."feedback_info" DROP COLUMN case_id;
4、给字段添加备注
comment ON COLUMN "数据库名"."表名"."字段名" IS '备注名';
-- 举例:
comment ON COLUMN "SZZY"."feedback_info"."mark" IS '标记';
5、给指定字段添加默认值
ALTER TABLE "数据库名"."表名" ALTER COLUMN 字段名 SET DEFAULT 默认值;
-- 举例:
ALTER TABLE "SZZY"."feedback_info" ALTER COLUMN status SET DEFAULT 0;
6、删除指定字段默认值
ALTER TABLE "数据库名"."表名" ALTER COLUMN 字段名 DROP DEFAULT;
-- 举例:
ALTER TABLE "SZZY"."feedback_info" ALTER COLUMN mark DROP DEFAULT;
7、增删改查
-- 查找
SELECT 字段名 FROM "表名" WHERE 条件;
SELECT "id", "case_code" FROM "case_info" WHERE "case_code" LIKE '%民终33%';
===========================================================================
-- 修改
UPDATE 数据库名."表名" SET "字段名" = '修改值' WHERE 条件;
UPDATE SZZY."feedback_info" SET "status" = '1' WHERE id = 1745737045470896128;
===========================================================================
-- 增加
INSERT INTO "数据库名"."表名" (字段列表) VALUES (字段值列表) ;
INSERT INTO "SZZY"."feedback_info" ("func_code","fdbk_person") VALUES ('04', '管理员') ;
===========================================================================
-- 删除
DELETE FROM "数据库名"."表名" WHERE 条件;
DELETE FROM "SZZY"."feedback_info" WHERE "fdbk_date" < '2024-01-11 16:06:40';
8、修改表名
ALTER TABLE 旧表名 RENAME TO 新表名;
ALTER TABLE yuangong RENAME TO employee;
9、增加表注释
comment ON TABLE 表名 is ‘注释’
10、达梦数据库 修改字段名
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
相关文章:
达梦数据库操作以及报错修改
执行失败(语句1) -6105:: 数据类型不匹配 第12 行附近出现错误 插入sql语句 INSERT INTO "by_ioc_rbac"."user_info" ("user_account", "user_name", "birthday", "password", "gender", "mobi…...
江科大/江协科技 STM32学习笔记P21
文章目录 ADC模数转换器ADC简介逐次逼近型ADCSTM32的ADCADC基本结构输入通道转换模式单次转换,非扫描模式连续转换,非扫描模式单次转换,扫描模式连续转换,扫描模式 触发控制数据对齐转换时间校准硬件电路电位器产生可调电压的电路…...
第三方jar自带logback导致本地日志文件不生成
1.问题及解决 这是依赖的jar包,自己有logback,只打印到控制台,导致我们项目里配置的error级别日志不会生成到日志文件中去。ai给的答案是自己控制加载顺序,但很麻烦,--logging.config也不行,最好下了个7z压…...
国产数据库备份恢复实现
数据库备份恢复是数据库高可用的基本能力,如何通过备份数据快速高效的恢复业务并且满足不同场景下的恢复需求,是各数据库厂商需要关注的要点。本文将介绍几种国产数据库的备份恢复功能,以加深了解。 1、数据库备份恢复方案 数据库备份是生产…...
数据仓库: 2- 数据建模
目录 2- 数据建模2.1 维度建模2.1.1 维度建模的基本概念2.1.1.1 事实表 (Fact Table)2.1.1.2 维度表 (Dimension Table)2.1.1.3 维度 (Dimension)2.1.1.4 度量 (Measure) 2.1.2 维度建模的主要模型2.1.2.1 星型模型 (Star Schema)2.1.2.2 雪花模型 (Snowflake Schema)2.1.2.3 星…...
Tomcat 漏洞
一.CVE-2017-12615 1.使用burp抓包 把get改成put jsp文件后加/ 添加完成后访问 木马 然后木马的网址 在哥斯拉测试并且添加 添加成功 然后我们就成功进去啦、 二.弱口令 点击后输入默认用户名、密码:tomcat/tomcat 登陆之后上传一个jsp文件 后缀改成war 然后访问我…...
分布式消息队列Kafka
分布式消息队列Kafka 简介: Kafka 是一个分布式消息队列系统,用于处理实时数据流。消息按照主题(Topic)进行分类存储,发送消息的实体称为 Producer,接收消息的实体称为 Consumer。Kafka 集群由多个 Kafka 实…...
C# Unity 面向对象补全计划 七大原则 之 迪米特法则(Law Of Demeter )难度:☆☆☆ 总结:直取蜀汉
本文仅作学习笔记与交流,不作任何商业用途,作者能力有限,如有不足还请斧正 本系列作为七大原则和设计模式的进阶知识,看不懂没关系 请看专栏:http://t.csdnimg.cn/mIitr,查漏补缺 1.迪米特法则(…...
【C++】—— 类与对象(四)
【C】—— 类与对象(四) 6、赋值运算符重载6.1、运算符重载6.1.1、基础知识6.1.2、调用方法6.1.3、前置 与 后置 的重载6.1.4、注意事项6.1.5、<< 和 >> 运算符重载6.1.5.1、<< 和 >> 基础6.1.5.2、日期类 operator<< 的实…...
Qt无边框窗口,关闭后再show,鼠标等事件不响应问题解决办法
问题描述 使用Qt做了一个无边框界面,关闭后再打开,子控件的点击以及hover效果不可用。 setWindowFlags(windowFlags() | Qt::Dialog | Qt::FramelessWindowHint);//去掉标题栏解决方案: 在网上发现可以通过重写showEvent(QShowEvent* showE…...
StringJoiner更优雅创建含分隔符的字符序列
文章目录 1 why2 what3 how4 练习手段 1 why StringBuilder拼接包含分隔符的字符序列时,分隔符需要一个一个添加,或者需要手动删除末尾冗余的分隔符,代码不美观,不好看。 比如,单个字符串依次拼接时: Stri…...
线程池原理(一)线程池核心概述
更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 线程回顾 创建线程的方式 继承 Thread 类实现 Runnable 接口 创建后的线程有如下状态: NEW:新建的线程,无任何操作 public static void main(String[] args) {Thread…...
关于redisson的序列化配置
由于使用redisson来存储list,返回的数据格式总是不对 原因是配置的序列化格式不对 Bean(value "redissonDtClient") public RedissonClient redissonClient() {RedisConnectionProperties.RedisConfigEntity configEntity properties.getDt();log.inf…...
CentOS安装ax200驱动
如果内核低于5.1需要安装一下内核 详细移步:Centos7安装高版本内核 大致如下: rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm yum --enablerepoelrepo-ke…...
FFMPEG Mac版本编译
Mac下FFMPEG使用 There are a few ways to get FFmpeg on OS X. One is to build it yourself. Compiling on Mac OS X is as easy as any other *nix machine, there are just a few caveats(警告). The general procedure is get the source, then ./configure <flags&g…...
Reactive Programing与“响应式”
将Reactive Programing翻译为“响应式编程”,的确不好理解。什么是Reactive?Reactive被翻译为“反应”,其英文原意是“事物对变化信号的回应、反应”。我热了,空调自动开,这就是空调对我的Reaction,我和空调…...
Pinterest:从 Druid 到 StarRocks,实现 6 倍成本效益比提升
导读: 开源无国界,StarRocks 自开源以来,近3年的时间里已在全球数据技术领域崭露头角。我们欣喜地发现,越来越多的海外用户正在使用并积极推广着 StarRocks。为了促进知识共享,StarRocks中文社区将精选优秀文章与大家共…...
代码+视频,R语言VRPM绘制多种模型的彩色列线图
列线图,又称诺莫图(Nomogram),它是建立在回归分析的基础上,使用多个临床指标或者生物属性,然后采用带有分数高低的线段,从而达到设置的目的:基于多个变量的值预测一定的临床结局或者…...
Python 设计模式之工厂函数模式
文章目录 案例基本案例逐渐复杂的案例 问题回顾什么是工厂模式?为什么会用到工厂函数模式?工厂函数模式和抽象工厂模式有什么关系? 工厂函数模式是一种创建型设计模式,抛出问题: 什么是工厂函数模式?为什么…...
数据赋能(171)——开发:数据挖掘——概述、关注焦点
概述 数据挖掘是从大量的数据中,提取隐藏在其中的、事先不知道的、但潜在有用的信息的过程。 数据挖掘是数据分析过程中的一个核心环节。 数据挖掘的主要目的是从大量数据中自动发现隐藏的模式、关联和趋势,以揭示数据的潜在价值。数据挖掘技术可以帮…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
【网络】每天掌握一个Linux命令 - iftop
在Linux系统中,iftop是网络管理的得力助手,能实时监控网络流量、连接情况等,帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...
css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
ssc377d修改flash分区大小
1、flash的分区默认分配16M、 / # df -h Filesystem Size Used Available Use% Mounted on /dev/root 1.9M 1.9M 0 100% / /dev/mtdblock4 3.0M...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
JDK 17 新特性
#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持,不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的ÿ…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
智能AI电话机器人系统的识别能力现状与发展水平
一、引言 随着人工智能技术的飞速发展,AI电话机器人系统已经从简单的自动应答工具演变为具备复杂交互能力的智能助手。这类系统结合了语音识别、自然语言处理、情感计算和机器学习等多项前沿技术,在客户服务、营销推广、信息查询等领域发挥着越来越重要…...
