Avatar billede kongen72 Nybegynder
05. december 2009 - 00:25 Der er 12 kommentarer og
1 løsning

Hjælp til syntaksfejl

hej, hvordan kommer jeg denne fejl til livs?

"Parameterværdien fra Guid til String kunne ikke konverteres."
Avatar billede arne_v Ekspert
05. december 2009 - 00:33 #1
Der er noget rod med typer - string versus guid.

Hvordan ser koden ud?
Avatar billede Syska Mester
05. december 2009 - 00:39 #2
Hvordan ser din kode ud ... ?
Avatar billede kongen72 Nybegynder
05. december 2009 - 00:54 #3
MembershipUser newUser = Membership.CreateUser(UsernameTextbox.Text, PasswordTextbox.Text, EmailTextbox.Text);

database.Addparameter("@A1, @A2, @A3", newUser.ProviderUserKey, SqlDbType.NVarChar);
database.ExecuteNonQuery("INSERT INTO table (A1, A2, A3) VALUES ("@A1, @A2, @A3)");
database.ClearParameters();
Avatar billede arne_v Ekspert
05. december 2009 - 00:57 #4
Skal du ikke have 3 x AddParemeter (og med korrekt type!)?
Avatar billede kongen72 Nybegynder
05. december 2009 - 01:12 #5
kan man få et lille eksempel?
Avatar billede Syska Mester
05. december 2009 - 01:17 #6
Som arne_v siger ... så er der et eller andet forkert.

Men ... kan godt ske at jeg husker forkert ... du havde et tidligere spøgsmål ... hvis du igen, uden at poste kode selv løste dit problem.

Og ud fra overstående virker det som at "database" er din egen klasse ... da AddParameter normalt er med et stort "P" ... og dit her er med lille ...

Så igen ... du må vise og noget mere kode, da det her lidt noget du er ved at hjemme strikke dine egne sql klasser til håndtering af data ...

Og så har du også fejl i overstående du har copy/pasted herind:
database.ExecuteNonQuery("INSERT INTO table (A1, A2, A3) VALUES ("@A1, @A2, @A3)");

Den her linje er jo slet ikke valid ...

Følgende laver en insert:
SqlConnection con = new SqlConnection("din con string");
SqlCommand cmd = new SqlCommand("INSERT INTO table (A1, A2, A3) VALUES (@A1, @A2, @A3)", con);
cmd.Parameters.Add("@A1", SqlDbType.Text).Value = "dinstring";
cmd.Parameters.Add("@A2", SqlDbType.Text).Value = "dinstring";
cmd.Parameters.Add("@A3", SqlDbType.Text).Value = "dinstring";
cmd.ExecuteNonQuery();

Du bliver nød til at poste hvad kode du bruger ... :-)
Avatar billede arne_v Ekspert
05. december 2009 - 01:19 #7
SqlCommand ins = new SqlCommand("INSERT INTO j VALUES(@id, @txt)", con);
            ins.Parameters.Add("@id", SqlDbType.Int);
            ins.Parameters.Add("@txt", SqlDbType.VarChar, 50);
            ins.Parameters["@id"].Value = 123;
            ins.Parameters["@txt"].Value = "ABC";
            ins.ExecuteNonQuery();
Avatar billede Syska Mester
05. december 2009 - 01:20 #8
Vi vil aldrig kunne vide hvad du kode gør hvis du ikke poster den ... og vi kan ikke vide ud fra en fejl besked om hvad du gør galt ... kun gætte i vilde ...

Post kode ... hvad linje fejler kommer på ...

Hvis du ikke poster kode fordi det af en eller anden grund ikke må offenlige gøres, må du genskabe problemet i anden sammenhænd og poste den kode ... så hjælper vi med glæde.

// ouT
Avatar billede kongen72 Nybegynder
05. december 2009 - 02:35 #9
tak for hjælpen.. ok det vil jeg tænke over til næste gang ;-)

Hvordan vil koden se ud hvis jeg skal have min membership oprettelse med?

        MembershipUser newUser = Membership.CreateUser(UsernameTextbox.Text, PasswordTextbox.Text, EmailTextbox.Text);

Skal have forbundet min membership-tabel med min oprettelses-tabel gennem UserId
Avatar billede kongen72 Nybegynder
05. december 2009 - 13:41 #10
hej buzzzz,

Har leget lidt med dit eksempel,

og får denne fejl: "ExecuteNonQuery kræver en åben og tilgængelig forbindelse. Forbindelsens aktuelle tilstand er lukket."

- ved cmd.ExecuteNonQuery();
Avatar billede Syska Mester
05. december 2009 - 13:55 #11
con.Open();

Lige før din cmd.ExecuteNonQuery();
Avatar billede kongen72 Nybegynder
05. december 2009 - 14:08 #12
tak det virker.. smider du et svar
Avatar billede Syska Mester
05. december 2009 - 14:12 #13
svar
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



IT-JOB

Udviklings- og Forenklingsstyrelsen

Tech Lead til Java-backend udviklingsteam

Arbejdernes Landsbank

Data Governance Specialist

Unik System Design A/S

Head of Internal IT

Danmarks Meteorologiske Institut

IT-operatør søges til DMI