我尝试从sdf文件生成dbml。
所以我将sqlMetal util本地化为:C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin
Sdf数据库文件路径:D:\DB_TEST\Spiri_SQL_CE_DB.sdf
所以我在生成dbml文件时尝试这个命令:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin>sqlmetal.exe D:\DB_TEST\
Spiri_SQL_CE_DB.sdf /dbml:D:\DB_TEST\Spiri_SQL_CE_DB.sdf\Spiri_SQL_CE_DB.dbml
我收到此错误:
Error : SQM1007: There is an IO error and the output file 'D:\DB_TEST\Spiri_SQL_
CE_DB.sdf\Spiri_SQL_CE_DB.dbml' cannot be opened.
所以我尝试这个命令:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin>sqlmetal.exe D:\DB_TEST\
Spiri_SQL_CE_DB.sdf /dbml:Spiri_SQL_CE_DB.dbml
但是我收到了这个错误:
Error : Access to the path 'C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\
Bin\Spiri_SQL_CE_DB.dbml' is denied.
最后,我尝试使用此版本的命令:
C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin>sqlMetal /dbml:Spiri_SQL
_CE_DB.dbml D:\DB_TEST\Spiri_SQL_CE_DB.sdf
但我得到同样的错误:
Error : Access to the path 'C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\
Bin\Spiri_SQL_CE_DB.dbml' is denied.
我知道文件Spiri_SQL_CE_DB.dbml还不存在,但我尝试使用sqlMetal生成turil这个文件,有什么不好?
答案 0 :(得分:1)
将SDF和DBML复制到您具有足够写入/修改权限的位置。
否则,使用提升的权限(也称为runas管理员)启动命令提示符。
顺便说一句,你的第一次尝试完全是假的。
或做:
sqlMetal /dbml:D:\DB_TEST\Spiri_SQL_CE_DB.dbml D:\DB_TEST\Spiri_SQL_CE_DB.sdf