NEW Post
Here's my best guess at how to insert this dataset....
the code runs, but no new records are added to the sql table.
I've read and split a delimited text file into a dataset.
It looks fine in a datagrid (5 columns and 5,000 rows),
but I've been trying, without success, to then insert
the resulting dataset called "result" into a single sql
table that has an auto-increment and PK column called ID,
as well as the 5 columns from the dataset.
Any suggestions on a way to perform the insert of the
"result" dataset into the sql table?
Thanks,
Paul
=============== =============== =============== =============== =============== =============== ========
StreamReader sr = new StreamReader("C :\\test.txt"); //Read From A
File instead of a webrequest
DataSet result = new DataSet(); //The DataSet to Return
result.Tables.A dd("MyNewTable" ); //Add DataTable to hold the DataSet
result.Tables["MyNewTable "].Columns.Add("C ompanyName"); //Add a single
column to the DataTable
result.Tables["MyNewTable "].Columns.Add("F ormType"); //Add a single
column
result.Tables["MyNewTable "].Columns.Add("C IK"); //Add a single
column
result.Tables["MyNewTable "].Columns.Add("D ateFiled"); //Add a single
column
result.Tables["MyNewTable "].Columns.Add("S ECWebAddress"); //Add a single
column
string AllData1 = sr.ReadToEnd(); //Read the rest of the
data in the file.
string[] rows = AllData1.Split( "\n".ToCharArra y()); //Split off each
row at the Line Feed
foreach(string r in rows) //Now add each row to the
DataSet
{
string delimStr1 = "\t";
string[] items = r.Split(delimSt r1.ToCharArray( )); //Split the row at the
delimiter
result.Tables["MyNewTable "].Rows.Add(items ); //Add the item
}
for (int i = 1; i <= 11; i++) //Remove first 8
rows from the DataTable/DataSet
{
result.Tables["MyNewTable "].Rows.RemoveAt( 0);
}
dataGrid1.SetDa taBinding(resul t, "MyNewTable "); //Binds DataGrid to
DataSet,display ing datatable
SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter( ); //Configure a
data adapter
//Configure the SQL connection
SqlConnection sqlConnection1 = new SqlConnection(" workstation id=AMD;packet
size=4096;" +
"integrated security=SSPI;d ata source=AMD;pers ist security
info=False;init ial catalog=SEC_XBR L_10");
//Generate the 'INSERT' command
SqlCommand sqlInsertComman d1 = new SqlCommand("INS ERT INTO
SEC_Index_01(Co mpanyName, FormType, CIK, " +
"DateFiled, SECWebAddress) VALUES (@CompanyName, @FormType, @CIK,
@DateFiled, @FileName); SELECT ID, " +
"CompanyNam e, FormType, CIK, DateFiled, SECWebAddress FROM SEC_Index_01
WHERE (ID = @@IDENTITY)", sqlConnection1) ;
//Add the parameters
sqlInsertComman d1.Parameters.A dd("@CompanyNam e",
System.Data.Sql DbType.VarChar, 8000, "CompanyNam e");
sqlInsertComman d1.Parameters.A dd("@FormType" , System.Data.Sql DbType.VarChar,
8000, "FormType") ;
sqlInsertComman d1.Parameters.A dd("@CIK", System.Data.Sql DbType.VarChar,
8000, "CIK");
sqlInsertComman d1.Parameters.A dd("@DateFiled" ,
System.Data.Sql DbType.VarChar, 8000, "DateFiled" );
sqlInsertComman d1.Parameters.A dd("@FileName" , System.Data.Sql DbType.VarChar,
8000, "SECWebAddress" );
sqlDataAdapter1 .InsertCommand = sqlInsertComman d1; //Set the insert
command
sqlDataAdapter1 .Update(result, "SEC_Index_01") ; //Perform the
update
Here's my best guess at how to insert this dataset....
the code runs, but no new records are added to the sql table.
I've read and split a delimited text file into a dataset.
It looks fine in a datagrid (5 columns and 5,000 rows),
but I've been trying, without success, to then insert
the resulting dataset called "result" into a single sql
table that has an auto-increment and PK column called ID,
as well as the 5 columns from the dataset.
Any suggestions on a way to perform the insert of the
"result" dataset into the sql table?
Thanks,
Paul
=============== =============== =============== =============== =============== =============== ========
StreamReader sr = new StreamReader("C :\\test.txt"); //Read From A
File instead of a webrequest
DataSet result = new DataSet(); //The DataSet to Return
result.Tables.A dd("MyNewTable" ); //Add DataTable to hold the DataSet
result.Tables["MyNewTable "].Columns.Add("C ompanyName"); //Add a single
column to the DataTable
result.Tables["MyNewTable "].Columns.Add("F ormType"); //Add a single
column
result.Tables["MyNewTable "].Columns.Add("C IK"); //Add a single
column
result.Tables["MyNewTable "].Columns.Add("D ateFiled"); //Add a single
column
result.Tables["MyNewTable "].Columns.Add("S ECWebAddress"); //Add a single
column
string AllData1 = sr.ReadToEnd(); //Read the rest of the
data in the file.
string[] rows = AllData1.Split( "\n".ToCharArra y()); //Split off each
row at the Line Feed
foreach(string r in rows) //Now add each row to the
DataSet
{
string delimStr1 = "\t";
string[] items = r.Split(delimSt r1.ToCharArray( )); //Split the row at the
delimiter
result.Tables["MyNewTable "].Rows.Add(items ); //Add the item
}
for (int i = 1; i <= 11; i++) //Remove first 8
rows from the DataTable/DataSet
{
result.Tables["MyNewTable "].Rows.RemoveAt( 0);
}
dataGrid1.SetDa taBinding(resul t, "MyNewTable "); //Binds DataGrid to
DataSet,display ing datatable
SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter( ); //Configure a
data adapter
//Configure the SQL connection
SqlConnection sqlConnection1 = new SqlConnection(" workstation id=AMD;packet
size=4096;" +
"integrated security=SSPI;d ata source=AMD;pers ist security
info=False;init ial catalog=SEC_XBR L_10");
//Generate the 'INSERT' command
SqlCommand sqlInsertComman d1 = new SqlCommand("INS ERT INTO
SEC_Index_01(Co mpanyName, FormType, CIK, " +
"DateFiled, SECWebAddress) VALUES (@CompanyName, @FormType, @CIK,
@DateFiled, @FileName); SELECT ID, " +
"CompanyNam e, FormType, CIK, DateFiled, SECWebAddress FROM SEC_Index_01
WHERE (ID = @@IDENTITY)", sqlConnection1) ;
//Add the parameters
sqlInsertComman d1.Parameters.A dd("@CompanyNam e",
System.Data.Sql DbType.VarChar, 8000, "CompanyNam e");
sqlInsertComman d1.Parameters.A dd("@FormType" , System.Data.Sql DbType.VarChar,
8000, "FormType") ;
sqlInsertComman d1.Parameters.A dd("@CIK", System.Data.Sql DbType.VarChar,
8000, "CIK");
sqlInsertComman d1.Parameters.A dd("@DateFiled" ,
System.Data.Sql DbType.VarChar, 8000, "DateFiled" );
sqlInsertComman d1.Parameters.A dd("@FileName" , System.Data.Sql DbType.VarChar,
8000, "SECWebAddress" );
sqlDataAdapter1 .InsertCommand = sqlInsertComman d1; //Set the insert
command
sqlDataAdapter1 .Update(result, "SEC_Index_01") ; //Perform the
update
Comment