Closed Chef5 closed 1 year ago
创建mysql数据库和表:
CREATE DATABASE dict358 CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
create table dict358.stardict
(
id int auto_increment primary key,
word varchar(256) not null,
sw varchar(128) not null,
phonetic varchar(128) null,
definition text null,
translation text null,
pos varchar(32) null,
collins int default 0 null,
oxford int default 0 null,
tag varchar(128) null,
bnc int default NULL null,
frq int default NULL null,
exchange text null,
detail text null,
audio text null,
constraint word unique (word)
);
打开仓库的stardict.py
,最下面追加代码:(参考的 #10 )
srcname='ecdict.csv'
distname='ecdict.db'
convert_dict(distname,srcname)
控制台运行:python3 /path/to/xxx/stardict.py
,会在当前目录生成ecdict.db
navicat连接ecdict.db
,并将stardict表导出为new-ecdict.csv
再将new-ecdict.csv
导入到mysql表就可以了。
不太会python,因此看不太懂作者给的py。 我根据 #78 ,创建了库和表, 然后尝试直接将仓库的
ecdict.csv
通过navicat的导入向导导入到mysql,但是会报错sw
无默认值。 查看了一下具体原因,仓库的ecdict.csv
是没有sw
的,虽然可以直接将表中的sw
设置个默认值,但查看了sw
的作用后,我还是想使用sw
。 看了几个其他的issue,于是我弄了一个折中的方法。