iT邦幫忙

0

資料庫設計的書籍推薦

最近遇到設計資料庫遇到困難

例如:想要設計一個日後可以分析的資料,但這過程中有可能會有刪除資料,導致關聯可能是null 或一起刪除(看情況執行變更)。但是要分析的紀錄,必須要固定在確認那瞬間!
所以想要找有關於資料庫設計的書!

目前是想用另外的log table 把他們全部記錄下來! 但因為不知道這方法好不好!

所以想問各位大大有沒有推薦的書~

另外題外話! 想在請問一下如果想要做爬蟲我從哪裡入門會比較好?! 這部分我是完全沒有接觸過。

看更多先前的討論...收起先前的討論...
pcw iT邦研究生 5 級 ‧ 2018-02-27 09:11:48 檢舉
PHP、C#、VBA、Python、Ruby、Node.js都可以做爬蟲,你想用哪一套呢?
但不管哪一套,基本上一定要掌握DOM物件。
VictorW iT邦新手 5 級 ‧ 2018-02-27 09:17:22 檢舉
回覆 pcw 大大
原來有多種!我目前比較常接觸PHP 不過上網大部分都看到Python 大大有推薦的嗎?
pcw iT邦研究生 5 級 ‧ 2018-02-27 12:34:34 檢舉
PHP的爬蟲可以去看這本書《網路機器人、網路蜘蛛與網路爬蟲第二版:PHP/cURL程式設計指南》
VictorW iT邦新手 5 級 ‧ 2018-02-27 21:50:43 檢舉
謝謝 pcw 大大! 大大推薦的那本書已經絕版買不到了 @@ 我是不排斥嘗試看看其他語言! 爬蟲有推薦其他語言或比較好的程式語言嗎?
pcw iT邦研究生 5 級 ‧ 2018-02-28 10:48:18 檢舉
《網路機器人、網路蜘蛛與網路爬蟲第二版:PHP/cURL程式設計指南》可以去圖書館借看看。
Node.js,是最近剛好看到這支 https://youtu.be/RntkmVtFS_g
Python,我個人覺得《網站擷取:使用Python》這本書不錯。
VictorW iT邦新手 5 級 ‧ 2018-03-07 14:48:00 檢舉
謝謝 ^^

2 個回答

1
暐翰
iT邦大師 5 級 ‧ 2018-02-26 16:08:33
最佳解答

問題:

想要設計一個日後可以分析的資料,但這過程中有可能會有刪除資料,導致關聯可能是null 或一起刪除(看情況執行變更)。但是要分析的紀錄,必須要固定在確認那瞬間!

回答:

關鍵字 "sql Trigger"
推薦閱讀: https://www.w3cschool.cn/mysql_tutorial/y7jnqozt.html


問題:

目前是想用另外的log table 把他們全部記錄下來! 但因為不知道這方法好不好!

回答:

可以,再trigger裡面實作insert到log表格

邏輯:

當我從A表格刪除資料時候,會觸發trigger並運行實作內容

MySQL舉例:

--刪除測試表格
CREATE TABLE test (
	  id   INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
);

--LOG表格
CREATE TABLE log_test (
	  id   INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,
);

create trigger log_delete after delete on test --建立trigger在test表格,當刪除的時候會運行下面實作
for each row
begin
  insert into log_test (id) values (old.id); --把刪除的id值insert到log_test表格
end ;


問題:

所以想問各位大大有沒有推薦的書~

回答:

SQL Server推薦 楊志強 老師的書
MySQL 個人經驗 https://www.w3cschool.cn/mysql_tutorial + stack overflow
Oracle 對岸CSDN花點數可以買到很多教材,但很多都是迷版的,要小心


問題:

想在請問一下如果想要做爬蟲我從哪裡入門會比較好?!

回答:

假如是C#爬蟲可以參考我錄製的影片 【C#】爬蟲抓IT邦問題 Part1 : 爬網頁並篩選資料

VictorW iT邦新手 5 級 ‧ 2018-02-27 09:23:57 檢舉

謝謝大大! sql Trigger 好像可以符合我的需求! 我來研究看看
想再請問一下 這個 log 表 越來越大怎麼辦 通常都會怎麼處理?
這跟noSQL有關嗎?

暐翰 iT邦大師 5 級 ‧ 2018-02-27 09:26:47 檢舉

這跟nosql沒有關係
log越來越大的問題,可以使用時間分表解決

例子:2016~2017年的資料已經一千萬筆
這時候可以拉一個表格_2016to17_xxx Table
把2016~17的資料都匯過去,然後再原表刪除

有需要查舊資料時,程式端要增加邏輯"查16~17年資料時使用_2016to17_xxx Table"

VictorW iT邦新手 5 級 ‧ 2018-02-27 21:51:24 檢舉

真的謝謝你! 這對我很有幫助! ^^

0
gn00044255
iT邦新手 5 級 ‧ 2018-02-26 16:07:42

https://www.1keydata.com/tw/sql/sql.html
我是從這個網站起步的,參考看看/images/emoticon/emoticon07.gif

VictorW iT邦新手 5 級 ‧ 2018-02-27 09:19:35 檢舉

謝謝大大! 這個網站不錯! /images/emoticon/emoticon12.gif

我要發表回答

立即登入回答