问题标签 [embedded-sql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
34 浏览

c - Pro *C查询IN子句中多个动态值中的异构数据类型

这与下面的讨论有关

Pro *C 查询 IN 子句中的多个动态值

我的问题是:什么决定了 L[..] 的值,它是在 Oracle 表描述中定义为 Varchar(100) 的数据长度还是字符数组的目标缓冲区的大小说定义为大小 50 即 char xx[50 ]; 那么 L[..] 应该是 100 还是 50?数据类型 T[..] 应该是 1?如果我使用数据类型 T[..] 作为 6,那么 L[..] 的值会改变吗?目标中的数据类型(我们获取结果的我们自己的数据结构)被声明为 int、long、short 而 Oracle 端的数据类型是 NUMBER(10),我们应该使用什么作为 T[..]?3? 和长度 L[..] 作为 sizeof(int)?

请帮助我详细说明与 V 变量相关的 L 和 T 变量的用法。

0 投票
0 回答
387 浏览

embedded-sql - 在 Visual Studio C++ 代码中嵌入 SQL

谁能告诉我(显示示例代码)如何在 Visual Studio Win32 控制台应用程序 C++ 程序(头文件、关键字等)中嵌入 MS SQL Server SQL 查询?我已经使用源文件设置了一个 C++ 项目,但标准的 EXEC SQL 表示法不起作用。我确实通过服务器资源管理器窗口连接到数据库。到目前为止,我没有运气。我只想要一个小样本来展示我的班级。这是我尝试过的基本代码:

0 投票
1 回答
618 浏览

c++ - Dev C++ 中的嵌入式 SQL

因此,我在嵌入式 SQL 部分(参见:http://www.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm)中获得了从 IBM 获得的示例 C++ 程序(如何连接和断开与数据库的连接)。 db2.luw.apdv.samptop.doc/doc/r0011556.html )

我正在使用 Dev C++,每当我编译它时,它都会给我一个错误。它说:

[错误] 'EXEC' 没有命名类型

有谁知道这是什么原因?这是缺少的头文件吗?

EDIT1:这是代码的直接链接:http: //www.ibm.com/support/knowledgecenter/en/SSEPGG_9.7.0/com.ibm.db2.luw.apdv.sample.doc/doc/cpp/s- dbconn-sqC.html

0 投票
1 回答
148 浏览

sql - 如何在python的嵌入式sql查询中使用参数值?

我在尝试执行此查询时遇到错误,或者当它工作时它没有考虑日期的值。有人可以告诉我如何正确编写吗?我在调用函数时传递了日期值。

0 投票
2 回答
154 浏览

mysql - 这个嵌入式 SQL 是用什么语言编写的?

基本上我有一个数据库设计考试,我们的主要主题之一是嵌入式 SQL。这是给我的唯一示例,但是对于 0 解释,我几乎很难弄清楚发生了什么,如果我知道它是用什么语言编写的,我至少可以找到参考手册来寻求帮助。

任何想法将不胜感激!

编辑:我知道一般程序的作用,但出现的问题是“'Include'用于什么,或者 SQLCODE 的可能值是什么等。

0 投票
1 回答
1249 浏览

c - 如何在 Linux 平台上编译和运行 ESQL/C 程序?

我已经查看了 IBM 官方站点的 ESQL/C 编程指南。我没有找到要编译和运行的确切命令。我需要安装任何软件包才能运行吗?谁能告诉我在 Ubuntu 中运行这些命令的命令?

0 投票
1 回答
413 浏览

c - 如何简单地将 ESQL/C 文件转换为 C 文件?(嵌入式 SQL/C 文件到 C 文件)?

我正在做一个迁移项目。我需要将扩展​​名为 .ec 的 ESQL/C 文件转换为 gcc 上的 c 文件。我知道 ESQL/C 程序会创建一个 .c 文件。但我怎么能得到呢?

仅供参考:我正在研究 IBM Informix 服务器。

0 投票
0 回答
72 浏览

gcc - 在不同的 Linux 服务器上运行二进制文件时出现 818 DB2 错误

我在具有 DB2 连接性的 linux 机器上编译了 C++ 代码。二进制文件被编译,它在那个盒子上成功运行。但是,当我在不同的 linux 机器上部署相同的二进制文件时,该机器上出现 818 错误。

EmmMktStatus 是使用 libSTDbConnection.so 库连接到 DB2 并执行选择、删除更新等操作的二进制文件。

编译步骤:

1/ 数据库连接库编译:(libSTDbConnection.so)

连接到 DB2

-- db2 使用 ***** 连接到 ****** 用户 *****

创建 .i 文件(完成以在 sqC 代码中包含#define 变量)

db2 "prep STDbConnection.sqC PREPROCESSOR 'gcc -fPIC -I"/home0/db2inst1/sqllib/include" -I"/home0/db2inst1/DB2" -I/"/home0/u556899/Application/Source/Header" -I "/home0/u556899/Application/Source/Dal/Hdr" -I"/home0/u556899/log4cpp/include/log4cpp" -I"/home0/u556899/log4cpp/include" -O0 -g3 -Wall -c -fmessage -length=0 -E -o STDbConnection.i' COMPATIBILITY_MODE ORA LONGERROR NO bindfile"

从 .i 文件创建绑定文件

db2 绑定 STDbConnection.bnd

创建目标文件

gcc -fPIC -I"/home0/db2inst1/sqllib/include" -I"/home0/db2inst1/DB2" -I/"/home0/u556899/Application/Source/Header" -I"/home0/u556899/Application/源/Dal/Hdr"-I"/home0/u556899/log4cpp/include/log4cpp"-I"/home0/u556899/log4cpp/include"-O0 -g3 -Wall -c -fmessage-length=0 -o STDbConnection。 o STDbConnection.C

创建库 (.so) 文件

gcc -shared -L"/home0/db2inst1/sqllib/include" -L"/home0/db2inst1/DB2" -L/home0/u556899/Application/Lib -lLog4Cpp2 -L"/home0/db2inst1/sqllib/bin" - o libSTDbConnection.so STDbConnection.o STColumn.o STWhereStatement.o -L/home0/ibm/db2/V11.1/lib64 -ldb2 -L/home0/u556899/Application/Lib -lLog4Cpp2

2/ 使用 libSTDbConnection.so 库创建二进制文件 (EmmMktStatus)

创建目标文件

gcc -fPIC -c -g "-DOPENSSL_NO_KRB5" -I/home0/jdk1.7.0_67/include -I/home0/jdk1.7.0_67/include/linux -I/home0/u556899/Application/Source/Header -I/ home0/u556899/log4cpp/include/log4cpp -I/home0/u556899/log4cpp/include/ -I/home0/u556899/Application/Source/Dal/Hdr -I/opt/mqm/inc -I/usr/include -I /usr/include/libxml2 -I"/home0/db2inst1/sqllib/include" -I"/home0/db2inst1/DB2" -I"/home0/u556899/log4cpp/include" /home0/u556899/Application/Source/Its /EmmMktStatus.cpp

创建二进制 EmmMktStatus:

gcc -o EmmMktStatus -I/home0/u556899/Application/Source/Header /home0/u556899/Application/Objects/EmmMktStatus.o /home0/u556899/Application/Objects/STString.o /home0/u556899/Application/Objects/Log4CppMain2 .o -L。-L/usr/lib/gcc/x86_64-redhat-linux/4.1.1 -lstdc++ -L/usr/lib64 -lcrypto -L/home0/u556899/Application/Lib -lSTDbConnection -llog4cpp

使用上述编译步骤,我形成了 EmmMktStatus 可执行文件。它在编译它的同一个 linux 服务器上成功运行。但是,当我在不同的 linux 服务器上部署 EmmMktStatus 时,我在 db2 中收到 818 错误。

两个盒子都有相同的linux版本。两个盒子也有相同的 db2 版本 - v11.1.0.0 和 Fix pack "0"。

有人可以在上述编译步骤中提出任何问题。

注意:当我使用与 DB2 直接连接的 sqC 代码部署可执行文件时(不使用上述库 libSTDbConnection.so),它在两个盒子上都成功运行。我在编译库时似乎犯了一些错误。任何与 libSTDbConnection.so 库链接的可执行文件都会给我同样的错误(818)。

0 投票
3 回答
404 浏览

ibm-midrange - 如何让 RPGLE 程序将 SQL 警告和错误写入作业日志?

好像我记得写过一个使用嵌入式 SQL 的 RPG 程序,每当发生 SQL 警告或错误时,它都会向交互式用户作业日志写入一条消息。我不必明确写出来;它默认记录它。

我现在正在编写的程序没有执行此日志记录,尽管我知道我可能会导致类似警告01003和错误,并使用变量02000读取它们。SQLState

我不认为我想象过这种行为。是否有我忘记设置的 H 规范关键字、我调用程序的方式(使用CALL交互)、我编写 SELECT INTO 语句的方式(静态而不是动态)?我对其他想法不知所措。

0 投票
1 回答
40 浏览

db2 - 切换 DB2LUW 节点时是否需要预编译?

DB2LUW 的嵌入式 SQL 应用程序按以下步骤开发:

  1. db2 准备
  2. db2 绑定

假设我们有 2 个 DB2LUW 节点,并且两个节点的 DDL 相同。切换 DB2LUW 节点时,是否需要对新节点进行预编译?或者是否可以使用为第一个节点预编译时生成的绑定文件从绑定开始?

我的意思是可以通过以下方式绑定吗?

[对于 node1] 1. db2 准备 2. db2 绑定

[对于 node2] db2 使用在 step1 为 node1 生成的绑定文件绑定?

任何意见都非常感谢!