Из *.DBF в DataSet???
От: OLEG OVS  
Дата: 05.05.03 15:01
Оценка: 1 (1)
Подскажите плиз, каким образом я могу заполнить System.Data.DataSet данными из какого-либо DBF файла???
Пробовал OleDbConnection — не получилось. Я взял прописал в ConnectionString DSN этого DBF файла. Выскочил exception — пишет типа не дружу c ODBC. Есть способ как подконнектиться к DBF (неважно через ODBC или нет) юзая OleDbConnection ??? Если нет, то скажите пожалуйста как можно. Руки кривые — ничего не выходит %)).

Спасибо.
Re: Из *.DBF в DataSet???
От: Shulapov Россия  
Дата: 06.05.03 05:39
Оценка:
У тебя наверное framework 1.0 стоит. У меня тоже были подобные проблемы, только я к MySql подключался. Всё решается установкой framework 1.1 (и студии Everett). Туда. кроме всего прочего добавлены классы ODBC* , которые нормально работают с ODBC
Одинаковые ошибки не обязательно делать каждый раз, достаточно сделать одну, а затем обращаться к ней по мере необходимости из любого места программы.
Re: Из *.DBF в DataSet???
От: TK Лес кывт.рф
Дата: 06.05.03 05:40
Оценка:
Здравствуйте, OLEG OVS, Вы писали:

OO>Подскажите плиз, каким образом я могу заполнить System.Data.DataSet данными из какого-либо DBF файла???

OO>Пробовал OleDbConnection — не получилось. Я взял прописал в ConnectionString DSN этого DBF файла. Выскочил exception — пишет типа не дружу c ODBC. Есть способ как подконнектиться к DBF (неважно через ODBC или нет) юзая OleDbConnection ??? Если нет, то скажите пожалуйста как можно. Руки кривые — ничего не выходит %)).

А OledbConnection принципиален? Чем не подошел OdbcConnection?
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Из *.DBF в DataSet???
От: Gollum Россия  
Дата: 06.05.03 06:20
Оценка:
Здравствуйте, OLEG OVS, Вы писали:

OO>Подскажите плиз, каким образом я могу заполнить System.Data.DataSet данными из какого-либо DBF файла???

OO>Пробовал OleDbConnection — не получилось. Я взял прописал в ConnectionString DSN этого DBF файла. Выскочил exception — пишет типа не дружу c ODBC. Есть способ как подконнектиться к DBF (неважно через ODBC или нет) юзая OleDbConnection ??? Если нет, то скажите пожалуйста как можно. Руки кривые — ничего не выходит %)).

здесь
... << RSDN@Home 1.0 beta 6a >>
Eugene Agafonov on the .NET

Re[2]: Из *.DBF в DataSet???
От: Аноним  
Дата: 10.06.03 16:00
Оценка:
>Здравствуйте, OLEG OVS, Вы писали:

OO>>Подскажите плиз, каким образом я могу заполнить System.Data.DataSet данными из какого-либо DBF файла???

OO>>Пробовал OleDbConnection — не получилось. Я взял прописал в ConnectionString DSN этого DBF файла. Выскочил exception — пишет типа не дружу c ODBC. Есть способ как подконнектиться к DBF (неважно через ODBC или нет) юзая OleDbConnection ??? Если нет, то скажите пожалуйста как можно. Руки кривые — ничего не выходит %)).

Я тоже столкнулся с такой же проблемой, но я продвинулся немного дальше:
я могу заполнить DataSet, отобразил данные в гриде, но проблема в том, что если изменить в ячейке значение, а потом на кнопке проапдейтить

OdbcDataAdapter1.Update(DataSet1, "Table name")

то выскакивает Exeption [Microsoft][ODBC Visual Fox Pro Driver] Command is missing required clause.

Помогите, что нужно сделать?

Пётр
Re[3]: Из *.DBF в DataSet???
От: Gollum Россия  
Дата: 11.06.03 05:54
Оценка:
Здравствуйте, <Аноним>, Вы писали:


А> OdbcDataAdapter1.Update(DataSet1, "Table name")


А>то выскакивает Exeption [Microsoft][ODBC Visual Fox Pro Driver] Command is missing required clause.


А>Помогите, что нужно сделать?


А что в коммандах Update и Insert?
... << RSDN@Home 1.0 beta 6a >>
Eugene Agafonov on the .NET

Re[4]: Из *.DBF в DataSet???
От: Аноним  
Дата: 12.06.03 16:39
Оценка:
Здравствуйте, Gollum, Вы писали:

G>А что в коммандах Update и Insert?


Команды UpdateCommand и InsertCommand в OdbcDataAdapterе я не настраивал.
Я настроил только SelectCommand

Петя
Re[5]: Из *.DBF в DataSet???
От: Gollum Россия  
Дата: 16.06.03 11:47
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Здравствуйте, Gollum, Вы писали:


G>>А что в коммандах Update и Insert?


А>Команды UpdateCommand и InsertCommand в OdbcDataAdapterе я не настраивал.

А>Я настроил только SelectCommand

А>Петя


Надо настроить
... << RSDN@Home 1.0 beta 6a >>
Eugene Agafonov on the .NET

Re[6]: Из *.DBF в DataSet???
От: Аноним  
Дата: 21.06.03 09:48
Оценка:
Здравствуйте, Gollum, Вы писали:


G>Надо настроить


Спасибо, настрою.
Но при работе с SQLConnection в такой же ситуации я не настраивал ничего, кроме SelectCommand и всё работало.

Пётр
Re[7]: Из *.DBF в DataSet???
От: Gollum Россия  
Дата: 21.06.03 09:56
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Спасибо, настрою.

А>Но при работе с SQLConnection в такой же ситуации я не настраивал ничего, кроме SelectCommand и всё работало.

Этого не может быть, иначе бы адаптер не знал, каким образом инсертить и апдейтить.
Может, оно незаметно настроило их в VS
... << RSDN@Home 1.0 beta 6a >>
Eugene Agafonov on the .NET

Re: Из *.DBF в DataSet???
От: slv Украина  
Дата: 25.06.03 14:14
Оценка:
Здравствуйте, OLEG OVS, Вы писали:

OO>Подскажите плиз, каким образом я могу заполнить System.Data.DataSet данными из какого-либо DBF файла???

OO>Пробовал OleDbConnection — не получилось. Я взял прописал в ConnectionString DSN этого DBF файла. Выскочил exception — пишет типа не дружу c ODBC. Есть способ как подконнектиться к DBF (неважно через ODBC или нет) юзая OleDbConnection ??? Если нет, то скажите пожалуйста как можно. Руки кривые — ничего не выходит %)).

Попробуй так:
OleDbConnection  cn = null;
try
{
    cn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;
                                   Data Source=d:\new_stat\kod_form;Extended Properties=dBase IV");
    DataSet a010DS = new DataSet();
    OleDbDataAdapter a010Adapter = new OleDbDataAdapter(@"SELECT A010, TXT FROM [KOD_A010]", cn);
    a010Adapter.Fill(a010DS, "A010");
    a010DG.DataSource = a010DS;
}
catch (OleDbException oledbex)
{
    MessageBox.Show(oledbex.Message);                
}
... << RSDN@Home 1.0 beta 4 >>
Re[2]: Из *.DBF в DataSet???
От: Аноним  
Дата: 27.06.03 17:53
Оценка:
Здравствуйте, slv, Вы писали:

slv>Попробуй так:

slv>
slv>OleDbConnection  cn = null;
slv>try
slv>{
slv>    cn = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;
slv>                                   Data Source=d:\new_stat\kod_form;Extended Properties=dBase IV");
slv>    DataSet a010DS = new DataSet();
slv>    OleDbDataAdapter a010Adapter = new OleDbDataAdapter(@"SELECT A010, TXT FROM [KOD_A010]", cn);
slv>    a010Adapter.Fill(a010DS, "A010");
slv>    a010DG.DataSource = a010DS;
slv>}
slv>catch (OleDbException oledbex)
slv>{
slv>    MessageBox.Show(oledbex.Message);                
slv>}
slv>


спасибо за способ конекта через OleDb, но а как же быть с апдейтом, если в гриде чтото вручную изменили.

Для Gollum

Извини, не заметил что пользовался SqlCommandBuilder'ом.

Петя
Re[3]: Из *.DBF в DataSet???
От: Аноним  
Дата: 02.07.03 15:26
Оценка:
Здравствуйте,

Работая с MS SQL я использовал типизированный DataSet и у меня автоматически сгенерировались экземпляры класса Command, но Adapter я не настроил на UpdateCommand, InsertCommand и DeleteCommand, а использовал CommandBuilder.При этом всё апдейтится.

Тоже проделываю с OdbcCommandBuilder при конекте через ODBC

Dim Builder As OdbcCommandBuilder = New OdbcCommandBuilder(OdbcDataAdapter)
OdbcDataAdapter.Update(DataSet, "myTable")

на что получаю "Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information"

Петя
Re[4]: Из *.DBF в DataSet???
От: Gollum Россия  
Дата: 03.07.03 04:48
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>на что получаю "Dynamic SQL generation for the UpdateCommand is not supported against a SelectCommand that does not return any key column information"


Ну написали же: "Динамическое создание SQL-команды Update невозможно, так как в Select нет ни одного ключа."
Вывод — нужно создать ключевую колонку в таблице. Обычно это ID, int с автоинкрементом, нужно назначить этой колонке primary key.
А вообще, лучше почитать немного про SQL, ADO.Net и такие вопросы перестанут возникать. Ну и learn English, конечно.
... << RSDN@Home 1.0 beta 6a >>
Eugene Agafonov on the .NET

 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.