spl server数据库的更新问题

开发时用建一个测试的数据库,发布的时候有一个正式的数据库,,正式发布如何将修改后的测试数据库替换上正式的数据库而不保留测试的数据,但保留原来正式库的数据

根据规则导入你的测试数据库中有用的数据。在设计的时候就要考虑测试数据和生产数据的区分。

如果结构都一致,简单的做法是可以直接备份正式环境的数据,然后到测试环境恢复

完全搞错了方向。
一般的做法是:
在最初:开发(测试)库与正式库的结构是一致的。
在开发环境, 如果需要改表结构或者加存储过程之类的, 必须先将脚本保存在文件中。
在更新时, 将脚本在正式库上执行就好了。

严格按这个就好了, 不需要想那么复杂, 只是一个操作规范而已。