您好我正在開發一個簡單的表格與Countires,國家,城市的HTML下拉菜單。添加國家,國家,城市並更新它們,沒有問題。每件事情都很完美。問題在刪除時出現(假設取消激活)。平方米設計爲國家 - 國家 - 城市
我設計了這些表格,這些表格非常適合這種類型的國家,州,城市通過引用網站中的某些網站下拉。像:
Countries Table:
|SerialNo|CountryName|CountryId|Active|
States Table
|SerialNo|StateName|StateId|CountryId|Active|
CitiesTable:
|SerialNo|CityName|CityId|StateId|IsActive|
因此,在停用任何國家的時候我在做積極=「假」,所以停用的國家都不會在我的網格顯示。如果這樣做的話,那些在各自國家的國家也應該失去正確的權利。
所以我做了這樣的: SQL查詢:
Update CountriesTable set Active='false' where CountryId= @CountryId
Update StatesTable set Active='false' where CountryId= @CountryId
正如我在兩個表我可以取消國家在已CountryId,美國兩tables.But我怎麼能取消或關閉狀態的城市?在Sql中有一個名爲Triggers的概念在特定表中的數據操作之後更新其他表,我是否可以通過觸發器實現我的要求,或者有什麼好的方法來實現它?
我如何存檔它?
我不想再添加一列CountryId到可持續發展 對不起,我的英語不好。希望我對你們都清楚!任何引用,任何Sql查詢,任何幫助非常感謝!
請注意,並非所有國家都有州(或者至少國家和城市之間的領土分區並不總是被稱爲州)。你應該指出你正在使用哪個DBMS(儘管我確定它是MS SQL Server;哪個版本可能很重要,特別是如果它是過時的)。是的,如果你想要更新一個國家的狀態以傳播到州和城市,你將使用觸發器。但是,您的觸發器需要適應設置'IsActive ='true'';如果你這樣做,你不會希望觸發器將事物設置爲假。 –
此外,如果存在實體,您將希望包含任何ISO信息 - 即[國家代碼](http://en.wikipedia.org/wiki/ISO_3166-1)。國家(國家分區)和城市可能有相同的信息。 –