I have recently started learning hibernate and I got the following doubts












1














I have recently started learning hibernate and I got the following doubts



Correct me if I am wrong.




  1. If hbm2ddl.auto is set to create, every time hibernate tries to interact with any table, that table will be dropped first.


  2. Because hibernate drops a table every time it interacts with it, if I want to update a record I cannot configure hbm2ddl value as create.











share|improve this question



























    1














    I have recently started learning hibernate and I got the following doubts



    Correct me if I am wrong.




    1. If hbm2ddl.auto is set to create, every time hibernate tries to interact with any table, that table will be dropped first.


    2. Because hibernate drops a table every time it interacts with it, if I want to update a record I cannot configure hbm2ddl value as create.











    share|improve this question

























      1












      1








      1







      I have recently started learning hibernate and I got the following doubts



      Correct me if I am wrong.




      1. If hbm2ddl.auto is set to create, every time hibernate tries to interact with any table, that table will be dropped first.


      2. Because hibernate drops a table every time it interacts with it, if I want to update a record I cannot configure hbm2ddl value as create.











      share|improve this question













      I have recently started learning hibernate and I got the following doubts



      Correct me if I am wrong.




      1. If hbm2ddl.auto is set to create, every time hibernate tries to interact with any table, that table will be dropped first.


      2. Because hibernate drops a table every time it interacts with it, if I want to update a record I cannot configure hbm2ddl value as create.








      java hibernate jdbc frameworks relational-database






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked Nov 15 '18 at 17:03









      Kilarapu YethendraKilarapu Yethendra

      302




      302
























          2 Answers
          2






          active

          oldest

          votes


















          0














          The table is not dropped and recreated every time hibernate interacts with it -- it's dropped and recreated when the SessionFactory is initialized. This usually means when your application starts up. So if you are doing some tests where you want to start with a clean database each time the application runs, setting hbm2ddl.auto to "create" would be reasonable.



          For more, see the community documentation and this previous question.






          share|improve this answer





















          • Thanks for the quick response
            – Kilarapu Yethendra
            Nov 15 '18 at 17:22



















          0














          If you will configure value as create you can update a record , but when your application is down , and you will restart it all changes will disappear.
          So actually in this case its better to use update.



          In case of update it only updates schema , you can define some schema sql file and use it on database side , and simply configure hbm2ddlauto as update.



          Here are possible values of hbm2.ddlauto:




          • validate: validate the schema, makes no changes to the database.


          • update: update the schema.


          • create: creates the schema, destroying previous data.


          • create-drop: drop the schema when the SessionFactory is closed
            explicitly, typically when the application is stopped.







          share|improve this answer























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            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: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            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
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53324541%2fi-have-recently-started-learning-hibernate-and-i-got-the-following-doubts%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            The table is not dropped and recreated every time hibernate interacts with it -- it's dropped and recreated when the SessionFactory is initialized. This usually means when your application starts up. So if you are doing some tests where you want to start with a clean database each time the application runs, setting hbm2ddl.auto to "create" would be reasonable.



            For more, see the community documentation and this previous question.






            share|improve this answer





















            • Thanks for the quick response
              – Kilarapu Yethendra
              Nov 15 '18 at 17:22
















            0














            The table is not dropped and recreated every time hibernate interacts with it -- it's dropped and recreated when the SessionFactory is initialized. This usually means when your application starts up. So if you are doing some tests where you want to start with a clean database each time the application runs, setting hbm2ddl.auto to "create" would be reasonable.



            For more, see the community documentation and this previous question.






            share|improve this answer





















            • Thanks for the quick response
              – Kilarapu Yethendra
              Nov 15 '18 at 17:22














            0












            0








            0






            The table is not dropped and recreated every time hibernate interacts with it -- it's dropped and recreated when the SessionFactory is initialized. This usually means when your application starts up. So if you are doing some tests where you want to start with a clean database each time the application runs, setting hbm2ddl.auto to "create" would be reasonable.



            For more, see the community documentation and this previous question.






            share|improve this answer












            The table is not dropped and recreated every time hibernate interacts with it -- it's dropped and recreated when the SessionFactory is initialized. This usually means when your application starts up. So if you are doing some tests where you want to start with a clean database each time the application runs, setting hbm2ddl.auto to "create" would be reasonable.



            For more, see the community documentation and this previous question.







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered Nov 15 '18 at 17:19









            borisboris

            11114




            11114












            • Thanks for the quick response
              – Kilarapu Yethendra
              Nov 15 '18 at 17:22


















            • Thanks for the quick response
              – Kilarapu Yethendra
              Nov 15 '18 at 17:22
















            Thanks for the quick response
            – Kilarapu Yethendra
            Nov 15 '18 at 17:22




            Thanks for the quick response
            – Kilarapu Yethendra
            Nov 15 '18 at 17:22













            0














            If you will configure value as create you can update a record , but when your application is down , and you will restart it all changes will disappear.
            So actually in this case its better to use update.



            In case of update it only updates schema , you can define some schema sql file and use it on database side , and simply configure hbm2ddlauto as update.



            Here are possible values of hbm2.ddlauto:




            • validate: validate the schema, makes no changes to the database.


            • update: update the schema.


            • create: creates the schema, destroying previous data.


            • create-drop: drop the schema when the SessionFactory is closed
              explicitly, typically when the application is stopped.







            share|improve this answer




























              0














              If you will configure value as create you can update a record , but when your application is down , and you will restart it all changes will disappear.
              So actually in this case its better to use update.



              In case of update it only updates schema , you can define some schema sql file and use it on database side , and simply configure hbm2ddlauto as update.



              Here are possible values of hbm2.ddlauto:




              • validate: validate the schema, makes no changes to the database.


              • update: update the schema.


              • create: creates the schema, destroying previous data.


              • create-drop: drop the schema when the SessionFactory is closed
                explicitly, typically when the application is stopped.







              share|improve this answer


























                0












                0








                0






                If you will configure value as create you can update a record , but when your application is down , and you will restart it all changes will disappear.
                So actually in this case its better to use update.



                In case of update it only updates schema , you can define some schema sql file and use it on database side , and simply configure hbm2ddlauto as update.



                Here are possible values of hbm2.ddlauto:




                • validate: validate the schema, makes no changes to the database.


                • update: update the schema.


                • create: creates the schema, destroying previous data.


                • create-drop: drop the schema when the SessionFactory is closed
                  explicitly, typically when the application is stopped.







                share|improve this answer














                If you will configure value as create you can update a record , but when your application is down , and you will restart it all changes will disappear.
                So actually in this case its better to use update.



                In case of update it only updates schema , you can define some schema sql file and use it on database side , and simply configure hbm2ddlauto as update.



                Here are possible values of hbm2.ddlauto:




                • validate: validate the schema, makes no changes to the database.


                • update: update the schema.


                • create: creates the schema, destroying previous data.


                • create-drop: drop the schema when the SessionFactory is closed
                  explicitly, typically when the application is stopped.








                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 15 '18 at 17:32

























                answered Nov 15 '18 at 17:24









                Mykhailo MoskuraMykhailo Moskura

                839113




                839113






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • 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%2fstackoverflow.com%2fquestions%2f53324541%2fi-have-recently-started-learning-hibernate-and-i-got-the-following-doubts%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

                    Guess what letter conforming each word

                    Port of Spain

                    Run scheduled task as local user group (not BUILTIN)