近年来,BAT在业界的地位日益稳固,他们的业务涉及各个领域,其中Oracle数据库是他们数据存储的一项重要选择。如何链接Oracle成为了BAT公司工程师需要了解的基本技能之一。
在BAT中,Baidu公司以Python为主要语言,Python下的-PyOracle被广泛应用于Oracle的链接。以Baidu为例,我们来看看如何使用Python链接Oracle。
#导入模块
import cx_Oracle
#连接数据库
conn=cx_Oracle.connect('username/password@host:port/sid')
#执行sql语句
cur=conn.cursor()
cur.execute('select * from table')
#打印结果
res=cur.fetchall()
print(res)
#关闭游标、连接
cur.close()
conn.close()
Baidu公司中,Java也是重要的编程语言之一,Java下-JDBC被广泛应用于Oracle进行链接。以Baidu为例,我们来看看如何使用Java链接Oracle。
//导入包
import java.sql.*;
//加载驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//连接数据库
Connection conn=DriverManager.getConnection("jdbc:oracle:thin:@//hostname:port/service_name","user","password");
//执行sql语句
Statement stmt=conn.createStatement();
ResultSet res=stmt.executeQuery("select * from table");
//循环遍历结果
while(res.next()){
System.out.println(res.getInt(1)+" "+res.getString(2));
}
//关闭连接和结果集
res.close();
stmt.close();
conn.close();
Tencent公司中使用C#进行Oracle链接,以Tencent为例,我们来看看如何使用C#链接Oracle。
//导入命名空间
using System.Data.OracleClient;
//创建连接
OracleConnection conn=new OracleConnection("Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=hostname)(PORT=port))(CONNECT_DATA=(SID=service_name)));User ID=user;Password=password;");
conn.Open();
//执行sql语句
OracleCommand cmd=new OracleCommand("select * from table",conn);
OracleDataReader res=cmd.ExecuteReader();
//循环遍历结果
while(res.Read()){
Console.WriteLine(res.GetInt32(0)+" "+res.GetString(1));
}
//关闭连接和结果集
res.Close();
cmd.Dispose();
conn.Close();
BAT中还有许多其他的编程语言,如PHP、Ruby、Go等,也都有自己适用于Oracle链接的库或驱动。因此,无论是哪一个BAT公司,链接Oracle都有多种选择,只需要选择适合自己的语言和工具即可。