在sqlce文本字段中存储sql报告?

时间:2012-06-27 12:02:39

标签: visual-studio-2008 .net-3.5 sql-server-ce

好的,上面看起来有些奇怪,但请耐心等待......

我正在构建一个报告应用。在包含SQLCE 3.5 sp1数据库的.NET3.5上的C#中。 我想使用数据库来存储用户可以使用的各种报告的sql(因此他们不必了解脏位...)。

当他们希望运行报告时,他们只需在UI上选择相应的按钮,它就会消失并从数据库中获取相关的sql并将其插入到一段代码中以运行报告,随后将其显示在返回数据。

我有一个像这样结构的表 -

  • ReportIdx数字,
  • ReportName varchar(120),
  • SQL_Txt varchar(MAX),
  • 评论varchar(120)

运行以下内容 -

  

插入进入   SQLLIB                         (ReportIdx,ReportName,SQL_Txt,Comments)
  VALUES(3,'TestRowInsert02','select * from test_table where testid in('1','2','3')','如果这将起作用?')<

我收到以下错误消息 -

INSERT INTO子句中值列表中的错误。 无法解析查询文本。 错误源:SQL Server Compact ADO.NET数据提供程序 错误消息:解析查询时出错。 [令牌行号= 3,令牌行偏移= 90,错误令牌= 1]

我尝试在sql_txt值内的逗号前插入正斜杠(\),但上面的错误再次出现,sql insert语句改变如下 -

  

插入进入    SQLLIB                         (ReportIdx,ReportName,SQL_Txt,Comments)
  VALUES(3,'TestRowInsert02','select * from test_table where testid in(\'1 \',\'2 \',\'3 \')','如果这将起作用?')<

我想我真正需要知道的是'我可以将sql存储在SQLCE列中的报告中,以便可以简单地检索并随后在另一段代码中运行吗? 我可以格式化内容,以便在我可以在SQL报告中使用它之前不需要进一步处理吗?

1 个答案:

答案 0 :(得分:0)

有关在SQLCE中使用抽象的想法,请参阅此link。 (一种封装一组SQL语句以将底层存储与编程模型隔离开来的方法)

相关问题