国产数据库-崖山使用介绍

news2025/1/4 9:20:48

本文档基于崖山数据库23.3 个人版本,单机(主备)部署模式的情况下的使用介绍。

数据库实例状态:

· NOMOUNT:仅读取参数文件,不加载数据库

· MOUNT:读取控制文件,加载数据库,但是数据库处于关闭状态

· OPEN:加载并打开数据库

在这里插入图片描述

通过yasboot命令切换不同实例状态:

# 方式一:先关闭然后启动数据库集群至NOMOUNT状态

yasboot cluster stop -c yashandb 
yasboot cluster start -c yashandb -m nomount

# 方式二:一键重启数据库集群至NOMOUNT状态

yasboot cluster restart -c yashandb -m nomount

通过命令命令 yasql user/password 进入数据库实例,查看当前实例状态,SELECT status FROM V$INSTANCE; 可以看到显示状态为 STARTED。

通过sql可以修改数据库实例:

ALTER DATABASE MOUNT;
ALTER DATABASE OPEN;

以下是一些常用的系统表查询

1、判断表是否存在

SELECT COUNT(*) FROM SYS.ALL_TABLES WHERE OWNER = 'XHAO' AND TABLE_NAME = 'YASGIS'

2、获取表分区列名

SELECT ucc.TABLE_NAME,
         uc.CONSTRAINT_NAME,
         ucc.COLUMN_NAME
FROM SYS.ALL_CONSTRAINTS uc
JOIN SYS.ALL_CONS_COLUMNS ucc
    ON uc.CONSTRAINT_NAME = ucc.CONSTRAINT_NAME
WHERE uc.CONSTRAINT_TYPE = 'P'
        AND uc.TABLE_NAME = 'YASGIS'
        AND uc.OWNER = 'XHAO';

CONSTRAINT_TYPE 用于标识约束的类型,常见的约束类型包括:

‘P’:主键约束(Primary Key)

‘U’:唯一约束(Unique)

‘C’:检查约束(Check)

‘F’:外键约束(Foreign Key)

‘R’:引用约束(Referential Integrity)

‘X’:其他约束

3、获取表的空间列名

SELECT F_GEOMETRY_COLUMN FROM MDSYS.GEOMETRY_COLUMNS WHERE F_TABLE_SCHEMA = 'XHAO' AND F_TABLE_NAME = 'YASGIS';

4、获取表的geotype

SELECT "TYPE" FROM MDSYS.GEOMETRY_COLUMNS WHERE F_TABLE_SCHEMA = 'XHAO' AND F_TABLE_NAME = 'TEST_SHP';

5、获取表的空间类型

select st_geometrytype("shape") from XHAO.TEST_SHP limit 1

6、获取表的空间引用

SELECT PROJ4TEXT FROM MDSYS.SPATIAL_REF_SYS WHERE SRID = 4326/*${wkid}*/;

7、获取表的wkid

SELECT SRID FROM MDSYS.GEOMETRY_COLUMNS WHERE F_TABLE_SCHEMA = 'XHAO' AND F_TABLE_NAME = 'YASGIS';
SELECT ST_SRID("GEOM") FROM XHAO.YASGIS LIMIT 1;

8、获取表的空间维度(Z维度/M维度)

SELECT ST_AsBinary("GEOM") from XHAO.YASGIS limit 1;

Z维度:在空间数据(如地理信息系统 GIS)中,几何图形通常表示为点、线或多边形等类型的几何对象。这些对象通常有两个维度(2D),即 X 和 Y(经度和纬度)。在某些应用中,还可能引入第三维度——Z 维度,表示高度、深度或其他与空间位置相关的数值。

geometry.hasZ:判断一个几何对象是否包含Z坐标的方法或属性。如果几何对象是三维的,即包含Z坐标,返回true;如何是二维的,没有Z坐标,返回false。

M维度:在空间数据中,除了常见的 X, Y 和 Z 坐标外,还可以使用一个额外的 M 坐标,通常用于存储一些附加的测量值或时间信息。这种 M 坐标不代表空间位置,而是用于表示与几何对象相关的其他数据。例如长度、重量、时间、温度、道路流量信息、污染物浓度等

geometry.hasM 用来判断一个几何对象是否包含 M 维度。如果几何对象含有 M 坐标(如附加的测量数据),则返回 true;如果没有 M 坐标,则返回 false

9、判断 GEOMETRY_COLUMNS是否存在

 SELECT  COUNT(*) FROM SYS.ALL_TAB_COLS WHERE OWNER = 'MDSYS' AND TABLE_NAME = 'GEOMETRY_COLUMNS'

10、获取表ID

SELECT OBJECT_ID FROM SYS.ALL_OBJECTS WHERE OWNER = 'XHAO' AND OBJECT_NAME = 'YASGIS' AND OBJECT_TYPE = 'TABLE';

以下是对于表的一些操作:

1、创建表

CREATE TABLE XHAO.YASGIS(
	FID INT,
	value VARCHAR(255),
	GEOMETRY ST_GEOMETRY
)

2、新增列(设置not null 需对应列没有存储数据)

ALTER TABLE XHAO.YASGIS ADD ("OID" INT NOT NULL PRIMARY KEY)
ALTER TABLE XHAO.YASGIS DROP COLUMN "GEOM" 
ALTER TABLE XHAO.YASGIS ADD COLUMN "shape" MDSYS.ST_GEOMETRY

3、添加空间索引

CREATE RTREE INDEX XHAO.shape_2326_1_SDIX ON XHAO."TEST_SHP" ("shape")

4、批量写入数据(可以同时写入不同的表)

-- 语句后面必须有subquery  
INSERT ALL INTO XHAO.YASGIS(ID,GEOM) VALUES(1,ST_GEOMFROMTEXT('POINT(1 1)'))
           INTO XHAO.YASGIS(ID,GEOM) VALUES(2,ST_GEOMFROMTEXT('POINT(2 2)'))
           INTO XHAO.YASGIS(ID,GEOM) VALUES(3,ST_GEOMFROMTEXT('POINT(3 3)'))
 		   SELECT * FROM DUAL
--插入不同的表
INSERT ALL INTO area VALUES('00','unknown','unknown')
		   INTO branches VALUES('0002','南山','00','----')
		   INTO branches VALUES('0003','福田','00','----')
		   SELECT * FROM DUAL;

5、JDBC使用

在Java中使用JDBC执行sql,sql中不能以";"结尾,否则会报异常 YAS-04209 ,非法的单词。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2269130.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytest基础01: 入门demo脚本

目录 1 Pytest接口测试 1.1 最简单版hello world 1.2 pytest.ini 2 pytest兼容unittest 3 封装pytest执行入口 1 Pytest接口测试 Pyest是一个可以用于接口测试的强大框架,开源社区也有非常多的pytest插件。 按江湖传统,学习一个新语言或者新框架&…

如何在没有 iCloud 的情况下将数据从 iPhone 传输到 iPhone

概括 您可能会遇到将数据从 iPhone 转移到 iPhone 的情况,尤其是当您获得新的 iPhone 15/14 时,您会很兴奋并希望将数据转移到它。 使用iCloud最终可以做到这一点,但它的缺点也不容忽视,阻碍了你选择它。例如,您需要…

streamlit、shiny、gradio、fastapi四个web APP平台体验

streamlit、shiny、gradio、fastapi四个web APP平台体验 经常被问的问题就是:web APP平台哪个好?该用哪个?刚开始只有用streamlit和shiny,最近体验了一下gradio和fastapi,今天根据自己的体会尝试着回答一下。 使用R语…

HTML5滑块(Slider)

HTML5 的滑块&#xff08;Slider&#xff09;控件允许用户通过拖动滑块来选择数值。以下是如何实现一个简单的滑块组件的详细说明。 HTML5 滑块组件 1. 基本结构 使用 <input type"range"> 元素可以创建一个滑块。下面是基本实现的代码示例&#xff1a; <…

探索 .idea 文件夹:Java Maven 工程的隐形守护者

一、.idea文件夹深度解析&#xff1a;IntelliJ IDEA项目配置的核心 在Java Maven工程的开发环境中&#xff0c;.idea文件夹扮演着举足轻重的角色。这是IntelliJ IDEA项目特有的一个配置文件夹&#xff0c;它包含了项目所需的各种配置信息&#xff0c;以确保项目能够在不同的开发…

遥感图像车辆检测-目标检测数据集

遥感图像车辆检测-目标检测数据集&#xff08;包括VOC格式、YOLO格式&#xff09; 数据集&#xff1a; 链接: https://pan.baidu.com/s/1XVlRTVWpXZFi6ZL_Xcs7Rg?pwdaa6g 提取码: aa6g 数据集信息介绍&#xff1a; 共有 1035 张图像和一一对应的标注文件 标注文件格式提供了…

[Qt] Qt介绍 | 搭建SDK

目录 1. Qt 简介 什么是 Qt&#xff1f; 1.1 引入 1.2 GUI 1.3 Qt 介绍 2. Qt 发展史 3. Qt 支持的平台 4. Qt 版本信息 5. Qt 的优点 6. Qt 应用场景 7. Qt 成功案例 8. Qt 发展前景及就业分析 二. Qt 开发环境搭建 1. 开发工具概述 2.Qt SDK 安装 3.使用 1. …

【机器学习】机器学习的基本分类-自监督学习-对比学习(Contrastive Learning)

对比学习是一种自监督学习方法&#xff0c;其目标是学习数据的表征&#xff08;representation&#xff09;&#xff0c;使得在表征空间中&#xff0c;相似的样本距离更近&#xff0c;不相似的样本距离更远。通过设计对比损失函数&#xff08;Contrastive Loss&#xff09;&…

xterm + vue3 + websocket 终端界面

xterm.js 下载插件 // xterm npm install --save xterm// xterm-addon-fit 使终端适应包含元素 npm install --save xterm-addon-fit// xterm-addon-attach 通过websocket附加到运行中的服务器进程 npm install --save xterm-addon-attach <template><div :…

记一次护网通过外网弱口令一路到内网

视频教程在我主页简介或专栏里 目录&#xff1a; 资产收集 前期打点 突破 完结 又是年底护网季&#xff0c;地市护网有玄机&#xff0c;一路磕磕又绊绊&#xff0c;终是不负领导盼。 扯远了-_-!!&#xff0c;年底来了一个地市级护网&#xff0c;开头挺顺利的&#xff0c…

XIAO ESP32 S3网络摄像头——2视频获取

本文主要是使用XIAO Esp32 S3制作网络摄像头的第2步,获取摄像头图像。 1、效果如下: 2、所需硬件 3、代码实现 3.1硬件代码: #include "WiFi.h" #include "WiFiClient.h" #include "esp_camera.h" #include "camera_pins.h"// 设…

uniapp:微信小程序文本长按无法出现复制菜单

一、问题描述 在集成腾讯TUI后&#xff0c;为了能让聊天文本可以复制&#xff0c;对消息组件的样式进行修改&#xff0c;主要是移除下面的user-select属性限制&#xff1a; user-select: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms…

2025:OpenAI的“七十二变”?

朋友们&#xff0c;准备好迎接AI的狂欢了吗&#xff1f;&#x1f680; 是不是跟我一样&#xff0c;每天醒来的第一件事就是看看AI领域又有什么新动向&#xff1f; 尤其是那个名字如雷贯耳的 OpenAI&#xff0c;简直就是AI界的弄潮儿&#xff0c;一举一动都牵动着我们这些“AI发…

无人机频射信号检测数据集,平均正确识别率在94.3%,支持yolo,coco json,pasical voc xml格式的标注,364张原始图片

无人机频射信号检测数据集&#xff0c;平均正确识别率在94.3&#xff05;&#xff0c;支持yolo&#xff0c;coco json&#xff0c;pasical voc xml格式的标注&#xff0c;364张原始图片 可识别下面的信号&#xff1a; 图像传输信号LFST &#xff08;Image_Transmission_sign…

柱状图中最大的矩形 - 困难

************* c topic: 84. 柱状图中最大的矩形 - 力扣&#xff08;LeetCode&#xff09; ************* chenck the topic first: Think about the topics I have done before. the rains project comes:盛最多水的容器 - 中等难度-CSDN博客https://blog.csdn.net/ElseWhe…

第17篇 使用数码管实现计数器___ARM汇编语言程序<四>

Q&#xff1a;如何使用定时器实现数码管循环计数器&#xff1f; A&#xff1a;DE1-SoC_Computer系统有许多硬件定时器&#xff0c;本次实验使用A9 Private Timer定时器实现延时&#xff1a;定时器首先向Load寄存器写入计数值&#xff0c;然后向Control寄存器中的使能位E写1来启…

SSM 进销存系统

&#x1f942;(❁◡❁)您的点赞&#x1f44d;➕评论&#x1f4dd;➕收藏⭐是作者创作的最大动力&#x1f91e; &#x1f496;&#x1f4d5;&#x1f389;&#x1f525; 支持我&#xff1a;点赞&#x1f44d;收藏⭐️留言&#x1f4dd;欢迎留言讨论 &#x1f525;&#x1f525;&…

通过Cephadm工具搭建Ceph分布式存储以及通过文件系统形式进行挂载的步骤

1、什么是Ceph Ceph是一种开源、分布式存储系统&#xff0c;旨在提供卓越的性能、可靠性和可伸缩性。它是为了解决大规模数据存储问题而设计的&#xff0c;使得用户可以在无需特定硬件支持的前提下&#xff0c;通过普通的硬件设备来部署和管理存储解决方案。Ceph的灵活性和设计…

【Rust自学】8.4. String类型 Pt.2:字节、标量值、字形簇以及字符串的各类操作

8.4.0. 本章内容 第八章主要讲的是Rust中常见的集合。Rust中提供了很多集合类型的数据结构&#xff0c;这些集合可以包含很多值。但是第八章所讲的集合与数组和元组有所不同。 第八章中的集合是存储在堆内存上而非栈内存上的&#xff0c;这也意味着这些集合的数据大小无需在编…

svn分支相关操作(小乌龟操作版)

在开发工作中进行分支开发&#xff0c;涉及新建分支&#xff0c;分支切换&#xff0c;合并分支等 新建远程分支 右键选择branch/tagert按钮 命名分支的路径名称 点击确定后远程分支就会生成一个当时命名的文件夹&#xff08;开发分支&#xff09; 分支切换 一般在开发阶段&a…