社区
Oracle
帖子详情
Pro*c 中where条件后面不能接数组变量?? 怎么varchar类型的也不行啊?
ufo_ufo
2003-04-02 05:33:49
谁有个具体的例子给看看。
...全文
60
10
打赏
收藏
Pro*c 中where条件后面不能接数组变量?? 怎么varchar类型的也不行啊?
谁有个具体的例子给看看。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用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??
Oracle
Pro
*c编程(内部培训资料)
##### 3.6.8 为什么 SPOOL
不能
用在
Pro
*c 程序
中
? SPOOL 是 Oracle SQL*Plus 工具
中
的一个命令,用于将查询结果输出到文件
中
。由于
Pro
*c 是一个 C 语言的扩展,而不是 SQL*Plus 的一部分,因此
不能
直
接
使用 SPOOL...
pro
c学习笔记
需要注意的是,
VARCHAR
在
Pro
*C
中
的表现与 C 语言
中
的 char
数组
类似。 **3. 指针声明与使用** - **指针的使用**:在
Pro
*C
中
,可以通过指针来传递
变量
地址给 SQL 语句。例如,在 INSERT 语句
中
插入数据时,...
Oracle_
Pro
C编程
**3.6.8 为什么SPOOL
不能
用在
Pro
*C程序
中
?** SPOOL是Oracle SQL*Plus的一个功能,用于将输出重定向到文件。在
Pro
*C程序
中
,通常使用标准I/O函数来实现类似的功能。 **3.6.9
Pro
*C/C++支持结构作为宿主
变量
么?** ...
oracle培训教程_3
-
不能
使用SQL命令
中
的保留字作为
变量
名。 - 可以与指示
变量
关联。 **示例**: ```c EXECSQLBEGINDECLARESECTIONS;
VARCHAR
pro
grame[30]; INT porgsal, pempno; EXECSQLENDDECLARESECTION; EXECSQLSELECT ENAME, ...
Oracle
pro
c
在
Pro
*C/C++
中
,字符
类型
变量
通常使用char *或char[n]
类型
来表示。需要注意的是,当使用char *时,需要显式地分配内存空间。 ##### 3.6.7 关于字符串指针
变量
的应用有特殊需要注意的么? 当使用字符串指针
变量
时,...
Oracle
17,137
社区成员
55,258
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章