Synching SQL Server Data On A Pocket PC And Windows?
Jan 30, 2008
I asked this question on another forum, and it was suggested that using SQL Server might be the way to go.
What I would like to do is create a database that can store detailed employee payroll information for workshop production. Included in this db would be employee info, job details, hours worked, pay rate, and so on and so forth. That will probably be the relatively easy part.
I would like to allow supervisors (job coaches) to enter this data on a Pocket PC (windows mobile) device, and then be able to synchronize the pocket pc to a workstation, allowing their data to be uploaded to the main database at the end of the day.
Can that be done using SQL Server as both the main networked database as well as having it (or a lite version of some sort) installed on a Pocket PC for synchronization purposes as described above?
Client is running X- version of application and corresponding database size is huge. Now client's vendor is releasing Y-version of same application with many database schema changes (like new tables added, new columns added, renamed existing columns and etc) To upgrade to the Y-version, vendor is suggesting to my client that down the system and do the upgrade for application/database to Y-version. We are sure that this process will take days together to upgrade to the Y-version. My client is not ready to down the system for that long. So we are trying to find the solution with minimal down time.The approach we are thinking is,Â
1) Create the replicated database to another server (server2) from production server(server1) using golden gate with X-version
2) Create new tables/schema updated tables from Y-version database on same server1. Here for  Updated schema tables we are planning to use the name <table_name_Y_version> as the same table name exists in X-version.
3)With above 2 steps, golden gate replicate the changes from production to server1 and server1 will have the new Y-version table schema (with different concatenate name ' _Y_version'). BTW , there is no affect for the production
4) At this stage we are planning to find best approach, to fill the '<table_name>_Y_version' from X-version tables. two challenges here a) all data needs to be moved to Y-version tables b) they have to sync data in real time.
we thought of going to
a) ssis package to pump the data to Y-version tables, but real time data will not sync.
b) trigger based technique, previous experience said, lot of load
I have a database on a sql server 2005, and I would like to migrate data from sql server 2005 to local Pocket PC. How can I create a database on local Pocket PC and how to migrate the data from sql server 2005 to local Pocket PC? The operating system on Pocket PC is Microsoft® Windows Mobile„¢ 2003 Second Edition. Thanks in advance.
I'm new to this forum and also new to Visual Studio 2005 .NET.
I'm going to develop a pocket pc(windows mobile 2005) application which needs to save some data introduced by the user.Later that data should be syncronized with MS SQL Server database.
The application is going to be developed using Visual Studio 2005 with c#.
So I'm doubting wich is the best way of syncronising the data between Pocket Pc and a Desktop PC.Should i use MS SQL Server Mobile(RDA,Merge Replication) or XML(Xml Web Services) would help me better?Or is there any other better way of data syncronization/storage?
Could anyone help me,or post some links + code samples,please?
I have a Pocket PC application (VS2005, SQLCE 2005, Windows Moblile 5.0, SQL Server 2000) that can pull data with no problem but produces an error when an RDA push is attempted. The error message is: Error Code: 80072EE4 Minor Err: 28037. The information in TechNet has description of : A request to send data to the computer running IIS has failed. For more information, see HRESULT. It does produce a log in the folder for SQLCE 3.0 and has the following message: Hr=80070585 ERR:REQUEST NOT QUEUED for ulRSCBId = -1. Not sure if this means anything because I can't find much information on it. Anyone have any ideas on what this could be? Do I display the HRESULT the message mentions in Visual Studio debug? We have this working on our development server so I am not sure what is different here.
Does SQL mobile require port 1433 to be open for RDA? I was under the impression that all synching occured through port 80. But when 1433 is restricted a connection cannot be completed.
I may be missing something really simple. My understanding of tcp/ip networking concepts are not very solid.
We've just started using AlwaysOn High Availability and run into a wierd issue. I have 1 particular database that is not syncing data to the secondary replica. But when i look at all the dashboards, everything is green, they all say synchronised - but if I query the data they are not.
The database has additional sql transactional 1 way replication a different server which i was wondering if was causing any problems, but it's working ok.
I'm just wondering if there's any other more detailed logs i can check to see why the data is not flowing. The availability dashboard and it's event log all says ok.
how do i connect to sql server with pocket pc2003 se emulator.it gives me the sql exception all the time.i tried to install virtual machine network adapter but result is same.Am i missing something?
I am a total beginner to Pocket PC, and a 2-month beginner to SQL Server 2005 and Visual Studio 2005. I made a database Pillbox.mdf, and wrote a Windows Forms program to access it. It's really easy. I just added a Data Source, chose tables and Stored Procedures, and dragged them onto my forms. It automatically created adapter classes and a DataGrid for me.
Next, I wanted to do the same thing for Pocket PC. I did the same drag and drop thing, and was happy to see the empty DataGrid in the emulator (design-time) form. From here on, trouble. When I ran it, it said it could not connect.
So some questions:
1) Does my connection string have to change? It has 3 parts: machine name, database name, and security spec. It specifies my machine name. Is that ok? Is it known by the Pocket PC, or do I have to specify http something? Does my machine have to change any settings to become a "server"? It's just a standalone PC with no network. I understand the emulator chooses to pretend that it's not "on" my computer. Is the database name known by the Pocket PC? (Same type of question.) And is Windows authentication ok on a Pocket PC? Or must I create a name/password pair on SQL server?
2) When I went to modify my connection string, I noticed a setting to specify the Data source. For SQL Server 2005, it asks me for a dbo, but for SQL Server Mobile, it asks me for a *.sdf file. What type of file is this? Is there a way to generate this from my other database? Is it not possible to have the the Pocket PC app point to the same database as the Windows app? Oh... does the sdf represent the Pocket PC's local database? If so, then my question is just how to populate it. But I will also have to update the main database at some point. I guess I'm confused about how Pocket PC's are supposed to work.
3) Do I have to deploy SQL CE or something? I think I read that Visual Studio does it automatically. It's a bit hard reading blogs because many comments talk about things that are now contained in VS. One blog was talking about 7 dlls that need to be downloaded to the Pocket PC.
4) My application just has to get a table, store it on the Pocket PC, and allow the user to modify and update records. The bandwidth should be low, as the table is small and updates should not be frequent. Is this a reasonable design? What I am asking is if it's ok to have direct database access, or if I should package up the data in some custom format, and use a Web service to pass the data back and forth. I have read and understood articles why you should not pass a Dataset in a web service, but the point was just that web services can be interoperable, so why spoil that with MS-only Datasets. In my case, I just want to get this simple app up and running quickly.
Hi. I have a problem. I'm working at the moment on application witch should write and read data from sql server. The application should work on windows mobile devices. I'm linking this code to event on a button:
cmd = new SqlCommand(string.Format(insertString, "MojDom", "Kuba", 15), sqlCon); cmd.ExecuteNonQuery();
if (sqlCon.State == ConnectionState.Open) sqlCon.Close();
}
and on line sqlCon.Open() i get exception:
Code Block
System.Data.SqlClient.SqlException was unhandled Message="SqlException" Class=20 LineNumber=0 Number=6 Procedure="ConnectionOpen (Connect())." Server="192.168.54.149\SQLEXPRESS" Source=".Net SqlClient Data Provider" State=0 StackTrace: at System.Data.SqlClient.SqlConnection.OnError() at System.Data.SqlClient.SqlInternalConnection.OnError() at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() at System.Data.SqlClient.TdsParser.Connect() at System.Data.SqlClient.SqlInternalConnection.OpenAndLogin() at System.Data.SqlClient.SqlInternalConnection..ctor() at System.Data.SqlClient.SqlConnection.Open() at AIHouse.FormMain.menuItemSettings_Click() at System.Windows.Forms.MenuItem.OnClick() at System.Windows.Forms.Menu.ProcessMnuProc() at System.Windows.Forms.Form.WnProc() at System.Windows.Forms.Control._InternalWnProc() at Microsoft.AGL.Forms.EVL.EnterMainLoop() at System.Windows.Forms.Application.Run() at AIHouse.Program.Main() And when im using exactly the same code in windows console application everytihng works fine when i run it on pc with sql server and emulator, or other pc connect to network. I'm working on emulator of Pocket PC 2003, I've "put" it in cardle and the emulated device has connection to my pc and internet, the firewall is off.
I really dont have any idea why it's not working.
sorry for my english, but its not my foreign language.
I have a sql server ce db file that I use in my pocket pc application. It seems to be working until I try to edit my .sdf file in SQL Server (2005) Managment Studio. After this I cannot open modified file in my application.
I receive native exception error when I call Open method for Connection object: ExceptionCode: 0xc0000005 ExceptionAddress: 0x03f8aaac Reading: 0x00000010
When I edit .sdf file in another pc it's all working.
My config is: windows vista business .net compact framework 2.0 sp2 sql server 2005 sql server 2005 compact edition sql server 2005 compact edition server tools sql server 2005 compact edition tools for visual studio 2005
Hi All, this system is scheduled to go live in near to a day... but i have hit an issue when switching on SSL. Any help would be greatly appreciated.
Device Env: Windows Mobile 5.0 + Messaging and Security Feature Pack SQL Server Mobile 2005.
Merge replication works fine without SSL. After running the Configure Web Sync wizzard to setup SSL merge replication no longer works. Note i checked using pocket IE by browsing to https://mycompany.com/pub/sqlcesa30.dll?diag and all worked fine. There was no prompt saying the cert was bad etc.
The certificate is a: Equifax secure global ebusiness CA-1 cert. Signature algorithm md5RSA public key RSA(1024 bits) thumbprint algorithm sha1
Stacktrace given is: - ex {"A request to send data to the computer running IIS has failed. For more information, see HRESULT."} System.Data.SqlServerCe.SqlCeException - Errors {System.Data.SqlServerCe.SqlCeErrorCollection} System.Data.SqlServerCe.SqlCeErrorCollection Count 1 Integer Item In order to evaluate an indexed property, the property must be qualified and the arguments must be explicitly supplied by the user. System.Data.SqlServerCe.SqlCeError HResult -2147012858 Integer InnerException Nothing System.Exception Message "A request to send data to the computer running IIS has failed. For more information, see HRESULT." String NativeError 28037 Integer Source "Microsoft SQL Server 2005 Mobile Edition" String StackTrace "at System.Data.SqlServerCe.NativeMethods.CheckHRESULT() at System.Data.SqlServerCe.SqlCeReplication.Synchronize() at MyApp.Helper.Replication.SynchronizeInit() at MyApp.CallSynchronize() at System.Windows.Forms.Control.OnGotFocus() at System.Windows.Forms.Control.WnProc() at System.Windows.Forms.ContainerControl.WnProc() at System.Windows.Forms.Form.WnProc() at System.Windows.Forms.Control._InternalWnProc() at Microsoft.AGL.Forms.EVL.EnterMainLoop() at System.Windows.Forms.Application.Run() at MyApp.Program.Main()
'Server: Msg 7416, Level 16, State 2, Line 1 Access to the remote server is denied because no login-mapping exists'
when i run the below code,
SELECT a.* from OPENROWSET('SQLOLEDB', 'Data Source=SA3KNX; Integrated Security=SSPI; Initial Catalog=[Mis Mart]; Persist Security Info=False; Initial Catalog=Mis Mart;', 'select * from [Mis Mart].dbo.Dim_Cus') as a
Can you please help resolve this. The server SA3KNX uses windows authentication and I run this code in another serer 'SEBDTD3' which uses SQL server authentication. How can i retrieve data from a server that uses windows authentication.
Hi, I am developing an application for pocket pc 2003 smart device which utilizes synchronization between SQL CE 2005 and SQL server 2005 by means of REMOTE DATA ACCESS method call PULL( ) and PUSH( ) but currently these are the details of the error Im encountering when PULL( ) method is called:
Error code: -2147467259 Descripion: An error occured on the computer running IIS.Restart the IIS server.
Minor error: 28022 Source: SQL server CE Currently Im developing this application as a final project and due to some limitations I have setup my pc to act as the SQL server and the IIS server both on the same machine.
I just upgraded from Windows XP Pro to Windows Vista Bussiness and tried to reinstall SQL Server 2005 Developers Edition. After the installation i downloaded (using microsoft windows update) and installed all the service packs for sql and vista available.
My problem is when i open sql server management studio and try to connect to my default instance using windows authentication and database engine, an 18456 error occurs.
I enabled all the protocols and all the ports I disabled windows firewall and antivirus (eset nod32) I installed all service packs available I have also installed Visual Studio 2005 without installing sqlexpress
But nothing happens!
Please i am very desperate, any information will be gratefully accepted.
This is my installation Information
Code Snippet
Microsoft SQL Server Management Studio 9.00.3042.00 Microsoft Analysis Services Client Tools 2005.090.3042.00 Microsoft Data Access Components (MDAC) 6.0.6001.18000 (longhorn_rtm.080118-1840) Microsoft MSXML 3.0 5.0 6.0 Microsoft Internet Explorer 7.0.6001.18000 Microsoft .NET Framework 2.0.50727.1434 Operating System 6.0.6001
I'm trying to run a test from my test environment which is a non-domain Windows 2000 server to access my domain 2003 with SQL2005. I have install 2005 tools to try to access the SQL server.
- I have try following the KB265808 - no success. - Reading alot of blogs and it seems all are pointing to the same problem. "Remote access" but the settign is enabled.Error Message:
TITLE: Connect to Server ------------------------------
An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server) (Microsoft SQL Server, Error: 53)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=53&LinkId=20476
Question: Could Windows 2003 security be blocking access? I'm using sa account to access.
Also, sa account does not seems to work for remote access. It is ok when accessing locally.
I am developing an applicaiton through which, i want to print from pocket pc emulator 2003. I am using PrinterCE.NETCF SDK to do this task. I am able to print from my applicaiton like we do in ASP (Printing one line at a time). In PrinterCE, there is an option of printing the output to a file. But, I am not able to find how we do it.
So, I want to know how we can print the output through PrinterCe into a file. Can anybody help me??
Hi to all. I have a windows ce mssqlserver 2000 version. I have writted a java application and i needed a database connection. I wish a driver for execute the connection to mssql server 2000 into pocket pc.
I'm a developer of VB.NET mobile applications at work. We have used Access in the past, and manually pushed flat files to and from the scanner. We are now exploring SQL CE.
Trouble is, I am having a difficult time figuring out how to open SQL CE databases on the Pocket PC emulator. I've worked more on the middleware programs in the past - and have just dealt with ADO.NET connection strings - not the actual development on the scanner itself.
I am try to figure out how to actually connect to SQL Server CE on the Pocket PC 2003 SE emulator.
When I deploy the application on the emulator, it installs SQL Server CE onto the emulator. However, I'm not sure how to install the sample database (starting off with Northwind.sdf for testing purposes) onto the emulator. I'm also not positive the connection string is correct - as it seems to be different than typical ADO.NET.
Here's my code (for connecting to the database) so far.
Code Snippet
Public Class SampleInventorySystem
Private _conn As SqlCeConnection Public Sub New()
' This call is required by the Windows Form Designer. InitializeComponent()
_conn = New SqlCeConnection("Data Source = .Northwind.sdf") 'This is one of 'many connection strings I've tried
End Sub Private Sub SampleInventorySystem_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
_conn.Open() Catch ex As Exception MessageBox.Show("Error opening database", "Error") End Try
End Sub
End Class When I deploy the application, the Try Catch block catches the error "Error Opening Database". I've also tried putting the full path for the connection string. Is there a folder which I should directly put the .sdf file into the emulator - similar to the folder directory of the scanner? (i.e. Storage Card/...)
I have developed an application using visual studio 2005 and I am trying to figure out how to store the data on the pda and sync it with a dadabase on the pc. we have a database server but it is only have sql server 2000. i have only been able to find instruction for sqlserver 2005. can anyone help.
When I try to do a pull using a view I'm getting the following error message:
€œThe query cannot be tracked. There might not be a primary key, or the query might involve multiple tables. [ Query string = SELECT * FROM DATABASE_NAME.viewname ]€?
but when I do a select col1 from view I get my data. The view has some inner joins included in it, could that be the issue?
NOTE: this is from my handheld device, its not SQL Server related. I posted this earlier in this forum but it was moved to SQL Server.
I get the error on my handheld device and handheld device only
when i run it i keep on getting the error: The SQL Mobile Subscription already exists. Publisher, PublisherDatabase, and Publication for this subscription should be different from any existing subscription.
However, i can still view the contents of the datagrid that refers to the database subscription.
1. What should i do in order to stop getting the error above? 2. If i edit the contents of the datagrid in the pocket pc app how will i update the replication in the sql server? thanks
hi...! I'm creating a small device application using visual studio.NET 2003. Is it possible to get a sql server ce database file (.sdf) that i created at the pocket pc emulator to my desktop pc ? If that's possible, then can you tell me how to do that ??