這個是Dockerfile的內容
FROM mysql
ENV MYSQL_DATABASE some_service_schema
COPY *.sql /docker-entrypoint-initdb.d/
第二行是給定預設schema
第三行的sql script就會在預設的schema上執行
2019年3月5日
2017年4月27日
MySql binary type data read & write (by Json.net)
MySQL資料型態為BINARY時,DATA TABLE讀到C#中是binary array ( byte[] )
現在用的framework是 ZayniFramework,
裡面轉物件的方式是用NewtonSoft.Json(JSon.net),
table →serialize→string
string→deserialize→object
裡面的bite array在序列化之後會轉成base64的字串,
程式中有一段,先讀出來,再更新寫回去的地方出錯,
資料型態為bianry(1),
sql parameter裡就直接將Base64的字串寫回去,錯誤訊息寫說大小超過欄位設定,
結果最後是mysql server版本的問題,
一開始安裝的是最新版5.7.18,
後來換成5.6.20版本就解決了,
這個以後換新版不知道怎麼辦…有空應該要試一下…
訂閱:
文章 (Atom)