[C#][Database]C#通过ODBC以自定义端口连接数据库

时间:2024-07-23 10:05:38

数据库端的配置暂且不说,比较简单,新建用户并开启相应连接权限即可。

通过ODBC连接数据库,重点在于Connection String的书写,在此可以查到几乎所有类型的Data Server的Connection String的写法

http://www.connectionstrings.com/

对于不同版本的.NET而言,Connection String指定连接端口的方法略有不同

以.NET 3.5连接SQL Server为例

string conStr = "Driver={SQL Server};Server=XXX.XXX.XXX.XXX,PORT;Uid=username;Pwd=password;Database=database;";

此处是通过Server=IP,Port的方式进行指定的,而对于.NET 4.0以上的版本,可以直接

 string conStr = "Driver={SQL Server};Server=XXX.XXX.XXX.XXX;Port=PORT;Uid=username;Pwd=password;Database=database;";

之后的连接行为便非常简单了,此处举一个以Bind方式向SQL语句传递参数进行书籍查询的例子:

         public long QueryInventoryNum(string outer)
{
OdbcConnection con = new OdbcConnection(conStr);
con.Open(); OdbcCommand command = new OdbcCommand("SELECT num FROM book WHERE serial_no=?", con);
OdbcParameter para = new OdbcParameter("@serial_no", OdbcType.BigInt);
para.Value = long.Parse(outer);
command.Parameters.Add(para); long re = ; try
{
var result = command.ExecuteReader();
while (result.Read())
{
re = long.Parse(result[].ToString());
}
}
catch (Exception err)
{
} con.Close(); return re;
}

代码在VS2010,.NET3.5环境下编译通过。