webForumDet fria alternativet

Lägga in en ny post i tabell!

ASP

22 svar · 372 visningar · startad av Miamoppen

Medlem sedan sep. 200238 inlägg
Frågan#1

Hej!

Jag blir tokig, lyckas inte lägga in en ny post i en tabell varken med AddNew() eller "INSERT INTO.."

Denna kod använder jag nu:

<%
var cn,rs,cm;

cn=Server.CreateObject("ADODB.Connection");
cn.ConnectionString="DSN=***;Uid=***;Pwd=***";
cn.open();

rs=Server.CreateObject("ADODB.Recordset");
cm=Server.CreateObject("ADODB.Command");
rs.ActiveConnection=cn;
rs.Source="STUDENT";
rs.Open();

//Hårdkodar inom "" för att testa//

rs.AddNew();
rs("FNAMN")= "";
rs("ENAMN")= "";
rs("EPOST")= "";
rs("TEL")= "";
rs("SKOLA")= "";
rs("UTBOMR")= "";
rs("FRI")= "";
rs("LOGIN")= "";
rs("PASS")= "";
rs("WEBB")= "";
rs("REGDAT")='';
rs("AKTIV")= "";

rs.Update();
rs.Close();

%>

Får felmeddelandet: ADODB.Recordset (0x800A0CB3)
Object or provider is not capable of performing requested operation.

Tack för hjälpen//Mia

Medlem sedan nov. 20017 144 inlägg
#2

Välkommen till WF mia
Du Måste ju ha ngt värde mellan "och" annars så blir det väl inte så bra?! Jag skulle ha tagit bort ; och () också, se mitt exempel:


rs.AddNew
rs("FNAMN")= "" 
rs("ENAMN")= ""
rs("EPOST")= ""
rs("TEL")= ""
rs("SKOLA")= ""
rs("UTBOMR")= ""
rs("FRI")= ""
rs("LOGIN")= ""
rs("PASS")= ""
rs("WEBB")= ""
rs("REGDAT")=''
rs("AKTIV")= ""
rs.Update
rs.Close

Men parantes samt semikolons vara eller inte vara kanske är en fråga om vilken databas man använder?!

Medlem sedan sep. 200238 inlägg
#3

Hej Jesper!

Tack för ditt inlägg... Men jag hårdkodar ju inom " " för att testa om det går. Annars så kommer det ju att stå Request.Form("Fnamn") tex....

Jag är inte helt bakom flötet......

Medlem sedan juni 200032 967 inlägg
#4

Jag skulle ha tagit bort ; och () också, se mitt exempel:
Njae, det är inte så bra om man skriver asp med JScript.

Miamoppen, hur ser koden ut om du använder INSERT?

Jag tror att det har med öppningen av ditt recordset att göra i det här fallet, men jag är osäker på hur det skall öppnas i JScript för att du ska kunna lägga till data. Du kan i alla fall inte göra det med den defaultöppningen som du använder.

Mvh,

Medlem sedan nov. 20017 144 inlägg
#5

Njae, det är inte så bra om man skriver asp med JScript.

Har för mig att detta forum heter : ASP, VBScript ;)

Medlem sedan sep. 200238 inlägg
#6

Hej Jesper!

Tack för ditt inlägg... Men jag hårdkodar ju inom " " för att testa om det går. Annars så kommer det ju att stå Request.Form("Fnamn") tex....

Jag är inte helt bakom flötet......

Medlem sedan sep. 200238 inlägg
#7

Jajajajaaaaa.... men jag ska bli projektledare och har lämnat kodningen bakom mig.... (förutom nu då).

Såhär ser INSERT med SQL ut (jag hårdkodar även här).

cm.ActiveConnetion=cn;

cm.CommandText="INSERT INTO STUDENT(FNAMN, ENAMN, EPOST, TEL, SKOLA, UTBOMR, FRI, LOGIN, PASS, WEBB, REGDAT, AKTIV) VALUES ("Bengt", "Boll", "bengt.boll@yahoo.se","090-123456", "Uppsala Universitet", "IT/Media","Test", "Miamoppen", "Miamoppen", '20021212',"JA")"

rs = cm.Execute();

Medlem sedan juni 200032 967 inlägg
#8

Får du samma felmeddelande där?

Du ska inte skapa något recordset när du ska köra INSERT / UPDATE / DELETE - queries.

alltså skippa att skapa recordset:

cm.Execute();

I övrigt: vad är det för typer på dina fält i tabellen?

Jesper T skrev:

Har för mig att detta forum heter : ASP, VBScript ;)

Jag har för mig att detta forum heter ASP, VBScript. ;)

Mvh,

Medlem sedan sep. 200238 inlägg
#9

Vad förstår du inte?

Medlem sedan sep. 200238 inlägg
#10

Alla typer är Varchar förutom datum som just nu är integer....

Medlem sedan juni 200032 967 inlägg
#11

Nu redigerar jag inte en gång till, så det får bli ett nytt inlägg. :)

Du skall inte ha citationstecken runt strängvärden, utan apostrofer.

Mvh,

Medlem sedan juni 200032 967 inlägg
#12

Miamoppen skrev:

Alla typer är Varchar förutom datum som just nu är integer....

Ok. Då gäller: apostrofer runt alla fältvärden, utom just datumvärdet, där du inte ska ha något runt värdet. (Men då får du se till att det bara är ett talvärde.)

Mvh,

Medlem sedan sep. 200238 inlägg
#13

Inte vad jag vet, citationstecken runt strängar och apostofer runt siffror......

Jag ger upp.....

Tänker inte börja lära mig VBScript iaf.....

Medlem sedan juni 200032 967 inlägg
#14

Inte vad jag vet, citationstecken runt strängar och apostofer runt siffror......

Det är fel.
Du behöver inte börja lära dig VBScript, heller.

Men du kan väl inte ge upp när du precis har börjat? :)

Mvh,

Medlem sedan nov. 20017 144 inlägg
#15

Kan du skriva hur du fixade det?

Medlem sedan sep. 200238 inlägg
#16

jag fixade det. jag är BÄST..!! Tack ändå pojkar!!

Det ska tjejer till för att fixa en kod..!

Medlem sedan juni 200032 967 inlägg
#17

Visa gärna hur den fungerande koden ser ut. :)

Mvh,

Medlem sedan sep. 200238 inlägg
#18

Det här fungerar iaf, sedan om det är en massa skräpkod spelar inte så stor roll...

Nu ska jag koppla koden till forumläret... Tack å hej!

<%
var cn,rs,cm;

cn=Server.CreateObject("ADODB.Connection")
cn.ConnectionString="DSN=praktik;Uid=administrator;Pwd=hemlis"
cn.open;

rs=Server.CreateObject("ADODB.Recordset")
cm=Server.CreateObject("ADODB.Command")
rs.ActiveConnection=cn
rs.Source="STUDENT"
rs.Open;

cm.ActiveConnection=cn;
cm.CommandText="INSERT INTO STUDENT(FNAMN, ENAMN, EPOST, TEL, SKOLA, UTBOMR, FRI, LOGIN, PASS, WEBB, REGDAT, AKTIV) VALUES ('Gurka', 'Masurka', 'gurka.masurka@hotmail.com,'090-11112','http://www.ja.se', 'Uppsala Universitet', 'IT/Media','Test', 'Gurkstav', 'Dippmix', '20021212','JA')";
cm.Execute();

%>

Medlem sedan sep. 200238 inlägg
#19

Kom på att javascript inte gillar när man blandar " " och ' ', hade förträngt det under dessa år som jag har hållit mig borta från kodningen... Nu ska jag bossa hädanefter.. :)

Projektledaren Mia

Medlem sedan juni 200032 967 inlägg
#20

Ett tillägg till det jag sa förut: Man kan ha apostrofer runt talvärden, men man ska egentligen inte ha det. :)

Man kan fuska sig igenom ganska mycket om man använder SQL Server, då du kan sätta apostrofer runt vad som helst. Det fungerar inte att göra så om du använder någon annan dbms.

Mvh,

258 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)