Avatar billede ircnoob Nybegynder
07. september 2008 - 20:20 Der er 5 kommentarer

Ny linie i SQL forespørgsel

Hej,

jeg har nedenstående kode, som egentlig virker ok.. Jeg ønsker at læse en sql-forespørgsel ud fra en fil, og så eksekvere den..

Problemet er, at den melder fejl, fordi de sql forespørgsler mangler linie-skifts..

Filen starter fx med:
"USE master
GO

CREATE DATABASE [DATABASENAME]
GO

USE [DATABASENAME]
GO
"
men jeg kan kun få det ud/eksekveret på én linie.. hvordan fixer jeg lige det :) ?


TextReader tr = new StreamReader(@"c:\sqlfil.sql");
           
            string sql = @tr.ReadToEnd();

            sql = @sql.Replace("\n", " ");
            sql = @sql.Replace("\r", "");
           
            con = new SqlConnection(Settings.Default.eventsConnectionString);
            cmd = new SqlCommand(sql, con);
            con.Open();

            int success = Convert.ToInt32(cmd.ExecuteScalar());

            con.Close();
            tr.Close();
            return success;
Avatar billede arne_v Ekspert
07. september 2008 - 20:24 #1
Prøv og erstat GO med semikolon.
Avatar billede ircnoob Nybegynder
07. september 2008 - 20:35 #2
Et godt bud, men får desværre fejl.

Når jeg eksekverer den i query analyser,
fungerer det ved:
USE master; 
CREATE DATABASE databasenavn;
"

Men ved
USE master; 
CREATE DATABASE databasenavn;
USE databasenavn;

Melder den fejl.. Der vil den have at jeg skriver GO før "Use databasenavn", så fungerer det..
Avatar billede arne_v Ekspert
07. september 2008 - 21:46 #3
CREATE and USE af database må være lidt specielle.

Normalt vil man jo også angive databasen i connection string.

Jeg ville nok:
- lave en connection til MASTER
- ikke bruge USE
- lave CREATE DATABASE
- lave en connection til den createde database
- ikke bruge USE
- lave alle de øvrige SQL sætninger
Avatar billede arne_v Ekspert
30. oktober 2008 - 02:26 #5
Tid at få afsluttet her ?
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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