salve ragazzi questo è il codice che in sql fuziona perfettamente
praticamente mi restituisce una tabella in qui ci sono scritte i nomi del campo e della tabella di un database dove è presente la stringa 2102 ora dovrei fare la cosa in mysql
ma mi da numerosi errori sapete darmi una mano ?????
grazie in anticipo
codice:
DECLARE @DATO varchar(100);
SET @DATO='%2102%';

DECLARE @SQL varchar(500);
DECLARE @SQL2 varchar(500);

SET NOCOUNT ON

DECLARE @TABLE_NAME varchar(50)
DECLARE @COLUMN_NAME varchar(50)

IF EXISTS (SELECT * FROM tempdb.dbo.sysobjects WHERE ID = OBJECT_ID(N'[tempdb]..[#Temp]'))
DROP TABLE #Temp;

CREATE TABLE #Temp (Record int, Tabella nvarchar(100), Campo nvarchar(100), SQL nvarchar(500));

DECLARE view_cursor CURSOR FOR 
SELECT INFORMATION_SCHEMA.COLUMNS.TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS inner join INFORMATION_SCHEMA.TABLES on 
INFORMATION_SCHEMA.COLUMNS.TABLE_NAME=INFORMATION_SCHEMA.TABLES.TABLE_NAME
WHERE DATA_TYPE like '%char' AND TABLE_TYPE='BASE TABLE';

OPEN view_cursor

FETCH NEXT FROM view_cursor INTO @TABLE_NAME, @COLUMN_NAME

WHILE @@FETCH_STATUS = 0
BEGIN

DECLARE @conteggio int;
SET @SQL2='SELECT * FROM ['+@TABLE_NAME + '] WHERE ['+@COLUMN_NAME+'] like "'+@DATO+'"';

SET @SQL='DECLARE @conteggio int;SELECT @conteggio=Count(*) FROM ['+@TABLE_NAME + '] WHERE ['+@COLUMN_NAME+'] like '+ CHAR(39)+ @DATO + CHAR(39)+';INSERT INTO #Temp (Tabella, Campo, SQL, record) VALUES (' + CHAR(39)+@TABLE_NAME + CHAR(39)+',' + CHAR(39)+@COLUMN_NAME + CHAR(39)+','+CHAR(39)+@SQL2+''+CHAR(39)+', @conteggio);'
EXEC(@SQL);

FETCH NEXT FROM view_cursor INTO @TABLE_NAME, @COLUMN_NAME
END

UPDATE #Temp SET sql = REPLACE(SQL,'"',CHAR(39));

SELECT * from #Temp where record>0;
DROP table #Temp

CLOSE view_cursor
DEALLOCATE view_cursor