For din oprindelige situation ser det ud til, at du har prøvet noget som dette (eller hvad GUI'en forbereder for dig, når du går gennem dialogerne):
CREATE DATABASE YAFnet ON (FILENAME = N'C:\sql_data\YAFnet.mdf')
FOR ATTACH;
Denne metode kræver dog både en mdf
fil og en ldf
fil. Ellers får du en fejlmeddelelse, der ligner:
Nu er der en måde at fortsætte, selvom du kun har mdf
fil. Forudsat at du har en mdf
fil, der var korrekt adskilt fra SQL Server, bør du være i stand til at vedhæfte mdf
fil uden en logfil ved hjælp af følgende syntaks:
CREATE DATABASE YAFnet ON (FILENAME = N'C:\sql_data\YAFnet.mdf')
FOR ATTACH_REBUILD_LOG;
Det ser dog ud til, at filen i dit tilfælde ikke var korrekt adskilt fra SQL Server:
Der er flere mulige forklaringer, herunder dem der er nævnt i fejlmeddelelsen. Måske blev den hentet fra en eller anden ugyldig SAN-skygge, eller løsnet, mens den kun er læse, eller gendannet efter SQL Server eller det underliggende system styrtede ned, eller beskadiget under kopiering/download, eller hvem ved hvad ellers.
Du skal gå tilbage til Yafs support eller deres serviceudbyders support for at se, om der er korrekte sikkerhedskopier tilgængelig eller, hvis det ikke er muligt, alternative kopier af mdf
fil. Husk også, at ingen af os rigtig ved, hvad Yaf er eller har nogen måde at bekræfte, hvilken Yaf du taler om.
Ellers ser det ud til, at du er uheldig, da netop denne mdf
filen er ugyldig og vil derfor ikke bringe dig ret langt.
Det er netop grunden til, at tilgangen til filkopiering på O/S-niveau ikke er særlig nyttige metoder til backup (eller migrering, for den sags skyld) til SQL Server. Du har brug for en ordentlig backup/gendannelsesplan, hvilket betyder at tage ordentlige fuld/diff/log backups, der passer til din tolerance for tab af data. Og at frakoble en database er næsten altid en ringere idé - når der sker noget med mdf
fil under eller efter frakoblingen, har du nu NUL kopier af din database.