Azure Mobile Services (DB) - database

I came from Parse to Azure and faced the problem with Azure Mobile Services. When I'm trying to setup data tables in the browser it is possible to add attributes with 4 types only, such as String, Number, Date and Boolean. It is not enough for me.
Can anyone help me how can I obtain other types (BLOB, Pointer, etc.)?
I'm new to Azure and working with OSX.

The best way to manage blobs is through azure blob storage you can find how to do this through https://azure.microsoft.com/en-us/documentation/articles/storage-ios-how-to-use-blob-storage/
The best way to manage the tables is through Microsoft Management Studio and connect it to Azure SQL Database.

If you are coming from Parse, why not continue to use Parse?
See: https://azure.microsoft.com/en-us/blog/azure-welcomes-parse-developers/
Azure Mobile Apps / Services both deal with SQL Database Tables - if you are on an ASP.NET backend, you can support anything that Entity Framework supports. However, SQL databases tend to be more involved than most Parse developers are used to.
If you are just switching, but want to use the same development experience, just continue using Parse Server.

Related

How can I establish a connection between my SQL Server 2017 database with a SaaS-based server?

I use a SQL Server 2017 database to perform ad-hoc data analytics activities to support my team. In order to source data from various databases, I either mount a backup on my environment (if the target DB holding the data I’m after is also SQL Server) or use linked servers to establish a direct connection (where I need data from Oracle or iSeries).
More recently though I’m coming across SaaS based systems and was wondering if there’s any way I can establish a direct connection between my database and the SaaS database? I’m not sure whether SSIS packages will do the trick. Any pointers would be gratefully appreciated as I’m struggling to get the right, scalable solution for this problem!
Data integration with SaaS solutions is a mixed bag. You have to discover on a case-by-case basis what integration or data export functionality each SaaS application has. Few will allow any kind of direct database access, but you might find an ETL tool that has pretty broad connectivity.
In Azure you can look at Logic Apps Connectors, and Power Query Connectors. Or products like Boomi. Which have connectors for many popular SaaS Applications.

What method is best for creating a online web accessible database?

I have been looking for a way to put a database like an microsoft access relational database shared among many people. You used to be able to create a web app but that's no longer supported.
I've heard powerapps is a solution but it looks like it is to be used only by phones or tablets?
I already have a office 365 account with access to multiple applications. Is there anything that can be used to create what I am asking using those services?
Or do I need to look into SQL databases?
You are correct that classic Microsoft Access is not web/browser based (after an attempt was stopped by Microsoft).
A browser based web database requires a back end database that supports the front end web server. In the Microsoft family that would be SQL Server behind IIS. This is all mainstream stuff - but an order of magnitude more complicated than classic Access. There are of course competing brands besides Microsoft - the most well known being the LAMP stack.
There exists a group of web database services, as an alternative: Knack, QuickBase, Zoho, etc. With these one must live with the User Interface and feature set they offer.
For a windows application (i.e. Access) with geographically separated users one would rely on the terminal services technology by deploying a Remote Desktop Server. This is primarily oriented towards internal users - not public facing.

Migrate hundreds of databases to Azure elastic database pool

I'm aware of the various options in place for migrating a single database up to Azure. My problem is that these all only seem to cater for a single database at a time. However, I have a db per tenant model with over 2000 databases to migrate and not a lot of time to play with.
Can anyone point me in towards the best (ie fastest) way of doint this?
In the end we accomplished this with Powershell and the Azure API. Essentially batch creating bacpacs on the source server, uploading them to blob storage then importing them into Azure SQL server pools.
If I was facing the same challenge now I'd take a look at the Azure Database Migration Service - https://azure.microsoft.com/en-gb/services/database-migration/
I am also facing this problem and am going down the route of using the Visual Studio data compare tool.
All my tenant databases have the same schema so I made an empty template database in Azure, and just use the CREATE AS COPY command to make a new one each time ready for receiving the migration.
Then I ask Visual Studio to compare the empty database with the live database and automatically insert the data for me.
Seems to be working well so far, there's very little manual steps needed and it doesn't involve using the Azure Portal, or blob storage or creating databases outside of the elastic pool which is great. But the overall time will be slow to migrate data for all the databases.

Can I publish on Azure a web application with a non-relational database?

As I know SQL Azure uses a relational db, on the contrary Amazon SimpleDB is a non-relational one.
Ipotetically can I publish a web application with a non-relational database simply with the "publish to Win Azure" button, as I did with mine? Will Azure convert my db without any problem?
And more, are there any cases where I cannot use the "publish to Win Azure" button?
You'd have to include the database engine along with your deployment. For instance, you can run with MongoDB as your NoSQL database. You can download the Mongodb+Azure project here.
There's also Windows Azure Table Storage, which is a non-relational, schemaless data store with 100TB of capacity per storage account. The Windows Azure Platform Training Kit has a few labs around Storage that will help you understand how to use it.
In either case, there's no magic conversion from one data format to another.
For a non-relational data store with Windows Azure, you should consider Table Storage. Windows Azure Table Storage is the NoSQL storage option with Windows Azure.
Windows Azure does not "convert" any database or anything like that.

Hosting an Access DB

So I'm inexperienced in hosting DB's and I've always had the luxury of someone else getting the db setup.
I was going to help a friend out with getting a webpage setup, I've got experience in Asp.Net MVC so I'm going with that. They want to setup a search page to query a db and display the results. My question I have is in getting the DB setup and hosted. They currently just have the Access DB on a local computer. There is basically only one table that would need to be queried for the search.
What is the best approach to getting this table/db accessible? They would like to keep the main copy of the db on the local machine, so copying the entire db over to the hosted site would be time consuming, could the lone table needed be solely copied to the host? Should I try to convince them to make changes on the hosted db and just make copies of that for their local machines? Any suggestions are welcome, Again I'm a total noob when it comes to hosting databases.
Thanks
Added: They are using a MS Access 2000, and the page will have access restrictions. Thanks for the responses.
How about SQL Server Express? I think you can do a remote connect from Access and just push the data over from Access.
I wouldn't use Access on a web server in any case.
I would strongly recommend against access from web work, its just not designed for it and given that SQL server express is free there is no reason not to give it a go.
You can migrate the data over by using the SQL server upsizing wizard, here is a link for help on using that feature
http://support.microsoft.com/kb/237980
It depends on what you mean by web work? Access 2010 can build scalable browser neutral web applications. They can scale to 1000's to users. In fact, you can even park the web sites on Microsoft's new cloud hosting options, and scale out to as many users as you need.
Here is a video of an application I wrote in access 2010. Note how at the half way I run the same application including the Access forms in a standard web browser. This application was built 100% inside of the Access client. The end result needs no ActiveX or Silverlight to run.
http://www.youtube.com/watch?v=AU4mH0jPntI
So, the above shows that access can now be used to build scale web sites (you can ignore the confusing answers by the other two posters here they are not quite up to speed on how access works or functions).
However, for your case, I would continue to have the access database on the desktop. You can simply link to tables that are hosted on the web server. Those tables can exist in MySql, or sql server. As long as the web site supports external ODBC connections (many do), then you can thus have the desktop application use the live data from the web server. If connections to the live data at all times is a issue, then you could certainly setup something to send up new records (or the whole table) on some kind of interval or perhaps the reverse, and pull down new records on a interval from the web site (depends which way you need to go). So, connecting to MySql or sql server is quite easy as long as the web hosting and site permits external ODBC connections. I do this all the time, and it works quite well.
As mentioned, new for access 2010 is web site building ability but that does requite Access Web services running on SharePoint.
You don't need to upgrade to Access 2010. One option is to use the EQL Data plugin to sync the database up to the server. Then you can write an asp.net, php, or whatever application that queries the table using the EQL API and prints the results however you want. This kb article describes how to use the EQL API from a web app.
The nice thing is that the database is still totally usable (and at full speed) even when you're not online, and then you can sync the new data up to the web occasionally. It only uploads the changes, not the entire database every time, so it's fast.
Disclaimer: I work at EQL Data so I'm a bit biased. But this kind of use case is the whole reason the company exists.

Resources