---
title: "Ändra i väldigt många poster"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/190681-ändra-i-väldigt-många-poster"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Inferis"
published: "2012-11-26T12:24:43.000Z"
updated: "2012-11-26T13:51:16.000Z"
replies: 8
views: 634
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/190681-ändra-i-väldigt-många-poster"
---

# Ändra i väldigt många poster

## #1 — Inferis, 2012-11-26T12:24Z

Jag har en databas full med länkar. Nu behöver jag få bort en bit av dess URL på sina ställen.

Kan någon tipsa mig hur jag bäst går till väga? 

Antingen ändra i själva sökningen eller ändra i posterna?
Problemet är att det finns flera olika länkar, det är bara en av sidorna som länkas som jag behöver ändra.

Exempel:

<https://www.a.com/index.php?id=2323232323>  (ska vara som den är)

<https://www.b.com/index.php?id=121212> ska bli till <https://www.b.com/?id=121212>
(samt alla länkar med <https://www.b.com/?id=någotvärde>)

Så här kollar jag om länkarna finns i databasen innan jag lägger in dem;

```
SQL = "SELECT * FROM lankar WHERE Lank = '"& Request.form("lank") &"'  "
Set Rs = Connection.Execute(SQL)
```

Vilket sätt är bäst att gå?

Permalänk: https://www.webforum.nu/p/190681

## #2 — @nders, 2012-11-26T12:29Z

Kör *en* update. 

Fast det beror ju kanske på vilken dbms du använder.

```
UPDATE lankar SET Lank = Replace(Lank, "/index.php?", "/?") 
WHERE Lank LIKE '%[url]www.b.com/index.php?%[/url]'
```

mvh

Permalänk: https://www.webforum.nu/p/2306358

## #3 — Inferis, 2012-11-26T12:31Z

Kör mySQL, ska testa.

Permalänk: https://www.webforum.nu/p/2306359

## #4 — @nders, 2012-11-26T12:38Z

För att kolla resultatet innan du kör frågan kan du ju alltid göra motsvarande SELECT:

```
SELECT Replace(Lank, "/index.php?", "/?") AS Lank FROM lankar
WHERE Lank LIKE '%[url]www.b.com/index.php?%[/url]'
```

Permalänk: https://www.webforum.nu/p/2306360

## #5 — Inferis, 2012-11-26T12:42Z

Fick följande fel:

Microsoft VBScript compilation error '800a0408'

Invalid character

/uppdateradb.asp, line 6

SQL = "UPDATE lankar SET Lank = Replace(Lank, "/index.php?", "/?")
\---------------------------------------------------------^

Permalänk: https://www.webforum.nu/p/2306361

## #6 — @nders, 2012-11-26T12:56Z

Förlåt. Det ska ju vara apostrofer. Vet inte riktigt hur det blev så där.

```
UPDATE lankar SET Lank = Replace(Lank, '/index.php?', '/?') 
WHERE Lank LIKE '%[url]www.b.com/index.php?%[/url]'
```

Permalänk: https://www.webforum.nu/p/2306362

## #7 — nitro2k01, 2012-11-26T13:10Z

Snabel-anders har rätt att det ska vara apostrofer i SQL. Men jag kan tillägga att om du någon sin behöver stoppa ett citattecken i en sträng i VB.net så finns det sätt att göra det. Normalt sett så slutar ju strängen där det står ett citattecken, men du kan avbryta detta genom att sätta in dubbla citattecken. 

```
str = "Denna sträng innehåller såna där ""citattecken"" mitt i strängen."
```

Permalänk: https://www.webforum.nu/p/2306363

## #8 — Inferis, 2012-11-26T13:13Z

Det fungerade perfekt!

Tack för hjälpen!

Permalänk: https://www.webforum.nu/p/2306364

## #9 — @nders, 2012-11-26T13:51Z

> Men jag kan tillägga att om du någon sin behöver stoppa ett citattecken i en sträng i VB.net så finns det sätt att göra det.

Samma sak i VB-Script för gamla ASP, eftersom det verkar vara det du använder.

mvh

Permalänk: https://www.webforum.nu/p/2306366

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/190681-ändra-i-väldigt-många-poster
