2012-01-29 3 views

Répondre

6

Je l'ai fait avec SQL mais jamais essayé avec ADO.NET ...

string connectionString = "..."; 
string oracleDataPath = "C:\\PATH_TO_ORADATA\\"; 

string username = "NEW_USER"; 
string password = "NEW_PWD"; 
string schema = "NEW_SCHEMA"; 

using (OracleConnection conn = new OracleConnection(connectionString)) 
{ 
    conn.Open(); 
    OracleCommand cmd = conn.CreateCommand(); 
    cmd.CommandText = "CREATE TABLESPACE \"" + schema + "\" DATAFILE '" + oracleDataPath + schema + ".DBF' SIZE 10M AUTOEXTEND ON NEXT 1M"; 
    cmd.ExecuteNonQuery(); 
    cmd.CommandText = "CREATE USER \"" + username + "\" IDENTIFIED BY \"" + password + "\" DEFAULT TABLESPACE \"" + schema + "\" TEMPORARY TABLESPACE TEMP"; 
    cmd.ExecuteNonQuery(); 
    cmd.CommandText = "GRANT CONNECT TO \"" + username + "\""; 
    cmd.ExecuteNonQuery(); 
    cmd.CommandText = "ALTER USER \"" + username + "\" QUOTA UNLIMITED ON \"" + schema + "\""; 
    cmd.ExecuteNonQuery(); 
} 

Utilisez le compte ADMIN/DBA sur la chaîne de connexion.
Définissez oracleDataPath avec le chemin où votre Oracle conserve ses fichiers de données. Faites-moi savoir si cela fonctionne :-)

+0

+1. Bienvenue à SO. – danihp

Questions connexes