2010-07-22 70 views
1

我想知道是否有(本機)從.xls或.xlsx電子表格創建MySQL表格的可能性。請注意,我不想使用LOAD DATA INFILE或INSERT INTO將文件導入到現有表中,而是從頭開始創建表。即使用標題作爲列(有一些默認字段類型,例如INT),然後在一個步驟中插入數據。從xls電子表格創建MySQL表格

到目前爲止,我用一個python腳本構建了一個create語句並在之後導入了該文件,但不知何故,我覺得這種方法很笨拙。

回答

1

用VB腳本你可以做到這一點。在我的客戶端,我們有一個腳本,它接收工作表名稱,標題名稱和字段格式,並生成包含CREATE TABLE和INSERT INTO語句的SQL腳本。我們使用Oracle,但mySQL的原理是一樣的。

當然,您可以通過ODBC訪問Excel中的mySQL,並以這種方式發佈CREATE TABLE和INSERT INTO語句,使其更加複雜。

我無法爲您提供腳本,因爲它屬於我的客戶,但我可以回答您如何編寫這樣的腳本的問題,如果您想寫一個腳本。

+0

我有我的Python腳本,它:)。對於ODBC部分:我不確定我的mini-excel是否可以......但是對於這個建議thx。 – 2010-07-22 08:31:42

+0

我同意mySQL分析函數是識別列格式的最佳方法。當然,您可以使用「myCellRange.NumberFormat」來分析列格式,然後在VBA中自行編寫它。但是有很多格式,而且通常只使用「常規」格式,並不能告訴你很多。 – hol 2010-07-22 10:09:00