简单的comboBox查询问题,100分,解决即结帖
背景:
数据表一(Task):
TaskID (Key)
TaskTypeID
...
数据表二(TaskType):
TaskTypeID(Key)
TaskTypeName (Key)
...
两个表通过TaskTypeID关联起来。
然后在form中使用一个dataGrid,用来显示Task表内容;
同时提供一个comboBox来显示TaskTypeName,以方便根据TaskTypeName来在dataGrid中显示相关Task表中
的内容。因此在创建select 语句的时候,改成 select * from Task Where (TaskTypeID LIKE ?)
问题:
1、为了在form_load的时候显示所有内容,则加入如下语句
sqlDaTask.SelectCommand.Parameters[0].Value ="%";
结果总是报错:输入字符串格式不正确
加入如下一条可以解决:
sqlDaTask.SelectCommand.Parameters[0].SqlDbType = SqlDbType.VarChar;
还有没有别的方法可以解决这个问题?
2、启动的时候检索TaskType表,将其中的TaskTypeName通过comboBox.Items.Add方法加入到comboBox,则在查询的时候需要将sqlDaTask.SelectCommand.Parameters[0].Value设成何值?如果是通过selectedIndex,则TaskType表中的TaskTypeID不连续怎么办?