无法使用文本框输入进行查询
本文关键字:输入 查询 文本 | 更新日期: 2023-09-27 17:57:52
我试图允许用户在文本框中输入详细信息,并使用这些信息运行SQL查询。当我硬编码所有内容时,它就起作用了,例如:
string query = "SELECT * FROM PERSONS WHERE Name='Samuel'";
当我尝试按如下方式使用文本框时,它会返回一个错误。我肯定在文本框中输入了正确的名字Samuel。我运行了一个消息框来检查文本框是否正确注册了名称,是的,它是正确的。如果你发现什么不对劲,请提出建议。谢谢
name = textbox4.Text;
MessageBox.Show(name);
string query = "SELECT * FROM PERSONS WHERE Name=" + name;
什么语言?C#?
string query = string.Format("SELECT * FROM PERSONS WHERE Name = '{0}'", SanitizeSql(name));
或者你可以很酷https://github.com/markrendle/Simple.Data那么它就是
IEnumerable<Person> people = db.Persons.FindAllByName(name);
而且这还涉及SQL注入,并且与数据库无关(因此您可以从MSSQL切换到MySQL再切换到MongoDB…)
您忘记了引号。更改查询如下:
string query = "SELECT * FROM PERSONS WHERE Name='" + name + "'";
string query = "SELECT * FROM PERSONS WHERE Name=" + name;
应该是
string query = "Select * From PERSONS Where name = '" + name + "'" ;
使用name=txbox.Text;
dbLog.Open("SELECT * FROM Persons WHERE Name='" & name & "'", dbCon, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)