Avatar billede beef12 Nybegynder
18. maj 2010 - 10:15 Der er 8 kommentarer og
1 løsning

SQL Server Compact - hvordan opretter en DB

Jeg har installeret SQL Server Compact Edition 2005.

Når jeg går ind i SQL Management Tool for at oprette en database, men jeg kan slet ikke se min Compact edition (Jeg har også  SQL Server 2005 Express installeret).

Hvordan tilgår man Compact til databaseoprettelser, eksekvering af forespørgsler med mere?

På forhånd tak.
Avatar billede arne_v Ekspert
18. maj 2010 - 14:39 #1
CE er til embedded brug.

Management Studio snakker med en koerende server - en embedded database har ikke en server koerende men er kun aktiv naar app koerer.

Lav en lille app som opretter databasen eller check om CE kommer med et lille tool der kan goere det.
Avatar billede beef12 Nybegynder
18. maj 2010 - 15:07 #2
Jeg har brug nogle lidt mere konkrete anvisninger...

Man skulle tro at man ligesom Access og SQLite blot kan oprette en ny databasefil og så køre derudaf? Men det kan jeg ikke her i hvert fald.

Jeg har læst på nettet at man skulle tilgå via SQL Mgmt Tool. Det undrer mig at jeg ikke kan se den i Object browseren, som MS anviser.

Jeg aner ikke hvad jeg skal stille op. Måske skal jeg bare holde mig til én af de andre fildatabaser så...
Avatar billede arne_v Ekspert
18. maj 2010 - 15:31 #3
Jeg har kun brugt CE sammen med .NET og jeg synes ikke at der er svaert at oprette.

Eksempel kode:

            SqlCeEngine eng = new SqlCeEngine("Data Source=TestEmb.sdf; Password=hemmeligt");
            eng.CreateDatabase();
            SqlCeConnection con = new SqlCeConnection("Data Source=TestEmb.sdf; Password=hemmeligt");
            con.Open();
            SqlCeCommand cre = new SqlCeCommand("CREATE TABLE tbl (id INTEGER NOT NULL, txt NVARCHAR(50), PRIMARY KEY(id))", con);
            cre.ExecuteNonQuery();
            for(int i = 0; i < 3; i++)
            {
                SqlCeCommand ins = new SqlCeCommand("INSERT INTO tbl VALUES(" + i + ",'Test" + i + "')", con);
                ins.ExecuteNonQuery();
            }
            con.Close();
Avatar billede beef12 Nybegynder
18. maj 2010 - 21:44 #4
Okay tak for info.

Men lige en tand omstændigt nok at jeg skal bygge en applikation for at oprette database, bygge datamodel, bygge/teste forespørgsel mv.

Men svaret er reelt nok - selvom jeg nu nok ikke regner med at gå den vej - så smid du bare lige et svar arne.



P.S er ved at installere Visual Studio 2010 og kan se at "Visual Studio Tools for SQL Compact 3.5" indgår - det ser nu ganske lovende ud.
Avatar billede arne_v Ekspert
19. maj 2010 - 01:25 #5
Jeg kan godt oprette en database med "SQL Server Management Studio".

Start
Server Type = Compact Edition
DataBase File = new / navn på eksisterende
Avatar billede arne_v Ekspert
19. maj 2010 - 01:26 #6
SQL Server Management Studio 2008 og den største af de gratis udgaver.
Avatar billede arne_v Ekspert
19. maj 2010 - 01:27 #7
Men en embedded database er beregnet til enkelt applikations brug.
Avatar billede arne_v Ekspert
19. maj 2010 - 01:27 #8
Og et svar.
Avatar billede beef12 Nybegynder
19. maj 2010 - 09:21 #9
Jojo - men der hører vel som regel et værktøj til (hvilket man så også får med VS2010).
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



Seneste spørgsmål Seneste aktivitet
I dag 06:10 Excel åbner fil i kæmpe format Af Aske i Excel
I går 22:00 Datafordeler Af Lsk i PHP
I går 12:37 Summere beløb pr. dato Af TTA i Excel
31/1022:44 Tilslutte chassic fans Af viking69 i PC
31/1020:28 LED lysstofrør Af ErikHg i Fri debat