Hallo,
Ik wil graag een text bestand met sql query's uitvoeren alleen werkt dit niet als ik stored procedures erbij zet.
als voorbeeld:
create.sql
Dit voer ik uit:
En dat werkt gewoon.
Maar verander ik create.sql naar het toevoegen van een stored procedure:
dan krijg ik een error op delimiter:
Heeft iemand enig idee hoe ik een stored procedure kan toevoegen via een sql query?
Ik wil graag een text bestand met sql query's uitvoeren alleen werkt dit niet als ik stored procedures erbij zet.
als voorbeeld:
create.sql
code:
1
2
3
4
5
6
7
8
9
| DROP TABLE IF EXISTS `website`.`manage_users`; CREATE TABLE `website`.`manage_users` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(45) NOT NULL, `password` varchar(100) NOT NULL, `salt` varchar(45) NOT NULL, PRIMARY KEY (`id`), KEY `username` (`username`,`password`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; |
Dit voer ik uit:
code:
1
2
3
4
5
6
7
8
| Dim conn As New MySqlConnection(connectionString) conn.Open() Dim cmd As New MySqlCommand cmd.Connection = conn cmd.CommandText = fileContents Dim adp As New MySql.Data.MySqlClient.MySqlDataAdapter(cmd) Dim ds As DataSet = New DataSet adp.Fill(ds) |
En dat werkt gewoon.
Maar verander ik create.sql naar het toevoegen van een stored procedure:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| DELIMITER $$ DROP PROCEDURE IF EXISTS `update_setting` $$ CREATE DEFINER=`root`@`localhost` PROCEDURE `update_setting`( txt_setting varchar(45), txt_value text ) BEGIN select * from manage_users; END $$ DELIMITER ; |
dan krijg ik een error op delimiter:
code:
1
2
3
4
| You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DELIMITER $$ DROP PROCEDURE IF EXISTS `update_setting` $$ CREATE DEFINER=`ro' at line 1 |
Heeft iemand enig idee hoe ik een stored procedure kan toevoegen via een sql query?