在insert into 的values里如果是字符变量要怎么写?
如: cmd1=new OleDbCommand(insert into MyTable(Id,UserName,Date)values  ('@String_Id','@String_UserName','@String_Date'),conn))不知为什么写不了数据库?!

解决方案 »

  1.   

    cmd1=new OleDbCommand("insert into MyTable(Id, UserName, Date) values  (@String_Id, @String_UserName, @String_Date)", conn))
      

  2.   

    cmd1 = new OleDbCommand("insert into MyTable(Id,UserName,Date) values   (@String_Id,@String_UserName,@String_Date"),conn))这样就行,然后添加参数就能写数据库了
      

  3.   

    ("insert into MyTable(Id, UserName, Date) values  (@String_Id, @String_UserName, @String_Date")
      

  4.   

    建议这样写,也清楚一些
    string sqlInsert=@"insert into MyTable(Id, UserName, Date) values  (@String_Id, @String_UserName, @String_Date)";
    OleDbCommand cmd=new OleDbCommand(sqlInsert,conn);
      

  5.   

    还是执行到Console.WriteLine("Command Created")就不往下走了. OleDbConnection conn = new OleDbConnection();
            conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;" +
            @"Data source= E:\April30\Db\TestDb.mdb" ;
           
                 conn.Open();
    string sqlInsert=@"insert into TestTable(Id,UserName,Date) values  (@String_Id,@String_UserName,@String_Date)";
            OleDbCommand cmd1=new OleDbCommand(sqlInsert,conn);
                      
                  
           
           Console.WriteLine("Command Created");
           cmd1.ExecuteNonQuery();//执行插入
           Console.WriteLine("insert end");
           conn.Close();
      

  6.   

    走到cmd1.ExecuteNonQuery()好象就死机了!
      

  7.   

    int  decimal等数值型不用加单引号'字符型要加单引号'
      

  8.   

    例如插入表t1 的3个字段intA,strB
    注意:intA是整形,strB是字符型
    insert into t1(intA,strB)values(100,'abc')