A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 袁雅墨 于 2012-9-10 15:03 编辑

数据不能导入到表中,请问是哪出问题了。程序能正常运行,可就是不能把数据导入到MDF文件中。
string dataDir=AppDomain.CurrentDomain.BaseDirectory;
if(dataDir.EndsWith(@"\bin\debug\")||dataDir.EndsWith(@"\bin\Release\"))
{
  dataDir=System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
AppDomain.CurrentDomain.SetDate("DateDirectory",dataDir);
}

sqlConnection conn=new sqlConnection(@"Date Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True") ;
我觉得应该是连接有问题。不知道是不是程序哪里写错了。

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

2 个回复

倒序浏览
program.cs文件:

using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace 数据导入导出
{
         static class Program
         {
                 ///<sumary>
                 ///应用程序的主入口点
                 ///</summary>
                 [STAThread]
                 static void Main()
                 {
                        string dateDir = AppDomain.CurrentDomain.BaseDirectory;
                        if(dataDir.EndsWith(@"bin\Debug\")||dataDir.EndsWith(@"bin\Release\"))
                        {
                                dataDir = System.IO.Directory.GetParent(dataDir).Parent.Parent.FullName;
                                AppDomain.CurrentDomain.SetData("DataDirectory",dataDir);
                        }
                        Application.EnableVisualStyles();
                        Application.SetCompatibleTextRenderingDefault(false);
                        Application.Run(new Form1());
                 }
          }
}


数据导入导出.Form1文件:

using System;
using System.Collection.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace 数据导入导出
{
       public Form1()
       {
              InitializaComponent();
       }
       private void button1_Click(object sender,EventArgs e)
       {      
               if(odfImport.ShowDialog() != DialogResult.OK)
               {
                      return;
               }
              using(FileStream fileStream = File.OpenRead(odfImport.FileName))
              {
                          using(StreamReaser streamReader = new StreamReader(fileStream))
                          {
                                    using(SqlConnection conn = new SqlConnection(@"Data Source = .\SQLEXPRESS;AttachDBFilename=|DataDirectory|\MyDB.mdf;Integrated Security = True;User Instance = True"))
                                    //创建连接是非常耗时的,因为不要每次操作都创建连接
                                    {
                                            conn.Open();
                                            using(SqlCommand cmd = conn.CreateCommand())
                                            {
                                                    string lines = null;
                                                    while(line = streamReader.ReadLine())! = null)
                                                    {
                                                               string[] strs = line.Split("|");
                                                               string name = strs[0];
                                                               int age = Convert.ToInt32(strs[1]);
                                                               cmd.Parameters.Clear();//!!!!参数不能重复添加,在while中一直用的就是一个SqlCommand对象
                                                               cmd.Parameters.Add(new SqlParameter("Name",name));
                                                               cmd.Parameters.Add(new SqlParameter("Age",name));
                                                               cmd.ExecuteNonQuery();
                                                    }
                              
                                           }
                                    }
                            }
                            MessageBox.Show("导入成功!");
               }


               /*
               if( odfImport.ShowDialog() == DialogResult.OK)
               {
                      using(FileStream fileStream = File.OpenRead(odfImport.FileName))
                      {
                                using(StreamReaser streamReader = new StreamReader(fileStream))
                                {
                                        string line = null;
                                        while((line = streamReader.ReadLine())! = null)
                                        {
                                              string[] strs = line.Split('|');
                                              string name = strs[0];
                                              int age = Convert.ToInt32(strs[1]);
                                              using(SqlConnection conn = new SqlConnection(@"Data Source = .\SQLEXPRESS;AttachDBFilename=|DataDirectory|\MyDB.mdf;Integrated Security = True;User Instance = True"))
                                               {
                                                        conn.Open();
                                                        using (SqlCommand cmd = conn.CreateCommand())
                                                        {
                                                                 cmd.CommandText = "Insert into T_Person(Name,Age) values(@Name,@Age)";
                                                                 cmd.Parameters.Add(new SqlParameter("Name",name));
                                                                 cmd.Parameters.Add(new SqlParameter("Age",name));
                                                                 cmd.ExecuteNonQuery();
                                                       }
                                                }           
                                        }
                                }
                      }
                      MessageBox.Show("导入成功!");
               }*/
                        
                                       
       }
}
回复 使用道具 举报
sqlConnection conn=new sqlConnection(@"Date Source=.\SQLEXPRESS;AttachDBFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True") ; 这是你的代码,要是你觉得是链接有问题,你有什么提示没有? 你试一试把链接字符串中的 Integrated Security=True改成
Integrated Security=SSPI;

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马