我在C#中使用SQLite
我在获胜形式中有一个插入查询,但是在另一个没有形式的胜利形式上有效。当我读到这个问题时,它说它可能是因为某个地方有一个开放的连接,但我已经检查了所有内容,甚至在每次关闭后都使用了var map;
var marker;
var myCircle;
function placeMarker(location, radius) {
if (typeof radius === 'undefined') { radius = initialRadius; }
if (marker) {
marker.setPosition(location);
} else {
marker = new google.maps.Marker({
position: location,
map: map,
draggable: true
});
}
if (myCircle) {
// Don't create new circle, update circle position instead.
myCircle.setCenter(location); // where location=latLng
}
else {
// First time loading, create the circle
myCircle = new google.maps.Circle({
map: map,
radius: radius,
fillColor: '#AA0000',
});
myCircle.bindTo('center', marker, 'position');
}
}
function initialize() {
map = new google.maps.Map(document.getElementById('map'), {
center: {lat: 0, lng: 0},
zoom: 1
});
google.maps.event.addListener(map, 'click', function (event) {
placeMarker(event.latLng);
});
google.maps.event.addDomListener(window, "resize", function () {
var center = map.getCenter();
google.maps.event.trigger(map, "resize");
map.setCenter(center);
});
}
。现在第一个winform只有1个开/关,另一个有3个。
我已经尝试使用SQLite浏览器进行查询,以确保它不是查询的问题,并且它成功运行。现在,当我调试问题时,当该行执行SQLiteConnection.ClearAllPools();
,当然,执行查询(插入....)。所以我尝试更改表主键的类型(从varchar到整数)。我仍然有这个问题。下面是它的总和。
cmd.ExecuteNonQuery();
答案 0 :(得分:0)
您是否尝试使用using语句包装连接?
using(var myconnection = new SQLiteConnection(connectionString))
{
myconnection.Open();
//Your code here
}
无论执行路径如何,这都将调用连接的Dispose方法,这可能不仅仅是关闭连接。
答案 1 :(得分:0)
注意在SQLite 浏览器上点击Write changes
,
如果它正在运行并且有任何未保存的更改!
在我的情况下,我很愚蠢,我在 SQLite 浏览器中进行更改并且没有点击写入更改,这锁定了要由服务修改的数据库。单击“写入更改”按钮后,所有发布请求都按预期工作。
根据@Rohan Shenoy 在本主题中的说法:SQLite Database Locked exception
答案 2 :(得分:-1)
可能你也应该试试这个
using (var con = new SQLiteConnection { ConnectionString = "connectionstring" })
{
using(var cmd = new SQLiteCommand { Connection = con })
{
// check state connection if open then close, else close proceed
if(con.State == ConnectionState.Open)
con.Close();
//then
try
{
// try connection to Open
con.Open();
}
catch
{
//catch if found error, message : 'Invalid Connection string'
}
........ // insert query here
} // Close Command
} // Close Connection