簡體   English   中英

SQL Server錯誤:“'seem'附近的語法不正確。 ”

[英]SQL Server error: “ Incorrect syntax near 'seem'. ”

我使用此查詢在數據庫中查找字符串,但是對於特定的數據庫卻收到此錯誤:

'seem'附近的語法不正確。

所以我想知道原因

CREATE TABLE #Results (ColumnName nvarchar(370), ColumnValue nvarchar(3630)) 

SET NOCOUNT ON 

DECLARE @TableName nvarchar(256), @ColumnName nvarchar(128), @SearchStr2 nvarchar(110) 

SET @TableName = '' 

SET @SearchStr2 = quotename( '%NQF%0028a%' , '''' ) 

WHILE @TableName IS NOT NULL 
BEGIN 
   SET @ColumnName = '' 
   SET @TableName = 

   (
     SELECT min(quotename(TABLE_SCHEMA) + '.' + quotename(TABLE_NAME)) 
     FROM INFORMATION_SCHEMA.TABLES 
     WHERE TABLE_TYPE = 'BASE TABLE' 
       AND quotename(TABLE_SCHEMA) + '.' + quotename(TABLE_NAME) > @TableName 
       AND objectproperty(object_id(quotename(TABLE_SCHEMA) + '.' + quotename(TABLE_NAME)), 'IsMSShipped') = 0 
   ) 

   WHILE (@TableName IS NOT NULL) AND (@ColumnName IS NOT NULL) 
   BEGIN 
      SET @ColumnName = (SELECT min(quotename(COLUMN_NAME)) 
                         FROM INFORMATION_SCHEMA.COLUMNS 
                         WHERE TABLE_SCHEMA = parsename(@TableName, 2) 
                           AND TABLE_NAME = parsename(@TableName, 1) 
                           AND DATA_TYPE IN ('char', 'varchar', 'nchar', 'nvarchar') 
                           AND quotename(COLUMN_NAME ) > @ColumnName ) 

      IF @ColumnName IS NOT NULL 
      BEGIN 
          INSERT INTO #Results 
            EXEC 
             ('SELECT ''' + @TableName + '.' + @ColumnName + ''', LEFT(' + @ColumnName + ', 3630)    
    FROM ' + @TableName + ' (NOLOCK) ' + 

    ' WHERE ' + @ColumnName + ' LIKE ' + @SearchStr2 

) 

END 

END 

END 


SELECT ColumnName , ColumnValue FROM #Results**strong text**

看起來您的表名稱中有一個空格。 檢查名稱中包含“ SEEM”的表,並盡可能刪除空格。 如果不能更改表名,則將@TableName變量包裝在[]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM