Hi,
Question pls. I have an MS SQL local package where it exports data from SQL table to Excel file. My question is, how can erase all the records in my excel file before i export the new data from SQL table?
What i want is to delete the rows in the destination file before inserting new records.
Thanks a lot.Is it possibe to create a link to the Excel and run a delete statement from the SQL Server side?
http://www.informit.com/guides/content.asp?g=sqlserver&seqNum=135&rl=1
ddave|||LimaCharlie, take a look at this post:
http://www.dbforums.com/showthread.php?t=981661
Cheers
kbk|||hi kbk,
that was my first design: i drop then recreate the table and it was working properly. but the problem is, the users are not permitted to drop & create tables in the database (only me & the DB admin are allowed to do this). so what i did was create a temporary table, from this temp table i export the data to excel. is there any other way so i can delete the rows before inserting new?
thanks a lot.|||What i want is to delete the rows in the destination file before inserting new records.
I sugggest delete the worksheet instead of delete all the rows. Then recreate the worksheet later.
1. Create an activeX script as below: -This will remove the worksheet.
Function Main()
Dim srccsvfile
Dim objExcel
Dim objWorkbook, objWorksheet
srccsvfile = "C:\Test.xls"
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = False
objExcel.displayalerts = False
Set objWorkbook = objExcel.Workbooks.open(srccsvfile)
Set objWorksheet = objWorkbook.WorkSheets("New_Table")
objWorksheet.Activate
objWorksheet.Delete 'this is removing the worksheet instead of rows
objWorkbook.Save 'you must save the change otherwise in trouble
objExcel.Workbooks.Close
Set objWorkbook = Nothing
objExcel.Quit
Set objExcel = Nothing
Main = DTSTaskExecResult_Success
End Function
2. Create Execute SQL task as below: - create the worksheet again
CREATE TABLE `New_Table` (
`OfficePK` VarChar (8) ,
`DealerGroupFK` VarChar (4) ,
`StateManagerGroupFK` VarChar (20) ,
`OfficeType` VarChar (1) ,
`OfficeName` VarChar (255) ,
`OfficeAddress1` VarChar (255) ,
`OfficeAddress2` VarChar (255) ,
`OfficeSuburb` VarChar (255) ,
`OfficeState` VarChar (255) ,
`OfficePostCode` VarChar (255) ,
`OfficeCountry` VarChar (255) ,
`OfficePhone` VarChar (255) ,
`RIOfficeID` VarChar (50) ,
`RIFranchiseName` VarChar (255) ,
`VPServerIP` VarChar (50) ,
`LastReceived` DateTime
)
3. Then use data transform as you are doing now.
Make sure that the destination table name is New_Table and the connection is Excel.|||Hi TerryP,
I'll try this.
Thank you very much. =)sql
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment