首先把之前做的资料库格式搬家,也就是取得每日的股票之交易资讯进入资料库,首先要做的就是建立资料库。这边会重新建立,为了简便作业先不把考虑资料搬移。
这边会使用工具: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
今天要来看看 PHPUnit 提供 Coverage 的使用方法 我们可以利用 PHPunit 来测...
As title,今天要来探讨的话题就是学渣到底能不能念研究所呢? 这个问题的答案在台湾几乎是 No...
今天会补充dagger的用法。 今天目标:一个 Acomponent 里放着 Fruit.class...
今天要学习的依然是 node.js 的core modules (就是内建的模组啦),主角是:fs ...
这礼拜进度开始落後,在写第七周作业的 todo list,自己後来才发现事件代理的用法,所以後面又重...