2009-08-25 7 views
0

У меня есть семь полей, которые необходимо заполнить в семи текстовых полях. Данные поступают из SQL Compact DB ...Заполнение текстовых полей из базы данных SQL

Вот мой код до сих пор, но я застрял. Что мне нужно сделать, чтобы заполнить текстовые поля в Form Load ... спасибо большое.

Woody

private void mcContactSubmit_Load(object sender, EventArgs e) 
{ 
    // Setup our SQL connection. 
    SqlCeConnection dataSource = new SqlCeConnection(
       @"Data Source=|DataDirectory|\..\..\ContactInformation.sdf; 
       Persist Security Info=False"); 
     SqlCeDataReader myReader = null; 

    // Create our command text. 
    string sqlQuery = String.Format(@"SELECT TOP (1) FirstName, LastName, Title, 
    Department, Category, Phone, Comments FROM ContactInformation 
    ORDER BY FirstName DESC"); 

    // Open the SQL connection. 
    dataSource.Open(); 

    SqlCeCommand myCommand = new SqlCeCommand(sqlQuery, dataSource); 
    myReader = myCommand.ExecuteReader(); 
} 

ответ

3

You can either use the index or the column name to get the actual data, as follows:

myReader = cmd.ExecuteReader(); 

// Run through the results 
while (myReader.Read()) 
{ 
    string fname = myReader.GetString(0); 

    // or alternatively: 

    string fname2 = myReader["FirstName"]; 

    // Either of these should work 
} 

After which, it's simple assignment to the TextBox. В противном случае вы также можете напрямую вставить данные в TextBox, но скорее не так, как это должно быть сделано в большинстве случаев.

Если вам нужна дополнительная помощь, смотрите здесь:

MSDN - SqlCeDataReader

+0

спасибо дружище, легко. – Woody

+0

Отличный материал, рад, что это помогло. –

+0

Дох. Я говорил слишком рано. Текстовые поля не заполняются ... вот что я вижу в режиме отладки: Сообщение \t «SQL Server Compact не поддерживает вызовы свойства HasRows, если базовый курсор не прокручивается». Что это значит ?! LOL ... – Woody

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