SQL参数太少问题. (我已经拿出了所有的分, 只有45分)(45分)

  • 主题发起人 主题发起人 zyx1122
  • 开始时间 开始时间
Z

zyx1122

Unregistered / Unconfirmed
GUEST, unregistred user!
我写代码如下:
SELECT * FROM Table1 WHERE Field1 = 'somevalue1' AND Field2 = 'somevalue2'
执行出错, 提示大意 '参数太少'
Field1和Field2是Table1的Primary Key.
 
你的字段名是不是使用了SQL函数相同的名称,贴出真实的SQL语句才能判断.
 
如果你的somevalue1是一组值的集合,就用in (somevalues),如:
SELECT * FROM Table1 WHERE Field1 in (somevalue1) AND Field2 in ('somevalue2')
 
贴出你的真语句,你现在写的语句真的是很难让人判断到底是哪里出的问题。
 
字段名没有使用了SQL函数相同的名称
somevalue1不是一组值的集合
 
你的somevalue1是不是变量,如是,则可能是改变量没有定义类型
 
1. Table : Privilege
Fields(PK): UserName, TableName
2. Table : PrivilegeSub
Fields(PK): UserName, TableName, FieldName
Privilege and PrivilegeSub's relation are "UserName', 'TableName'
strUserName := Privilege.FieldByName('UserName');
(具体方法忘了)
strTableName := Privilege.FieldByName('TableName');
(具体方法忘了)
strCondition := 'WHERE UserName = "' + strUserName + '"' +
' AND TableName = "' + strTableName + '"'
strSQL := 'SELECT * FROM PrivilegeSub ' + strCondition;
 
SQL用“'”而不是“"”
 
SQL用“'”而不是“"”
我在Text editor里输入的, 然后copy. 可能我输入错误.
但我写的程序是没有问题.
在只有一个Primray Key时是没有问题的.
 
watter是正确的.
昨天我又试了以下是符号问题.
但我不明白为什么当只有一个Field(PK)时没有问题.
 
多人接受答案了。
 
后退
顶部