我正在尝试根据用户输入动态创建数据库和数据源。
我不确定是否可以在不使用数据源的情况下使用 cfquery 标签创建数据库。
用于创建数据源
<cfscript>
adminObj = createObject("component","cfide.adminapi.administrator");
adminObj.login("admin password");
myObj = createObject("component","cfide.adminapi.datasource");
myObj.setMSSQL(driver="MSSQLServer",
name="datasourceName", host = "127.0.0.1", port = "1433",
database = "database", username = "userName", password="password", login_timeout = "30",
timeout = "20", interval = 7, buffer = "64000", blob_buffer = "64000", setStringParameterAsUnicode = "false",
description = "", pooling = true, maxpooledstatements = 1000, enableMaxConnections = "true",
maxConnections = "300", enable_clob = true, enable_blob = true, disable = false, storedProc = true,
alter = false, grant = true, select = true, update = true, create = true, delete = true, drop = false,
revoke = false
);
</cfscript>
我尝试使用上面的代码静态地创建数据源,它成功地创建了数据源
用于数据库创建
<cfquery name="createDB" result="res">
create database #form.dbname#
</cfquery>
但无法使用上述代码创建数据库。我得到了错误,我的目标需要使用用户输入字符串创建数据库然后数据源。
任何建议或帮助都是值得赞赏的
提前致谢。
最佳答案
能否将脚本转换为函数,并将表单输入中所需的数据库名称作为参数传递?
runCreateDatabase = createDBforMe(databasename=form.dbname)
关于sql-server - 在 ColdFusion 中动态创建数据库和数据源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60448714/