使用ODBC.NET ODBC.NET(全称ODBC .NET Data Provider)是一个免费的.NET Framework附加组件,需
要到微软公司的网站上去下载,下载地址为:http://download.microsoft.com/downloa
d/dasdk/Install/1.0.4030.0/W98NT42KMeXP/EN-US/odbc_net.msi,它需要系统已经安
装MDAC 2.7或者更高版本。另外,还需要安装MySQL的ODBC驱动程序,下载地址为:http
://www.mysql.com/downloads/api-myodbc-2.50.html,还需要在"ODBC数据源管理器"中
配置一下DSN,如下图所示:
在对象的设计上,ODBC.NET也跟OLEDB,SQL等一样,分别为OdbcConnection,
OdbcCommand, OdbcDataAdapter, OdbcDataReader,用法也完全一样,如果你希望用ODBC
.NET来代替以前的OleDb .NET Data Provider,事实上完全可以通过查找替换的办法来
修改你的程序。以下是一段代码示例:try
{
string constr = "DSN=MySQL;" + "UID=;" +"PWD="; ;
conn = new OdbcConnection(constr);
conn.Open();
string query = "insert into test.dbtable values10,'disksidkfsdi',
'asdfaf', 'adsfasdf')";
string tmp = null;
OdbcCommand cmd = new OdbcCommand(query, conn);
for(int i = 0; i < 100000; i++)
{
cmd.ExecuteNonQuery();
}
cmd.Dispose();
conn.Close();
query = "select * from test.dbtable";
OdbcCommand cmd2 = newOdbcCommand(query, conn);
conn.Open();
OdbcDataReader reader = cmd2.ExecuteReader();
while(reader.Read())
{
tmp = reader[0].ToString();
tmp = reader[1].ToString();
tmp = reader[2].ToString();
tmp = reader[3].ToString();
}
conn.Close();
query = "delete from test.dbtable";
OdbcCommand cmd3 = newOdbcCommand(query, conn);
conn.Open();
cmd3.ExecuteNonQuery();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
}
只要是用C#写过数据库应用的人一定能知道,上面的代码执行了十万次插入数据和读取
数据,最后将数据记录全部删除的操作。
要到微软公司的网站上去下载,下载地址为:http://download.microsoft.com/downloa
d/dasdk/Install/1.0.4030.0/W98NT42KMeXP/EN-US/odbc_net.msi,它需要系统已经安
装MDAC 2.7或者更高版本。另外,还需要安装MySQL的ODBC驱动程序,下载地址为:http
://www.mysql.com/downloads/api-myodbc-2.50.html,还需要在"ODBC数据源管理器"中
配置一下DSN,如下图所示:
在对象的设计上,ODBC.NET也跟OLEDB,SQL等一样,分别为OdbcConnection,
OdbcCommand, OdbcDataAdapter, OdbcDataReader,用法也完全一样,如果你希望用ODBC
.NET来代替以前的OleDb .NET Data Provider,事实上完全可以通过查找替换的办法来
修改你的程序。以下是一段代码示例:try
{
string constr = "DSN=MySQL;" + "UID=;" +"PWD="; ;
conn = new OdbcConnection(constr);
conn.Open();
string query = "insert into test.dbtable values10,'disksidkfsdi',
'asdfaf', 'adsfasdf')";
string tmp = null;
OdbcCommand cmd = new OdbcCommand(query, conn);
for(int i = 0; i < 100000; i++)
{
cmd.ExecuteNonQuery();
}
cmd.Dispose();
conn.Close();
query = "select * from test.dbtable";
OdbcCommand cmd2 = newOdbcCommand(query, conn);
conn.Open();
OdbcDataReader reader = cmd2.ExecuteReader();
while(reader.Read())
{
tmp = reader[0].ToString();
tmp = reader[1].ToString();
tmp = reader[2].ToString();
tmp = reader[3].ToString();
}
conn.Close();
query = "delete from test.dbtable";
OdbcCommand cmd3 = newOdbcCommand(query, conn);
conn.Open();
cmd3.ExecuteNonQuery();
}
catch(Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
conn.Close();
}
只要是用C#写过数据库应用的人一定能知道,上面的代码执行了十万次插入数据和读取
数据,最后将数据记录全部删除的操作。
cmd.CommandType=CommandType.StoredProcedure; //add parameters
cmd.Parameters.Add("@fStudentID",SqlDbType.Char);
cmd.Parameters.Add("@fStudentNo",SqlDbType.Char);
cmd.Parameters["@fStudentID"].Value=this.fStudentID.Trim();
cmd.Parameters["@fStudentNo"].Value=this.fStudentNo.Trim();
conn.Open();
cmd.ExecuteNonQuery();
paras= new SqlParameter[6];
paras[0]=new SqlParameter("@Rep_Code", SqlDbType.VarChar, 20); //报表代码
paras[1]=new SqlParameter("@Account_Month", SqlDbType.VarChar, 10); //帐务月
paras[2]=new SqlParameter("@LocalNet_Code", SqlDbType.VarChar, 3); //本地网编码
paras[3]=new SqlParameter("@checked", SqlDbType.Int , 3); //审核标志位
paras[4]=new SqlParameter("@User_Id", SqlDbType.VarChar, 10); //用户ID
paras[5]=new SqlParameter("ReturnValue", SqlDbType.Int);
paras[0].Value=RepCode;
paras[1].Value=AccountMonth;
paras[2].Value =LocCode;
paras[3].Value =Check;
paras[4].Value =Userid;
paras[5].Direction=ParameterDirection.ReturnValue;
System.Data.SqlClient.SqlConnection Sqlcon=db.OpenDb();
string strReturn=db.RunProc("Cus_RepGuideFast",paras);
db.CloseData(Sqlcon);
return strReturn;
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.SqlClient" %>
<script runat="server"> void Page_Load(object sender, EventArgs e) {
// TODO: Update the ConnectionString for your application
string ConnectionString = "server=(local);database=Northwind;trusted_connection=true";
// TODO: Updatd the name of the Stored Procedure for your application
string CommandText = "CustOrdersDetail";
SqlConnection myConnection = new SqlConnection(ConnectionString);
SqlCommand myCommand = new SqlCommand(CommandText, myConnection);
SqlParameter workParam;
myCommand.CommandType = CommandType.StoredProcedure;
// TODO: Set the input parameter, if necessary, for your application
myCommand.Parameters.Add("@OrderId", SqlDbType.Int).Value = 11077;
myConnection.Open();
DataGrid1.DataSource = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
DataGrid1.DataBind();
}</script>
<html>
<head>
</head>
<body style="FONT-FAMILY: arial">
<h2>Simple Stored Procedure
</h2>
<hr size="1" />
<form runat="server">
<asp:datagrid id="DataGrid1" runat="server" CellSpacing="1" GridLines="None" CellPadding="3" BackColor="White" ForeColor="Black" EnableViewState="False">
<HeaderStyle font-bold="True" forecolor="white" backcolor="#4A3C8C"></HeaderStyle>
<ItemStyle backcolor="#DEDFDE"></ItemStyle>
</asp:datagrid>
</form>
</body>
</html>