Hej! Set con = adodb.connection antar jag att du menar. Denna är nödvändig för att t ex ett recordset skall få någon kontakt med databasen. Och den har en mycket användbar metod, nämligen execute som du nämnde. Den använder man när man vill göra en Update, insert eller delete. Bygg ihop din sql-sträng och skicka med den som parameter när du kör execute metoden: Precis som Henrik skriver, om du inte behöver returnera något data så räcker det med att köra con.execute(sql eller någon lagrad procedur). Skall du däremot skriva en selectsats så returneras data och det fångar du då upp mer set rst=con.execute(sql). Som du kanske sett så deklarerar jag inte rst eftersom con skapar det automatiskt. TAck för era svar! Titta lite på mina ASP-exempel, det är precis lika dant i VB förrutom att man tar bort Server. och bara skriver set con=createobject("adodb.connection") På det här sättet kommer du fortfarande att returnera data.. Con mm.
Jo Pelle , du använder set con satser mm när du skall använda SQL frågor. Varför då?.
I vissa fall a nvänd s bara bd.execute (SQL). Har det med recordsetet att göra eller kan man skriva rs.execute(sql). Jag har inga lösenord mm i min databas. Utan jag vill bara kunna köra mina frågor mot recordsetet. .
Hus kriver jag sql satsen om databasnamnet kommer från en variabel. Data i vissa fält kommer från en var iable.
//Tack för hjälpenSv: Con mm.
strSQL = "INSERT INTO tbTest (id, namn) VALUES (0. 'nisse')
con.Execute strSQLSv: Con mm.
Sen är det där med early och late binding som gör att vissa saker går snabbare om man först kör set rst=server.createobject("adodb.recordset"), men jag vågar inte svara på om det är snabbare eller bättre - kanske någon annan vet just detta?.Sv: Con mm.
Jag undrar nu hur jag använder variabler i sql-frågan. Ex
Jag har följande variabler:
hål as string ' listar antal hål i golfbanan
Valdbana as string ' väljer bana
1. hur använder jag dem i en selectsats, insetinto mm?
2. SQL = Select.... Är SQL en variabel som skall deklareras eller?
3. I unix miljö används commit för att verkställa ex ändringen. Måste jag göra detsaamma här?
4. Finns det något bra ställe där man kan läsa om SQL i VB på ett enkelt förklarat sätt.
/TyronneInsert into för sträng, integer och datum
När du använder dig av variabler i exempelvis asp eller vb så finns det bara 3 regler som du behöver tänka på:
1- En sträng skall inneslutas med ' '
2- Ett datum skall i access inneslutas med # #
3- En integer/long osv skall inte inneslutas med något.
Så här kan du skriva ett insert into exempel både i VB och ASP (enligt regeln ovan:
set con=server.createobject("adodb.connection") ' ASP
set con=createobject("adodb.connection") ' VB
con.open "mindsntillenaccessdatabas"
varde1 = 34
varde2 = "pelle"
varde3 = now()
' access/xbase
sql = "insert into tabell (alder, namn, datum) " & _
"values(" & varde1 & ",'" & varde2 & "',#" & varde3 & "#"
' sql/oracle
sql = "insert into tabell (alder, namn, datum) " & _
"values(" & varde1 & ",'" & varde2 & "','" & varde3 & "'"
con.execute(sql)
set con=nothingSv: Insert into för sträng, integer och datum
Du kommer dock inte ta emot det.
För att vara riktigt säker på att ingen data returneras sktiv så här:
.
.
.
con.execute(sql),,adExecuteNoRecords
.
.
// Patrik