Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Dynamically creating database and data source in ColdFusion

I'm trying to create a database and data source dynamically from the user input.

I'm not sure is that possible or not to create a database using cfquery tag without using data source.

For Data source creation

<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>

I've tried to create a data source using above code statically it creating Datasource successfully

For database creation

<cfquery name="createDB" result="res">
    create database #form.dbname#
</cfquery>

but not able to create a database using the above code. I got the error, my objective needs to create database then data source by using the user input string. enter image description here

Any advice or help is appreciable
Thanks in Advance.

like image 418
Saravana Kumar Avatar asked Jul 09 '26 19:07

Saravana Kumar


1 Answers

Can you convert your script to a function, and pass the desired database name from the form input as an argument?

runCreateDatabase = createDBforMe(databasename=form.dbname)

like image 50
Richard_J_Nap Avatar answered Jul 11 '26 12:07

Richard_J_Nap