如何复制我的数据库文件(使用存在的sql命令)

时间:2019-01-07 14:41:59

标签: c# sql-server installation publish sqlexception

我可以尝试发布应用程序,但是有两个问题:我的第一个问题是无法使用此代码创建数据库

if not exists(select * from sys.databases where name = 'deneme1db') 
begin 
    CREATE DATABASE deneme1db ON PRIMARY 
    (NAME = deneme1db,FILENAME = 'C:\\deneme1db.mdf',
     SIZE = 5MB, MAXSIZE = 10MB, FILEGROWTH = 10%) 
     LOG ON (NAME = deneme1db_log, FILENAME = 'C:\\deneme1db_log.ldf',
     SIZE = 1MB, MAXSIZE = 10MB, FILEGROWTH = 10%) 
 end

我收到此错误

  

信息5123,第16级,状态1,第1行
  尝试打开或创建物理文件'C:\ deneme1db.mdf'时,CREATE FILE遇到操作系统错误5(Access Denied。)。

     

消息1802,第16级,状态4,第1行
  CREATE DATABASE失败。列出的某些文件名无法创建。检查相关错误。

我在注册表上的第二个错误。我尝试运行

string[] sql = (string[])Registry.LocalMachine.OpenSubKey("Software").OpenSubKey("Microsoft")
       .OpenSubKey("Microsoft SQL Server").GetValue("InstalledInstances");
 var ar = (from s in sql where s.Contains("SQLEXPRESS") select s ).FirstOrDefault();
 if(ar==null)
 {
     label1.Text = "no value";
 }
 else
 {
     label1.Text = "find value";
 }

string[] sql每次都返回null,但是如果我更改了构建属性代码运行中的preferred-32位,但无法在设置上进行更改

1 个答案:

答案 0 :(得分:0)

ı只需更改数据库位置即可解决我的第一个问题

Sub compare() ' 
'compare macro 
'selects the button1 rows for the output tab 
application.screenupdating=true  
range("I10:AR62").entirecolumn/hidden=false
range("B1").select  
application.screenupdating=false  
End

第二个问题

OpenSubKey() returns null for a registry key that I can see in regedit.exe