2013-05-08 4 views
0

Я подвожуОшибка при заполнении набора данных с OLEDB

«Нет значения, приведенного в течение одного и более обязательный параметр»

снизу код все выглядит отлично, не в состоянии найти проблему.

string myConnectionString= @"Provider=Microsoft.Jet.OLEDB.4.0; Data source=D:\TiptonDB.mdb"; 
       string query = "SELECT NodeID FROM NDDINodes";//"SELECT O.NodeID, N.NodeID FROM NDDINodes AS N, NDDINodes AS O WHERE N.X=O.X And N.Y=O.Y And N.NodeID<>O.NodeID"; 

       DataSet dt = new DataSet(); 
       using (OleDbConnection myConnection = new OleDbConnection()) 
       { 
        myConnection.ConnectionString=myConnectionString; 
        OleDbCommand cmd=new OleDbCommand(); 
        cmd.Connection=myConnection; 

       // cmd.CommandText="SELECT O.NodeID, N.NodeID FROM NDDINodes AS N, NDDINodes AS O WHERE N.X=O.X And N.Y=O.Y And N.NodeID<>O.NodeID"; 
        myConnection.Open(); 
        OleDbDataAdapter ad = new OleDbDataAdapter(query,myConnection); 
        ad.Fill(dt); 
       } 
+1

Возможно, вы указали название таблицы или имя столбца. Проверьте это! –

+1

Является ли 'NodeID' существующим в таблице' NDDINodes'? Существует ли таблица 'NDDINodes'? – jAC

+0

Вы никогда не выполняете код. Вам не нужно выполнять запрос или перед передачей его в набор данных. Вы даже не открываете соединение. – Dave

ответ

0

просто добавить это в вашем коде

OleDbDataAdapter ad = new OleDbDataAdapter(); 
ad.SelectCommand = new OleDbCommand(query, myConnection); 
0
string myConnectionString= @"Provider=Microsoft.Jet.OLEDB.4.0; Data source=D:\TiptonDB.mdb"; 
       string query = "SELECT NodeID FROM NDDINodes";//"SELECT O.NodeID, N.NodeID FROM NDDINodes AS N, NDDINodes AS O WHERE N.X=O.X And N.Y=O.Y And N.NodeID<>O.NodeID"; 

DataSet dt = new DataSet(); 

OleDbConnection objXConn = new OleDbConnection(myConnectionString); 
       objXConn.Open(); 
       OleDbCommand objCommand = new OleDbCommand(query, objXConn); 
       OleDbDataAdapter adp = new OleDbDataAdapter(objCommand); 
       adp.Fill(dt); 
       objXConn.Close(); 
0

Убедитесь, что строка подключения не хватает данных: UserName/Password, Persist Security Info=True ...

Check this link для настройки ConnectionString доступа ,

Смежные вопросы