成都创新互联网站制作重庆分公司

oracle连接串怎么用 如何使用oracle的连接字符串连接数据库

oracle连接串配置多个不同服务

1 连接数据库的方式

成都创新互联公司致力于互联网网站建设与网站营销,提供成都网站建设、成都网站设计、网站开发、seo优化、网站排名、互联网营销、小程序制作、公众号商城、等建站开发,成都创新互联公司网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。

oracle的连接串有几部分构成,这里就按sqlplus为例,一个完成的连接串遵循下面格式

sqlplus 用户名/密码@主机:端口号/SID 可选as sysdba

复制

下面先讲只有listener没有tns的情况

2 listener

使用listener连接需要配置完整连接信息,这里分为两种连接方式,我们看一个listener的例子:

(带sid的listener使用netmgr增加listener的datavase services即可出现sid的配置)

LISTENER2 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = iZbp1d4tisi44j6vxze02fZ)(PORT = 1522))

)

SID_LIST_LISTENER2 =

(SID_LIST =

(SID_DESC =

(GLOBAL_DBNAME = gdn1400)

(ORACLE_HOME = /fdisk1/oracle1400/base/dbhome_1)

(SID_NAME = orcl1400)

)

)

ADR_BASE_LISTENER2 = /fdisk1/oracle1400/base

LISTENER1 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = iZbp1d4tisi44j6vxze02fZ)(PORT = 1521))

)

ADR_BASE_LISTENER1 = /fdisk1/oracle1400/base

复制

这里有两个listener,有sid的叫做静态listener,没有sid的叫做动态listener。在查看状态时存在区别:

lsnrctl status listener1

...

Services Summary...

Service "orcl1400" has 1 instance(s).

Instance "orcl1400", status READY, has 1 handler(s) for this service...

Service "orcl1400XDB" has 1 insta

oracle的字符串连接函数是什么,如何用

字符串拼接的函数是concat,但是这个函数有且只有两个参数。有时不是那么好用。

平时我们用的||

用法是select a||b||c||d from table

a,b,c,d可以是字段可以是字符

oracle中字符串用什么连接

和其他数据库系统类似,Oracle字符串连接使用“||”进行字符串拼接,其使用方式和MSSQLServer中的加号“+”一样。

比如执行下面的SQL语句:

SELECT '工号为'||FNumber||'的员工姓名为'||FName FROM T_Employee

WHERE FName IS NOT NULL

除了“||”,Oracle还支持使用CONCAT()函数进行字符串拼接,比如执行下面的SQL语句:

SELECT CONCAT('工号:',FNumber) FROM T_Employee

如果CONCAT中连接的值不是字符串,Oracle会尝试将其转换为字符串,比如执行下面的SQL语句:

SELECT CONCAT('年龄:',FAge) FROM T_Employee

与MYSQL的CONCAT()函数不同,Oracle的CONCAT()函数只支持两个参数,不支持两个以上字符串的拼接,比如下面的SQL语句在Oracle中是错误的:

SELECT CONCAT('工号为',FNumber,'的员工姓名为',FName) FROM T_Employee

WHERE FName IS NOT NULL

运行以后Oracle会报出下面的错误信息:

参数个数无效

如果要进行多个字符串的拼接的话,可以使用多个CONCAT()函数嵌套使用,上面的SQL可以如下改写:

代码如下:

SELECT CONCAT(CONCAT(CONCAT('工号为',FNumber),'的员工姓名为'),FName) FROM

T_Employee

WHERE FName IS NOT NULL

连oracle数据库用ole,连接串应该怎么写

在利用ado连接数据库之前,需要做一些准备

1.用#import指令引入ADO类型库

我们在stdafx.h中加入如下语句:

#import "c:program filescommon filessystemadomsado15.dll" no_namespace rename("EOF","adoEOF") 。

这一语句有何作用呢?其最终作用同我们熟悉的#i nclude类似,编译的时候系统会为我们生成msado15.tlh,ado15.tli两个C++头文件来定义ADO库。

几点说明:

(1) 您的环境中msado15.dll不一定在这个目录下,请按实际情况修改

(2) 在编译的时候肯能会出现如下警告,对此微软在MSDN中作了说明,并建议我们不要理会这个警告。msado15.tlh(405) : warning C4146: unary minus operator applied to unsigned type, result still unsigned

2、初始化OLE/COM库环境

必须注意的是,ADO库是一组COM动态库,这意味应用程序在调用ADO前,必须初始化OLE/COM库环境。在MFC应用程序里,一个比较好的方法是在应用程序主类的InitInstance成员函数里初始化OLE/COM库环境。

BOOL CMyAdoTestApp::InitInstance()

{

if(!AfxOleInit())//这就是初始化COM库

{

AfxMessageBox(“OLE初始化出错!”);

return FALSE;

}

}

3.ADO库包含三个基本接口:_ConnectionPtr接口、_CommandPtr接口和_RecordsetPtr接口。与数据库的连接就是用_ConnectionPtr接口,它的连接字符串可以是自己直接写,也可以指向一个ODBC DSN。以下的例子都测试通过,顺便写了SQL Server的例子。

BOOL CTestconDlg::ConnectDatabase()

{

CString m_server,m_data,m_uid,m_pwd;

m_server="192.168.0.24";//服务器ip或名称

m_data="crmdb";//ODBC数据源

m_uid="njcrm";//用户名

m_pwd="crmdbo";//密码

BOOL retFt=false;

HRESULT hr;

try

{

hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象

if(SUCCEEDED(hr))

{

_bstr_t connStr;

m_pConnection-CursorLocation=adUseClient;

//begin---------------Oracle ODBC 配置数据源-------------------------------------

//控制面板-管理工具-数据源(ODBC)-系统DNS-添加-Microsoft ODBC for Oracle-完成-配置……

// connStr="DSN="+m_data;

// m_pConnection-Open(_bstr_t(connStr),(_bstr_t)m_uid,(_bstr_t)m_pwd,adConnectUnspecified);

//end---------------Oracle ODBC 配置数据源---------------------------------------

//begin---------------Oracle 标准安全级别---------------------------------------

// connStr="Provider=OraOLEDB.Oracle;User ID=njcrm;Password=crmdbo;Data Source=192.168.0.24;";

// m_pConnection-Open(_bstr_t(connStr),(_bstr_t)_T(""),(_bstr_t)_T(""),adConnectUnspecified);

//end---------------Oracle 标准安全级别---------------------------------------

//begin---------------Oracle 微软格式----------------------------------

oracle在写存储过程时怎样将变量和字符串进行连接?

变量直接写,要连接字符串的话,用  ||  这个符号,后面的字符串用单引号引。

变量 V_str    字符串' select  emp from table where '

连接后为:' select  emp from table where '  || V_str


分享文章:oracle连接串怎么用 如何使用oracle的连接字符串连接数据库
文章路径:http://cxhlcq.com/article/hisidh.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部