好的,我从昨晚和今天早上开始一直在处理这个问题。我正试图将一些数据插入到SQL Server CE数据库中。我在我绳索的尽头。SQL Server CE连接字符串不允许插入数据
这里是我想实现的代码:
public static void InsertData(string sqlStatement)
{
try
{
//string strConn = AppDomain.CurrentDomain.GetData("DataDirectory").ToString();
//string StartupPath = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase).Remove(0, 6); // remove file:\\
//string connectionString = @"Data Source=Database1.sdf";
//string connectionString = @"Data Source = |DataDirectory|\Database1.sdf";
//string connectionString = @"Data Source = C:\Users\My\Documents\Visual Studio 2012\Projects\VIN_Decoder\VIN Decoder\VIN Decoder\Database1.sdf"
//string connectionString = string.Format("Data Source={0}; Persist Security Info=False;", Path.Combine(Application.StartupPath, "Database1.sdf"));
//THIS ONE ACTUALLY WORKS!!!!!!!!!!!! :
//string connectionString = @"Data Source = C:\Users\My\Documents\Visual Studio 2012\Projects\VIN_Decoder\VIN Decoder\VIN Decoder\Database1.sdf"
string connectionString = Properties.Settings.Default.Database1ConnectionString;
SqlCeConnection sqlceCon = new SqlCeConnection(connectionString);
sqlceCon.Open();
SqlCeCommand sqlCeCom = new SqlCeCommand(sqlStatement, sqlceCon);
sqlCeCom.ExecuteNonQuery();
sqlCeCom.Dispose();
sqlceCon.Close();
}
catch (Exception e)
{
}
}
你可以看到所有的评论的连接字符串的,看看有什么我都试过了。奇怪的是,我可以简单地在另一个方法(一个SELECT语句,而不是一个INSERT INTO语句)中使用以下连接字符串从数据中获取单个值,并且它工作正常。
string connectionString = @"Data Source = |DataDirectory|\Database1.sdf";
我已经直接测试的查询和喜欢的评论说,静态路径做工作,让告诉我我的查询是好的。但是我当然需要一些相关的出版和多开发者开发。
我尝试过的大多数连接字符串都允许try块完成而没有错误,但数据不会被插入。
有什么建议吗?
您使用的是什么版本的.NET? .NET 2.0? – 2013-04-07 17:31:58
我正在使用4.0框架的Visual Studio 2012 ...感谢您提前提供任何帮助 – flyNflip 2013-04-07 17:33:58
插入语句如下所示:'“INSERT INTO VIN_Cache VALUES('FAHP0816R1','2009','Ford','Fusion', '四门轿车','SEL','V6,3.0L','墨西哥','埃莫西约,墨西哥','FWD','双气囊,活动腰带,侧气囊','轿车','中型汽车','汽油','203HP')“' – flyNflip 2013-04-07 17:37:13