2010-04-04 75 views
-1

我想要开始使用DayPilot控件 我不使用SQLite,并且此控件基于SQLite进行了记录。如何将SQLite转换为C#中的简单SQL命令

我想用SQL代替SQLite,所以如果可以的话,请为我做这个。

与样品http://www.daypilot.org/calendar-tutorial.html

该数据库主要网站包含具有以下结构的一个表

CREATE TABLE event ( id VARCHAR(50), name VARCHAR(50), eventstart DATETIME, eventend DATETIME); 

加载事件

private DataTable dbGetEvents(DateTime start, int days) { 
    SQLiteDataAdapter da = new SQLiteDataAdapter("SELECT [id], [name], [eventstart], [eventend] FROM [event] WHERE NOT (([eventend] <= @start) OR ([eventstart] >= @end))", ConfigurationManager.ConnectionStrings["db"].ConnectionString); 
    da.SelectCommand.Parameters.AddWithValue("start", start); 
    da.SelectCommand.Parameters.AddWithValue("end", start.AddDays(days)); 
    DataTable dt = new DataTable(); 
    da.Fill(dt); 
    return dt; 
    } 

更新

private void dbUpdateEvent(string id, DateTime start, DateTime end) { 
    using (SQLiteConnection con = new SQLiteConnection(ConfigurationManager.ConnectionStrings["db"].ConnectionString)) 
    { 
     con.Open(); 
     SQLiteCommand cmd = new SQLiteCommand("UPDATE [event] SET [eventstart] = @start, [eventend] = @end WHERE [id] = @id", con); 
     cmd.Parameters.AddWithValue("id", id); 
     cmd.Parameters.AddWithValue("start", start); 
     cmd.Parameters.AddWithValue("end", end); 
     cmd.ExecuteNonQuery(); 
    } 
    } 
+0

问题是什么? – 2010-04-04 08:55:59

回答

1

你可以在sql server中创建你的db,之后你只需要将SQLiteCommand更改为SQLCommand。除了连接字符串信息外,您不需要更改任何内容。

+0

我会将connction字符串更改为我的新SQL服务器数据库(并且这不是答案)我想将这部分sql lite代码转换为t-sql – 2010-04-04 12:06:52

+1

,您只需将SQLiteCommand更改为SQLCommand即可。 – 2010-04-04 12:40:46

1

而不是

private void dbUpdateEvent(string id, DateTime start, DateTime end) { 
using (SQLiteConnection con = new SQLiteConnection(ConfigurationManager.ConnectionStrings["db"].ConnectionString)) 
    { 
    con.Open(); 
    SQLiteCommand cmd = new SQLiteCommand("UPDATE [event] SET [eventstart] = @start, [eventend] = @end WHERE [id] = @id", con); 
    cmd.Parameters.AddWithValue("id", id); 
    cmd.Parameters.AddWithValue("start", start); 
    cmd.Parameters.AddWithValue("end", end); 
    cmd.ExecuteNonQuery(); 
    } 
} 

您应该能够使用

private void dbUpdateEvent(string id, DateTime start, DateTime end) { 
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["db"].ConnectionString)) 
    { 
    con.Open(); 
    SqlCommand cmd = new SqlCommand("UPDATE [event] SET [eventstart] = @start, [eventend] = @end WHERE [id] = @id", con); 
    cmd.Parameters.AddWithValue("id", id); 
    cmd.Parameters.AddWithValue("start", start); 
    cmd.Parameters.AddWithValue("end", end); 
    cmd.ExecuteNonQuery(); 
    } 
} 

您还需要添加;一个项目引用System.Data和using System.Data.SqlClient在类的顶部。

相关问题