[英]Why the sql is giving result even if the column doesn't exist in the table?
我在SQLite3中使用MySql,我只想檢查表中是否存在列? 為此,我使用了“選擇並嘗試捕獲”命令,但是每當我給列名稱使用數字如1,'2'“ 3”時,它會返回具有相同數字的列,例如1,2,3而不會顯示錯誤,為什么?
select 20 from Student;
20
20
20
20
20
20
顯示20直到我的實際Student表中存在行數。
我了解到用數字值設置列名稱不是一件好事,但是如果您的列名稱確實是數字值,則應在查詢中添加反引號\\反引號。 例如:
SELECT `20` FROM Student;
這樣,如果該列不存在,則會出現以下錯誤:
Error Code: 1054
Unknown column '20' in 'field list'
SHOW COLUMNS FROM `table` LIKE 'fieldname';
對於MySQL,如果該列存在,則它將返回列的信息,其中table
是您的表名,而'fieldname'是該列名。 如果該列不存在,它將不返回任何內容
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.