2014-09-11 26 views
1

這個名字也很奇怪,下面是如何創建表名 <tablename like 'attribute value'>(我沒有在這裏給出原始表名,整個字符串在角括號內是表名) 例如:學生喜歡'xxxx'(其中xxx是學生的姓名)在postgres中我看到一個表名,我根本沒有創建

它的最後一個表已創建。如何會出現這種情況

+0

穆猜測:在應用程序中輸入錯誤的命令或代碼字符串。使用保護性報價,您可以創建一個任意命名的表格。 – 2014-09-11 13:28:35

回答

0

某處你的代碼的任何想法(在python/django或一些表創建初始化腳本)運行的是這樣的:

CREATE TABLE "<tablename like 'attribute value'>" (name text, salary numeric); 

當然,如果你在shell中圍繞碴可能是偶然發生的。

DROP TABLE "<tablename like 'attribute value'>"; 

然後一定要:

與刪除表

  • 檢查您的安全問題的應用程序(確保一個表單不這樣做!?)
  • 檢查你的代碼保持完整(確保任何正在運行的SQL已經準備好)
  • 檢查你的psql歷史記錄,看看你是否意外地運行了這樣的命令manuall Ÿ
  • 更多...建議遵循;-)
+0

謝謝..讓我試試:-) – user1002477 2014-09-15 04:47:44

+0

我無法刪除這張表,因爲這個名字很奇怪,並且帶有關鍵字,它不會讓我這麼做。 – user1002477 2014-09-15 04:53:23

+0

您需要確保您傳遞給DROP TABLE的名稱**與表名相同,並且已經轉義(引用)了空格和其他奇怪的語法。 – 2014-09-16 14:44:38

相關問題