如何在表格中搜索int
值?实际上我的sql查询适用于字符串值,但不适用于数字。
SELECT * FROM [Book] WHERE ([bookId] = @bookId)
我正在使用vs并从文本框中获取值。在gridview中插入查询。
bookId
是自动生成的INT
值。
答案 0 :(得分:1)
假设您有表A
+----------------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+---------------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| data | int(11) | NO | MUL | NULL | |
查询
select * from A where data = 3
将返回表A中的所有数据,其int值为3
答案 1 :(得分:1)
除非您向我们提供更多信息,否则很难回答这个问题。在这种情况下,有用的信息是 Book 表的表模式或CREATE语句,包括表中的属性(或列)列表及其数据类型。了解您正在使用的数据库管理系统(DBMS),如MySQL,PostgreSQL,Microsoft SQL Server,Oracle数据库等,也会有所帮助。
我假设您的表可以通过以下CREATE语句创建:
CREATE TABLE Book (
bookId INT,
bookTitle VARCHAR(30),
bookAuthor VARCHAR(30),
..
);
在这种情况下,假设(再次)您的图书表包含一本包含 bookId 3的图书,以下查询应该没有问题地运行:
DECLARE @bookId INT;
SET @bookId = 3;
SELECT *
FROM [Book]
WHERE ([bookId] = @bookId);
如果这不起作用,我猜你的 bookId 属性的数据类型不是INT,而是一些文本类型。但同样,仅使用您目前提供的数据很难帮助您。