对于 SQLCHAR 类型参数,ODBC SQLBindParameter 的 ColumnSize 参数可以是 strlen(param) + 1 吗?

2024-01-06

SQLBindParameter 函数的示例位于http://msdn.microsoft.com/en-us/library/ms710963(v=vs.85).aspx http://msdn.microsoft.com/en-us/library/ms710963(v=vs.85).aspx当 C 类型为时,将字符数组的大小作为 ColumnSize 参数(第 6 个参数)传递SQL_C_CHAR.

引用该页面的部分示例:

SQLCHAR szEmployeeID[EMPLOYEE_ID_LEN];
SQL_DATE_STRUCT dsOrderDate;
SQLINTEGER cbCustID = 0, cbOrderDate = 0, cbEmployeeID = SQL_NTS;

...

retcode = SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT,
                           SQL_C_CHAR, SQL_CHAR, EMPLOYEE_ID_LEN,
                           0, szEmployeeID, 0, &cbEmployeeID);

我想知道是否可以将字符串参数的长度加 1 作为 ColumnSize 参数传递。换句话说,我想知道如果我们假设以下调用是否可以szEmployeeID包含一个以 null 结尾的字符串。

retcode = SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT,
                           SQL_C_CHAR, SQL_CHAR, strlen(szEmployeeID) + 1,
                           0, szEmployeeID, 0, &cbEmployeeID);

我相信这在以下调用中非常有用:

SQLLEN nts = SQL_NTS;
retcode = SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT,
                           SQL_C_CHAR, SQL_CHAR, 6,
                           0, "hello", 0, &nts);

char *domain = "stackoverflow.com";
retcode = SQLBindParameter(hstmt, 1, SQL_PARAM_INPUT,
                           SQL_C_CHAR, SQL_CHAR, strlen(domain) + 1,
                           0, domain, 0, &nts);

这个问题的答案是“是”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对于 SQLCHAR 类型参数,ODBC SQLBindParameter 的 ColumnSize 参数可以是 strlen(param) + 1 吗? 的相关文章

随机推荐

  • Firestore 安全规则 .hasAny(['A', 'B', 'C']) 仍然可以使用吗?

    似乎无法使用 Firestore 安全规则 hasAny 此方法是否已弃用或不再可用 我用它就像 Functions NOT WORKING function isTeamMember teamId userId return get da
  • 从地址抖动中获取坐标

    有人可以指导我在 flutter 中获取地址的坐标吗 我需要在文本框中输入地址并获取该地址的经度和纬度 您可以复制粘贴运行下面的完整代码您可以使用包https pub dev packages geocoder https pub dev
  • 用于命名空间限定的 C++ 预处理器标记粘贴

    我在 gcc 4 7 1 std c 11 中的预处理器标记粘贴运算符上遇到问题 即 考虑以下代码 Create a name for a global map this works define GLOBAL MAP name g map
  • 将 ZipOutputStream 返回到浏览器

    我有一个 ZipOutputStream 我想将其返回到浏览器 我想要的体验是用户单击锚标记 然后为我拥有的 ZipOutputStream 显示文件下载提示 如何将 ZipOutputStream 返回到浏览器 昨天必须做同样的事情 By
  • 为什么 Oracle 表/列/索引名称限制为 30 个字符?

    我可以理解 很多年前会有这种限制 但现在这个限制肯定可以很容易地增加 我们有对象的命名约定 但总会出现达到此限制的情况 特别是在命名外键时 有谁真正知道为什么这不是更大的尺寸 或者是 11 克更大 显然 答案是它将破坏当前未进行防御性编码的
  • JavaScript - 二分搜索每次都会挂起

    我有一个二维数组 如下所示 1 11 23 2 22 52 3 33 61 其中数组按每行中的第一个值排序 我试图在数组中找到一个值close到搜索值 在一定的灵敏度内 这种设置的方式以及灵敏度的值确保数组中只有一个可能的匹配 搜索值是鼠标
  • 将拟合摘要写入 pdf 文件或类似文件中

    我正在循环中对许多数据集进行线性拟合 并将结果绘制在 pdf 文件中 是否可以直接将summary fit 的输出保存在同一个pdf文件中 而不是通过控制台观察大约100个数据集的摘要 LMmodel lt y x fit lt lm LM
  • 我什么时候应该使用前进和移动?

    我有一个对向量进行操作的代码 template
  • PHP:将任何浮点数格式化为十进制扩展

    我想创建一个函数formatFloat 它接受任何浮点并将其格式化为十进制扩展字符串 例如 formatFloat 1 0E 25 10 000 000 000 000 000 000 000 000 formatFloat 1 0E 24
  • 如何将两个 long 相除并得到值?

    我需要计算整数和长整数的概率 但我总是得到0 整数a 234 长b 123453344L 浮动 c a b 如何在 Java 中得到正确的结果 您需要将其中一个投射为float 或将其中一个变量声明为float从头开始 否则 Java 的整
  • 何时适合在 Web 项目中使用 UUID?

    我正忙于一个新项目的数据库设计 我不确定是否使用UUID或普通的表唯一自增id 到目前为止 我建立的网站都在一台服务器上运行 非常大的流量从来都不是太令人担忧的问题 然而 这个 Web 应用程序最终将在多个服务器上同时运行 提供 API 并
  • 自定义控件中的膨胀布局 - 如何?

    我有关于如何在这里创建自定义控件的想法 Android 界面 需要有关使用哪些小部件的建议 https stackoverflow com questions 5891153 android interface need suggestio
  • 如何从 Android APK 生成调用图?

    我从 Google Play 下载了一些 Android 应用程序 我有Smali通过逆向工程工具进行编码apktool 我想为这些应用程序生成调用图 我在堆栈溢出和谷歌上看到了很多链接 大多数建议的工具要么用于c c 或者如果他们是为了J
  • 调用 wait() 时出现异常

    我正在实现一个应用程序 在其中播放两种声音 触摸和展示 其次是 tiger 这是在我的looper方法 我第一次打电话 然后打电话wait 然后调用looper again 问题是我在 LogCat 中遇到异常wait call 这是我的代
  • C++:将字符串拆分并将内容填充到 std::vector 的优雅方法

    我想沿着空格分割一个字符串 并且我知道标记 代表有效整数 我想将标记转换为整数 并用它们填充向量 我可以使用 boost split 创建令牌字符串向量 然后使用 std transform 你的解决方案是什么 使用升压是可以接受的 像这样
  • WPF 装饰器剪辑

    我有一个ItemsControl in a ScrollViewer 中的项目ItemsControl被扩展为DataTemplate它基本上由一个Adorner 现在的问题是 当滚动时 Adorner在外部可见ScrollViewer 假
  • 如何在 MATLAB 中保存更改后的图像?

    我想将图像读入 MATLAB 在其上绘制一个矩形 然后保存该图像 另外 我刚刚学习 MATLAB 请轻点 看起来应该很简单 但我似乎做不到 im imread image tif imshow im rectangle Position 1
  • 有没有办法检测当前的输入语言设置是什么?

    我基本上想知道系统当前的输入语言是什么 对于设置了多种语言输入法的用户 这将确定是否a的文本方向
  • 如何设置导航器拖动手柄的样式,Highstock

    除了颜色之外 是否可以设置导航器手柄的样式 如形状 高度 宽度 边框半径 背景等 来自 API 文档 http api highcharts com highstock navigator handles http api highchar
  • 对于 SQLCHAR 类型参数,ODBC SQLBindParameter 的 ColumnSize 参数可以是 strlen(param) + 1 吗?

    SQLBindParameter 函数的示例位于http msdn microsoft com en us library ms710963 v vs 85 aspx http msdn microsoft com en us librar