fix bug one bug, add wirteDML function