执行用java一个cmd命令来创建数据巴塞

问题描述:

我的CMD命令是创建一个数据巴塞枝条SQLITE3 它的工作,CMD,但与Java它不是 我的JAVA代码:执行用java一个cmd命令来创建数据巴塞

Runtime.getRuntime().exec("cd /"); 
Runtime.getRuntime().exec("cd C:\Users..."); 
Runtime.getRuntime().exec("Sqlite3"); 
Runtime.getRuntime().exec("Sqlite3 DB.db"); 
+1

你试图运行从Java在cmd ..或者是它只是在Java访问SQL? –

+1

在子流程中执行'cd'是无用的,因为它的作用对于子流程是本地的,当它结束时你仍然处于原始工作目录。 – Henry

+0

是的,我试图从java运行cmd – HichemJAVA

你做错了。您不需要使用Runtime.exec运行独立的sqlite应用程序。按照以下方式更好地使用库。

当你连接到一个不存在的SQLite数据库时,SQLite会自动创建一个新的数据库。因此,要创建一个新的数据库,您只需指定数据库名称并连接到该数据库。

以下程序在文件夹c:\ sqlite \ db中创建一个名为test.db的新SQLite数据库。

package net.sqlitetutorial; 

import java.sql.Connection; 
import java.sql.DatabaseMetaData; 
import java.sql.DriverManager; 
import java.sql.SQLException; 

/** 
* 
* @author sqlitetutorial.net 
*/ 
public class Main { 

    /** 
    * Connect to a sample database 
    * 
    * @param fileName the database file name 
    */ 
    public static void createNewDatabase(String fileName) { 

     String url = "jdbc:sqlite:C:/sqlite/db/" + fileName; 

     try (Connection conn = DriverManager.getConnection(url)) { 
      if (conn != null) { 
       DatabaseMetaData meta = conn.getMetaData(); 
       System.out.println("The driver name is " + meta.getDriverName()); 
       System.out.println("A new database has been created."); 
      } 

     } catch (SQLException e) { 
      System.out.println(e.getMessage()); 
     } 
    } 

    /** 
    * @param args the command line arguments 
    */ 
    public static void main(String[] args) throws ClassNotFoundException { 

     // You will probably need to uncomment the following "class.forName" 
     // and copy dependency configuration to your pom.xml 
     // if you stumble upon "No suitable driver found" error. 
     /* 
     <dependency> 
     <groupId>org.xerial</groupId> 
     <artifactId>sqlite-jdbc</artifactId> 
     <version>3.7.2</version> 
     </dependency> 
     */ 
     //Class.forName("org.sqlite.JDBC"); 
     createNewDatabase("test.db"); 
    } 

} 

来源:http://www.sqlitetutorial.net/sqlite-java/create-database/

+0

,但是当我这样做,并安装在分区C:\它的应用程序不工作!所以请尝试使用cmd命令 – HichemJAVA

+0

这样做它不起作用的确切原因是什么? Java应用程序抛出任何异常?不正确的路径,没有创建或写入文件的权限? –

+0

这是说我没有访问权限,但是当我安装在分区D:\它的工作 – HichemJAVA