C# 发送sql语句到 ORACLE 的字符转义问题

ujkk858 2011-08-18 06:00:43
现有oracle中的表 portlist 表字段 A/B
要发送的sql语句为 select "A/B" from portlist
可是在C# 中无论如何转义,发送过去执行都是错误的。求各位大大赐教
我已经尝试过的方法
sql="select \"A/B\" from portlist";
sql="select "+Convert.ToChar(34)+"A/B"+Convert.ToChar(34)+" from portlist";
究竟该如何操作呢?
...全文
113 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
mjp1234airen4385 2011-08-19
  • 打赏
  • 举报
回复
OracleConnection OraConn = new OracleConnection();
OraConn.ConnectionString = "Data Source=192.168.1.150:1521/orcl;User Id=u1;Password=1u";
OraConn.Open();
string sql = "SELECT \"A/B\" FROM POSTLIST";
OracleCommand OraComm = new OracleCommand(sql, OraConn);
OracleDataAdapter OraDataA = new OracleDataAdapter();
OraDataA.SelectCommand = OraComm;
DataSet DSTemp = new DataSet();
OraDataA.Fill(DSTemp);
dataGridView1.DataSource = DSTemp.Tables[0];

Oralce10G,建了一个表,一个字段,"A/B" VARCHAR2 27 Byte
测试通过,可以获得数据。
你的情况不清楚了。
是不是别的地方有问题。
yin_kai 2011-08-19
  • 打赏
  • 举报
回复
这个问题其实很纠结!
mjp1234airen4385 2011-08-19
  • 打赏
  • 举报
回复
不用试试了。编译都不过。
mjp1234airen4385 2011-08-19
  • 打赏
  • 举报
回复
select \"A\/B\" from portlist
这样试试。
chiyan42 2011-08-19
  • 打赏
  • 举报
回复
A/B中间的/也需要转义
mjp1234airen4385 2011-08-19
  • 打赏
  • 举报
回复
加个\r试试吧。不行的话,加\r\n
ujkk858 2011-08-19
  • 打赏
  • 举报
回复
谢谢楼上的大大,我也不清楚,不过今天测试又可以了.昨天怎么测试都过不了
回车应该怎么转义呢?比如我有两句select 语句
select 1 from POSTLIST;
select 2 from POSTLIST
执行可以返回2个表
但是
select 1 from POSTLIST;select 2 from POSTLIST
就会出错,在c#中发送sql语句的时候应该如何转义?
jandhf 2011-08-18
  • 打赏
  • 举报
回复
学一下。
LMAOhuaNL 2011-08-18
  • 打赏
  • 举报
回复
换成%试试

110,529

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧