PrästenMedlem sedan dec. 2000537 inlägg har problem med en insert funktion.
använder Webmatrix.
string queryString = "INSERT INTO [messages] ([Namn], [Mess]) VALUES (TextBox1.Text, TextBox2.Text)";
TextBox1 och TextBox2 är WebControls som jag lagt till.
Får detta felmeddelande:
The name 'Text' is not permitted in this context. Only constants, expressions, or variables allowed here. Column names are not permitted.
DinoMedlem sedan sep. 20011 914 inlägg string queryString = "INSERT INTO [messages] ([Namn], [Mess]) VALUES (" & TextBox1.Text & ", " & TextBox2.Text & ")";
Vad använder du för databas?
string queryString = "INSERT INTO [messages] ([Namn], [Mess]) VALUES ('" + TextBox1.Text +"', '" + TextBox2.Text +"')";
PrästenMedlem sedan dec. 2000537 inlägg Det funkade med "+TextBox1.Text+" men dock inte med "&.
Hur kommer det sig?.
Jag använder MSDE.
Några frågor:
1. vad menas med "+ och vad menas med "&.
2. Spelar det nån roll vilken typ av databas man kör när man ska lägga in värdetyper(variabler).
3. Nu kommer nästa problem, den ville inte lägga in i databasen ändå, fast jag fick ut iaf innehållet i TextBox1.Text.
här är felmeddelandet:
The name 'olle' is not permitted in this context. Only constants, expressions, or variables allowed here. Column names are not permitted.
(olle= innehållet som var i TextBox1.Text)
PrästenMedlem sedan dec. 2000537 inlägg Kod:
string queryString = "INSERT INTO [messages] ([Namn], [Mess]) VALUES ("+TextBox1.Text+","+TextBox2.Text+")";
System.Data.SqlClient.SqlCommand sqlCommand = new System.Data.SqlClient.SqlCommand(queryString, sqlConnection);
-------------------
Webcontrols:
<p>
Namn:<asp:TextBox id="TextBox1" runat="server" Height="23px"></asp:TextBox>
</p>
<p>
Ditt inlägg:<asp:TextBox id="TextBox2" runat="server" Height="47px" Width="346px"></asp:TextBox>
<asp:Button id="Button1" onclick="Button1_Click" runat="server" Text="Button"></asp:Button>
</p>
om namn och mess är textfält ska du ha ' också
string queryString = "INSERT INTO [messages] ([Namn], [Mess]) VALUES ([b]'[/b]"+ TextBox1.Text +"[b]'[/b],[b]'[/b]"+ TextBox2.Text +"[b]'[/b])";
DinoMedlem sedan sep. 20011 914 inlägg Detta borde funka. Du får göra konverteringen till C# själv.
dim conn as sqlconnection
dim strInsert as string
dim cmdInsert as sqlCommand
conn = new sqlconnection("databassträngen")
strInsert = "INSERT INTO [messages] ([Namn], [Mess]) VALUES(@name, @message)"
cmdInsert = new SqlCommand(strInsert, conn)
cmdInsert.parameters.add("@name", TextBox1.Text)
cmdInsert.parameters.add("@message", TextBox2.Text)
try
conn.open()
cmdInsert.executenonquery()
catch ex as exception
'hantera fel
finally
conn.close()
end try
PrästenMedlem sedan dec. 2000537 inlägg vad menas med
cmdInsert.parameters.add("@name", TextBox1.Text)
cmdInsert.parameters.add("@message", TextBox2.Text)
renholmMedlem sedan apr. 20012 266 inlägg
Prästen skrev:
Det funkade med "+TextBox1.Text+" men dock inte med "&.
Hur kommer det sig?.
Det är i VB.NET det är &. Du använder c# då blir det +.
Prästen skrev:
vad menas med
cmdInsert.parameters.add("@name", TextBox1.Text)
cmdInsert.parameters.add("@message", TextBox2.Text)
I stället för att infoga värdena direkt i sql strängen kan man gå via parameters som är mycket smidigt, du anger @name i SQL strängen och sätter sedan värdet på @name i din kod.
PrästenMedlem sedan dec. 2000537 inlägg Tack.
Men jag inte få in värdena i databasen. Vet du vad det kan vara för fel?
PrästenMedlem sedan dec. 2000537 inlägg Och vet du vad som menas med:
(@TextBox1.Text,@TextBox2.Text)?
PrästenMedlem sedan dec. 2000537 inlägg JAAAAA!. orgy!
Såg inte Andreas inlägg:
('"+ TextBox1.Text +"','"+ TextBox2.Text +"')";
Det va ' som fattades.