首先把之前做的資料庫格式搬家,也就是取得每日的股票之交易資訊進入資料庫,首先要做的就是建立資料庫。這邊會重新建立,為了簡便作業先不把考慮資料搬移。
這邊會使用工具:MySQL Workbench(V8.0.17)
首要做的是建立資料庫,在MySQL中建立名為finance
的資料庫,並且制定好他的編碼,免得到時後跟上次一樣編碼出問題。
這邊設定Character Set
為utf8mb4
,以及Collation
為utf8mb4_unicode_ci
。
設定完後按【Apply】就會出現語法:
CREATE SCHEMA `finance` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ;
然後就順利的執行語法,完畢後會出現通知,並在左邊的Database列表中,看到我們的finance
。
然後要參考建立股票基本資料以及每日股票交易資訊的文章,根據這兩篇建立MySQL的table。
新增Table的方式可以自行輸入語法,或是由工具協助產生。這邊會藉由工具來產生(有點懶得打字),因此會在旁邊的列表中,在Tables
上點擊滑鼠右鍵,選擇【Create Table】。
點擊後會出新增Table資料的地方,就可以進行新增囉!
接著輸入Stock
這張table的資料。
其中MySQL沒有NVARCHAR
的資料型態,但卻不影響我們,因為一開始在建立資料庫就有選擇編碼,所以會支援unicode
,因此大膽的使用VARCHAR
。(圖片中沒有設定ID
為累增欄位,以及CreateTime
沒有設定預設值,需自行設定)
輸入完畢後,點擊【Apply】就會自動產生程式碼:
CREATE TABLE `finance`.`Stock` (
`ID` INT NOT NULL AUTO_INCREMENT,
`Market` VARCHAR(10) NULL,
`Symbol` VARCHAR(10) NULL,
`SecurityType` CHAR(1) NULL,
`StockName` VARCHAR(50) NULL,
`BeginDate` DATE NULL,
`EndDate` DATE NULL,
`CreateTime` DATETIME NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`ID`));
一樣點擊【Apply】就會執行,當執行成功後,就有綠色的提示囉!
往左邊的清單看,在Tables
的地方,多了個Stock
,這樣就真的有新增成功。
同樣方法,新增DailyPrice
。(圖片中沒有設定ID
為累增欄位,需自行設定)
輸入完畢後,點擊【Apply】就會自動產生程式碼:
CREATE TABLE `finance`.`DailyPrice` (
`ID` INT NOT NULL AUTO_INCREMENT,
`TradeDate` DATE NULL,
`StockID` VARCHAR(32) NULL,
`Symbol` VARCHAR(10) NULL,
`OpenPrice` DECIMAL(9,3) NULL,
`HighPrice` DECIMAL(9,3) NULL,
`LowPrice` DECIMAL(9,3) NULL,
`ClosePrice` DECIMAL(9,3) NULL,
`Volumn` INT NULL,
`CreateTime` DATETIME NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`ID`));
執行完成後,這張「新增」頁面就會變成「編輯」頁面
而旁邊的Tables
也會增加新的table。
就算沒有使用工具也沒有關係,複製程式碼也可以用。
這樣就完成資料庫格式搬家作業囉~
明天繼續搬程式XD