社区
Oracle
帖子详情
Pro*c 中where条件后面不能接数组变量?? 怎么varchar类型的也不行啊?
ufo_ufo
2003-04-02 05:33:49
谁有个具体的例子给看看。
...全文
50
10
打赏
收藏
Pro*c 中where条件后面不能接数组变量?? 怎么varchar类型的也不行啊?
谁有个具体的例子给看看。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ufo_ufo
2003-04-03
打赏
举报
回复
char 型的,
不管怎樣多謝你了! 結賬
zzyok
2003-04-03
打赏
举报
回复
你的 USER_ID是什么类型的,有可能你的:ac_user_id中含有空格,你最好把空格去掉
ufo_ufo
2003-04-03
打赏
举报
回复
问题找到了! 原来我在开头定义时 EXEC SQL VAR ac_user_id IS STRING(11);
把这个去掉就可以了, 真是傻 :)
ufo_ufo
2003-04-03
打赏
举报
回复
ac_user_id的值取到了,已经试过。 只要把where条件后面改成具体值就能取到数据,
什么问题阿?
zzyok
2003-04-03
打赏
举报
回复
你在strcpy(ch_password, strupr(ch_password));后面把ac_user_id打出来看看是否取到值了,我怀疑是你的ac_user_id没有初始化的原因吧
ufo_ufo
2003-04-03
打赏
举报
回复
printf("請輸入用戸名: ");
scanf("%10s",ch_user_id);
printf("\n請輸入密碼: ");
scanf("%10s",ch_password);
strcpy(ac_user_id, strupr(ch_user_id));
strcpy(ch_password, strupr(ch_password));
EXEC SQL SELECT PASSWORD INTO :ac_password FROM USER_INFO WHERE USER_ID = :ac_user_id;
printf("\n%s,%s",ac_user_id,ac_password);
我输入正确的值却总是取不到数据。
zzyok
2003-04-03
打赏
举报
回复
是c的字符串拷贝函数
你能给出源代码吗?
ufo_ufo
2003-04-03
打赏
举报
回复
strcpy(section_name, Section_Name);
这是什么意思?
我现在就是用char 数组可是不行,查不到数据。
zzyok
2003-04-03
打赏
举报
回复
使用数组变量当然可以,由于proc是c的变种所以varchar就不支持了,但是可以用char数组代替;给你一个例子:
int SelectCountOfNames(char *Section_Name)
{
EXEC SQL BEGIN DECLARE SECTION;
char section_name[21];
short count;
EXEC SQL END DECLARE SECTION;
sqlca.sqlcode = 0;
strcpy(section_name, Section_Name);
EXEC SQL SELECT COUNT(*) INTO :count FROM t_config
WHERE section_name = :section_name;
if ( sqlca.sqlcode = 1403 )
{
printf("select null from t_config where section_name = .%s\n", section_name);
return 0;
}
if ( sqlca.sqlcode != 0 )
{
printf("select t_config err.%d\n", sqlca.sqlcode);
reconnect();
return -1;
}
return count;
}
ufo_ufo
2003-04-03
打赏
举报
回复
nobody??
MySQL 数据
类型
和运算符
============================= # 数据
类型
整数
类型
:五种 TINY SMALL MEDIUM INT BIG 浮点和定点小数
类型
:三种 FLOAT DOUBLE DECIMAL 日期与时间数据
类型
:五种 YEAR -1 字符串
类型
:二种 CHAR(M)
VARCHAR
(M) -1 ...
Pro
*C入门手册+语法详解
Pro
*C语法详解 概述 嵌入式 SQL 是一种结合 C/C++ 等高级语言的计算能力和 SQL 的数据库操作能力的方法。它允许您从应用程序执行任何 SQL 语句。Oracle 的嵌入式 SQL 环境称为
Pro
C。
Pro
C 程序分两步编译。首先,
Pro
*C预编译器 识别程序
中
嵌入的 SQL 语句,并将它们替换为对 SQL 运行时库
中
函数的适当调用。输出是纯 C/C++ 代码,所有纯 C/C++ 部分都完好无损。然后,使用常规 C/C++ 编译器编译代码并生成可执行文件。有关详细信息,请参阅演示程序部分。
Linux下通过
Pro
*C语言访问Oracle(一)
一
Pro
*C 程序概述: 1.什么是
Pro
*C程序 在ORACLE数据库管理和系统
中
, 有三种访问数据库的方法: (1) 用SQL*Plus, 它有SQL命令以交互的应用程序访问数据库; (2)用第四代语言应用开发工具开发的应用程序访问数据库,这些工具有SQL*Froms,QL*Reportwriter,SQL*Menu等; (3) 利用在第三代语言内嵌入的SQL语言或ORACLE库函
pro
*c的使用
利用在语言内嵌入sql语言或者调用oracle库函数来访问数据库,例如
Pro
*c
宿主
变量
Pro
*C
1.宿主
变量
是一种
Pro
*C语言
变量
,用于在应用程序
中
和oracle数据库之间传递数据,
Pro
*C程序
中
, 既可在SQL语句
中
引用,也可在C语句
中
引用的
变量
称为SQL
变量
. 2.宿主
变量
一般定义在语句EXEC SQL BEGIN DECLARE SECTION和EXEC SQL END DECLARE SECTION之间. 3.宿主
变量
的数据
类型
数据
类型
描述 ch...
Oracle
17,082
社区成员
55,236
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章