1. 程式人生 > >Sql 判斷是否存在某張表,沒有建立

Sql 判斷是否存在某張表,沒有建立

下面的 SQL 是, 如果 STOCK 這個表不存在,那麼建立之。

IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[STOCK]') AND type in (N'U'))BEGINCREATE TABLE [dbo].[STOCK]( [STOCK_CODE] [varchar](10) NOT NULL, [STOCK_NAME] [varchar](50) NOT NULL)ENDGO

如果是判斷 表存在那麼 前面的 IF NOT EXISTS 修改為IF EXISTS 刪除,重建的 SQL ,就寫在那個 BEGIN END 裡面。

-----DROP TABLE 不能用於除去由 FOREIGN KEY 約束引用的表。必須先除去引用的 FOREIGN KEY 約束或引用的表。

偷懶的辦法,就是 如果表存在, 那麼刪除掉這樣的操作, 多執行幾次最後統一 建表這麼處理的結果就是第一次處理, 所有沒有 FOREIGN KEY 約束引用的表 與 引用的 FOREIGN KEY 約束或引用的表 被刪除了.第二次處理, 某些原來不能刪除的表,由於 引用的 FOREIGN KEY 約束或引用的表 被刪除了, 現在可以刪除了.麻煩在於:如果資料庫體系太複雜比如:學校 是 系的 FOREIGN KEY 系 是 班級的 FOREIGN KEY 班級 是 學生的 FOREIGN KEY 學生是 考試成績的 FOREIGN KEY 這種情況下, 就麻煩了

相關推薦

Sql 判斷是否存在沒有建立

下面的 SQL 是, 如果 STOCK 這個表不存在,那麼建立之。 IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[STOCK]') AND type in (N'U

Java程式碼判斷資料庫中是否存在

最近在開發一個同步資料的統計任務的時候遇到一個問題:要在Java程式碼中判斷資料庫中某張表是否存在,查資料後,總結了以下兩種方法:1、使用JdbcTemplate beanpublic boolean

oracle查看存在字段數據庫是否存在

select column div cts obj use user rom bsp 數據庫是否存在某字段 SELECT COUNT(*) FROM USER_TAB_COLUMNS WHERE TABLE_NAME = ‘表名‘ AND COLUMN_NAME = ‘字段

SQL不同伺服器資料庫之間資料操作(當在一個伺服器的中有資料更新時將更新值通過觸發器插入到另一個伺服器的指定中)

第一步:在建立觸發器的伺服器上建立連結伺服器 建立連結伺服器有兩種方法:1.通過SQL語言建立,2.通過資料庫管理工具建立,下面分別進行詳細介紹: 1.通過SQL語言建立 通過SQL語言建立連結伺服器方法 2.通過資料庫管理工具建立(這裡以SQL SER

如何判斷數據中是否存在

我不知道 nbsp strong 建表 user http on() 鏈接 metadata 如何判斷數據中某張表是否存在,如果不存在則創建它? 最笨的方法就是寫個select從表中讀數據,捕獲異常的同時就知道了改表沒有創建。 此法不通,因為這個時候的異常似乎被認定為了系

EXPDP導出數據排除

開始 with clu min export 過濾 2.0 表數 今天 EXPDP導出表數據,排除某個表,遇到的問題今天測試了這個命令,剛開始我是這樣寫的 $ expdp hed directory=backdir dumpfile=he201807041505.dmp e

如何oracle 一使用者授予查詢另一個使用者的許可權以及更新另一使用者中某些欄位

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

SQL server2014建立使用者、授權指定訪問

一、建立使用者 1.用視覺化方法建立 開啟物件管理器-security-logins,右鍵new login 選擇SQL 驗證、輸入使用者名稱和密碼,密碼過期這塊根據需求更改就行。 伺服器角色這塊預設public就行 設定使用者對映,這裡把登入名和使用者做了對映

資料庫欄位JSON何不弄行轉列

今天對專案進行優化,原有的資料庫中,有一張表A,裡面有個欄位,存了一段JSON格式配置引數,可能會很長。頁面端要對這個表進行展示和管理。那麼在管理這個欄位的時候就比較麻煩了,要把JSON轉成List放到頁面遍歷,儲存時再轉成JSON。楊老提出說搞一張表,同一個主鍵對就多個J

通過web伺服器訪問MySQL資料庫並把資料庫中的解析成xml格式輸出到瀏覽器

可以先想象一下,客戶端用到遠端資料庫中的資訊比如Menu表中的資訊,怎麼獲取呢?可以通過web伺服器獲取。這就需要寫一個繼承 HttpServlet的抽象類,並且重寫doGet()和doPost()方法。    下面就是此類的具體實現: public class Updat

如何判斷mysql某個資料庫是否存在

SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='dbname' AND TABLE_NAME='tablena

SQL Server】匯出一的建表語句、查詢的列(欄位)名

一、匯出一張表的建表語句 在《【Mysql】匯出一張已經存在的表的建表語句》(點選開啟連結)中曾經介紹過,如何在Mysql中匯出一張表的建表語句。 而在SQL Server中同樣有這樣的功能。 如下圖,首先右擊你要匯出表所在的資料庫,選擇任務、生成指令碼 之後點下一步,點到

Java鏈接HBASE數據庫創建一個刪除一修改輸出插入修改數據刪除數據獲取顯示信息過濾查詢分頁查詢地理hash

can charat nfa true 目錄結構 dfa byte sin extra 準備工作 1、創建Java的Maven項目 創建好的目錄結構如下: 另外註意junit的版本,最好不要太高,最開始筆者使用的junit4.12的,發現運行的時候會報錯。最後把Junit

使用sql語句復制一

表名 復制 相等 lec 結構 into create int 張新 如何使用sql語句復制一張表? 第一步:先建一張新表,新表的結構與老表相等。 create table newbiao like chengjibiao(老表名); 第二步:將老表中的值復制到新標中。 i

第三百七十六節Django+Xadmin打造上線標準的在線教育平臺—創建用戶操作app在models.py文件生成5用戶咨詢、課程評論、用戶收藏、用戶消息、用戶學習

十六 _id 收藏 創建用戶 在線教育 名稱 image images sage 第三百七十六節,Django+Xadmin打造上線標準的在線教育平臺—創建用戶操作app,在models.py文件生成5張表,用戶咨詢表、課程評論表、用戶收藏表、用戶消息表、用戶學習表 創

mysqldump 備份導出數據排除

lena 導出 bin log blog mysql style logs .html 就用 --ignore-table=dbname.tablename參數就行,可以忽略多個。 /usr/bin/mysqldump --set-gtid-purged=OFF -h12

簡單按日期查詢mysql中的記錄數

unsigned 計劃 表結構 記錄 create sig 站點 signed using 測試表表結構:mysql> show create table dr_stats\G 1. row Table: dr_stats Create Table:

Oracle設置為只讀

soft 更新 color 只讀 lte div col -s 方法 Oracle 11g開始支持設置某張表為只讀,這樣可以防範對某些表的修改,起到一定的安全性。 設置如下: --設置表為只讀權限(加鎖) ALTER TABLE tab_name READ ONL

Mysql資料庫如何檢視table被哪些儲存過程procedure使用過

一、摘要 由於程式碼重構,修改了表結構,開發人員修改完java後臺程式碼並內測沒問題後提交業務部門測試時發現,新客戶取不到產品價格,原因是儲存過程呼叫的還是舊資料表。為此,需要先找出哪些儲存過程使用了這些表,然後修改。那麼問題來了,mysql資料庫如何檢視哪些儲存過程使用了這些資料表呢?

mysql檢視、庫的大小

1、查詢某張表的大小 mysql >  select concat(round(sum(DATA_LENGTH/1024/1024),2),'M') from information_schema.tables where table_schema='test' AND table_name=