Matts Cutts ville kunna skapa länkar av alla de sidor han hade öppna i en Firefox-session. Det har jag också tänkt på att det vore väldigt smidigt. Perfekt att kunna skapa länkar till ett blogginlägg eller forumskommentar med andra ord.
Han fick ett tips om CopyAllUrls, och jag som har provat det kan instämma med att det fungerar bra.
MakeLink är ett annat tillägg som skapar länkar av den text man markerar på en sida. Också ett bra verktyg som jag inte provat innan.
Techworld skriver om att Service Pack 2 finns att ladda hem för Windows 2003. Det har varit en hel del frågetecken om denna uppgradering och hurvida men behöver avinstallera IE7 först eller inte. Se även IEBlog.
Fortfarande är jag inte helt säker på vad som gäller, men Fredrik Landin skriver om ett vertyg som Microsoft har släppt för att underlätta uppgraderingen. HotfixScanTool finns att ladda hem hos Microsoft och ska alltså hjälpa till att avgöra ifall man behöver avinstallera några komponenter innan man lägger in SP2.
När jag skrev om hur jag installerade SQL Server Express SP2 berättade jag att det var BCP-verktyget som jag ville ha. Det visade sig vara väldigt användbart även ifall syntaxen är rätt så krånglig att lära sig.
Nu tänkte jag göra en snabb genomgång för några av de kommandon som jag har lyckats använda och även hur jag har kopierat data från SQL Server 2000 till min lokala instans av SQL Server 2005 Express. De flesta av exemplen körs i en cmd-promt.
Exempel på kommandon
Först ett användbart kommando för att se om man kommer åt databaskopplingen.
Skapa en format fil som bara innehåller databasstruktur och inga data.
bcp MittDatabasNamn.dbo.MinTabell format -c -f"c:\MinFormatfil.txt" -Slocalhost\SQLExpress -T -w
Kopiera en tabell till fil.
bcp MittDatabasNamn.dbo.MinTabell out "c:\Lagringsfil.txt" -Slocalhost\SQLExpress -T -N
För att kopiera data från en fil till tabell används "in" istället för "out", så här:
bcp MittDatabasNamn.dbo.MinTabell in "c:\Lagringsfil.txt" -Slocalhost\SQLExpress -T -N
Kopiera data från SQL 2000 till SQL 2005
Med hjälp av dessa kommandon lyckades jag exportera data från SQL Server 2000 och sedan importera dem till min lokala instans, här kommer stegen jag genomförde.
1. Först skapade jag en textfil lokalt med bcp-kommandot. Denna behövde jag ha som en mall för att klistra in innehållet ur textfilen som kommer från exportdatabasen på SQL 2000. Det gick inte att kopiera denna fil direkt eftersom jag då fick ett fel som sa något som "ett ogiltigt filslutstecken <EOF> påträffades i BCP-datafilen".
2. Jag kunde inte använda bcp från cmd-promten på vår Windows2003-server men hittade en annan lösning för att exportera data till en fil. Ifrån Query Analysern körde jag följande query.
execute master..xp_cmdshell 'bcp MittDatabasNamn.dbo.MinTabell out d:\Lagringsfil.txt -SNamnPåServer -T -w'
3. Sedan kopierade jag innehållet i exportfilen till den lokala fil som skapades i steg 1.
4. Slutligen körde jag bcp-kommandot och mina data fanns på plats.
bcp MittDatabasNamn.dbo.MinTabell in "c:\Lagringsfil.txt" -Slocalhost\SQLExpress -T -N
Här är lite olika referenser som hjälpte mig på vägen.
Japp i förrgår hade jag en riktigt jobbig dag. Det började med att insåg att jag hade ett behov av att kopiera tabeller och data från vår produktionsmiljö till min lokala utvecklingsmiljö. Jag exporterade en tabell som textfil från SQL Server 2000 och hämtade hem den till min lokala maskin.
På min laptop har jag bara SQL Server Express 2005 och kunde inte hitta några funktioner för att importera data. Efter lite undersökning visade det sig att det inte finns någon funktion för detta i Management Studio.
Som tur är läste jag Euan Gardens post och i kommentarerna kunde jag läsa något om en DTSWizard som lät som var det jag behövde. Den visade sig bara finnas i SP1 av SQL Server och jag satte igång med installationen.
Det var nu det jobbiga började.. Tyckte att jag hade hittat välskriva och bra instruktioner men hade antagligen missat något viktigt. I slutet krashade det hela ordentligt.
Efter ett antal misslyckade försök kom jag på att det kanske hade släpps ett SP2, och det stämde. Jag laddade ner SP2 här och tänkte att nu ska det väl gå bättre.
Men fortfarande hade jag väldiga problem. Installationen avbröts ständigt i olika lägen. Så här höll jag på i typ 10 timmar och läste om mängder av folk som hade liknade problem.
För mig verkade det som om den gamla installationen av SQL Server var trasig. Något som jag läst kan hända om XPs automatiska rensningsprogram städar bort filerna av misstag. För jag kunde inte ens avinstallera programmet. Läste någonstans om en Hotfix som ska lösa problemet med bortstädade installerare men kan inte hitta den igen.
Efter många om och men lyckade jag iaf installera SP2 på en ny databas instans, så nu har jag två stycken. Den gamla SQLExpress (Som är helt paj) och en ny som jag döpte till SQLExpressSP2. Lite jobbigt att jag inte kunde behålla det gamla namnet eftersom jag nu måste ändra på databaskopplingarna i våra Web.config filer.
Nu har jag även börjat kolla på det verktyg som jag var efter och som finns tillgängligt för cmd-promten. Det heter Bcp.exe (DTSWizard i SP1) och kan användas till att importera tabeller från textfiler och tvärtom. Mer info om hur man använder detta kommer senare.
Så avslutningsvis så kan jag rekommendera att du verkligen ser till att följa instruktionerna om du ska installera SP1 eller SP2 till SQL Server Express 2005. Det finns uppenbarligen många fällor att gå i, eftersom rapporteringen av problem har varit så stor. Lita på mig, jag har läst en större del av utbudet.
Nu borde jag egentligen installera om hela XP på min maskin eftersom en hel del av miljön är så trasig. Men det hinner jag tyvärr inte med nu.
Som ni vet väntar vi ivrigt på att IIS7 ska kunna gå att använda i produktions miljö. Där kommer det finns bättre stöd för att "skriva om" urler. De nuvarande alternativen är inte så vidare bra och saknaden av en standardiserad modell är jobbig.
Scott Guthrie ger oss dock några bra knep. En genomgång av de ISAPI-filter finns tillgängliga för IIS6. Även andra trix, bland annat Request.PathInfo som jag inte använt tidigare. Då kan man göra urler som ser ut så här.
Ändelsen ".aspx" är helt onödig och den tillför absolut ingenting för besökarens upplevelse. Okej vi som är utvecklare får snabbt reda på vilken teknik som körs, men hur väsentligt är det?
Ett snyggare och mer lättillgängligt variant skulle vara som i nästa exempel.
Men för att ange en sådan struktur måste man alltså använda ett ASAPI ISAPI-filter. Och det är inte alla webbhotell som erbjuder. Man kan ju givetvis skapa fysiska mappar och lägga en Default.aspx fil i varje. Men det orkar man inte..
Microsoft kommer med sin roadshow till Göteborg den 20 mars. Mellan 8:30 och 17:00 i SF Filmstaden Bergakungen. För agenda och övriga orter läs hos Johan Lindfors.
Vi kommer vara på plats och ser fram emot att tal del av presentationen om Longhorn, WPF/E, ASP.NET Ajax och alla andra nyheter.
Jag har precis gått med i maillistan för Papervision3D - en fri 3Dmotor till flash. Genom denna får jag reda på att Antti Kupila har lekt lite med motorn och fått till något riktigt lovande.
Det handlar om ett på en variant på Apples iTunes-bläddring, där framsidorna på albumen rullar fram över skärmen. Antti kallar sitt demo flame och jag tycker verkligen det är häftigt gjort.
Genom en sökruta kan man ange egna termer och liknande artister laddas in dynamiskt från last.fm.
Nu meddelar man att nästa version kommer att vara baserad på Flash-teknik. I skrivade stund finns ingen publik beta men man visar upp en demofilm i sin blogg.
För att logga in och starta klienten går man via en webbläsare. Klienten kommer att kunna komma åt lokala resureser på datorn och även visa en statusikon när man tar emot nya meddelanden.
Har en rutin som hämtar ut olika märken för en e-handelsida. Dessa visas i en DropDownList och fylldes den av en SqlDataReader.
Nu ville jag spara dessa data i ett DataSet och lagra det i Cache-minnet för att spara på dyrbara återtrippar till databasen (SQL Server).
Efter märkena i listan skulle det stå hur många produkter som finns under varje märke, inom paranteser. Därför behövde jag göra en ny kolumn och sätta ihop två värden och lägga till egna tecken.
//Hämta cachad data om det finns if (Cache[strCacheName] != null) { dataSet = (DataSet)(Cache[strCacheName]); Trace.Write("//Hämta cachad ChooseBrand"); } else {
SqlConnection conn = new SqlConnection(strConn);
string strSQL = "SELECT DISTINCT Brand.Id, Brand.Brand,(SELECT Count(Product.Id) AS CountOfProductId FROM Product WHERE Product.BrandId=Brand.Id) AS CountOfProducts FROM Brand ORDER BY Brand.Brand";
Jobbar med ett kluster på tre Windows 2003-burkar. Vi har SQL Server installerade på två av dessa men operativsystemet är 32-bitar på den ena och 64-bitar på den andra.
Jag har försökt att övervaka hur databasen jobbar genom verktyget Perfmon men kunde inte se några räknare på 64-servern. Nu förstår jag varför.
Eftersom operativet är 64-bitar så laddas bara processer som körs i 64-läge. SQL Server 2000 ligger fortfarande och puttrar på 32-bitar och därför kom de inte med i Perfmon-listan.
Tony Rogersson's bloggpost var till stor hjälp för att komma till insikt med detta. Skriv helt enkelt in följande för att starta upp en Perfmon för 32-bitars-processer.