Avatar billede stephanryer Nybegynder
15. december 2005 - 16:17 Der er 15 kommentarer og
2 løsninger

Simpel SQL script virker ikke

Hvorfor virker dette ikke?


CREATE TABLE person(
navn VARCHAR(255) DEFAULT 'SVEND'
)

INSERT INTO person VALUES ()

Hvad er syntaksen hvis jeg vil oprette table med navn som default value?
Avatar billede stephanryer Nybegynder
15. december 2005 - 16:18 #1
Ikke en table, en record.

...hvis jeg vil oprette en record med default navn.
Avatar billede pidgeot Nybegynder
15. december 2005 - 16:26 #2
Det må skulle være den her:

INSERT INTO person () VALUES ()

INSERT INTO person VALUES () vil ikke virke, da den forventer en værdi til navn - for at undgå dette, skal du lige fortælle den at der ikke kommer nogen, hvilket du gør ved at specificere feltnavnene (dvs. ingen i dette tilfælde).
Avatar billede stephanryer Nybegynder
15. december 2005 - 16:27 #3
Virker heller ikke...

CREATE TABLE person(
navn VARCHAR(255) DEFAULT 'SVEND'
)
INSERT INTO person () VALUES ()
Avatar billede arne_v Ekspert
15. december 2005 - 16:30 #4
INSERT INTO person() VALUES ()

vil jeg tro omend jeg ikke ved om den accepterer en INSERT uden felter overhovedet
Avatar billede stephanryer Nybegynder
15. december 2005 - 16:31 #5
DROP TABLE person
CREATE TABLE person(
navn VARCHAR(255) DEFAULT 'SVEND'
)
INSERT INTO person() VALUES()

Virker stadig ikke.
Avatar billede pidgeot Nybegynder
15. december 2005 - 16:33 #6
Et skud - hvad nu hvis du opretter tabellen uden at tillade NULL, og så prøver at bruge det som værdien?
Avatar billede ladyhawke Novice
15. december 2005 - 16:35 #7
INSERT INTO Person (navn) VALUES () virker heller ikke?
Avatar billede stephanryer Nybegynder
15. december 2005 - 16:35 #8
DROP TABLE person
CREATE TABLE person(
navn VARCHAR(255) DEFAULT 'SVEND',
titel VARCHAR(255)
)
INSERT INTO person(titel) VALUES('konge')

Dette virker. Der SKAL åbenbart definere én ting for at det virker, hvilket er MAX skod.

Læg et svar.
Avatar billede stephanryer Nybegynder
15. december 2005 - 16:37 #9
DROP TABLE person
CREATE TABLE person(
navn VARCHAR(255) DEFAULT 'SVEND',
)
INSERT INTO person(navn) VALUES()

virker IKKE nej :(
Avatar billede ladyhawke Novice
15. december 2005 - 16:37 #10
Prøv lige: INSERT INTO Person (navn) VALUES (DEFAULT)
Avatar billede ladyhawke Novice
15. december 2005 - 16:38 #12
det er derfra jeg hentede det
Avatar billede Syska Mester
15. december 2005 - 16:38 #13
knapt så gode MSSQL, man kan i mysql :-)
Avatar billede stephanryer Nybegynder
15. december 2005 - 16:39 #14
Det virker ! lady læg et svar. Det er sådan det skal gøres.

DROP TABLE person
CREATE TABLE person(
navn VARCHAR(255) DEFAULT 'SVEND',
titel VARCHAR(255) DEFAULT 'KONGE'
)

INSERT INTO Person (navn) VALUES (DEFAULT)

Dette VIRKER!
Avatar billede ladyhawke Novice
15. december 2005 - 16:40 #15
Okido, mente nok man skulle kunne det i T-SQL :o) (Selvom buzzzz ikke tror det)
Avatar billede stephanryer Nybegynder
15. december 2005 - 16:41 #16
pidgeot du kan også lige lægge et svar. så splitter I.
Avatar billede pidgeot Nybegynder
15. december 2005 - 16:42 #17
Det kan du tro jeg kan :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester