我有两个疑问:
Q1: select name from presidents where country = 'USA'
Q2: select 'Obama' as name from presidents where country = 'USA'
使用时,在 Q1 和Q2 的情况下System.Data.Odbc.OdbcCommandExecuteReader
返回DbDataReader
包含。'Obama'
'Obama '
为什么在 Q2 的情况下用尾随空格填充字符串,补救措施是什么?
在某些情况下,修剪是丑陋的,甚至是错误的。我正在使用 .Net Framework 3.5。
这是测试代码
OdbcCommand cmd = new OdbcCommand();
cmd.Connection = (OdbcConnection)DatabaseContext.Connection;
cmd.CommandText = "select 'Obama' from dual";
cmd.CommandType = CommandType.Text;
OdbcDataReader r = cmd.ExecuteReader();
if (r.Read())
{
String s = r.GetString(0);
// s now contains "Obama "
// with trailing spaces
}