解决办法,在注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11E.LOCALDB\MSSQLServer\目录中添加DefaultData、DefaultLog、 BackupDirectory三个字符串项,分别是指定默认数据库文件、日志和备份的默认目录。也可以把以下代码保存为 localDefaultDirectory.reg目录再直接打开导入。
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11E.LOCALDB\MSSQLServer]
"DefaultData"="D:\\localdb"
"DefaultLog"="D:\\localdb"
"BackupDirectory"="D:\\localdb"
导入成功后在localdb实例的服务器属性页能打开了。当然,也能使用*.bak还原了
软糖来回答罗。
我这里有个SQL连接数据库的示例,可以参考下。
public void 数据集测试(){
//(1.连接)建立到数据库的 连接 conn
SqlConnection conn = new SqlConnection()
conn.ConnectionString = @"Data Source = (LocalDB)\MSSQLLocalDB AttachDbFilename = J:\数据库\SQLDB\NewDB.mdf Integrated Security = True Connect Timeout = 5"
//(2.打开)
conn.Open()
string 表名 = "Users"
using (conn)
{
//(3.适配)适配器 da 和 数据集 ds
da = new SqlDataAdapter()
ds = new DataSet("DataSet1")
// 将DataTable添加到DataSet
ds.Tables.Add(dt)
// 将DataSet的修改提交至“数据库”
SqlCommandBuilder mySqlCommandBuilder = new SqlCommandBuilder(da)
da.Update(ds, dt.TableName)
}
//(6.释放资源)
conn.Close()
conn.Dispose()
//注意:在修改、删除等 *** 作中表必须定义主键,select的字段也必须包含主键,
//否则会抛出异常“对于不返回任何键列信息的 SelectCommand,不支持 UpdateCommand 的动态 SQL 生成。”
}
上面的dt变量就是你的表,需要给它指定一个TableName名字。
连接字符串需要改成你数据库的,在服务器资源管理器>数据连接>属性页面>连接字符串
(鼠标选中然后按Ctrl+C复制)
如满意,请采纳,谢谢。
是不会有太大的影响的。必备条件
要完成本项目你需要安装vs2010或者vs2012,如果你安装的是vs2010,那么,还要安装nuget,一个vs的包管理工具插件
建立数据库
要使用databasefirst,我们首先必须有一个数据库来存储我们要使用的数据
我们要使用的数据库服务依赖于你安装的vs版本
.如果你安装的是vs2010,我们将要建立的数据库是基于sqlexpress的(安装vs2010完整版,会安装sqlexpress)
.若果你安装的是vs2012,我们将要建立的数据库是基于localdb的(安装vs2012完整吧,会安装)
.关于localdb的详细信息,参考这里下面的地址
LocalDB:微软的新生代轻量级数据库
SQLServer2012LocalDB管理之旅
SQLServer2012ExpressLocalDB
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)