我正在通过c#代码在Azure中创建一个数据库副本。
创建数据库的代码:
CREATE DATABASE ABC AS COPY OF DEF
然后,我想在该数据库中创建一个用户,以便只有该用户可以访问该数据库。此代码在数据库创建后立即执行。但是在创建用户时,我得到了一个错误:
"failed to update database because the database is read only".
如果我停止执行15-20秒,然后启动,它会完美地工作,但我不想这样做。
我可以得到一些状态,表明数据库已创建,您可以继续。
任何帮助都将不胜感激。
今天,我使用SQLite并与项目一起发送一个数据库文件。
但是,我希望在用户第一次启动软件时创建数据库。
有没有一种方法可以复制基于现有数据库创建数据库所需的代码?问题是,当用户下载一个新版本时,他可能会被骗到复制他的上一个数据库并丢失数据。我希望有一种很好的方法来检查数据库的版本,如果我需要新的列或表等,就修改它。或者,如果根本不存在,就创建一个新的数据库?
我知道我可能从一开始就可以创建代码来创建数据库,但我希望它是基于gui创建的现有数据库。
回答。最终代码:
//Copy the database from the resource
us