MyMovies - Bulk Path Change for Online Titles
Mijn Home Theater PC heeft een 2TB RAID-array, waarop ik was opslag van films, muziek en tv-opnamen. Na een upgrade van mijn analoge tuners een Ceton quad-tunerkaart , die gaf me toegang tot meer programmering, alsmede HD-programmering, vond ik dat mijn 2TB array begint een beetje te dicht bij een volledige, een beetje te vaak.
( Sla de achtergrond en ga direct naar de instructies )
De oplossing die ik koos was een 3 TB externe schijf te krijgen, en beweeg de films over naar het. Ik ben alleen met behulp van ongeveer 350GB aan ruimte voor films nu, maar ik ben toe te voegen aan het de hele tijd, en het vrijmaken van die ruimte geeft een beetje meer ademruimte op de RAID-array voor opgenomen tv. Ik verliet de muziek op de array voor nu - ik kan het bewegen over ook, als ik vind dat we een tekort aan ruimte voor opgenomen tv weer.
Het verplaatsen van de films naar een ander station introduceerde een verandering in de locatie van de films op het systeem. Ze waren allemaal voorheen opgeslagen in "R: \ Movies \ <title> \ ...", en de nieuwe aandrijving was ik:. De rest van het pad bleef hetzelfde voor elke titel - het was alleen de stationsletter die veranderd. In de films databank My, de oude paden gebleven. Ik had behoefte aan een manier om de database te updaten naar de nieuwe locaties weer te geven, zonder dat u elke titel handmatig bewerken - ik was niet over te bewerken meer dan 300 titels, een voor een.
De My Movies collectiebeheer programma heeft een mechanisme om dit te doen, maar het alleen te vinden de nieuwe locatie voor ongeveer 15 titels. Het was niet gaat werken voor mij. Ik wilde een oplossing die netjes de gehele collectie zou werken in een keer. De beste manier die ik ken om een taak te volbrengen als dit is om de database direct te bewerken, dus dat is wat ik tracht te doen.
Verwacht dat ik was niet de eerste persoon om dit te doen, en dat de oplossing al uit zou zijn op het web ergens, zocht ik naar de snelle en eenvoudige oplossing die moest bestaan. Tot mijn ontzetting, dat gebeurde niet. Niet dat ik kon vinden, toch. Ik was behoorlijk verrast, omdat de HTPC / Media Center menigte neigt te leunen naar de types techneut. "Ok," dacht ik, "hoe moeilijk kan het zijn? '
Hier is het probleem - ik ben geen Microsoft SQL Server vent. Ik heb met behulp van MySQL op een redelijk basisniveau voor een lange tijd, en ik kon makkelijk gedaan in ongeveer twee minuten als de films databank My gebruikt MySQL als de motor. Maar MSSQL? Eeesh ...
De eerste uitdaging was het vinden van het juiste gereedschap om de klus te klaren. MySQL heeft de command-line tool die ik ben zeer vertrouwd met, maar voor zover ik kon zien, was er geen dergelijk instrument voor MSSQL, en de films installatie Mijn bevat geen instrumenten om direct de database.
De versie van My Movies that ik gebruik maakt MSSQL 2005 als de database-engine. Microsoft's (gratis!) hulpmiddel voor deze versie is SQL Server Management Studio Express . Ik downloadde de 64 bit versie en geïnstalleerd op mijn Windows 7 Home Premium systeem zonder enige moeite. Zorg ervoor dat u installeren en draaien als systeembeheerder, of u kunt in de problemen.
Zodra het is geïnstalleerd, opende ik het op en gemakkelijk te navigeren naar de films databank Mijn en vonden de tafel / kolom waarin de locaties van de online titels worden opgeslagen.
Vervolgens heb ik gewoon nodig om te weten wat de SQL-query zou zijn om de locaties te werken en verander alle gevallen van R: \ naar I: \. Genoeg om dit duurde een tijdje, als vrijwel alle van de informatie die ik vond op de commando REPLACE gebruik gemaakt van een SELECT-instructie als zijn voorbeeld. Niet vertrouwd zijn met MSSQL, ik dacht dat het was vreemd - ik verwacht zou hebben van een instructie UPDATE - maar hey, misschien is Microsoft doet dingen anders gewoon. Het zou niet de eerste keer zijn. (In feite, is het meestal het geval is met hen ...) Lang verhaal kort, het bleek dat er een opdracht UPDATE was wat ik wilde na alles. De voorbeelden op de plaats van lidstaten en elders gewoon niet gebruiken om aan te tonen VERVANGEN.
Ik had de vraag, en ik was goed om te gaan, toch? Nope! Ik liep in een namespace probleem met de database. Ik was niet met een of problemen bij het uitvoeren van SELECT-instructies, maar de UPDATE werkte niet. Ik heb geen een goed begrip van MSSQL namespaces, en ik wil echt niet naar - Ik wilde alleen dit ene ding gedaan te krijgen. Het is onwaarschijnlijk dat ik ooit nodig zult hebben om opnieuw te graven in een MSSQL database zoals deze, zodat de besteding van de vereiste tijd om opgeleid op het leek verspilling. Na vele proeven en fouten, heb ik eindelijk dacht dat het uit.
0. Backup van uw database. Ik ben niet verantwoordelijk voor enige schade die u doen om uw systeem, zelfs als mijn instructies verkeerd zijn. ![]()
1. Downloaden, installeren (als beheerder) en draaien (als beheerder) de juiste versie van SQL Server Management Studio Express .
2. Selecteer uw My Movies database.
3. Klik op de "New Query" knop.
4. Voer de volgende query, het veranderen van de drive-letters in voorkomend geval:
UPDATE [My Movies]. [Dbo]. TblDiscs
SET nvcLocation = VERVANGEN (nvcLocation, 'R: \', 'I: \')
5. Druk op de "Uitvoeren" knop.
Dat is het - je locaties moet worden bijgewerkt. U kunt de nieuwe locaties controleren door het invoeren van de query:
SELECT nvcLocation FROM [My Movies]. [Dbo]. TblDiscs
Ik hoop dat dit bericht je wat tijd en moeite heeft bespaard. Wat leek op een vrij eenvoudige zaak omgezet in een aantal uur project voor mij, en als ik kan iemand anders het gedoe besparen, ik ben blij om dat te doen.







































Stephen en Ken ik kan jullie niet genoeg bedanken! Dit was zo gemakkelijk heb ik bang installeren van mijn Drobo vanwege alle stationsletter verandert het. Dit was zo eenvoudig en niet helemaal lang duren. Helaas heb ik niet Ken's berichten over de maatstreepjes lezen, het kostte me meer om dat uit hen vervolgens daadwerkelijk te veranderen. Nogmaals bedankt jongens. Het was zo cool van je om dit te delen.
Thanks. Dit bespaarde me een hoop tijd. Dit is DE manier om het te doen. Kostte me tien minuten in totaal om MSSQL query-browser te downloaden, te installeren, ondervraag de tafels om te controleren dat ze nog steeds de juiste zijn, en maak de verandering. Je moet aandacht besteden aan de aanhalingstekens. Sommige van de personages in het artikel onjuist zijn als je kopieert en plakt. Gebruik de verticale teken voor de koersen. Zoals deze:
UPDATE [My Movies]. [Dbo]. TblDiscs
SET nvcLocation = VERVANGEN (nvcLocation, '\ \ wampeter \ Movies \', '\ \ bokonon \ Movies \')
Het webformulier is de boosdoener. Het geformatteerd mijne ook. Zorg ervoor dat voor alle aanhalingstekens om alleen degene die na de komma en vóór \ \ bokonon \ Films in mijn voorbeeld hieronder weergegeven gebruiken. De andere drie niet de correcte offerte tekens gebruiken. Gelukkig admining.