Guest User

Untitled

a guest
Jun 18th, 2018
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.68 KB | None | 0 0
  1. DROP TABLE IF EXISTS t;
  2.  
  3. BEGIN
  4. DROP TABLE t;
  5. EXCEPTION WHEN OTHERS THEN
  6. END;
  7.  
  8. CREATE FUNCTION f_table_is_ok
  9. ( IN @table_name VARCHAR ( 128 ) )
  10. RETURNS INTEGER
  11. ON EXCEPTION RESUME
  12. BEGIN
  13. DECLARE @dummy INTEGER;
  14. EXECUTE IMMEDIATE STRING (
  15. 'SELECT TOP 1 1 INTO @dummy FROM ',
  16. @table_name,
  17. ' ORDER BY 1' );
  18. IF SQLSTATE IN ( '00000', '02000' ) THEN
  19. RETURN 1
  20. ELSE
  21. RETURN 0
  22. END IF;
  23. END;
  24.  
  25. BEGIN
  26. DECLARE LOCAL TEMPORARY TABLE tt ( c INTEGER );
  27. DECLARE LOCAL TEMPORARY TABLE "t t" ( c INTEGER );
  28. SELECT f_table_is_ok ( 'asdf' );
  29. SELECT f_table_is_ok ( 'tt' );
  30. SELECT f_table_is_ok ( '"t t"' );
  31. SELECT f_table_is_ok ( '"SYS"."SYSTABLE"' );
  32. END;
Add Comment
Please, Sign In to add comment