首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

SQL Server 語法錯誤:GUID 字符串未加單引號導致「a07 附近語法錯誤」

     編輯:程式設計綜合問答

錯誤 SQL

select * from yProposalMain_ProposalMainInfo where yProposalGuid=a4a15401-ece0-4a07-99f6-590be159d5d5

錯誤原因

yProposalGuid 列類型為 uniqueidentifier 或 varchar 存儲 GUID,**字符串字面量必須用單引號包裹**,否則被解析為標識符或數學表達式(如 a4a15401 - ece0 - 4a07 ...),導致語法錯誤指向 4a07 附近。

正確寫法

select * from yProposalMain_ProposalMainInfo where yProposalGuid='a4a15401-ece0-4a07-99f6-590be159d5d5';

參數化查詢最佳實踐

// C# 示例
string sql = "select * from yProposalMain_ProposalMainInfo where yProposalGuid=@guid";
using (SqlCommand cmd = new SqlCommand(sql, conn)) {
    cmd.Parameters.AddWithValue("@guid", "a4a15401-ece0-4a07-99f6-590be159d5d5");
    // 執行查詢
}

總結

所有字符串、日期、GUID 類型值在 SQL 中**必須加單引號**,或優先使用參數化查詢防止注入並自動處理類型轉換。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved