你在oracle的目录下去找找cdemo81.c
这个例子对你又帮助
这个例子对你又帮助
解决方案 »
- 我的控制面板-管理工具-服务 里没sql服务 怎么回事?
- SQL语句"去除迪卡尔积分"
- 在一个表里对同一条记录根据状态进行查询
- 行列转换问题,不会做。
- 在关键字 'WITH' 附近有语法错误
- 一个关于数据表查询排序的问题,搞不定了,请教高手!
- 字段内这种批量替换有没有办法?
- 关于昨天的sql语句,请zjcxc(: 邹建 :) 与j9988(j9988)两位大哥,再帮忙看看
- 求一可用数据库,国内省份,省份主要城市,省内主要市县,的数据库
- 关于在bat中是哟个bcp命令的问题
- 请教使用installshield6.2版建立数据库问题?十万火急,小弟先谢了,观者有分
- 将win 98的sql server 数据库导出至win nt上的sql server数据库出错,请教经验。
我知道问题比较大, 分您不用担心, 我可以叫我的朋友也给分。
请问您的E-MAIL地址是多少, 我的E-MAIL地址是[email protected]
我的mail:[email protected]
我是用cdemo81.c的方法, 先写到数组中, 然后写到文件里面。但是没有进行类型转换。数组是TEXT类型的, 而EMP表中number, string, date类型。这时候需不需要类型转换, NUMBER类型转换的时候报无效的NLS参数。
所以我想写到结构中, 定义的结构如下:
{
OCINumber EMPNO
OCIString ENAME
OCIString JOB
OCINumber MGR
OCIDate HIREDATE
OCINumber SAL
OCINumber COMM
OCINumber DEPTNO
}
我就不知道SQL语句怎么和结构连接起来。是不是需要用
OCIBindArrayOfStruct(), OCIDefineArrayOfStruct()和OCIBindObject()函数。 谢谢各位高手指教, 本人不胜感激!!!
只需要用到OCIPrepare(),OCIDefineByPos(),OCIExecute()等函数,你可以把表里面的纪录一条一条的去出来存入vector(c++标准内裤中的变长数组),然后你可以做一个外部程序,用重载操作符的办法存到你的结构中,然后邪道文件里面,其实重载的好处就是你可以在转换的时候不考虑数据类型比如说你可以重载>>,这样调用result>>emp.EMPNO >> emp.ENAME >> ...
至于你把文件读到表里面,这个我没做过,因为我处理oci插入的时候是假定调用的我接口的人把插入语句拼成字符串传给我,然后处理起来就十分的简单,对于你的需求,这样显然比较难为调用的人.可能就要用到你所说的OCIBindArrayOfStruct()等函数了
struct a{
int a ;
};
memset(a,0,sizeof(a));
memset(&a,0,sizeof(a))
请问在OCI中, 类型转换时NLS参数怎么设置?
而A.B表中有一列是DATE类型的, 我是用SQLT_STR类型从A表中提取出来,
无法插入到B表中, 是不是需要进行数据转换, 怎么转换?
你从表里面取出来的sql语句是什么?
我是这样写的, 有没有问题?插入的格式字符串是和取出来的一样。