我对SQL Server 2005有一些经验,并编写了许多只有BEGIN语句和END的脚本。我可以使用诸如循环,游标等逻辑。但是,如果不创建存储过程,我似乎无法在MySQL中执行此操作。我知道MySQL中的存储过程是新的,可能不像SQL Server那样强大,但无论如何只是创建一个通用脚本,我知道我只想运行一次,所以我不必回到我的数据库并在以后删除所有这些存储过程?
澄清一点我要做的是创建一个可以创建多个talbes的脚本,例如
BEGIN
CREATE TABLE foo(id INT, data VARCHAR(100));
CREATE TABLE test(t_id INT, data VARCHAR(50));
END;
这在MySQL中是否可行?
答案 0 :(得分:1)
您在MySQL中不需要begin
和end
个关键字,以下内容适用:
CREATE TABLE foo(id INT, data VARCHAR(100));
CREATE TABLE test(t_id INT, data VARCHAR(50));
您还可以使用if not exists
子句确保在表已存在时不会出错:
CREATE TABLE IF NOT EXISTS foo(id INT, data VARCHAR(100));
CREATE TABLE IF NOT EXISTS test(t_id INT, data VARCHAR(50));
答案 1 :(得分:0)
抱歉,我明白了。我试图在顶部的通用sql创建器中运行脚本,而不是转到File-> New Script选项卡并尝试在那里运行脚本。谢谢你的帮助