2011-03-12 64 views
1

我試圖運行開始爲這樣的MYSQL腳本:「第1行MySQL錯誤

GO 
/****** Object: Table [dbo].[tblStadiumType] Script Date: 06/24/2010 10:09:17 ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[tblStadiumType](
    [stadiumtype_id] [int] IDENTITY(1,1) NOT NULL, 
    [stadiumtype] [nvarchar](50) NULL, 
CONSTRAINT [aaaaatblStadiumType_PK] PRIMARY KEY NONCLUSTERED 
(

我使用運行在bash:

mysql db_name < script.sql -p 

然而,在運行時,我得到這個錯誤:

' at line 1 

就是這樣!我非常困惑,而SQL腳本並不是我的強項,我正在試圖評估一個腳本來理解它並將其實現爲一個PHP腳本。 (SQL腳本是由另一個開發人員發送給我的)。任何幫助,將不勝感激。

+1

的腳本的SQL Server。轉換'CREATE TABLE'腳本以處理'MySQL'應該很簡單,所以會標準的'CRUD'語句。除此之外,劇本還有哪些其他內容? – 2011-03-12 00:57:32

+0

有5800行代碼。我需要能夠從PHP文檔調用腳本。在Linux環境下工作...... – 2011-03-12 03:36:53

回答

3

MySQL沒有「走出去」。相反,它使用';'刪除器。

SET ANSI_NULLS ON; 
SET QUOTED_IDENTIFIER ON; 

等等等等....

+1

哦,好眼睛。這也解釋了表標識符的[括號]。[語法] - 這是MSSQL/Sybase-ism。 ANSI_NULLS也是。結論:**這是一種不同的SQL方言,如果沒有一些巨大的改變,MySQL將無法成功導入。** – Charles 2011-03-12 00:34:11

+0

那麼我該如何使用它呢?對我完全陌生...... – 2011-03-12 03:35:45

2

您的最終括號似乎走錯了路......看看這使得任何好轉:

GO 
/****** Object: Table [dbo].[tblStadiumType] Script Date: 06/24/2010 10:09:17 ******/ 
SET ANSI_NULLS ON 
GO 
SET QUOTED_IDENTIFIER ON 
GO 
CREATE TABLE [dbo].[tblStadiumType](
    [stadiumtype_id] [int] IDENTITY(1,1) NOT NULL, 
    [stadiumtype] [nvarchar](50) NULL, 
CONSTRAINT [aaaaatblStadiumType_PK] PRIMARY KEY NONCLUSTERED 
) 
+0

這只是腳本的開始......通過聲明中途切斷某處。謝謝,雖然... – 2011-03-12 03:37:46

+0

@凱爾梅西:我會強烈建議包括* coimplete *代碼示例,每當你問一個問題。或者作爲一個非常小的數字,*明確指出*它只是一小段代碼。這不是很難「猜測」你的問題可能是什麼。 – Nailuj 2011-03-12 11:28:53

+0

「我試圖運行一個MYSQL腳本,其開頭是這樣的:」我認爲這足夠清楚,我猜不是......它比粘貼5800行代碼更好--D – 2011-03-12 15:14:12