Merhaba, 1)Önce openFileDialog ile kullanıcıya bir .csv dosyası seçtiriyorum. 2)Sonra bu .csv dosyasının içeriğini DataGridView e aktarıyorum.
Buraya kadar yapabiliyorum.
3)Bundan sonra bu DataGridView üzerindeki verileri SqlServer'a import etmek istiyorum. DataGridView üzerindeki verileri import ederken yeni bir tablo oluşturacağım için kullanıcıdan tablonun adınıda alıyorum. Şuan bu kısım üzerinde çalışıyorum.
Ama şu hatayı alıyorum:
object reference not set to an instance of an object null reference exception was unhandled
1)Önce openFileDialog ile kullanıcıya bir .csv dosyası seçtiriyorum.
2)Sonra bu .csv dosyasının içeriğini DataGridView e aktarıyorum.
Buraya kadar yapabiliyorum.
3)Bundan sonra bu DataGridView üzerindeki verileri SqlServer'a import etmek istiyorum.
DataGridView üzerindeki verileri import ederken yeni bir tablo oluşturacağım için kullanıcıdan tablonun adınıda alıyorum.
Şuan bu kısım üzerinde çalışıyorum.
Ama şu hatayı alıyorum:
object reference not set to an instance of an object
null reference exception was unhandled
Şu satırda:
string valueData = dataGridViewScanner.Rows.Cells[j].Value.ToString();
Acaba kodlarımı inceleyebilir misiniz ?? Yardımlarınız için şimdiden çok teşekkür ederim..
private void btnTransferSqlFromDataGrid_Click(object sender, EventArgs e)
{
SqlConnection sqlConn = new SqlConnection();
string connStr = "Data Source=PCSELIN;Initial Catalog=OptimaHucreVerileriIzlemeProjesi;Integrate d Security=True";
sqlConn.ConnectionString = connStr;
sqlConn.Open();
ArrayList aList = new ArrayList();
//string tableName = Microsoft.VisualBasic.Interaction.InputBox("Databa se'de oluşturmak istediğiniz tablo adını giriniz");
//for (int i = 0; i < dataGridViewScanner.Rows.Count; i++ ) {
string tableName = txtTableName.Text;
for (int i = 0; i < dataGridViewScanner.Rows.Count; i++)
{
for (int j = 0; j < dataGridViewScanner.Rows.Cells.Count; j++)
{
string valueData = dataGridViewScanner.Rows.Cells[j].Value.ToString();
aList.Add(valueData);
}
}
ClsInsertDatabase ins = new ClsInsertDatabase();
ins.insertData(aList,tableName);
}
}
}
public void insertData(ArrayList aList,string table) {
SqlConnection sqlConn = new SqlConnection();
sqlConn.ConnectionString = "Data Source=PCSELIN;Initial Catalog=OptimaHucreVerileriIzlemeProjesi;Integrate d Security=True";
sqlConn.Open();
string degiskenBildirimi = "";
for (int i = 0; i < aList.Count - 1;i++ ) {
if (i == 0)
{
degiskenBildirimi += ("@" + (i+1));
}
else {
degiskenBildirimi += (",@" + (i+1));
}
}
string tableName = Path.GetFileName(table);
string sqlCmdCreate = "Create table "+ tableName +" Values("+ degiskenBildirimi +")";
SqlCommand sqlCmd = new SqlCommand(sqlCmdCreate, sqlConn);
//sqlCmd.Connection = sqlConn;
//sqlCmd.CommandText = sqlCmdCreate;
for (int j = 0; j < aList.Count - 1;j++ ) {
string etIsareti = "@";
SqlParameter sqlParam = new SqlParameter();
//this[j]=
sqlCmd.Parameters.Add(new SqlParameter(etIsareti, aList.Add(j)));
}
try
{
sqlCmd.ExecuteNonQuery();
MessageBox.Show("Veri başarıyla transfer edilmiştir.");
}
catch (Exception ex)
{
MessageBox.Show("Source : " + sqlCmd.ToString() + "Exception : " + ex.Message);
}
finally {
sqlCmd.Dispose();
}
}