using System;
using System.Data ;
using System.Data.OleDb;
namespace Update用法
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class Class1
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
OleDbConnection obcnt = new OleDbConnection (@"Provider = Microsoft.Jet.OLEDB.4.0 ; Data source = C:\BegCSharp\AppendixB\Northwind.mdb") ;
obcnt.Open () ;
OleDbDataAdapter obadt = new OleDbDataAdapter ("SELECT * FROM 产品" , obcnt ) ;
OleDbCommandBuilder obcb = new OleDbCommandBuilder (obadt) ;
DataSet dset = new DataSet () ;
obadt.Fill (dset ,"产品") ;
OleDbCommand odcmd = obcnt.CreateCommand () ;
odcmd.CommandText = "SELECT * FROM 产品" ;
OleDbDataReader oddr = odcmd.ExecuteReader () ;
while(oddr.Read())
{
Console.WriteLine ("\t{0}\t{1}" , oddr["产品ID"] ,oddr["产品名称"]) ;
}
DataColumn[] keys = new DataColumn [1] ;
keys[0] = dset.Tables ["产品"].Columns ["产品ID"] ;
dset.Tables ["产品"].PrimaryKey = keys ;
Console.WriteLine ("{0}" ,dset.Tables["产品"].Rows.Count) ;
oddr.Close() ;
DataRow drs = dset.Tables ["产品"].Rows.Find ("1111") ;
if (drs == null)
{
drs = dset.Tables ["产品"].NewRow () ;
drs["产品ID"] = "1111" ;
drs["产品名称"] = "ZYEYE" ;
dset.Tables ["产品"].Rows.Add(drs) ;
if ((drs = dset.Tables ["产品"].Rows.Find ("1111")) != null )
{
Console.WriteLine ("fsiajrslfjsajf;ljsaf;ljsalfjas;");
}
}
else
{
Console.WriteLine ("你好我知道了。") ;
}
obadt.Update (dset , "产品") ;
//
// TODO: 在此处添加代码以启动应用程序
//
}
}
}
为什么我用find方法老是找不到啊 !老是添加新行.老是显示出下面的的结果.
if ((drs = dset.Tables ["产品"].Rows.Find ("1111")) != null )
{
Console.WriteLine ("fsiajrslfjsajf;ljsaf;ljsalfjas;");
}
在线等啊 !!!