SQL plus简单使用
查看Oracle数据库全部数据库
数据库名称
SELECT name FROM v$database;
这将返回所有数据库的名称。
视图
通过SQL查询dba_registry视图:
另一个查看数据库的方法是查询dba_registry视图,该视图包含了数据库中安装的所有组件的信息。以下是示例SQL查询:
SELECT comp_name FROM dba_registry;
连接到特定的数据库
-
使用连接字符串:
在SQL*Plus命令行中,您可以使用连接字符串来指定要连接的数据库。连接字符串包括用户名、密码和TNS(Transparent Network Substrate)服务名称或连接描述符。以下是连接到数据库的示例命令:sqlplus username/password@TNS_Service_Name其中,
username是您的数据库用户名,password是密码,TNS_Service_Name是您要连接的数据库的TNS服务名称。 -
使用连接命令:
在SQLPlus中,您还可以在登录后使用CONNECT命令来连接到其他数据库。首先,登录到SQLPlus,然后执行以下命令:CONNECT username/password@TNS_Service_Name这将在当前SQL*Plus会话中切换到指定的数据库。
-
使用SQLPlus启动时的参数:
您还可以通过在启动SQLPlus时提供连接参数来指定要连接的数据库。例如:sqlplus username/password@TNS_Service_Name在这种情况下,SQL*Plus将在启动时尝试连接到指定的数据库。
无论您选择哪种方法,都需要提供用户名、密码和数据库的TNS服务名称或连接描述符来成功连接到数据库。请确保您具有足够的权限来执行所需的操作,并且连接信息正确无误。
SQL 命令未正确结束
如果您收到 “SQL 命令未正确结束” 的错误消息,这通常表示您的 SQL 查询或命令在语法上有问题,导致Oracle数据库无法正确解析和执行该命令。以下是一些常见导致此错误的情况以及如何解决它们:
-
语法错误: 请确保您的 SQL 查询或命令的语法正确。检查是否有拼写错误、缺少关键字、括号不匹配等问题。确保使用正确的大小写,因为 SQL 语句对大小写敏感。
-
分号缺失: SQL 语句通常以分号(;)结尾,表示语句的结束。确保您在每个 SQL 语句的末尾都加上了分号。
SELECT column1, column2 FROM table_name; -
字符串引号不匹配: 如果在 SQL 语句中使用了字符串,确保字符串的引号正确匹配。例如,单引号或双引号应成对出现。
INSERT INTO table_name (column1, column2) VALUES ('John', 'Doe'); -
列名或表名问题: 检查表名和列名是否正确,确保它们存在于数据库中。
-
数据类型不匹配: 如果您正在插入数据,确保插入的值与目标列的数据类型匹配。
-
使用注释: 在 SQL 语句中使用注释时,确保注释的写法是正确的。在 SQL 中,注释可以使用
--(双短横线)或/* */(斜杠和星号)来表示。-- 这是一条注释 SELECT column1 FROM table_name;/* 这也是一条注释 */ SELECT column2 FROM table_name;
未选定行什么意思
“未选定行” 的意思是在执行 SQL 查询时,没有匹配指定条件的行返回结果。这通常发生在以下情况下:
-
条件不匹配: 如果您在
WHERE子句中指定了过滤条件,但没有任何行满足该条件,那么查询将不会返回任何结果。例如,如果您执行以下查询,但没有性别为 ‘F’ 的学生记录,您将得到 “未选定行” 的结果:SELECT * FROM students WHERE gender = 'F'; -
表为空: 如果您查询的表格是空的,也会导致 “未选定行” 的结果。在空表格中没有数据行,因此无法返回任何结果。
-
条件错误: 如果查询中的条件表达式有错误,也可能导致 “未选定行”。请确保查询的条件语法正确。
总之,“未选定行” 表示在执行查询时没有匹配条件的数据行被检索到。这是正常的查询结果,可能表示您的查询条件需要调整或您的数据库中没有符合条件的数据。
如何查看数据下有哪些表
要查看特定数据库下有哪些表格,您可以使用以下方法之一:
-
使用SQLPlus或SQL Developer:
在SQLPlus命令行界面或SQL Developer等数据库客户端工具中,您可以使用以下SQL查询来列出数据库中的所有表格的名称:SELECT table_name FROM user_tables;这将返回当前用户拥有的所有表格的名称。如果您想查看其他用户(schema)的表格,可以使用以下查询:
SELECT table_name FROM all_tables WHERE owner = 'schema_name';其中,
schema_name是目标用户的名称。 -
使用数据字典视图:
您还可以查询数据字典视图来获取有关表格的信息。以下是一个示例查询,返回当前用户的所有表格的名称:SELECT table_name FROM dictionary WHERE table_name LIKE 'USER_TABLES';这将列出与用户相关的所有表格名称。
-
使用Oracle SQL Developer或PL/SQL Developer等图形化工具:
如果您使用图形化数据库管理工具,如Oracle SQL Developer或PL/SQL Developer,通常可以在界面中找到一个“表格”或“对象浏览器”功能,该功能可以列出和浏览数据库中的所有表格。
查询指定表的信息
要查询指定表的信息,您可以使用 SQL 的 DESCRIBE 或 DESC 命令,或者查询数据字典视图来获取有关表格的详细信息。以下是一些方法:
-
使用 DESC 或 DESCRIBE 命令:
在 SQL*Plus 或其他一些 SQL 工具中,您可以使用
DESC或DESCRIBE命令,后跟表格名称,来查看表格的列信息。例如:DESC table_name;或
DESCRIBE table_name;这将列出指定表格的所有列及其数据类型、约束等信息。
-
使用数据字典视图:
您还可以查询数据字典视图来获取有关表格的信息。以下是一个示例查询,返回指定表格的所有列信息:
SELECT column_name, data_type, data_length FROM user_tab_columns WHERE table_name = 'table_name';替换
'table_name'为您要查询的表格的名称。此查询将返回指定表格的列名、数据类型和数据长度等信息。 -
使用图形化工具:
如果您使用图形化数据库管理工具,如 Oracle SQL Developer、PL/SQL Developer 等,通常可以通过在工具的界面中浏览表格来查看表格的详细信息,包括列、主键、外键、索引等。
删除表格怎么写
要删除一个表格(表)以及其中的所有数据,您可以使用 SQL 中的 DROP TABLE 语句。请注意,DROP TABLE 是一个危险的操作,因为它会永久删除表格和其数据,因此在执行此操作之前,请确保您真的想要删除该表格。
以下是删除表格的一般语法:
DROP TABLE table_name;
其中,table_name 是您要删除的表格的名称。
示例:
DROP TABLE students;
这将删除名为 students 的表格以及其中的所有数据。
请注意以下几点:
-
在执行
DROP TABLE操作之前,请确保您具有足够的权限来删除表格。通常,只有表格的所有者或具有足够权限的用户才能执行此操作。 -
DROP TABLE是一个不可逆操作,删除后无法恢复数据。请在执行之前三思而后行。 -
如果表格具有关联的外键约束,您可能需要首先删除这些约束,然后才能删除表格。否则,删除表格可能会失败。
-
某些数据库管理系统可能会有不同的语法或选项,具体取决于您使用的数据库系统。请查阅数据库系统的文档以获取详细信息。
在执行 DROP TABLE 操作时,请谨慎操作,以避免不必要的数据丢失。如果您只想删除表格中的数据而不删除表格本身,可以使用 DELETE 语句来删除数据行,而不是整个表格。
创建表格怎么写
要创建一个表格(表),您可以使用 SQL 中的 CREATE TABLE 语句。以下是一般的 SQL CREATE TABLE 语法,用于创建一个新表格:
CREATE TABLE table_name (column1 datatype1,column2 datatype2,column3 datatype3,...
);
解释:
CREATE TABLE是 SQL 语句的一部分,表示要创建一个新表格。table_name是您要创建的表格的名称。(column1 datatype1, column2 datatype2, ...)是表格的列定义,其中包括列名和数据类型。
以下是一个具体的示例,创建一个名为 students 的学生表格,包含学生的 ID、名字和姓氏:
CREATE TABLE students (student_id NUMBER,first_name VARCHAR2(50),last_name VARCHAR2(50)
);
在上述示例中,我们创建了一个名为 students 的表格,其中包含三列:student_id(数字类型)、first_name(VARCHAR2 字符串类型)和 last_name(VARCHAR2 字符串类型)。
请注意以下几点:
-
在执行
CREATE TABLE操作之前,请确保您具有足够的权限来创建表格。通常,只有数据库管理员或具有相应权限的用户才能执行此操作。 -
数据类型(datatype)指定了每个列中存储的数据类型。具体的数据类型取决于您的需求和数据库系统的支持。
-
如果要为表格的列定义其他属性,如主键、唯一性约束、默认值等,可以在列定义后添加相关的约束和选项。
-
某些数据库系统可能会有不同的语法或选项,具体取决于您使用的数据库系统。请查阅数据库系统的文档以获取详细信息。
创建表格是数据库设计的重要部分,确保表格的列定义符合您的需求和数据模型。一旦表格创建完成,您可以使用 INSERT 语句向表格中插入数据,使用 SELECT 语句查询数据,以及应用其他操作。
多行插入怎么写
要一次性插入多行数据到表格中,您可以使用 SQL 的 INSERT INTO 语句,然后在 VALUES 子句中列出多个数据行。以下是一般的多行插入语法:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES(value1_1, value2_1, value3_1, ...),(value1_2, value2_2, value3_2, ...),(value1_3, value2_3, value3_3, ...),...;
解释:
INSERT INTO是 SQL 语句的一部分,表示要执行插入操作。table_name是目标表格的名称。(column1, column2, column3, ...)是目标表格的列的列表,您可以选择性地指定要插入的列,如果省略,则默认为插入所有列。VALUES子句用于指定要插入的多个数据行。每个数据行用括号括起来,并用逗号分隔。
以下是一个具体的示例,假设您有一个名为 students 的表格,包含 student_id、first_name 和 last_name 列,您要一次性插入多个学生的数据:
INSERT INTO students (student_id, first_name, last_name)
VALUES(1, 'John', 'Doe'),(2, 'Alice', 'Smith'),(3, 'Bob', 'Johnson');
在上述示例中,我们一次性插入了三个学生的数据。您可以根据需要列出任意数量的数据行。
请确保提供的数据值的顺序和数量与目标列的顺序和数量匹配,并且符合表格的数据类型和约束要求。这将允许您成功地一次性插入多行数据到表格中。
SQLPLUS的list怎么使用
在 SQL*Plus 中,LIST 是一个用于查看和编辑 SQL 语句或 PL/SQL 代码的命令。LIST 命令允许您查看当前编辑缓冲区中的代码,并提供了一些编辑和导航功能。以下是如何使用 LIST 命令的基本示例:
-
查看当前编辑缓冲区中的代码:
在 SQL*Plus 中,您可以输入
LIST命令,然后按回车键,以查看当前编辑缓冲区中的代码。如果在编辑缓冲区中有 SQL 查询或 PL/SQL 代码,它们将被列出并显示在屏幕上。LIST -
查看指定行范围的代码:
您还可以使用
LIST命令来查看指定行范围内的代码。例如,要查看从第5行到第10行的代码,可以使用以下命令:LIST 5-10 -
添加或编辑代码:
您可以使用
LIST命令来添加或编辑代码。例如,要在第5行之后插入新代码,可以使用以下命令:LIST 5然后,您可以在代码之后输入新的 SQL 查询或 PL/SQL 代码。保存修改后,可以使用
SAVE命令将其保存到文件中。 -
保存代码到文件:
如果您编辑了代码并希望将其保存到文件中,可以使用
SAVE命令,后跟文件名。例如:SAVE filename.sql这将保存当前编辑缓冲区中的代码到名为
filename.sql的文件中。 -
退出编辑模式:
要退出编辑模式并返回到 SQL*Plus 提示符,可以按
Ctrl+C。
请注意,LIST 命令的确切功能和键盘快捷键可能会根据 SQLPlus 的版本和配置而有所不同。您可以查阅 SQLPlus 文档以获取更多详细信息,以及了解特定版本的支持和功能。
SQLPLUS append 怎么使用
在 SQL*Plus 中,APPEND 是一个用于在当前编辑缓冲区中添加新的行的命令。APPEND 命令允许您在已有的代码后面添加新的代码行。以下是如何使用 APPEND 命令的基本示例:
APPEND
在 SQL*Plus 中输入以上命令后,按回车键,系统会将光标移动到当前编辑缓冲区的最后一行,以便您可以在此处添加新的 SQL 查询或 PL/SQL 代码。
例如,假设您已经在编辑缓冲区中有以下代码:
SELECT * FROM employees WHERE department_id = 10;
然后您输入 APPEND 命令并按回车键,系统会在当前编辑缓冲区的最后一行等待您输入新的代码。
SELECT * FROM employees WHERE department_id = 10;
-- 光标在这里,等待您输入新的代码
您可以在新的行中输入您希望添加的新代码。
如果您希望在特定的行后添加新代码,可以使用 LIST 命令查看代码,并使用 APPEND 命令在特定行后添加新代码:
LIST
然后:
APPEND
再按回车键后,您可以在指定的行后添加新的代码。
请注意,APPEND 命令是 SQL*Plus 的一个基本编辑功能,用于在编辑模式中方便地添加新的行或代码。如果您使用其他数据库客户端工具,可能会有类似但不完全相同的功能。
sqlplus change 命令怎么使用
在 SQL*Plus 中,CHANGE 命令用于查找和替换当前编辑缓冲区中的文本。它允许您在 SQL 查询或 PL/SQL 代码中查找特定的字符串并将其替换为其他字符串。以下是如何使用 CHANGE 命令的基本语法:
CHANGE old_text new_text
old_text:要查找并替换的旧文本。new_text:要用来替换旧文本的新文本。
使用 CHANGE 命令的示例:
-- 假设当前编辑缓冲区中有以下代码
SELECT employee_name FROM employees WHERE department_id = 10;-- 使用CHANGE命令将"employee_name"替换为"full_name"
CHANGE employee_name full_name
在上述示例中,CHANGE 命令将查找并替换了编辑缓冲区中的文本。具体来说,它将会将所有的 “employee_name” 替换为 “full_name”。
请注意以下几点:
CHANGE命令不会更改实际的数据库数据,它只会更改当前编辑缓冲区中的文本。- 如果您希望执行实际的数据更新操作,请使用 SQL 的
UPDATE语句。 CHANGE命令执行替换操作时,是对当前编辑缓冲区中的文本执行的,因此请确保您在执行之前查看并确认要更改的文本。- 如果要执行全局替换(替换所有匹配的文本),可以在
CHANGE命令中添加ALL参数。例如:CHANGE ALL old_text new_text。 - SQLPlus 中的
CHANGE命令的功能可能会因版本和配置而有所不同,具体取决于您使用的 SQLPlus 版本。
SQLPLUS edit 用法
在 SQL*Plus 中,EDIT 命令用于打开一个文本编辑器,允许您编辑当前编辑缓冲区中的 SQL 查询或 PL/SQL 代码。这可以让您更方便地编辑和保存较长或复杂的代码。以下是如何使用 EDIT 命令的基本用法:
EDIT
执行上述命令后,SQLPlus 将启动默认的文本编辑器,并加载当前编辑缓冲区中的代码。您可以在编辑器中进行修改、添加或删除代码。一旦编辑完成,您可以保存并退出编辑器,然后返回到 SQLPlus 会话。
一些常见的用法和注意事项:
-
如果要使用不同的文本编辑器,可以在 SQL*Plus 中设置
EDITOR环境变量,以指定您的首选编辑器。例如,如果您想使用 Notepad++ 编辑器,可以执行以下命令:DEFINE _editor = "notepad++" -
在编辑器中保存文件后,您可以使用
RUN命令或按回车键来执行编辑后的代码。 -
如果您在编辑器中输入的文本太长而无法一次性显示在屏幕上,您可以滚动文本,具体方式取决于所使用的编辑器。
-
EDIT命令也可以与行号一起使用,以便在编辑特定行的代码。例如,要编辑第10行的代码,可以执行以下命令:EDIT 10 -
如果要保存更改但不执行代码,可以使用
SAVE命令。
请注意,EDIT 命令的确切行为和配置可能会因 SQLPlus 的版本和设置而有所不同。建议查阅 SQLPlus 文档以获取更多详细信息和示例。
SQLPLUS save 命令怎么用
在 SQL*Plus 中,SAVE 命令用于将当前编辑缓冲区中的 SQL 查询或 PL/SQL 代码保存到文件中。这是一个有用的命令,可以帮助您将编辑过的代码保存到磁盘,以便以后重新使用或共享。以下是如何使用 SAVE 命令的基本语法:
SAVE filename[.ext]
filename:要保存的文件名。.ext:可选的文件扩展名。如果省略,SQL*Plus 将使用默认的扩展名(通常为.sql)。
示例:
-- 假设当前编辑缓冲区中有以下代码
SELECT * FROM employees WHERE department_id = 10;-- 使用SAVE命令将代码保存到名为 "query.sql" 的文件中
SAVE query.sql
在上述示例中,SAVE 命令将当前编辑缓冲区中的代码保存到名为 “query.sql” 的文件中。
请注意以下几点:
- 文件名可以包括路径信息,以指定代码保存的目标位置。例如:
SAVE /path/to/directory/query.sql。 - 如果文件已经存在,
SAVE命令将覆盖现有文件。 - 如果省略了文件扩展名,SQL*Plus 将使用默认的扩展名(通常为
.sql)。 SAVE命令保存的文件将位于 SQL*Plus 所在的工作目录中。要指定其他目录,您可以使用完整的文件路径。
通过使用 SAVE 命令,您可以方便地将编辑的代码保存到文件中,以备将来使用。如果需要在不执行代码的情况下保存它,SAVE 命令是一个很有用的选项。
GET
将指定路径文件调入缓冲区, GET d:\路径
START、@
都是执行对应脚本文件,start d:\路径
SQL PLUS spool 命令怎么用
在 SQL*Plus 中,SPOOL 命令用于将输出内容保存到文件中,它允许您捕获 SQL 查询的结果、屏幕输出和其他信息,并将其保存到指定的文件中。以下是如何使用 SPOOL 命令的基本语法:
SPOOL filename[.ext]
filename:要保存输出的文件名。.ext:可选的文件扩展名。如果省略,SQL*Plus 将使用默认的扩展名(通常为.lst)。
示例:
-- 启动输出到文件 "output.txt"
SPOOL output.txt-- 执行 SQL 查询或其他操作
SELECT * FROM employees;-- 停止输出到文件
SPOOL OFF
在上述示例中,SPOOL 命令启动了输出到名为 “output.txt” 的文件,并在 SPOOL OFF 命令之前捕获了查询结果。查询的结果将保存到 “output.txt” 文件中。
请注意以下几点:
- 如果文件名中包含路径信息,将输出文件保存在指定的路径中。否则,文件将保存在 SQL*Plus 所在的工作目录中。
- 如果省略了文件扩展名,SQL*Plus 将使用默认的扩展名(通常为
.lst)。 - 在执行
SPOOL命令后,所有输出都将被重定向到指定的文件中,包括查询结果、屏幕输出和错误消息。因此,在完成输出后,应使用SPOOL OFF命令来停止输出到文件。 - 如果要追加输出到现有文件而不是覆盖它,可以在
SPOOL命令中添加APPEND选项。例如:SPOOL filename APPEND。 - 在输出到文件时,文本的格式和布局将保持与在屏幕上显示的内容一致。
通过使用 SPOOL 命令,您可以方便地捕获和保存 SQL 查询和其他输出,以便稍后查看或共享。这对于生成报告、记录查询历史和分析数据非常有用。
SQLPLUS 的 define 命令怎么用
在 SQLPlus 中,DEFINE 命令用于定义用户变量(User Variable)。用户变量是一种特殊类型的变量,可以在 SQLPlus 会话中存储和检索值,以便在查询和脚本中使用。以下是如何使用 DEFINE 命令的基本语法和用法示例:
定义用户变量
DEFINE variable_name = value;
variable_name:要定义的用户变量的名称。value:要为用户变量赋予的值。
示例:
DEFINE username = 'john_doe';
DEFINE department_id = 10;
在上述示例中,我们定义了两个用户变量:username 和 department_id,并为它们分别赋予了字符串值 ‘john_doe’ 和数值值 10。
使用用户变量
一旦定义了用户变量,您可以在 SQL 查询、PL/SQL 代码和 SQL*Plus 脚本中使用它们。用户变量以 & 符号作为前缀,后跟变量的名称。
示例:
-- 使用用户变量在查询中过滤数据
SELECT * FROM employees WHERE department_id = &department_id;-- 使用用户变量在 PL/SQL 块中输出值
BEGINDBMS_OUTPUT.PUT_LINE('Hello, ' || '&username');
END;
/
在上述示例中,我们在查询中使用了 &department_id 变量来过滤员工数据,并在 PL/SQL 块中输出了 &username 变量的值。
清除用户变量
要清除用户变量,以便重新定义或删除它们,可以使用 UNDEFINE 命令:
UNDEFINE variable_name;
示例:
UNDEFINE username;
这将清除名为 username 的用户变量。
通过使用 DEFINE 和 UNDEFINE 命令,您可以在 SQL*Plus 会话中创建和使用用户变量,以便在查询和脚本中动态使用值。这在执行交互式查询和脚本时非常有用。
SQLPLUS 的 accept 命令怎么使用
在 SQLPlus 中,ACCEPT 命令用于提示用户输入值,并将用户输入的值分配给一个变量,以便在 SQL 查询、PL/SQL 代码和 SQLPlus 脚本中使用。这可以用于在运行时从用户获取输入参数。以下是如何使用 ACCEPT 命令的基本语法和用法示例:
使用 ACCEPT 命令
ACCEPT variable_name [datatype] [DEFAULT default_value] [PROMPT 'prompt_message'];
variable_name:要分配用户输入值的变量名称。datatype:可选项,指定变量的数据类型。DEFAULT default_value:可选项,指定默认值,如果用户未提供输入,则将使用默认值。PROMPT 'prompt_message':可选项,指定用于提示用户输入的消息。
示例:
ACCEPT emp_name CHAR PROMPT 'Enter Employee Name: ';
在上述示例中,我们使用 ACCEPT 命令提示用户输入一个字符型(CHAR)的值,并将输入的值分配给名为 emp_name 的变量。用户将看到提示消息 "Enter Employee Name: "。
使用用户输入的值
一旦使用 ACCEPT 命令获取了用户输入的值,您可以在查询、PL/SQL 代码和 SQL*Plus 脚本中使用它。用户输入的值可以以 & 符号作为前缀,后跟变量的名称。
示例:
-- 使用用户输入的值在查询中过滤数据
SELECT * FROM employees WHERE employee_name = '&emp_name';-- 在 PL/SQL 块中使用用户输入的值
BEGINDBMS_OUTPUT.PUT_LINE('Hello, ' || '&emp_name');
END;
/
在上述示例中,我们在查询中使用了 &emp_name 变量来过滤员工数据,并在 PL/SQL 块中输出了用户输入的值。
指定默认值
如果用户未提供输入,您可以使用 DEFAULT 关键字来指定一个默认值,以确保变量具有初始值。
示例:
ACCEPT department_id NUMBER DEFAULT 10 PROMPT 'Enter Department ID: ';
在上述示例中,如果用户未提供输入,department_id 变量将被默认设置为 10。
提示消息
您可以使用 PROMPT 选项来指定提示消息,以向用户解释输入的预期值。
示例:
ACCEPT emp_name CHAR PROMPT 'Enter Employee Name: ';
在上述示例中,用户将看到 "Enter Employee Name: " 的提示消息,以指导他们提供所需的输入。
通过使用 ACCEPT 命令,您可以在 SQL*Plus 会话中与用户交互地获取输入值,并将这些值用于动态创建查询和脚本。这对于需要用户输入参数的交互式应用程序非常有用。
感谢你观看到这里,完
相关文章:
SQL plus简单使用
查看Oracle数据库全部数据库 数据库名称 SELECT name FROM v$database;这将返回所有数据库的名称。 视图 通过SQL查询dba_registry视图: 另一个查看数据库的方法是查询dba_registry视图,该视图包含了数据库中安装的所有组件的信息。以下是示例SQL查询…...
pnpm入门教程
一、概述 1、更小 使用 npm 时,依赖每次被不同的项目使用,都会重复安装一次。 而在使用 pnpm 时,依赖会被存储在内容可寻址的存储中。 2、更快 依赖解析。 仓库中没有的依赖都被识别并获取到仓库。目录结构计算。 node_modules 目录结构是…...
JADE盲分离算法仿真
JADE算法原理 JADE 算法首先通过去均值预白化等预处理过程得到解相关的混合信号,预处理后的信号构建的协方差矩阵变为单位阵,为后续的联合对角化奠定基础;其次,通过建立四阶累积量矩阵,利用高阶累积量的统计独立性等性…...
CMake教程-第 1 步:基本起点
CMake教程-第 1 步:基本起点 1 CMake教程介绍2 学习步骤Step 1: A Basic Starting PointStep 2: Adding a LibraryStep 3: Adding Usage Requirements for a LibraryStep 4: Adding Generator ExpressionsStep 5: Installing and TestingStep 6: Adding Support for…...
Linux 或者 Docker 容器通过 date 设置系统时间
目录 1. Linux2. Docker 容器2.1 进入容器内部修改2.2 可能会遇到的问题 1. Linux 要在Linux系统中设置日期和时间,可以使用date命令。 使用以下命令格式来设置日期和时间: sudo date -s "YYYY-MM-DD HH:MM:SS"其中,YYYY表示年份…...
Docker 容器中运行 Kibana
Kibana 的 Docker 镜像可以从 Elastic 官网上的 Docker 镜像仓库获取。该镜像是随 X-Pack 一起打包的。 X-Pack 在这个 image 中是预装好的。安装了 X-Pack,Kibana 会去连接同样带有 X-Pack 的 Elasticsearch 集群。 获取镜像 向 Elastic Docker 仓库发送一条 do…...
【23种设计模式】建造者模式【⭐⭐⭐】
个人主页:金鳞踏雨 个人简介:大家好,我是金鳞,一个初出茅庐的Java小白 目前状况:22届普通本科毕业生,几经波折了,现在任职于一家国内大型知名日化公司,从事Java开发工作 我的博客&am…...
进阶指针(一)
✨博客主页:小钱编程成长记 🎈博客专栏:进阶C语言 进阶指针(一) 0.回顾初阶指针1.字符指针1.1 相关面试题 2.数组指针3.指针数组3.1 数组指针的定义3.2 &数组名VS数组名3.3 数组指针的使用 4.数组传参和指针传参4.…...
Linux: code: name: void dev_deactivate(struct net_device *dev)
一开始看这个函数,还以为要做,网卡设备的down操作。 后来一看代码,原来这个函数是在net/sched/sch_generic.c 文件里,而且不是要做网络接口的down操作。操作的结果是:deactivate transmissions on several devices&…...
语义分割——灰度图像转伪彩色图像
目录 检验灰度图检验代码 灰度图转伪彩色图代码转换代码使用细则 示例转换结果总结 检验灰度图 制作语义分割数据集或用训练好模型测试图像时,得到的结果是灰度图像,如下: 检验代码 上面图像灰度值不是全是全为0,灰度范围在[0…...
观察级水下机器人使用系列之七机械手臂
本期是观察级水下机器人使用系列的最后一期,主要讲ROV所使用的机械臂。机械臂正式名称为5功能电动机械,型号为BE-500,由法国公司Ocean Innovation System设计的,可代替人工进行水下作业,完成海底样品采集、打捞、设备定…...
char s[]和char *s的区别,数组和指针的,堆和栈指针的一些思考
最近在学习的时候看到一个概念,数组不等价于指针,很合理但又很难理解。 例如char s[]和char *s有什么区别,前者是数组,后者是指针,个人学习成果如下: 1.char s[]和char *s的区别 char s[]: …...
Flutter快速入门学习(二)
目录 Dart介绍 一些Dart的重要概念 Dart语法学习 变量 内建类型 Number String Boolean List Set Map Symbol 函数 参数类型(可选参数,必选参数) 函数作为另一个函数的参数 匿名函数 运算符 关系运算符 类型判定运算符 赋…...
【Phoenix】phoenix实现每个Primarykey主键保留N版本数据,CDC数据记录为Changelog格式
一、背景: CDC数据中包含了,数据的变更过程。当CDC写入传统数据库最终每一个primary key下会保存一条数据。当然可以使用特殊手段保存多分记录但是显然造成了数据膨胀。 另外数据湖Hudi(0.13.1)是不支持保存所有Changelog其Compaction机制会清除所有旧版…...
阿里云服务器开放的一个新端口,重启防火墙,端口未启动
问题: 阿里云网页开放的一个新端口后,重启防火墙,端口未启动,之前配置的也都停止了。 解决: 原因可能是阿里的服务控制了,只能一个个端口开启了。把新配置新端口也单独启用。 开启80端口指令 firewall-cm…...
【PHPCUSTOM】打包PHP程序为EXE
目录 一、下载PHPCUSTOM 二、PHP网站打包 1、打开PHPCUSTOM 2、配置参数 3、生成exe文件 网上很多PHP程序打包成EXE的文章,但是都不能用,最后找到了PHPCUSTOM,使用PHPCUSTOM可以把PHP程序打包成exe。我们都知道PHP是服务端语言ÿ…...
药品咨询报告合集整理平台打包(一共36597份)【专题推荐】
<医药行业从业者必看>笔者今天分享高价值医药行业报告36500余份的获取/下载方法,报告涵盖了医药细分领域研究报告药品报告(所有上市药品)医药行业分析报告医药环境观察报告药品市场调研报告药品靶点研究报告医药白皮书;数据…...
数字化管理新革命,AI数字人CEO登场引领变革!
王一博老板乐华娱乐CEO杜华推出了她的双生数字人华华子,专门替自己直播卖货。在没有任何宣传的情况下,仅仅在短短的10分钟直播时间内,观众人数就飙升至30万人!同时,“杜华AI华华子直播”更是迅速登上了微博热搜榜。这一…...
FPGA/数字IC(芯海科技2022)面试题 2(解析版)
以下仅为学习参考(非原创),如有疑惑欢迎评论区指出! 一、单选题(共20题,每题3分,共60分) 1. D触发器:Tsetup3ns,Thold1ns,Tck2q1ns, 该D触发器最大可运行时…...
SpringMVC之JSON数据返回与异常处理机制---全方面讲解
一,JSON数据返回的理解 在Spring MVC中,当需要将数据以JSON格式返回给客户端时,可以使用ResponseBody注解或RestController注解将Controller方法的返回值直接转化为JSON格式并返回。这使得开发者可以方便地将Java对象转换为JSON,并…...
XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
AI书签管理工具开发全记录(十九):嵌入资源处理
1.前言 📝 在上一篇文章中,我们完成了书签的导入导出功能。本篇文章我们研究如何处理嵌入资源,方便后续将资源打包到一个可执行文件中。 2.embed介绍 🎯 Go 1.16 引入了革命性的 embed 包,彻底改变了静态资源管理的…...
rnn判断string中第一次出现a的下标
# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...
服务器--宝塔命令
一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行! sudo su - 1. CentOS 系统: yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...
push [特殊字符] present
push 🆚 present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中,push 和 present 是两种不同的视图控制器切换方式,它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
【Android】Android 开发 ADB 常用指令
查看当前连接的设备 adb devices 连接设备 adb connect 设备IP 断开已连接的设备 adb disconnect 设备IP 安装应用 adb install 安装包的路径 卸载应用 adb uninstall 应用包名 查看已安装的应用包名 adb shell pm list packages 查看已安装的第三方应用包名 adb shell pm list…...
Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
在 Kubernetes 集群中,如何在保障应用高可用的同时有效地管理资源,一直是运维人员和开发者关注的重点。随着微服务架构的普及,集群内各个服务的负载波动日趋明显,传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...
