我是C#的新手,我正在尝试创建一个sqlite数据库连接类。我通过点击我的项目名称>创建了一个新的类文件。添加>类。我在这个文件中有以下代码。
问题是我在SQLiteDataReader
sqlite_conn
上,则表示“...是一个字段,但用作类型”SQLiteConnection
上,则表示...方法必须具有返回类型("Data Source=database.db;Version=3;New=True;Compress=True;")
上,则会显示预期类型`
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Finisar.SQLite;
namespace learningCsharp
{
class database
{
// We use these three SQLite objects:
SQLiteConnection sqlite_conn;
SQLiteCommand sqlite_cmd;
SQLiteDataReader sqlite_datareader;
// Getting error in every lines after this
// create a new database connection:
sqlite_conn = new SQLiteConnection("Data Source=database.db;Version=3;New=True;Compress=True;");
//open the connection:
sqlite_conn.Open();
// create a new SQL command:
sqlite_cmd = sqlite_conn.CreateCommand();
}
}
你能帮我解决这个问题并创建一个有效的sqlite数据库连接类吗?
答案 0 :(得分:1)
您需要将行错误地放在类构造函数或方法中。
public class database
{
// We use these three SQLite objects:
public SQLiteConnection sqlite_conn;
public SQLiteCommand sqlite_cmd;
public SQLiteDataReader sqlite_datareader;
public database()
{
sqlite_conn = new SQLiteConnection("Data Source=database.db;Version=3;New=True;Compress=True;");
sqlite_conn.Open();
sqlite_cmd = sqlite_conn.CreateCommand();
}
}
答案 1 :(得分:0)
您无法在不同的行中初始化字段(方法之外)。将您的班级更改为:
namespace learningCsharp
{
class Database
{
// We use these three SQLite objects:
SQLiteConnection sqlite_conn;
SQLiteCommand sqlite_cmd;
SQLiteDataReader sqlite_datareader;
//constructor called when initializing new instance
public Database()
{
sqlite_conn = new SQLiteConnection("Data Source=database.db;Version=3;New=True;Compress=True;");
sqlite_conn.Open();
sqlite_cmd = sqlite_conn.CreateCommand();
}
}
}
答案 2 :(得分:0)
您需要通过
之类的方式实例化SQLiteDataReader类SQLiteDataReader reader = sqlite_cmd.ExecuteReader();
答案 3 :(得分:0)
您永远不会创建方法或构造函数。
class database
{
// Here you define properties: OK
SQLiteConnection sqlite_conn;
SQLiteCommand sqlite_cmd;
SQLiteDataReader sqlite_datareader;
// Then, you do stuff to them: NOT OK
sqlite_conn = new SQLiteConnection("Data Source=database.db;Version=3;New=True;Compress=True;");
//open the connection:
sqlite_conn.Open();
// create a new SQL command:
sqlite_cmd = sqlite_conn.CreateCommand();
}
}
你可以通过在方法中添加“做什么”代码来修复它:
class database
{
// Here you define properties: OK
SQLiteConnection sqlite_conn;
SQLiteCommand sqlite_cmd;
SQLiteDataReader sqlite_datareader;
void public DoStuff() {
// Then, you do stuff to them: NOT OK
sqlite_conn = new SQLiteConnection("Data Source=database.db;Version=3;New=True;Compress=True;");
//open the connection:
sqlite_conn.Open();
// create a new SQL command:
sqlite_cmd = sqlite_conn.CreateCommand();
}
}
}
然后,您可以像这样实例化和运行:
database db = new database();
db.DoStuff();
这是所有基本的C#,OO编程。在进入SQLite数据库编程之前,我强烈建议您先学习C#。