SQLServer add a default value for a columnAdd DEFAULT to existing columnIndexing - Uniqueidentifier Foreign Key or Intermediary mapping table?SQL set allowed values for a columnWhy is column default value not portable through different RDBMS?Default value for “microtime” column in MySQLdeteriorating stored procedure running timesDefault value for UUID column in PostgresSet Field To Have Default Value Of AnotherHow to set column DEFAULT using value of a variableCan you use an inserted variable in a default constraint

Apex Class Deployment: duplicate value found: <unknown> duplicates value on record with id: <unknown>

Movie in a trailer park named Paradise and a boy playing a video game then being recruited by aliens to fight in space

Why would anyone even use a Portkey?

Can the Raspberry Pi 4 better distribute Python scripts to all four cores?

How did installing this RPM create a file?

Why do I need two parameters in an HTTP parameter pollution attack?

How did researchers find articles before the Internet and the computer era?

Who are these Discworld wizards from this picture?

What does grep -v "grep" mean and do?

Could a Weapon of Mass Destruction, targeting only humans, be developed?

SQLServer add a default value for a column

My colleague is constantly blaming me for his errors

I hit a pipe with a mower and now it won't turn

Step into the Octagram

Who voices the character "Finger" in The Fifth Element?

Is it okay to fade a human face just to create some space to place important content over it?

Security Patch SUPEE-11155 - Possible issues?

How can my story take place on Earth without referring to our existing cities and countries?

Do the 26 richest billionaires own as much wealth as the poorest 3.8 billion people?

How to get a character's limb regrown at 3rd level?

Could human civilization live 150 years in a nuclear-powered aircraft carrier colony without resorting to mass killing/ cannibalism?

Handling a player (unintentionally) stealing the spotlight

Is there a legal way for US presidents to extend their terms beyond four years?

Losing queen and then winning the game



SQLServer add a default value for a column


Add DEFAULT to existing columnIndexing - Uniqueidentifier Foreign Key or Intermediary mapping table?SQL set allowed values for a columnWhy is column default value not portable through different RDBMS?Default value for “microtime” column in MySQLdeteriorating stored procedure running timesDefault value for UUID column in PostgresSet Field To Have Default Value Of AnotherHow to set column DEFAULT using value of a variableCan you use an inserted variable in a default constraint






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








1















I am using MS SQL Server. I have an "action" table with an "action_type" column that I want to set a default value of "to do" for. My DDL in MS SQL Studio errors! I have read many many articles trying to work out what I am doing wrong but nothing seems to work. The DDL is as follows, the table CREATE works, and the ALTER fails.



CREATE TABLE "action"
( "action" INT IDENTITY(1,1)
, "name" VARCHAR(250) NOT NULL
, "owner" VARCHAR(50)
, "action_type" VARCHAR(50) NOT NULL
, "due_date" DATETIME
, "done_date" DATETIME
, "successful" BIT NOT NULL
, "job" INT
, "contract" INT
, "person" INT
, "description" VARCHAR(MAX)
, "deliverable" VARCHAR(MAX)
, "outcome" VARCHAR(MAX)
, "source" VARCHAR(50)
, "notes" VARCHAR(MAX)
);
ALTER TABLE "action"
ADD CONSTRAINT "df_action_0" DEFAULT "To Do" FOR "action_type";


The ALTER statement returns error




Msg 128, Level 15, State 1, Line 4 The name "To Do" is not permitted
in this context. Valid expressions are constants, constant
expressions, and (in some contexts) variables. Column names are not
permitted.




Based on various articles I have tried replacing "To Do" with 'To Do', N'To Do', ("To Do") and others, nothing works.










share|improve this question







New contributor



Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.

























    1















    I am using MS SQL Server. I have an "action" table with an "action_type" column that I want to set a default value of "to do" for. My DDL in MS SQL Studio errors! I have read many many articles trying to work out what I am doing wrong but nothing seems to work. The DDL is as follows, the table CREATE works, and the ALTER fails.



    CREATE TABLE "action"
    ( "action" INT IDENTITY(1,1)
    , "name" VARCHAR(250) NOT NULL
    , "owner" VARCHAR(50)
    , "action_type" VARCHAR(50) NOT NULL
    , "due_date" DATETIME
    , "done_date" DATETIME
    , "successful" BIT NOT NULL
    , "job" INT
    , "contract" INT
    , "person" INT
    , "description" VARCHAR(MAX)
    , "deliverable" VARCHAR(MAX)
    , "outcome" VARCHAR(MAX)
    , "source" VARCHAR(50)
    , "notes" VARCHAR(MAX)
    );
    ALTER TABLE "action"
    ADD CONSTRAINT "df_action_0" DEFAULT "To Do" FOR "action_type";


    The ALTER statement returns error




    Msg 128, Level 15, State 1, Line 4 The name "To Do" is not permitted
    in this context. Valid expressions are constants, constant
    expressions, and (in some contexts) variables. Column names are not
    permitted.




    Based on various articles I have tried replacing "To Do" with 'To Do', N'To Do', ("To Do") and others, nothing works.










    share|improve this question







    New contributor



    Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.





















      1












      1








      1








      I am using MS SQL Server. I have an "action" table with an "action_type" column that I want to set a default value of "to do" for. My DDL in MS SQL Studio errors! I have read many many articles trying to work out what I am doing wrong but nothing seems to work. The DDL is as follows, the table CREATE works, and the ALTER fails.



      CREATE TABLE "action"
      ( "action" INT IDENTITY(1,1)
      , "name" VARCHAR(250) NOT NULL
      , "owner" VARCHAR(50)
      , "action_type" VARCHAR(50) NOT NULL
      , "due_date" DATETIME
      , "done_date" DATETIME
      , "successful" BIT NOT NULL
      , "job" INT
      , "contract" INT
      , "person" INT
      , "description" VARCHAR(MAX)
      , "deliverable" VARCHAR(MAX)
      , "outcome" VARCHAR(MAX)
      , "source" VARCHAR(50)
      , "notes" VARCHAR(MAX)
      );
      ALTER TABLE "action"
      ADD CONSTRAINT "df_action_0" DEFAULT "To Do" FOR "action_type";


      The ALTER statement returns error




      Msg 128, Level 15, State 1, Line 4 The name "To Do" is not permitted
      in this context. Valid expressions are constants, constant
      expressions, and (in some contexts) variables. Column names are not
      permitted.




      Based on various articles I have tried replacing "To Do" with 'To Do', N'To Do', ("To Do") and others, nothing works.










      share|improve this question







      New contributor



      Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.











      I am using MS SQL Server. I have an "action" table with an "action_type" column that I want to set a default value of "to do" for. My DDL in MS SQL Studio errors! I have read many many articles trying to work out what I am doing wrong but nothing seems to work. The DDL is as follows, the table CREATE works, and the ALTER fails.



      CREATE TABLE "action"
      ( "action" INT IDENTITY(1,1)
      , "name" VARCHAR(250) NOT NULL
      , "owner" VARCHAR(50)
      , "action_type" VARCHAR(50) NOT NULL
      , "due_date" DATETIME
      , "done_date" DATETIME
      , "successful" BIT NOT NULL
      , "job" INT
      , "contract" INT
      , "person" INT
      , "description" VARCHAR(MAX)
      , "deliverable" VARCHAR(MAX)
      , "outcome" VARCHAR(MAX)
      , "source" VARCHAR(50)
      , "notes" VARCHAR(MAX)
      );
      ALTER TABLE "action"
      ADD CONSTRAINT "df_action_0" DEFAULT "To Do" FOR "action_type";


      The ALTER statement returns error




      Msg 128, Level 15, State 1, Line 4 The name "To Do" is not permitted
      in this context. Valid expressions are constants, constant
      expressions, and (in some contexts) variables. Column names are not
      permitted.




      Based on various articles I have tried replacing "To Do" with 'To Do', N'To Do', ("To Do") and others, nothing works.







      sql-server constraint alter-table default-value






      share|improve this question







      New contributor



      Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.










      share|improve this question







      New contributor



      Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      share|improve this question




      share|improve this question






      New contributor



      Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.








      asked 8 hours ago









      Mark KortinkMark Kortink

      61 bronze badge




      61 bronze badge




      New contributor



      Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.




      New contributor




      Mark Kortink is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
      Check out our Code of Conduct.






















          1 Answer
          1






          active

          oldest

          votes


















          4














          It's your quotes. If you remove those, and change your literal to use single quotes, you should be fine. SQL Servers DEFAULT is SET QUOTED_IDENTIFIER ON and with this literals must be delimited by single quotation marks. So, you really only need to change this part:



          DEMO



          ALTER TABLE "action"
          ADD CONSTRAINT "df_action_0" DEFAULT 'To Do' FOR "action_type";


          Though, you will more commonly see double quotes not used in this manner, and instead your DDL would be written as:



          CREATE TABLE action
          ( action INT IDENTITY(1,1)
          , name VARCHAR(250) NOT NULL
          , owner VARCHAR(50)
          , action_type VARCHAR(50) NOT NULL
          , due_date DATETIME
          , done_date DATETIME
          , successful BIT NOT NULL
          , job INT
          , contract INT
          , person INT
          , description VARCHAR(MAX)
          , deliverable VARCHAR(MAX)
          , outcome VARCHAR(MAX)
          , source VARCHAR(50)
          , notes VARCHAR(MAX)
          );

          ALTER TABLE action
          ADD CONSTRAINT df_action_0 DEFAULT 'To Do' FOR action_type;





          share|improve this answer



























            Your Answer








            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "182"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: false,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: null,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );






            Mark Kortink is a new contributor. Be nice, and check out our Code of Conduct.









            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdba.stackexchange.com%2fquestions%2f241410%2fsqlserver-add-a-default-value-for-a-column%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            4














            It's your quotes. If you remove those, and change your literal to use single quotes, you should be fine. SQL Servers DEFAULT is SET QUOTED_IDENTIFIER ON and with this literals must be delimited by single quotation marks. So, you really only need to change this part:



            DEMO



            ALTER TABLE "action"
            ADD CONSTRAINT "df_action_0" DEFAULT 'To Do' FOR "action_type";


            Though, you will more commonly see double quotes not used in this manner, and instead your DDL would be written as:



            CREATE TABLE action
            ( action INT IDENTITY(1,1)
            , name VARCHAR(250) NOT NULL
            , owner VARCHAR(50)
            , action_type VARCHAR(50) NOT NULL
            , due_date DATETIME
            , done_date DATETIME
            , successful BIT NOT NULL
            , job INT
            , contract INT
            , person INT
            , description VARCHAR(MAX)
            , deliverable VARCHAR(MAX)
            , outcome VARCHAR(MAX)
            , source VARCHAR(50)
            , notes VARCHAR(MAX)
            );

            ALTER TABLE action
            ADD CONSTRAINT df_action_0 DEFAULT 'To Do' FOR action_type;





            share|improve this answer





























              4














              It's your quotes. If you remove those, and change your literal to use single quotes, you should be fine. SQL Servers DEFAULT is SET QUOTED_IDENTIFIER ON and with this literals must be delimited by single quotation marks. So, you really only need to change this part:



              DEMO



              ALTER TABLE "action"
              ADD CONSTRAINT "df_action_0" DEFAULT 'To Do' FOR "action_type";


              Though, you will more commonly see double quotes not used in this manner, and instead your DDL would be written as:



              CREATE TABLE action
              ( action INT IDENTITY(1,1)
              , name VARCHAR(250) NOT NULL
              , owner VARCHAR(50)
              , action_type VARCHAR(50) NOT NULL
              , due_date DATETIME
              , done_date DATETIME
              , successful BIT NOT NULL
              , job INT
              , contract INT
              , person INT
              , description VARCHAR(MAX)
              , deliverable VARCHAR(MAX)
              , outcome VARCHAR(MAX)
              , source VARCHAR(50)
              , notes VARCHAR(MAX)
              );

              ALTER TABLE action
              ADD CONSTRAINT df_action_0 DEFAULT 'To Do' FOR action_type;





              share|improve this answer



























                4












                4








                4







                It's your quotes. If you remove those, and change your literal to use single quotes, you should be fine. SQL Servers DEFAULT is SET QUOTED_IDENTIFIER ON and with this literals must be delimited by single quotation marks. So, you really only need to change this part:



                DEMO



                ALTER TABLE "action"
                ADD CONSTRAINT "df_action_0" DEFAULT 'To Do' FOR "action_type";


                Though, you will more commonly see double quotes not used in this manner, and instead your DDL would be written as:



                CREATE TABLE action
                ( action INT IDENTITY(1,1)
                , name VARCHAR(250) NOT NULL
                , owner VARCHAR(50)
                , action_type VARCHAR(50) NOT NULL
                , due_date DATETIME
                , done_date DATETIME
                , successful BIT NOT NULL
                , job INT
                , contract INT
                , person INT
                , description VARCHAR(MAX)
                , deliverable VARCHAR(MAX)
                , outcome VARCHAR(MAX)
                , source VARCHAR(50)
                , notes VARCHAR(MAX)
                );

                ALTER TABLE action
                ADD CONSTRAINT df_action_0 DEFAULT 'To Do' FOR action_type;





                share|improve this answer















                It's your quotes. If you remove those, and change your literal to use single quotes, you should be fine. SQL Servers DEFAULT is SET QUOTED_IDENTIFIER ON and with this literals must be delimited by single quotation marks. So, you really only need to change this part:



                DEMO



                ALTER TABLE "action"
                ADD CONSTRAINT "df_action_0" DEFAULT 'To Do' FOR "action_type";


                Though, you will more commonly see double quotes not used in this manner, and instead your DDL would be written as:



                CREATE TABLE action
                ( action INT IDENTITY(1,1)
                , name VARCHAR(250) NOT NULL
                , owner VARCHAR(50)
                , action_type VARCHAR(50) NOT NULL
                , due_date DATETIME
                , done_date DATETIME
                , successful BIT NOT NULL
                , job INT
                , contract INT
                , person INT
                , description VARCHAR(MAX)
                , deliverable VARCHAR(MAX)
                , outcome VARCHAR(MAX)
                , source VARCHAR(50)
                , notes VARCHAR(MAX)
                );

                ALTER TABLE action
                ADD CONSTRAINT df_action_0 DEFAULT 'To Do' FOR action_type;






                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited 3 hours ago

























                answered 8 hours ago









                scsimonscsimon

                1,5025 silver badges15 bronze badges




                1,5025 silver badges15 bronze badges




















                    Mark Kortink is a new contributor. Be nice, and check out our Code of Conduct.









                    draft saved

                    draft discarded


















                    Mark Kortink is a new contributor. Be nice, and check out our Code of Conduct.












                    Mark Kortink is a new contributor. Be nice, and check out our Code of Conduct.











                    Mark Kortink is a new contributor. Be nice, and check out our Code of Conduct.














                    Thanks for contributing an answer to Database Administrators Stack Exchange!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fdba.stackexchange.com%2fquestions%2f241410%2fsqlserver-add-a-default-value-for-a-column%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    Invision Community Contents History See also References External links Navigation menuProprietaryinvisioncommunity.comIPS Community ForumsIPS Community Forumsthis blog entry"License Changes, IP.Board 3.4, and the Future""Interview -- Matt Mecham of Ibforums""CEO Invision Power Board, Matt Mecham Is a Liar, Thief!"IPB License Explanation 1.3, 1.3.1, 2.0, and 2.1ArchivedSecurity Fixes, Updates And Enhancements For IPB 1.3.1Archived"New Demo Accounts - Invision Power Services"the original"New Default Skin"the original"Invision Power Board 3.0.0 and Applications Released"the original"Archived copy"the original"Perpetual licenses being done away with""Release Notes - Invision Power Services""Introducing: IPS Community Suite 4!"Invision Community Release Notes

                    Canceling a color specificationRandomly assigning color to Graphics3D objects?Default color for Filling in Mathematica 9Coloring specific elements of sets with a prime modified order in an array plotHow to pick a color differing significantly from the colors already in a given color list?Detection of the text colorColor numbers based on their valueCan color schemes for use with ColorData include opacity specification?My dynamic color schemes

                    Tom Holland Mục lục Đầu đời và giáo dục | Sự nghiệp | Cuộc sống cá nhân | Phim tham gia | Giải thưởng và đề cử | Chú thích | Liên kết ngoài | Trình đơn chuyển hướngProfile“Person Details for Thomas Stanley Holland, "England and Wales Birth Registration Index, 1837-2008" — FamilySearch.org”"Meet Tom Holland... the 16-year-old star of The Impossible""Schoolboy actor Tom Holland finds himself in Oscar contention for role in tsunami drama"“Naomi Watts on the Prince William and Harry's reaction to her film about the late Princess Diana”lưu trữ"Holland and Pflueger Are West End's Two New 'Billy Elliots'""I'm so envious of my son, the movie star! British writer Dominic Holland's spent 20 years trying to crack Hollywood - but he's been beaten to it by a very unlikely rival"“Richard and Margaret Povey of Jersey, Channel Islands, UK: Information about Thomas Stanley Holland”"Tom Holland to play Billy Elliot""New Billy Elliot leaving the garage"Billy Elliot the Musical - Tom Holland - Billy"A Tale of four Billys: Tom Holland""The Feel Good Factor""Thames Christian College schoolboys join Myleene Klass for The Feelgood Factor""Government launches £600,000 arts bursaries pilot""BILLY's Chapman, Holland, Gardner & Jackson-Keen Visit Prime Minister""Elton John 'blown away' by Billy Elliot fifth birthday" (video with John's interview and fragments of Holland's performance)"First News interviews Arrietty's Tom Holland"“33rd Critics' Circle Film Awards winners”“National Board of Review Current Awards”Bản gốc"Ron Howard Whaling Tale 'In The Heart Of The Sea' Casts Tom Holland"“'Spider-Man' Finds Tom Holland to Star as New Web-Slinger”lưu trữ“Captain America: Civil War (2016)”“Film Review: ‘Captain America: Civil War’”lưu trữ“‘Captain America: Civil War’ review: Choose your own avenger”lưu trữ“The Lost City of Z reviews”“Sony Pictures and Marvel Studios Find Their 'Spider-Man' Star and Director”“‘Mary Magdalene’, ‘Current War’ & ‘Wind River’ Get 2017 Release Dates From Weinstein”“Lionsgate Unleashing Daisy Ridley & Tom Holland Starrer ‘Chaos Walking’ In Cannes”“PTA's 'Master' Leads Chicago Film Critics Nominations, UPDATED: Houston and Indiana Critics Nominations”“Nominaciones Goya 2013 Telecinco Cinema – ENG”“Jameson Empire Film Awards: Martin Freeman wins best actor for performance in The Hobbit”“34th Annual Young Artist Awards”Bản gốc“Teen Choice Awards 2016—Captain America: Civil War Leads Second Wave of Nominations”“BAFTA Film Award Nominations: ‘La La Land’ Leads Race”“Saturn Awards Nominations 2017: 'Rogue One,' 'Walking Dead' Lead”Tom HollandTom HollandTom HollandTom Hollandmedia.gettyimages.comWorldCat Identities300279794no20130442900000 0004 0355 42791085670554170004732cb16706349t(data)XX5557367