大象笔记

知者行之始,行者知之成

Ubuntu 安装 Oracle Instant Client, 并测试 Golang Gorm 读取 Oracle 数据库

准备用 Golang 二次开发一个 MES 系统,需要连接 Oracle 数据库读取数据。 Gorm 官方文档有 Oracle 数据库的连接说明: It is built on top of the Go Driver for Oracle (Godror) https://gorm.io/zh_CN/docs/connecting_to_the_database.html#Oracle-Database 而 Godror 则依赖 ODPI-C 和 Oracle Instant Client, 我发现在 Ubuntu 上安装 Oracle Instant Client 没啥参考文档 (官方 ...

阅读全文...

Oracle 创建只读用户

创建只读用户 -- 创建用户 CREATE USER readonly_user IDENTIFIED BY "password"; -- 授予连接权限 GRANT CONNECT TO readonly_user; -- 授予只读权限(可查询所有表) GRANT SELECT ANY TABLE TO readonly_user; 判断用户是否创建成功 SELECT * FROM all_users WHERE username = 'READONLY_USER'; 能查询到用户即创建成功。 ...

阅读全文...

微信小程序审核变慢,2026年后四天了还没消息

我发现上周末开始微信小程序审核变慢,而且奇慢无比,不知道是发什么疯,2026年前后是秒过,现在变成了等四天都没动静😂 上周六提交的审核,已经这周二了,一点消息也没有。应该不是违规,就是正常的小程序更新,走的正常审核流程,没有加急。 我以为只是我的个例,在某书上发了牢骚,发现很多小程序开发者都在抱怨这个问题,原来是普遍现象。。。 我猜测前几个月审核秒过,应该是用 AI 审核替代了人工审核,估计是伤到了外包审核公司的利益,估计被不可抗力又强制让外包公司去人工审核了。以后搞不好,就是跟软著一个德行了,硬拖你到审核周期的上限。而实际上根本没有排队,只是为了让你交钱加急而已。 哎,国内的这些种种。。。 ...

阅读全文...

Oracle 获取所有数据表的名字,及记录条数

在分析一套 MES 系统的数据表结构,为了方便记录我看了哪些表,还有哪些表没有看。 需要列一个清单,标注是否以查看过。 同时,需要查询出来每个数据表的记录条数,如果记录为 0 ,说明这个表没有被使用,就没有了解的必要了。 SQL 语句 SELECT table_name, num_rows FROM user_tables ORDER BY table_name; 显示所有记录 在 PL/SQL Developer 中 SELECT 时,输出所有行,每次都是只返回几十行,看不到真实有多少行数据。 有点类似 MySQL Workbench 中默认 Select 限制了 1000 条的返回, ...

阅读全文...

MES 系统中的基础概念: Die Wafer Chip

Die (晶粒) 定义:Die(晶粒)是指在半导体制造过程中,从晶圆(Wafer)上切割下来的小块,通常包含一个完整的集成电路(IC)设计,但尚未经过封装。每个die可以独立完成特定的功能。 尺寸:Die的尺寸通常较小,具体取决于设计和功能需求,通常在0.015到0.25毫米之间。 Die 是芯片制造中的一个重要环节,它是从晶圆上切割下来的基本单元,经过封装后形成最终的芯片(Chip)产品。 Wafer (晶圆) 在半导体制造中,首先会制作出晶圆(wafer),然后通过一系列工艺(如光刻、掺杂、蚀刻等)形成多个集成电路结构。接着,这些结构被切割成多个 die (晶粒)。 Chip(芯片) 切割 ...

阅读全文...

MES 系统中的基础概念 LOT 与 BOM

正在了解一套 MES 系统的 Oracle 数据库的表结构。 我发现,如果不了解 MES 系统的基本概念,根本看不懂每个表的具体功能。所以需要整理一下遇到的基础名词。 LOT (批次) LOT(批次,或称批号、批序)。注意这里的 LOT 并不是英文缩写,实际上就是平时用的 a lot of 的 lot 这个单词。 是生产、追溯和质量管理的基本单位。 通过一个成品的批次号,可以向上追溯到它使用了哪个供应商的哪批原材料、哪个半成品批次,向下追溯到它被发往了哪个客户。当出现质量问题时(如客户投诉、内部检验不合格),可以快速、精准地定位问题源头,锁定受影响范围,实现精准召回,最小化损失。 当工单开始执 ...

阅读全文...

oracle 通过 sql 查询当前 oracle 的版本号

想查询一下远端 oracle 数据库的版本号,方便判断该使用哪个版本的依赖库,可以通过执行 SQL 获取到: SELECT * FROM v$version; 例如,返回结果: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production PL/SQL Release 11.2.0.1.0 - Production CORE 11.2.0.1.0 Production TNS for 64-bit Windows: Version 11.2.0.1.0 - Production NLSRTL Vers ...

阅读全文...

oracle pl/sql developer 客户端查询结果中文显示问号

安装了 Oracle pl/sql developer 客户端,想在里面查看表结构。 但是发现右键表选择查看,查看列时,注释中的中文部分都显示为问号。 而且,select 的查询结果也是同样的问题,中文均显示为问号。看起来是字符编码的配置问题。 解决方法: 查看数据库的字符集 select userenv('language') from dual; 点击菜单中的“会话”-“执行” 即可看到当前数据库的字符集。例如,我本地是: AMERICAN_AMERICA.ZHS16GBK 没想到会有人用 GBK 。。。 修改 Windows 系统变量 在 Windows 系统变量中,新建一个环境变 ...

阅读全文...