• django创建数据库表方法


    catcher:mysite catcher$ python manage.py makemigrations books
    Migrations for 'books':
      0001_initial.py:
        - Create model Author
        - Create model Book
        - Create model Publisher
        - Add field publisher to book
    catcher:mysite catcher$ python manage.py sqlmigrate books 0001
    BEGIN;
    --
    -- Create model Author
    --
    CREATE TABLE "books_author" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "first_name" varchar(30) NOT NULL, "last_name" varchar(40) NOT NULL, "email" varchar(254) NOT NULL);
    --
    -- Create model Book
    --
    CREATE TABLE "books_book" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "title" varchar(100) NOT NULL, "publication_date" date NOT NULL);
    CREATE TABLE "books_book_authors" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "book_id" integer NOT NULL REFERENCES "books_book" ("id"), "author_id" integer NOT NULL REFERENCES "books_author" ("id"));
    --
    -- Create model Publisher
    --
    CREATE TABLE "books_publisher" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "name" varchar(30) NOT NULL, "address" varchar(50) NOT NULL, "city" varchar(60) NOT NULL, "state_province" varchar(30) NOT NULL, "country" varchar(50) NOT NULL, "website" varchar(200) NOT NULL);
    --
    -- Add field publisher to book
    --
    ALTER TABLE "books_book" RENAME TO "books_book__old";
    CREATE TABLE "books_book" ("id" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "title" varchar(100) NOT NULL, "publication_date" date NOT NULL, "publisher_id" integer NOT NULL REFERENCES "books_publisher" ("id"));
    INSERT INTO "books_book" ("publication_date", "publisher_id", "id", "title") SELECT "publication_date", NULL, "id", "title" FROM "books_book__old";
    DROP TABLE "books_book__old";
    CREATE INDEX "books_book_2604cbea" ON "books_book" ("publisher_id");
    
    COMMIT;
    catcher:mysite catcher$ 
    
    catcher:mysite catcher$ sudo python manage.py migrate
    Password:
    Operations to perform:
      Apply all migrations: admin, contenttypes, books, auth, sessions
    Running migrations:
      Rendering model states... DONE
      Applying contenttypes.0001_initial... OK
      Applying auth.0001_initial... OK
      Applying admin.0001_initial... OK
      Applying admin.0002_logentry_remove_auto_add... OK
      Applying contenttypes.0002_remove_content_type_name... OK
      Applying auth.0002_alter_permission_name_max_length... OK
      Applying auth.0003_alter_user_email_max_length... OK
      Applying auth.0004_alter_user_username_opts... OK
      Applying auth.0005_alter_user_last_login_null... OK
      Applying auth.0006_require_contenttypes_0002... OK
      Applying auth.0007_alter_validators_add_error_messages... OK
      Applying books.0001_initial... OK
      Applying sessions.0001_initial... OK
    catcher:mysite catcher$ 
  • 相关阅读:
    非Ajax实现客户端的异步调用
    转:IE7远程客户端本地预览图片的解决办法(兼容IE6)
    How to Persist With Your Goals When the Going Gets Tough 编程爱好者
    How to Persist When You Really Want to Quit 编程爱好者
    JAVA环境变量设置
    手机连接WIFI总掉线的解决方法
    servlet中web.xml配置详解(转)
    ArrayList的contains方法[转]
    eclipse下 alt+/快捷键方式失效的解决
    关于数据结构,关于算法,关于hash桶算法
  • 原文地址:https://www.cnblogs.com/persuit/p/5639908.html
Copyright © 2020-2023  润新知