表也存在的,问题应该是我之前执行的代码中给数据库加了密码,所以访问不到才报错。但是现在有个问题,执行了一句sql后,数据库被清空了,里面一张表都没有,只有默认的几张系统表
[C#] 纯文本查看 复制代码 string filePath = @"D:\Article.db";
System.Data.SQLite.SQLiteConnection.CreateFile(filePath);
System.Data.SQLite.SQLiteConnection Conn = new System.Data.SQLite.SQLiteConnection();
System.Data.SQLite.SQLiteConnectionStringBuilder ConnStr = new System.Data.SQLite.SQLiteConnectionStringBuilder();
ConnStr.DataSource = filePath;
//ConnStr.Password = "Admin";//设置密码,SQLite ADO.NET实现了数据库密码保护
Conn.ConnectionString = ConnStr.ToString();
Conn.Open();
System.Data.SQLite.SQLiteCommand cmd = new System.Data.SQLite.SQLiteCommand();
string Sql = "Insert into Admin(UserName,UserPass) values ('admin','123456')";
cmd.CommandText = Sql;
cmd.Connection = Conn;
cmd.ExecuteNonQuery();
这个应该是sql语句写错了吧,报错:SQL logic error or missing database
no such table: Admin
然后用数据库管理软件打开数据库发现里面被清空了。飞哥这是什么问题呢?如果是因为sql语句错误而数据库会被清空,那不是很危险么。。。
|