django資料庫model
① 如何使用Django生成Model
使用Django生成Model方法如下:
一、將舊的資料庫添加到您的項目
編輯資料庫設置。你需要告訴Django你的資料庫連接參數是什麼,以及資料庫的名稱,要做到這一點需要編輯資料庫設置,並在「default」連接下面的鍵賦值。我們首先要打開settings.py文件,在文件中找到「DATABASES」,然後開始賦值。下面的數字序號和下圖中數字序號對應。
①使用的資料庫後端,這里使用PostgreSQL資料庫。
②使用的資料庫名稱。
③連接到資料庫時使用的用戶名。
④連接到資料庫時使用的密碼。
⑤連接到資料庫時使用的主機,這里使用的是本地主機。
⑥連接到資料庫時使用的埠。
② Django裡面怎麼實現資料庫視圖啊 就是虛擬表
視圖相當於虛擬的表,可以使用正常SQL語句進行增刪查改的操作,返回一張表。其實說白了與表的功能基本一樣。
觸發器,是在執行增 刪 改的時候觸發的一些SQL操作。可以在增刪改之後觸發 SQl,也可以在增刪改的時候替代SQL。有兩種不同的觸發模式而已。
一下是來自官方的標准解釋:
什麼是視圖?
在 SQL 中,視圖是基於 SQL 語句的結果集的可視化的表。
視圖包含行和列,就像一個真實的表。視圖中的欄位就是來自一個或多個資料庫中的真實的表中的欄位。我們可以向視圖添加 SQL 函數、WHERE 以及 JOIN 語句,我們也可以提交數據,就像這些來自於某個單一的表。
注釋:資料庫的設計和結構不會受到視圖中的函數、where 或 join 語句的影響。
SQL CREATE VIEW 語法
CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
注釋:視圖總是顯示最近的數據。每當用戶查詢視圖時,資料庫引擎通過使用 SQL 語句來重建數據。
觸發器是一種特殊類型的存儲過程,它不同於之前的我們介紹的存儲過程。觸發器主要是通過事件進行觸發被自動調用執行的。而存儲過程可以通過存儲過程的名稱被調用。
Ø 什麼是觸發器
觸發器對表進行插入、更新、刪除的時候會自動執行的特殊存儲過程。觸發器一般用在check約束更加復雜的約束上面。觸發器和普通的存儲過程的區別是:觸發器是當對某一個表進行操作。諸如:update、insert、delete這些操作的時候,系統會自動調用執行該表上對應的觸發器。SQL Server 2005中觸發器可以分為兩類:DML觸發器和DDL觸發器,其中DDL觸發器它們會影響多種數據定義語言語句而激發,這些語句有create、alter、drop語句。
DML觸發器分為:
1、 after觸發器(之後觸發)
a、 insert觸發器
b、 update觸發器
c、 delete觸發器
2、 instead of 觸發器 (之前觸發)
其中after觸發器要求只有執行某一操作insert、update、delete之後觸發器才被觸發,且只能定義在表上。而instead of觸發器表示並不執行其定義的操作(insert、update、delete)而僅是執行觸發器本身。既可以在表上定義instead of觸發器,也可以在視圖上定義。
觸發器有兩個特殊的表:插入表(instered表)和刪除表(deleted表)。這兩張是邏輯表也是虛表。有系統在內存中創建者兩張表,不會存儲在資料庫中。而且兩張表的都是只讀的,只能讀取數據而不能修改數據。這兩張表的結果總是與被改觸發器應用的表的結構相同。當觸發器完成工作後,這兩張表就會被刪除。Inserted表的數據是插入或是修改後的數據,而deleted表的數據是更新前的或是刪除的數據。