#c# #sql-server #visual-studio #sql-server-2005 #visual-studio-2005
#c# #sql-server #visual-studio #sql-server-2005 #visual-studio-2005
Вопрос:
Я выполняю импорт данных из электронной таблицы Excel в SQLServer 2005 через C # Visual Studio 2005. Я предполагаю, что мое соединение было прервано, поскольку я не получаю никаких ошибок до самой последней части, в которой мои учетные данные для моего имени пользователя и пароля для sqlconnectionstring были запрошены как недействительные. Ниже приведен код ошибки и мой код.
http://i.stack.imgur.com/MjRXm.png
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Data.OleDb;
using System.Data.Common;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
public static string path = @"c:Documents and SettingsrhlimMy DocumentsVisual Studio 2005WebSitesinsqlserverstudentsheet1.xls";
public static string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" path ";Extended Properties=Excel 8.0;";
protected void Page_Load(object sender, EventArgs e)
{
// Connection String to Excel Workbook
//**string excelConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='c:Documents and SettingsrhlimMy DocumentsVisual Studio 2005WebSitesinsqlserverstudentsheet.xls';Extended Properties='Excel 8.0;HDR=Yes;IMEX=1'";
// Create Connection to Excel Workbook
using (OleDbConnection connection =
new OleDbConnection(connStr))
{
OleDbCommand command = new OleDbCommand
("Select StudentName,RollNo,Course FROM [Sheet1$]", connection);
connection.Open();
// Create DbDataReader to Data Worksheet
using (DbDataReader dr = command.ExecuteReader())
{
// SQL Server Connection String
string sqlConnectionString = "Data Source=<IP>;Initial Catalog=<database>;User ID=<userid>;Password=<password>;Integrated Security=True";
// Bulk Copy to SQL Server
using (SqlBulkCopy bulkCopy =
new SqlBulkCopy(sqlConnectionString))
{
bulkCopy.DestinationTableName = "ExcelData";
bulkCopy.WriteToServer(dr); <------Error appeared at this line
}
}
}
}
}
Ответ №1:
удалите часть «интегрированная безопасность» из строки подключения к БД. Это настраивает ваше соединение на использование проверки подлинности Windows вместо проверки подлинности sql. Посмотрите примеры на http://www.connectionstrings.com /