Public Conn As New ADODB.Connection
Public ConnStr As StringFunction Open_DB(dtsc, pwd)
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _
& dtsc & ";Jet OLEDB:Database Password=" & pwd
Conn.Open ConnStr
End FunctionFunction Close_DB()
Conn.Close
Set Conn = Nothing
End Function
Public ConnStr As StringFunction Open_DB(dtsc, pwd)
ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" _
& dtsc & ";Jet OLEDB:Database Password=" & pwd
Conn.Open ConnStr
End FunctionFunction Close_DB()
Conn.Close
Set Conn = Nothing
End Function
你可以看看 MSDN 中 ADO.NET 的介绍,有相应的例子.
using System.Data;
using System.Data.SqlClient;string connstr= @"DataSource =(local);Intergrated Security =SSPI;"+
"user= ;pwd = ";
SqlConnection this.Connection = new SqlConnection(connstr);
this.Connection.Open();
//
//
//
//
//
this.Connection.Close();我不记得OLEDB的语法了 改一下就OK了
我是打算在C#里打开数据库的时候就调用Open_DB方法,
关闭的时候就调用Close_DB,
可Conn是在VB里是全局的,而在C#中是一个实例,没有全局的概念,
就不知道该怎么办了。我写成这样,我知道是肯定错的,但我想知道该怎么改??谢谢public class db
{
static public void db_open()
{
def.sqlstring = "Initial Catalog=pubs;Data Source=localhost;uid=sa";
SqlConnection Conn = new SqlConnection(def.sqlstring);
Conn.Open();
}
static public void db_close()
{
Conn.Close();
}
}
{
Conn.Open();
........
}
catch
{
}
finally
{
Conn.Close();
}只要测试连上后,把这里的连接字符串给以后的SqlDataAdapter即可。
.net会自动控制数据库的连接与断开,不必担心这个。
每次都要SqlConnection Conn = new SqlConnection(def.sqlstring);???
这样是不太麻烦了啊,可不可以只实例化一次,然后在其他窗体中就都可以使用这个Conn的方法和属性了?
不知道我表达清楚没有,有解决方法吗?
#region 字符串写入注册表
private void WriteCnstringToRegedit()
{
string s=ConnectServer();
RegistryKey regKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Freightcn", false);
if(regKey==null)
{
RegistryKey regKey1 = Registry.LocalMachine.CreateSubKey("SOFTWARE\\Freightcn");
regKey1.SetValue("dbName",s);
}
}
#endregion写入后用这个类,取得连接字符串,我是写如注册表的,技术落后了一点啊!using System;
using Microsoft.Win32;namespace Freight
{
/// <summary>
/// GetConnectStr 的摘要说明。
/// </summary>
public class GetConnectStr
{
public GetConnectStr()
{
//
// TODO: 在此处添加构造函数逻辑
//
} public string ConnectStr
{
get
{
RegistryKey regKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Freightcn", false);
if(regKey.GetValue("dbName").ToString().Trim()!="")
{
return regKey.GetValue("dbName").ToString().Trim();
}
else
{
return "";
}
}
}
}
}
然后调用
#region 设置连接字符串
this.sqlConnection1.ConnectionString=null;
GetConnectStr cs=new GetConnectStr();
this.sqlConnection1.ConnectionString=cs.ConnectStr;
#endregion不知道这样能不能帮你!
你讲的我也想知道,不过还没有找到解决方法!