export to access
4 отговора
98 прегледа
export to access
Имам нужда от помощ...
значи проблема е следния - имам една SP на MsSQL, която връща малко таблици. Целта ми е с данните от тези таблици да напълня една Access-ка база.
Цялата работа става със C#.
Първият въпрос е - има ли начин директно (и лесно) от DataSet-а да се бутне в Access-ката база. Самата тя съдържа празни таблици със съвпадащи колони като тези, които връща Stored процедурата.
Ако не може, тогава възниква вторият въпрос.
В момента съм го докарал до използване на DataAdapter с fill и после update. Е, в тази ситуация ми се оплака, че липсва InsertCommand, така че направих да се генерира INSERT заявка динамично според колоните за всяка от таблиците. И задънената улица до която стигнах е, че
cmd.Parameters.Add("@" + dc.ColumnName, dc.ColumnName); // (dc - DataColum)
има и параметри DbType и OdbcType, но по DataColumn-а мога да извадя само DataType, но не и DbType и OdbcType.
Някаква идея в тази ситуация? Ясно е, че всичко трябва да става динамично и не мога да фиксирам типовете.
Благодаря предварително!
значи проблема е следния - имам една SP на MsSQL, която връща малко таблици. Целта ми е с данните от тези таблици да напълня една Access-ка база.
Цялата работа става със C#.
Първият въпрос е - има ли начин директно (и лесно) от DataSet-а да се бутне в Access-ката база. Самата тя съдържа празни таблици със съвпадащи колони като тези, които връща Stored процедурата.
Ако не може, тогава възниква вторият въпрос.
В момента съм го докарал до използване на DataAdapter с fill и после update. Е, в тази ситуация ми се оплака, че липсва InsertCommand, така че направих да се генерира INSERT заявка динамично според колоните за всяка от таблиците. И задънената улица до която стигнах е, че
cmd.Parameters.Add("@" + dc.ColumnName, dc.ColumnName); // (dc - DataColum)
има и параметри DbType и OdbcType, но по DataColumn-а мога да извадя само DataType, но не и DbType и OdbcType.
Някаква идея в тази ситуация? Ясно е, че всичко трябва да става динамично и не мога да фиксирам типовете.
Благодаря предварително!
Re: export to access
Има и overload на конструктора на OleDbParameter(string ParameterName, object ParameterValue) който е не иска DbType.
Правиш си
cmd.Parameters.Add(new OleDbParameter("@" + dc.ColumnName, dc.ColumnName);
и си готов. Не знам дали access-a се оправя. SQLServera си работи добре. Ако му подаваш SqlParameter по този начин.
Правиш си
cmd.Parameters.Add(new OleDbParameter("@" + dc.ColumnName, dc.ColumnName);
и си готов. Не знам дали access-a се оправя. SQLServera си работи добре. Ако му подаваш SqlParameter по този начин.
Редактирано от Blandings Castle на
Re: export to access
Ех, мерси, ама не върши работа. По принцип точно такова ми беше решението и ми даваше грешката с типовете.
В момента съм го докарал до хамалски insert-и използвайки fill и може би бачка, но нещо колоните в access-а са калпави и не мога да разбера още
Ако открия нещо, което върши добра работа може да го споделя, ако някой се интересува:)
В момента съм го докарал до хамалски insert-и използвайки fill и може би бачка, но нещо колоните в access-а са калпави и не мога да разбера още
Ако открия нещо, което върши добра работа може да го споделя, ако някой се интересува:)
Re: export to access
В ADO.NET 2.0 има е една екстра доста мощна BulkCopy, дето мисля че прави точно това, ама не съм сигурен дали може в access
ERASE RACISM
ERASE RACISM