达梦数据库操作以及报错修改
执行失败(语句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应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
在WSL2的Ubuntu镜像中安装Docker
Docker官网链接: https://docs.docker.com/engine/install/ubuntu/ 1、运行以下命令卸载所有冲突的软件包: for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done2、设置Docker…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
Java毕业设计:WML信息查询与后端信息发布系统开发
JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息࿰…...
scikit-learn机器学习
# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...
逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...
React核心概念:State是什么?如何用useState管理组件自己的数据?
系列回顾: 在上一篇《React入门第一步》中,我们已经成功创建并运行了第一个React项目。我们学会了用Vite初始化项目,并修改了App.jsx组件,让页面显示出我们想要的文字。但是,那个页面是“死”的,它只是静态…...
