C# 数据未保存在数据库中无运行时错误
我正在用C#和sql server数据库开发windows窗体应用程序。我可以插入和检索数据,但只能在运行时进行。如果我再次运行它,它不会显示以前插入的数据C# 数据未保存在数据库中无运行时错误,c#,sql,sql-server,database,C#,Sql,Sql Server,Database,我正在用C#和sql server数据库开发windows窗体应用程序。我可以插入和检索数据,但只能在运行时进行。如果我再次运行它,它不会显示以前插入的数据 connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\DB.mdf;Integrated Security=True;User Instance=True" 整个用户实例和AttachDbFileName=方法都有缺陷-最多!在Visual
connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\DB.mdf;Integrated Security=True;User Instance=True"
整个用户实例和AttachDbFileName=方法都有缺陷-最多!在Visual Studio中运行应用程序时,它将围绕.mdf
文件进行复制(从app\u Data
目录复制到输出目录-通常是\bin\debug
-应用程序运行的地方)和最有可能是,您的INSERT
工作正常-但您最后看到的是错误的.mdf文件
如果您想继续使用这种方法,请尝试在myConnection.Close()
调用上放置一个断点,然后使用SQL Server Mgmt Studio Express检查.mdf
文件,我几乎可以肯定您的数据在那里
我认为真正的解决办法是
MyDB
)Data Source=.\\SQLEXPRESS;Database=MyDB;Integrated Security=True
其他一切都和以前一样.mdf
文件进行复制(从app\u Data
目录复制到输出目录-通常是\bin\debug
-应用程序运行的地方)和最有可能是,您的INSERT
工作正常-但您最后看到的是错误的.mdf文件
如果您想继续使用这种方法,请尝试在myConnection.Close()
调用上放置一个断点,然后使用SQL Server Mgmt Studio Express检查.mdf
文件,我几乎可以肯定您的数据在那里
我认为真正的解决办法是
MyDB
)Data Source=.\\SQLEXPRESS;Database=MyDB;Integrated Security=True
其他一切都和以前一样我也有类似的问题 您可以删除bin文件夹中的.mdf和日志文件,然后将app.config文件中的路径更改为如下所示
connectionString=“Data Source=。\SQLEXPRESS;AttachDbFilename=C:\Path\yourdatabasefile.mdf;integratedsecurity=True;User Instance=True”我遇到了类似的问题 您可以删除bin文件夹中的.mdf和日志文件,然后将app.config文件中的路径更改为如下所示
connectionString=“Data Source=。\SQLEXPRESS;AttachDbFilename=C:\Path\yourdatabasefile.mdf;Integrated Security=True;User Instance=True”给我们看看您尝试插入数据的代码怎么样?到目前为止,您只向我们显示了连接字符串。是否有机会看到您正在运行的SQL?public void InsertSub(int SubCode,string SubName,DateTime date,string user){string sql1=“Insert into Inv_Sub_存储值(“+SubCode+”,“+SubName+”,“+date+”,“+user+”)”;SqlCommand com=new SqlCommand(sql1,ConnectionManager.Connection());com.ExecuteNonQuery();ConnectionManager.Connection().Close();}请不要将代码示例或示例数据放入注释中-因为您无法格式化它,所以读取它非常困难。。。。取而代之的是:通过编辑你的问题来更新它,以提供额外的信息!谢谢。给我们看看你用来插入数据的代码怎么样?到目前为止,您只向我们显示了连接字符串。是否有机会看到您正在运行的SQL?public void InsertSub(int SubCode,string SubName,DateTime date,string user){string sql1=“Insert into Inv_Sub_存储值(“+SubCode+”,“+SubName+”,“+date+”,“+user+”)”;SqlCommand com=new SqlCommand(sql1,ConnectionManager.Connection());com.ExecuteNonQuery();ConnectionManager.Connection().Close();}请不要将代码示例或示例数据放入注释中-因为您无法格式化它,所以读取它非常困难。。。。取而代之的是:通过编辑你的问题来更新它,以提供额外的信息!非常感谢。