MoveLast ();
} pRecordset- gt; MoveLast ();
} (_ com_error amp; ce)
{ gt; ErrMessage (ce);
}
} Dlg :: OnLast ()
{(pRecordset- gt; GetState () == 0) return; (! pRecordset- gt; GetRecordCount ()) return;
{ gt; MoveLast ();
} (_ com_error amp; ce)
{Doc- gt; ErrMessage (ce);
}} Dlg :: Recordset_Baza (CString str)
{(pRecordset- gt; GetState ()) pRecordset- gt; Close (); gt; CursorLocation=adUseClient; gt; Open ((_bstr_t) str, (IUnknown *) pConn ,, adLockOptimistic, adCmdText);= PRecordset- gt; GetFields ();
} Dlg :: Structura_BD ()
{str;
_ RecordsetPtr pTables ( ADODB.Recordset );=pConn- gt; OpenSchema (ADODB :: adSchemaTables); _ tab.ResetContent (); _ pol.ResetContent (); (! pTables- gt; ADO_EOF)
{= (char *) (_ bstr_t) pTables- gt; GetFields () - gt; GetItem
((_ bstr_t) TABLE_TYPE ) - gt; GetValue (); (! str.Compare ( TABLE )) _ tab.AddString ((_bstr_t) pTables- gt; GetFields ()- gt; GetItem ((_variant_t) TABLE_NAME ) - gt; GetValue ()); gt; MoveNext ();
} gt; Close ();
} Dlg :: Connect_Baza (CString str)
{(pRecordset- gt; GetState ()) pRecordset-gt;Close();(pConn-gt;GetState())pConn-gt;Close();gt;Open((_bstr_t)str,laquo;raquo;,laquo;raquo;,0);
} Dlg :: OnSort ()
{(pRecordset-gt;GetState()==0)return;_datagrid.SetRefDataSource(0);str_query;_editquery.GetWindowText(str_query);_timeb timebuffer;
_ ftime ( amp; timebuffer); nach=timebuffer.time + timebuffer.millitm/1000.0;
{vr_zap; (((CButton *) GetDlgItem (IDC_Sort)) - gt; GetCheck () == 1)
{ gt; PutSort ((_bstr_t) str_query);
_ ftime ( amp; timebuffer); conec=timebuffer.time + timebuffer.millitm/1000.0; _zap.Format ( Сортування виконана за% f сек , conec - nach); _ datagrid.SetRefDataSource (pRecordset); (vr_zap);
}
{ gt; Sort= raquo ;; _ datagrid.SetRefDataSource (pRecordset);
_ ftime ( amp; timebuffer); conec=timebuffer.time + timebuffer.millitm/1000.0; _zap.Format ( Сортування знята за% f секунд , conec - nach); (vr_zap);
}//TODO: Add your control notification handler code here
} (_ com_error amp; ce)
{m_datagrid.SetRefDataSource (pRecordset); gt; ErrMessage (ce);
((CButton *) GetDlgItem (IDC_Sort)) - gt; SetCheck (0); _ editquery.SetFocus ();
}
}
Додаток L
.csSystem;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Linq;System.Text;System.Data.OleDb;System.Windows.Forms;WindowsFormsApplication1
{partial class Form1: Form
{dbCon=new OleDbConnection (@ Provider=Microsoft.Jet.OLEDB.4.0; Data Source=dimabudnik.mdb ); dataTable; dbAdapter1; [] a; [] b; n; Form1 ()
{() ;. Visible=false;
} void Form1_Load (object sender, EventArgs e)
{. Items.Clear ();
//підключаємося в БД.Open ();
//отримуємо список табліцtbls=dbCon.GetSchema ( Tables raquo ;, new string [] {null, null, null, TABLE });// список всіх таблиць
//Пробігаємо за списком і додаємо в ЛістБокс (DataRow row in tbls.Rows)
{TableName=row [ TABLE_NAME ]. ToString () ;. Items.Add (TableName);
}. Close () ;. SelectedIndex=0;
//TODO: дана рядок коду дозволяє завантажити дані в таблицю dimabudnikDataSet.Закази raquo ;. При необхідності вона може бути переміщена або видалена.
} void listBox1_SelectedIndexChanged (object sender, EventArgs e)
{. Visible=false;
//підключаємося в БД.Open ();
//Робимо запит до БД=new OleDbDataAdapter (@ SELECT * FROM + listBox1.SelectedItem, dbCon);=new DataTable ();
//Заповнюємо Грід значеннями з табліці.Fill (dataTable); bb=new OleDbCommandBuilder (dbAdapter1);
//Створюємо нове подлюченіе для управленіяbs1=new BindingSource ();
//заповнюємо дату значеніеямі з табліци.DataSource=dataTable;
//даємо навігатору наші значенія.B...