HPC.ru lite - Все форумы
Форум: Программирование для КПК
Тема: C# и .CDB
Страницы: [1] 2 3 4 5 6 7

[Ответить]
admin_vlad2 [23.01.2007 19:07] C# и .CDB:
Добрый день.
Не знаете почему не получается приконнектится к базе данных? Как это правильно сделать? Я уже измучался. Помогите пожалуйста.
------------------------------------------
SqlCeConnection conn = null;

try
{
conn = new SqlCeConnection("Data Source = \\My Documents\\db1.cdb; Password =''";
conn.Open();

SqlCeCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT Russian2 FROM Translator2 WHERE English2='Hello')";

cmd.ExecuteNonQuery();
}
finally
{
conn.Close();
}
-------------------------------------------------------------------------
Выдает "...database may be corrupted..."
admin_vlad2 [28.01.2007 03:36] :
Я думаю использовать Pocket Access, так ка не знаю как пользователь при инсталляции программы получит базу данных установленной на SQL server mobile.

Что за формат SDF? Слышал о нем но не знаю что это
Admin_Vlad [29.01.2007 22:37] :
Ну вот наример я сделаю CAB файл и при инсталляции он будет копировать несколько DLL, один EXE и одмн SDF?
А как сделать SDF если пока список данных у меня в .CDB?
Admin_Vlad [30.01.2007 04:42] :
А их нужно устанавливать?!!!
Где их можно скачать?
inter189 [30.01.2007 09:16] :
в wm5, на сколько мне известно, Pocket Access уже не включается, и установить его не так то просто. Во всяуом случае я не нашел откуда его можно скачать в виде дистриба.

Таким образом тебе одна дорога на
http://www.microsoft.com/sql/editions/sqlmobile/default.mspx
и sdf соответственно. Данные из cdf можно попробовать слить установив Microsoft SQL Server Mobile на эмуляторе с образом виндовс или реальном девайсе, включающими поддержку Pocket Access. Опять же, штатного средства, чтобы перелить данные из одной бд в другую нет. Придется прогу писать отдельно
Admin_Vlad [30.01.2007 09:36] :
У меня WinCE 4.21
Сегодня написал программу которая соединяется с .cdb. Правда пока не получается данные считать. Не могу понять какой второй аргумент в db.Execute(string, out object, int)

Получается, что при инсталляции программы, пользователь должен будет инсталлировать MS SQL Server mobile, запустить программу для создания необходимой базы данных, а потом только саму утилиту.
Никто так делать не будет. Похоже Microsoft очередной раз опозорился.

Abby lingvo 8 для Pocket PC содержит в себе файлы .lsd
Похоже единственный путь делать .txt и шифровать их.
sshd [30.01.2007 10:45] :
нет, это ты должен заранее всё это сделать, а потом включить в дистриб базу уже в нормальном формате.



да, LSD - это вариант...... и никаких баз данных не нужно......
Admin_Vlad [30.01.2007 22:18] :
То есть надо поставить настольную и мобильную версию MS SQL server'а, затем сделать репликацию базы данных, потом, закачать ее на ПК с КПК, включить в дистрибутив .sdf, инсталлирование MS SQL server's и инсталлирование программы.

А .lsd - это формат словарей Abby?Никогда не слыгал ранее об этом формате.
Admin_Vlad [31.01.2007 05:08] :
Программа почти работает осталось пару ньюансов одолеть.
Не подскажите в чем ошибка?

Ошибка "CS1502: The best overloaded method match for 'ADOCE._Connection.Execute(string, out object, int)' has some invalid arguments"
----------------------------------------------------------------------------
Object one = new Object();

ADOCE.Connection objectConn = new ADOCE.Connection();
objectConn.Open("\\My documents\\db.cdb","","",0);

string sSql = "select Russian2 from Translator2 where English2 = 'Hello'";

ADOCE.Recordset objectRS = new ADOCE.Recordset();
objectRS=objectConn.Execute(sSql,one,1);
inter189 [31.01.2007 09:05] :
еще раз:
подавляющее большинство новых девайсов идет с wm5 в котором поддержки Pocket Access попросту нет. Во всяком случае в тех девайсах с wm5 которые попадались мне на глаза

а теперь задумайся над шансами выжить для твоей проги в столь не благоприятных условиях ?
[Ответить]
[Вперед >]