在C#中调用ADODB.Connection的方法,首先打开ADODB.Connection连接时,Open原型中的Options该如何填写??
void _Connection.Open(string ConnectionString,string UserId,string Password,int Options)
还有,我需要在ADODB.Connection中执行“Select”以取得数据库中的值,我用了ADODB.Connection.Excute(string commamdText,out object RecordsAffected,int Options),我传Options时传了0,因为也不知道该传什么,总是没有数据返回,请高手指教???
void _Connection.Open(string ConnectionString,string UserId,string Password,int Options)
还有,我需要在ADODB.Connection中执行“Select”以取得数据库中的值,我用了ADODB.Connection.Excute(string commamdText,out object RecordsAffected,int Options),我传Options时传了0,因为也不知道该传什么,总是没有数据返回,请高手指教???
/// <summary>
/// 执行默认的SQL语句,并返回结果集
/// </summary>
/// <returns>成功:非null;否则:null</returns>
public DataSet OpenSQL()
{
DataSet Result = null;
if (!IsOpen) return Result;
using (SqlDataAdapter SqlDA = new SqlDataAdapter(sql, DBConn))
{
try
{
Result = new DataSet();
SqlDA.Fill(Result);
}
catch
{
if (null != Result)
{
Result.Dispose();
Result = null;
}
}
}
return Result;
}返回DataReader
使用SqlConnection,OledbConnection
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;namespace JGExam
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
} public void bind()
{
this.dataGridView1.DataSource =SelectData("select * from 表名");
} private void Form2_Load(object sender, EventArgs e)
{
bind();
} string sql = "Data Source=.;Initial Catalog=数据库名称;User ID=sa;password=sa";
public static bool ExcuteInsertUpdateDelete(string sql)
{
using (SqlConnection sqlcon = new SqlConnection(ConnectionString))
{
using (SqlCommand sqlcmd = new SqlCommand(sql, sqlcon))
{
try
{
sqlcon.Open();
int rs = sqlcmd.ExecuteNonQuery();
if (rs > 0)
{
return true;
}
else
{
return false;
}
} catch
{
return false;
}
finally
{
sqlcon.Close();
}
}
}
}
public static DataTable SelectData(string sql)
{
using (SqlConnection sqlcon = new SqlConnection(ConnectionString))
{
using (SqlDataAdapter sqladpa = new SqlDataAdapter(sql, sqlcon))
{
using (DataSet ds = new DataSet())
{
sqladpa.Fill(ds);
return ds.Tables[0];
}
}
} }
private void button1_Click(object sender, EventArgs e)
{
string strid = this.textBox1.Text;
string strname = this.textBox2.Text;
string strscore = this.textBox3.Text;
if (ExcuteInsertUpdateDelete("insert into 表名 values('" + strid + "','" + strname + "','" + strscore + "')"))
{
MessageBox.Show("Ok!");
bind();
}
else { MessageBox.Show("NO!"); } } }
}
http://msdn.microsoft.com/en-us/library/ms676505(VS.85).aspx
http://msdn.microsoft.com/en-us/library/ms675023(VS.85).aspx
对于ado的对象,一般都是用-1表示不指定值或缺省
用OledbConnection 连接 Excel,Access..
用SqlConnection连接MS SQL 2000/2005/2008..