大家帮我看一下以下语句有什么错误,谢谢!老是提示System.Data.OleDb.OleDbException: ')' 附近有语法错误。
adpt1 = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM customer WHERE (ID>" + txtNo.Text.Trim()+ ")", conn1);
ID是uniqueidentifier类型,txtNo.Text="0"
唉,被这么简单的问题难倒了!
在SQL SERVER中查询没错,但是在程序里却有错!
错误信息:System.Data.OleDb.OleDbException: ')' 附近有语法错误。改成:
adpt1 = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM customer WHERE [ID]>" + txtNo.Text.Trim(), conn1);
错误信息:System.Data.OleDb.OleDbException: '>' 附近有语法错误。改成:
adpt1 = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM customer WHERE [ID]>" + Convert.ToInt32(txtNo.Text.Trim()), conn1);
错误信息:System.FormatException: 输入字符串的格式不正确。唉,被这么简单的问题难倒了!
请高人指点!
adpt1 = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM customer WHERE (ID>" + txtNo.Text.Trim()+ ")", conn1);
ID是uniqueidentifier类型,txtNo.Text="0"
唉,被这么简单的问题难倒了!
在SQL SERVER中查询没错,但是在程序里却有错!
错误信息:System.Data.OleDb.OleDbException: ')' 附近有语法错误。改成:
adpt1 = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM customer WHERE [ID]>" + txtNo.Text.Trim(), conn1);
错误信息:System.Data.OleDb.OleDbException: '>' 附近有语法错误。改成:
adpt1 = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM customer WHERE [ID]>" + Convert.ToInt32(txtNo.Text.Trim()), conn1);
错误信息:System.FormatException: 输入字符串的格式不正确。唉,被这么简单的问题难倒了!
请高人指点!
解决方案 »
- 求C#向ACCESS数据库插入数据的SQL语句 急急急!!!!那位大虾帮下忙
- 求助-桌面程序实现图片拖拽功能.
- C#winform重新生成解决方案时出现大量conime.exe进程?
- ~~~~~~~~~~~~ GDI+ 2.0 怎么输出CMYK模式的图片? ~~~~~~~~~~~~
- IIS中NET Remoting的配置
- 购物网站管理员的权限
- dataGrid 问题! 请指点! 在线等!
- C#的异常是否需要声明,如果未声明,上层程序如何知道需要捕捉什么样的异常?
- C#技术群(专门讨论C#技术)
- 急!找不到类型或命名空间名称“POWER_POLICY”(是否缺少 using 指令或程序集引用?)
- 在线等待赐教,做一个计时器的问题
- tc2.0两个画图函数如何同时显示
注意,txtNo.Text必须是整数字符串
if (!String.IsNullOrEmpty(txtNo.Text.Trim()))
adpt1 = new System.Data.OleDb.OleDbDataAdapter(string.Format("SELECT * FROM customer WHERE [ID]>{0}",txtNo.Text.Trim()), conn1);
怎么会错呢,奇怪,是不是要在SQL语句中转换为int类型啊?但转换函数是?
GUID类型没法比大小,只能比相等或者不相等
这一句应该不是你说的等于"0"吧。
你直接把txtNo.Text.Trim() 替换成0,看看是不是不报错了。
如果不是的话就没法了
一般Guid类型都是当作主键的
试试下面的,
你的应该少了一对单引号adpt1 = new System.Data.OleDb.OleDbDataAdapter(
string.format("SELECT * FROM customer WHERE (ID>'{0}')",txtNo.Text.Trim() ), conn1);
("SELECT * FROM customer WHERE (ID>'" + txtNo.Text.Trim()+ "')"这样试试,你就知道真正的错误在哪了
string.format("SELECT * FROM customer WHERE (ID>'{0}')",txtNo.Text.Trim() ), conn1);
试了一下可以的!
负责点自己在查询分析器里面建一个表,加一个uniqueidentifier类型的字段,然后自己在查询语句里面写
字段='0'试试看会不会报:将字符串转换为 uniqueidentifier 时失败。
LZ也不用测SQL了,直接在数据库里面测试一下直接当0传进去看看会不会错就知道了
if(txtNo.Text.Trim() != "")
{ adpt1 = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM customer WHERE (ID>" + txtNo.Text.Trim()+ ")", conn1);
...}