2011-06-20 65 views
1

我有一個數據集,包含很多想要導入到MySQL數據庫的列,所以我希望能夠在不指定列標題的情況下創建表格。相反,我想提供一個帶有列標籤的文件名(假定)是MySQL CREATE TABLE命令。我在Ubuntu中使用標準的MySQL查詢瀏覽器工具,但在創建表格對話框中我沒有看到這個選項,也不知道如何編寫查詢來從CREATE TABLE文檔頁面執行此操作。但是,必須有一個辦法......如何將列名,數據從文本文件加載到MySQL表中?

回答

1

CREATE TABLE語句不僅僅包括列名

  • 表名*更
  • 列名*
  • 列數據類型*
  • 列約束,如NOT NULL
  • 列選項,如DEFAULT,字符集
  • 表約束,如PRIMARY KEY *和FOREIGN KEY
  • 指標
  • 表選項,比如存儲引擎,默認字符集

*爲必填

你不能得到這一切只是從列名的列表。你應該自己編寫CREATE TABLE語句。


重新評論:許多軟件開發框架支持在不使用SQL DDL的情況下聲明表的方法。例如。 Hibernate使用XML文件。 YAML由Rails ActiveRecord,PHP Doctrine和Perl的SQLFairy支持。可能有其他工具使用其他格式,如JSON,但我不知道其中一種。

但最終,所有這些「簡化」的界面都不像學習SQL那麼複雜,但卻無法完全代表SQL的功能。另見The Law of Leaky Abstractions


退房SQLFairy,因爲該工具可能已經從文件轉換的方式,可以幫助你的SQL。而且,MySQL查詢瀏覽器(或其當前名稱,MySQL Workbench)可以讀取SQL文件。所以你可能不需要手動複製&粘貼。

+0

從包含列名和列數據類型的文件如何?創建這種方法要比將每個列名輸入到CREATE TABLE語句中困難得多。 –

+0

看起來解決方案是在文本文件中創建列規格,然後將其複製粘貼到我的查詢瀏覽器中。這看起來會避免重新輸入。謝謝,您的評論引導我到'解決方案'。 –

相關問題