ajmo ispocetka:
Code:
mysql> CREATE PROCEDURE kukuriku(IN tbl CHAR(64), IN col CHAR(64), IN val CHAR(64))
-> BEGIN
-> SET @q = CONCAT('DELETE FROM ' , tbl , ' WHERE ' , col, ' = ', val);
-> PREPARE stmt FROM @q;
-> EXECUTE stmt;
-> END;
-> //
Query OK, 0 rows affected (0.07 sec)
mysql> delimiter ;
mysql> select * from t1;
+----+----------+
| id | a |
+----+----------+
| 1 | kukuriku |
| 2 | test1 |
| 3 | alfa123 |
| 4 | 1234 |
| 5 | 0123 |
| 6 | 4345 |
| 7 | 555abc |
| 8 | 123.12 |
| 9 | abcdef |
| 10 | -1234 |
| 11 | -1234.43 |
| 12 | 0 |
| 13 | 0 |
| 14 | 0 |
| 15 | 0 |
+----+----------+
15 rows in set (0.00 sec)
mysql> call kukuriku("t1", "id", "7");
Query OK, 1 row affected (0.00 sec)
mysql> call kukuriku("t1", "a", "'kukuriku'");
Query OK, 1 row affected (0.00 sec)
mysql> select * from t1;
+----+----------+
| id | a |
+----+----------+
| 2 | test1 |
| 3 | alfa123 |
| 4 | 1234 |
| 5 | 0123 |
| 6 | 4345 |
| 8 | 123.12 |
| 9 | abcdef |
| 10 | -1234 |
| 11 | -1234.43 |
| 12 | 0 |
| 13 | 0 |
| 14 | 0 |
| 15 | 0 |
+----+----------+
13 rows in set (0.00 sec)
zar nisi to hteo?