Jag har en webbapplikation i ASP.NET C# och MS SQL Server där jag läser igenom en textfil där jag vill spara denna till en databas. Just nu gör jag så att jag skapar en ny TableRow som jag uppdaterar men det går Väldigt segt. Sql2000 eller 2005? Har du möjlighet att lägga upp DTS-/SSIS-paket? Du kan skapa din egna SQL INSERT fråga och lägga in all data i ett svep. Det fungerar dock har jag ju problem när det är text folk skrivit och det är tecken som exempelvis ' Thomas, fungerar ditt exempel i Access också? Thomas, borde göra det men jag har dock inte testat. Tror det är standard SQL. Tackar för tipset, ska kolla in detta med placeholders att byta ut ' med " fungerar ju, men hur blir det vid utskrift, då kommer det stå "? Nej Emil, det kommer in ' i databasen. Eftersom ' är ett specialtecken i SQL måste man ersätta det med en motsvarighet, i detta fall dubbla sådana tecken. istället för att loopa genom alla rader och utföra fråga efter fråga, kan du läsa in till en datatable som du sedan synkar till databasen med en adapter.update. googla efter kod =) Koden kan jag nog skriva själv, det är mest den smartaste lösningen jag tänkte på. Dock så har jag gjort så som det stod tidigare loopar igenom ch lägger allt i en sql-update sträng som jag kör när loopen är klar. Funkade klockrent. Ja, men jag rekommenderar ändå att du använder dig av parametrar då detta garanterar att din SQL fråga är helt säker mot SQL-injections, och det är lättare att hantera också, tycker jag. SqlDataAdapter.Update - är rätt väg när det gäller så många poster då den använder sig av Table-Direct istället för att köra miljarders med UpdatesStoppa in upp till 1500 poster till en databas på smidgast sätt?
Hur ska jag göra på smidigast sätt för att det ska gå så snabbt som möjligt, det är ju inga stora datamängder utan bara väldigt många poster?Sv: Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Ado.Net 2.0 har bulk copy (bulk inserts), kolla upp det.Sv: Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Exempel
INSERT INTO tabell (fält1, fält2) VALUES ('värde1', 'värde2'), ('värde3', 'värde4')
Du lägger alltså bara in alla värden som ska in inom parenteser och delar på parentesgrupperna med ett kommatecken.
Sv:Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Det avslutar ju strängen och jag får fel vid uppdateringen. Hur ska man lösa det på ett smidigt sätt, jag vill ju inte plocka bort alla tecken från texten?Sv:Stoppa in upp till 1500 poster till en databas på smidgast sätt?
/ThomasSv: Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Emil, det du gör är att du ersätter ' med '' (två ')
Men det bästa skulle vara att du kör med placeholders, alltså sätter in till exempel @value_1 och sedan sätter in en parameter, då behöver du inte bry dig om detta problem.
Mer info hittar du på Google, men en liten början hittar du på http://www.knowdotnet.com/articles/sqlparameters.htmlSv:Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Sv: Stoppa in upp till 1500 poster till en databas på smidgast sätt?
När data sedan lagras byter SQL servern ut '' mot ' igen.Sv: Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Sv:Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Jaha, så byta ut ' mot " är perfekt alltså, då löser sig mina problem med detta väldigt enkelt. Tack för det!Sv: Stoppa in upp till 1500 poster till en databas på smidgast sätt?
Sv:Stoppa in upp till 1500 poster till en databas på smidgast sätt?