Aracılığıyla paylaş


CRowset::Insert

Oluşturur ve erişimcisi verileri kullanarak yeni bir satır başlatır.

HRESULT Insert( 
   int nAccessor = 0, 
   bool bGetHRow = false  
) throw( );

Parametreler

  • nAccessor
    [in] Veri eklemek için kullanılacak erişeni sayısı.

  • bGetHRow
    [in] Eklenen satır için tanıtıcı alınır olup olmadığını gösterir.

Dönüş Değeri

Standart HRESULT.

Notlar

Bu yöntem, isteğe bağlı arabirimi gerektirir IRowsetChange, hangi desteklenmeyen tüm sağlayıcılar üzerinde; Bu durumda ise, yöntem döndürür E_NOINTERFACE.De ayarlamalısınız DBPROP_IRowsetChange için VARIANT_TRUE önce arama açık tablo veya satır kümesi içeren bir komut.

Bir veya daha fazla sütun ise yazılabilir ekleme başarısız olabilir.İmleç haritanızı bunu düzeltecek şekilde değiştirin.

Örnek

Aşağıdaki örnek, satır kümesi bir veri kaynağına erişim ve sonra o kümesi içinde bir tablo kullanarak bir dize gösterilmiştir.

İlk olarak, projenize yeni atl nesnesi ekleyerek tablo sınıf oluşturun.Örneğin, project çalışma alanı bölmesinde sağ tıklatın ve seçin Yeni atl nesnesi.Dan Data Access kategori seçin tüketici.Tüketici nesnesi türü Tablo.(Seçerek Tablo satırkümesi doğrudan tablodan; oluşturur. seçme komut sql komutu ile bir satır oluşturur.) Belirterek tablo üzerinden veri kaynağına erişmek bir veri kaynağı seçin.Tüketici nesneniz çağrısı CCustomerTable, ekleme kodu gibi daha sonra uygulamak:

// Access the rowset using the wizard-generated class, CCustomerTable
CCustomerTable rs;           // Your CTable-derived class

// Insert a customer
// Note that for fixed-length fields such as billing ID it isn't necessary
// to set the length
rs.m_BillingID = 5002;
rs.m_dwBillingIDStatus = DBSTATUS_S_OK;

_tcscpy_s(rs.m_ContactFirstName, sizeof(rs.m_ContactFirstName) / sizeof(TCHAR), 
   _T("Malcolm"));
rs.m_dwContactFirstNameLength = 7;
rs.m_dwContactFirstNameStatus = DBSTATUS_S_OK;

_tcscpy_s(rs.m_L_Name, sizeof(rs.m_L_Name) / sizeof(TCHAR), _T("Reynolds"));
rs.m_dwL_NameLength = 8;
rs.m_dwContactFirstNameStatus = DBSTATUS_S_OK;

rs.m_CustomerID = 2005;
rs.m_dwCustomerIDStatus = DBSTATUS_S_OK;

_tcscpy_s(rs.m_PostalCode, sizeof(rs.m_PostalCode) / sizeof(TCHAR), 
   _T("34213-4444"));
rs.m_dwPostalCodeLength = 10;
rs.m_dwPostalCodeStatus = DBSTATUS_S_OK;

HRESULT hr = rs.Insert();
if (FAILED(hr))
{
   ATLTRACE(_T("Insert failed: 0x%X\n"), hr);
}

Gereksinimler

Başlık: atldbcli.h

Ayrıca bkz.

Başvuru

CRowset sınıfı