---
title: "ALTER TABLE, liten fråga"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/127201-alter-table-liten-fråga"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "kalaserc"
published: "2005-04-27T09:39:17.000Z"
updated: "2005-04-27T11:37:23.000Z"
replies: 6
views: 433
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/127201-alter-table-liten-fråga"
---

# ALTER TABLE, liten fråga

## #1 — kalaserc, 2005-04-27T09:39Z

Hej alla där ute!

Jag har en hel drös med databaser som har olika versioner. Dom innehåller mer eller mindre samma saker. Nu vill jag få dessa 'up to date' med ett script som jag skriver.

För att dom ska bli 'up to date' vill jag lägga till några kolumner i en del tabeller. Detta gör jag med ALTER TABLE table ADD ( ... ); Ja ni vet.

Nu är problemet det att vissa av mina databaser har redan dessa kolumner jag vill lägga till. När jag då kör mitt script avbryts det med ett error i stil med

ERROR 1060 at line xxx: Duplicate column name 'tabell'

Nu är frågan denna, finns det något sätt att ignorera dessa varningar och bara köra vidare som vanligt? Jag vill altså inte att scritet ska avslutas.

Tack på förhand / Jocke

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

## #2 — LarsG, 2005-04-27T09:44Z

Vilken databashanterare använder du?

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

## #3 — missModesty, 2005-04-27T09:52Z

Är det inte bättre att du sållar bort de tabeller som redan har kolumnen innan du försöker lägga till den?

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

## #4 — missModesty, 2005-04-27T10:33Z

En liten länk som kanske hjälper:

<http://www.cryer.co.uk/brian/sqlserver/howtoaddcolumnunlessexists.htm>

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

## #5 — kalaserc, 2005-04-27T10:34Z

> **missModesty skrev:**
>
> Är det inte bättre att du sållar bort de tabeller som redan har kolumnen innan du försöker lägga till den?

Det låter som en bra idé. Hur löser man det direkt med sql? Jag tänkte ju att man kunde få det per automatik, men tydligen inte. Så, ska man göra någon form av ifsats i så fall?

Det är för övrigt MySQL jag kör.

Edit: Här var vi snabba! Tackar för hjälpen ska se om det fungerar :)

Edit2: Det verkade tyvärr inte som om det fungerade mot MySQL. Följande fungerar inte allt för lyckat: select \* from syscolumns. Testade det eftersom första frågan inte fungerade alls. 

Nåväl, någon som vet? :q

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

## #6 — LarsG, 2005-04-27T11:01Z

Mysql har inte stöd för något dylikt direkt i SQL.

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

## #7 — kalaserc, 2005-04-27T11:37Z

Bra tack då vet jag. Lite trist. Får försöka bygga in lite logik i bashscriptet då.

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

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/127201-alter-table-liten-fråga
