c# 链接数据库报错
给报的错误是这个Command text was not set for the command object。
还有过no file name 之类的错,莫名的这个错就没了。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
namespace ConsoleApplication1
{
     class accessData
     {
         #region Access 2010
         hospital hospitalData;
         public accessData(hospital h)
         {
             hospitalData = h;
         }          
         public void runData()  
         {
             string strConnection = "Provider=Microsoft.ACE.OLEDB.12.0;";
             strConnection += @"Data Source=C:\Users\lisca\Desktop\patient.accdb;";             
             OleDbConnection vcon = new OleDbConnection(strConnection);
             try
             {
                 vcon.Open();
                 // string sqlCommand = @"INSERT INTO patientData(patientID,visitID) VALUES(script,qty5')";
                 System.Console.WriteLine("open");
                 OleDbCommand mycmd = new OleDbCommand("", vcon);
                 int currentPid = 0, currentVID = 0;
                 string sqlCommand = "";
                 for (int i = 0; i < hospitalData.getPatientList().Count; i++)
                 {
                     currentPid = i;
                     for (int j = 0; j < hospitalData.getPatient(i).getVisitInfo().Count; j++)
                     {
                         currentVID = j;
                         sqlCommand = @"INSERT INTO patientData(patientID,visitID) VALUES('" + currentPid + "," + currentVID + ')';
                         mycmd = new OleDbCommand(sqlCommand, vcon);
                     }
                 }
             }
             catch (Exception e)
             {
                 Console.WriteLine("what on earth happened!?", e.Message);
             }  
                 mycmd.ExecuteNonQuery();                           
             vcon.Close();
         }
         #endregion
     }
}
还有,虽然我C:\Users\lisca\Desktop\patient.accdb路径确实正确,但是我不知道能不能写进去。
insert的变量是两个,patientID 和 visitID。会不会是这里不对。
加上try 和catch之后,就只输出writeline的string,e.message没有内容。
急等,万分感谢
------解决方案--------------------
script,qty5这两个是什么东西,对id字段赋值,应该是数值吧,如果这两个是变量的话,也不能这样直接写啊
string sqlCommand = @"INSERT INTO patientData(patientID,visitID) VALUES("+script.ToString()+","+qty5.ToString()+")";
------解决方案--------------------
调试一下 vcon.Open();这句有没有报错,有报错的话,连接都没有连接上  
sqlCommand = @"INSERT INTO patientData(patientID,visitID) VALUES('" + currentPid + "," + currentVID + ')';
如果这句报错的话:检查patientData这个数据库表里面是否有这两个字段、和他们的类型,如果是int型的,VALUES(currentPid,currentVID)';是varchar的话,VALUES('" + currentPid + "','" + currentVID + ')';
------解决方案--------------------
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
namespace ConsoleApplication1
{
 class accessData
 {
 #region Access 2010