SQL語句表字段與關鍵字衝突
我們定義資料庫的欄位時,可能會在不經意間定義了和SQL語句關鍵字名相同的欄位,這時我們在對該欄位進行操作時,常會發生錯誤。
例如我在表中定義了一個from欄位,我們知道 from值mysql的關鍵字,所以我們在執行查詢時會出錯
例如:
執行:SELECT * FROM WHERE from = 'xxx';
報錯:execute error:SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' SELECT * FROM WHERE from = 'xxx'' at line 1
解決方法:
1.重新定義欄位。
2.用反撇號(`)包住待操作的關鍵字,換成一下語句則不會報錯(注意不是單引號)。
SELECT * FROM
相關推薦
SQL語句表字段與關鍵字衝突
我們定義資料庫的欄位時,可能會在不經意間定義了和SQL語句關鍵字名相同的欄位,這時我們在對該欄位進行操作時,常會發生錯誤。 例如
表字段名與關鍵字衝突問題與mybatis通用mapper查詢時欄位名駝峰轉下劃線
表字段名與關鍵字衝突問題引發的一系列修改欄位名的風波。 因為建表的時候沒有注意欄位名,使用了關鍵字,加上了飄號,所以與關鍵字衝突分時候查詢的時候必須加上飄號進行查詢,但是在使用mybatis通用mapper進行查詢的時候,它自動生成的sql語句中國是不帶飄號的
SQL查詢表字段名稱與欄位型別、長度
select o.name as 表名, c.name as 欄位名稱, t.name as 欄位型別, c.length as 欄位長度 from syscolumns c inner join sysobjects o on c.id = o.id and o.xtype = 'u' inner joi
TSQL:A表字段與B表中的關聯,關聯條件中一列是隨機關聯的實現方式
sql values order srp and eat 2.6 pre art A表字段與B表中的關聯,關聯條件中一列是隨機關聯的實現方式 1 create table test( 2 rsrp string, 3 rsrq string, 4 tke
SQL語句中事務與try catch使用
SQL中的事務和try catch普通SQL事務: begin transaction tr declare @error int; set @error=0; select * from Car_Brand set @error=@error+@@ERROR select 1/
SQL更改表字段為自增標識
prop type char cts 表名 property com tree end --刪除主鍵約束DECLARE @Constraint_Name varchar (200) select @Constraint_Name = Name from dbo.sysobj
表字段與表結構的操作區別
sel col set let int delet 。。 delete 字段 表字段(alter table 表名) 表記錄 增: add insert into 表名 。。。 刪: drop
ClickHouse一個表字段與另一個表字段匹配與否增加一個欄位標識
A表字段與B表字段匹配與否增加tag===>A表增加一列,與B匹配的(S2)增加列值為1,否則(S1)0 。 SELECT date, ts, pin, ip_country, ip_province, ip_ci
Linux中LAMP實現、SQL語句及FTP與Samba服務配置
1、 搭建php-fpm工作方式的LAMP環境,實現wordpress正常訪問 Mysql服務的搭建 [[email protected] ~]# yum -y install mariadb-server.x86_64 [[email protected] ~]# ca
Mybatis中解決資料庫表字段與實體類不一致的解決方法
解決方法一:通過在查詢sql語句中定義欄位名的別名,讓欄位名的別名和實體類的屬性名一致,這樣就可以使表的欄位名和實體類的屬性名一一對應上了,這種方式時通過在sql語句中定義別名來解決欄位名和屬性名的對映關係的。 解決方法二:通過<resultMap>來對映欄位名和實體類屬性名一
解決 Mybatis Generator由表字段使用關鍵字導致的異常方案
引言 前幾天由於用python拉取第三方介面的資料以後,他們直接返回建表的欄位和命令,也就說我們必須按照他們設定的欄位名稱來使用,他們的命名裡面有很多的mysql的關鍵字,這就說我們寫sql的時候,需要注意關鍵字,但是我們後端用的mybatis Generator,這就導致
SQL SERVER 查看sql語句性能與執行時間
col -- 查看 sele end style rtt span color 【方法一】 set statistics profile on set statistics io on set statistics time on go --sql語句 go set st
sql語句中 having與where區別
HAVING語句通常與GROUP BY語句聯合使用,用來過濾由GROUP BY語句返回的記錄集。 HAVING語句的存在彌補了WHERE關鍵字不能與聚合函式聯合使用的不足。 CREATE TABLE `tp5_student` ( &
JPA設定表名和實體名,表字段與實體欄位的對應
首先 你的jpaProperties配置項中要有 <prop key="hibernate.hbm2ddl.auto">update</prop>這樣就可以直接有物件對映為表結構,實現面向物件向資料庫轉化。 實體的名字可以和表名字不一樣,欄位名字和實
SQL 獲取表字段和欄位說明
--查詢示例 (如果不加WHERE條件,會查出前2000行) SELECT * FROM V_GetTabDefine WHERE TableName='表名' --查詢結果 --建立檢視 CREATE VIEW [dbo].[V_GetTabDefine] AS S
oracle中的sql語句中timestamp與字串轉換
字串轉timestamp: update tb_a t set t.upd_timestamp=to_timestamp('2012-12-12 12:12:12.0','yyyy-mm-dd hh24:mi:ss.ff') where t.id='1' timest
Oralce 表字段為關鍵字,查詢不準確
在oracle資料庫,有一張表,其中有個level欄位,select * 的時候,level的資料是對的,但是如果我select level的話,查出來level的欄位值都是0。 在SQL Serv
SQL 修改表字段註釋
sqlserver 表註釋 IF ((SELECT COUNT(*) from fn_listextendedproperty('MS_Description','user', N'dbo','TABLE', N'MAA_HINMOKU',N'COLUMN', N'FV
SQL語句中sum與count的區別
表fruitid name price1 apple 1.002 pear 4.00select count(price) from fruit; ----執行之後結果為:2 (表示有2條記錄)select sum(price) from fruit;--
Hibernate工具類豐富和Hql用法 物件屬性名與關鍵字衝突
HibernateUtil: package hibernate.util; import java.io.Serializable; import org.hibernate.HibernateException; import org.hibernate.Sessi