.net连接oracle数据库

.net连接oracle数据库,第1张

1)在服务器上需要安装oracle

client

2)增加.ora文件(安装目录下/newwork/admin)

3)可采用其他连接oracle工具判断是否能正确连上oracle

3).net连接oracle:

user

id=scottpassword=tigerdata

source=oracle92persist

security

info=trueunicode=trueomit

oracle

connection

name=true

注意data

source后为第二步的ora文件里的名称

我只会在unix下面写,嘿嘿win的我还不会呢。。

把代码贴上。至于怎么

编译,再查查吧~

int

main()

{

EXEC

SQL

BEGIN

DECLARE

SECTION

char

oc_passwd[101]

/*数据库密码*/

char

oc_userid[101]

/*数据库用户名*/

char

oc_dbname[101]

/*数据库名*/

char

oc_coad[101]

EXEC

SQL

END

DECLARE

SECTION

memset(oc_passwd,

0x00,

sizeof(oc_passwd))

memset(oc_userid,

0x00,

sizeof(oc_userid))

memset(oc_dbname,

0x00,

sizeof(oc_dbname))

/*取数据库用户名*/

strcpy(oc_userid,

"userid")

/*取数据库用户密码*/

strcpy(oc_passwd,

"passwd")

/*取数据库名*/

strcpy(oc_dbname,

"dbname")

EXEC

SQL

CONNECT

:oc_userid

IDENTIFIED

BY

:oc_passwd

USING

:oc_dbname

if

(sqlca.sqlcode

!=

0)

{

printf("用户名[%s]密码[%s]数据库[%s]\n",

oc_userid,

oc_passwd,

oc_dbname)

printf("连接数据库失败,sqlcode=%d\n",

sqlca.sqlcode)

return

-1

}

/*读table取coad字段*/

memset(oc_coad,

0x00,

sizeof(oc_coad))

EXEC

SQL

SELECT

coad

INTO

:oc_coad

FROM

table

WHERE

1=1

if

(sqlca.sqlcode

==

NORECORD)

{

printf("查询无记录\n")

return

-1

}

else

if

(sqlca.sqlcode

!=

0)

{

printf("查询失败,sqlcode=%d\n",

sqlca.sqlcode)

return

-1

}

return

0

}

stmt

=

conn.preparestatement(sql)//

获得数据库的sql

rt

=

stmt.executequery()//

执行查询语句

rowset.populate(rt)//

?

将结果集

放在

rowset对象中

stmt.executeupdate()//这句话作用是什么呢?

执行更新语句(增/删/改)

cachedrowsetimpl

rowset

=

test.getlist("select

*

from

bob")

看看test.getlist(string)方法的返回类型就明白了

方法返回cachedrowsetimpl

这个类型的.

所以的用这个对象的实例

来接收啊.

呵呵


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6626080.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-25
下一篇 2023-03-25

发表评论

登录后才能评论

评论列表(0条)

保存