Connecting to SQL Azure in Server Explorer returns error "unknown property PrimaryFilePath" - visual-studio-2010

When adding a new data connection in Server Explorer in VS 2010 (with Azure SDK),
I can successfully "Test Connection" but when adding it I get this alert box:
Unable to add data connection.
Failed to retrieve data for this request.
unknown property PrimaryFilePath
(Azure SQL server, i.e. xxxxxxxx.database.windows.net)
Anyone experienced this before?
Thanks!
Edit: It seems to have to do with collation...
...When using SQL_Latin1_General_CP1_CI_AS it works fine but the following does not work:
Finnish_Swedish_CS_AS
Finnish_Swedish_100_CI_AS
Finnish_Swedish_CI_AS
Any suggestions?

I came across the same issue using SSDT for VS 2015. I changed the data provider to ".NET Framework Data Provider for OLE DB" on the Change data Source window and it worked.

The default collation for character data in SQL Azure databases is SQL_Latin1_General_CP1_CI_AS. The server and database level collations are not configurable in SQL Azure. However, you can use a collation of your choice at the column and expression level.
I believe your problem is described here in this blog: Working With Collations In SQL Azure.
This blog article will show you how.

I've got the error "unknown property PrimaryFilePath" when tried to connect to Azure DB from VS 2015, but succeeded when connected from VS 2019.

Related

Hw to get rid of ORA-01008

While trying to code in VS 2019 (making utility to select data from Oracle DB) I got stuck.
I created DataSet with TableAdapter to it Pic0
In a query I must enter value for APPLICATION_NUMBER field, and when I "Execute Query" everything works fine and I get result (see Pic1)Pic1
But when I try to "Preview Data", I got error "ORA-01008: not all variables bound"
(see Pic2)
Just for info: it is Oracle 9i I am trying to connect to, I am using .NET Framework Data Provider for OLE DB because if I use .NET Framework Data Provider for Oracle it says "Connections to this server version are no longer supported".
Would appreciate much any useful info.
I tried to replace :PARAM2 with '&PARAM2' but with no luck.

Unable to connect to Oracle using SSMA for Oracle

I'm trying use Microsoft SSMA for Oracle to migrate a database onto Azure SQL, but I can't get it going. I've double checked the server name, server port, Oracle SID, password... everything. No matter the type of entry screen I use, I can't get it to connect to the on-premise Oracle instance.
I'm pretty sure the login information is all correct, and I should have a working connector to Oracle since I connect to it from TOAD on a daily basis. I tried installing Oracle libraries per previous posts but not sure if I did it successfully because the issues still remains.
What are the troubleshooting steps I should take in order to make this work?
Log in screen:
      
Error 1:
Unable to find specified provider.
Compatible Oracle Data Access Connectivity libraries were not found on the machine. You can install them from Oracle product media or download it from Oracle web site.
Error 2:
Connection to Oracle failed.
ORA-01017: invalid username/password; logon denied
Error 3:
Connection to Oracle failed.
Network Naming: No LDAP server detected or configured
After a few more days of debugging, I was finally able to get SSMA to work. This answer helps to document my solution for personal use, as well as hopefully answer anyone else's question in the future.
After looking at the list of prerequisites to have SSMA running, I saw that I needed to have a correct Oracle client running. After some internal discussion, it was likely that the Oracle client SSMA needed was different than the one my computer already had for TOAD. The .Net provider for the TOAD connectors was probably not useful for SSMA.
We run Oracle 11g but I had to install Oracle 12c because 11g did not support Windows 10 apparently. Not too much of a roadblock here.
I found this guide to install Oracle client 12c pretty helpful. Shoutout to my alma mater.
Unfortunately the installer kept freezer, but using this former post, I was able to bypass it with the windows command:
setup.exe -ignoreprereq -J"-Doracle.install.client.validate.clientSupportedOSCheck=false"
After that, I saw different error messages when trying to connect SSMA. I kept trying different options with my logins until it worked. Provider: OLEDB Provider, Mode: Standard.
After being granted the appropriate permissions, I was finally able to access our internal tables and objects.
It was a pretty annoying question with a lot of rabbit holes along the way, but it was definitely worth it, being able to translate all our Oracle schemas to Azure SQL with a few clicks. Hope this helps!
Make sure to validate all steps mentioned below before going to install Microsoft SQL Server Migration Assistant for Oracle.
Make sure you have already installed SQL Server instance that will host the migrated database. Also keep in mind that you are not installing SQL Server Express edition to host the migrated database.
You must have sysadmin account to install SQL Server Migration Assistant for Oracle.
Make sure to install SSMA for Oracle on the server that will host newly migrated database on SQL Server.
It is recommended to install Oracle client software on your target system where SQL Server Instance is running.
Make sure your windows server has Microsoft Windows Installer 3.1 or a later version. Port 1434 should be open.
For more details, You can reference: How to Install SSMA for Oracle to Migrate Oracle Database to SQL Server.
Here's the Azure Database Migration Guide: Migrate Oracle to Azure SQL Database. As you prepare for migrating to the cloud, verify that your source environment is supported and that you have addressed any prerequisites. This will help to ensure an efficient and successful migration.
Connect to Oracle with Oracle Client Provider.
Azure also has other way can help you migrate Oracle database to Azure SQL database, such as with Azure Data Factory. If you still has the connect error. I think you can try to use it. Please reference this tutorial: Copy data from and to Oracle by using Azure Data Factory.
Hope this helps.

Azure Data Studio "unknown property IsColumnSet"

I'm trying to use Azure Data Studio to connect to a SQL Server database.
I am able to connect to the database and view the list of objects (tables, stored procedures, etc.).
When I click to expand the "Columns" group inside a table, I get the following error from Azure Data Studio:
unknown property IsColumnSet
I am able to expand the Keys, Constraints, Triggers, Indexes, etc. but I can't expand the Columns.
I am able to right-click and query the table to see all the columns, but I'd like to know what to do to get the columns list expanded in the server side bar tree.
I tried uninstalling and reinstalling Azure Data Studio. No luck.
FWIW, while this error persists in the UI when drilling down a table to view the columns, you can still get this information via SQL like so:
select * from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = 'someTable';
Verified this works with ADS on Mac, connected to SQL Server 2005.
Apparently Azure Data Services "only officially supports SQL Server 2014+" and this problem would seem to be due to lack of support for older servers.
https://github.com/Microsoft/azuredatastudio/issues/3774
So although they might improve the error message to indicate lack of support, I think otherwise we're out of luck. A long-overdue server upgrade is in order methinks...

Visual Studio 2015 Web Test with Data from Oracle Database

I'm writing a webtest in Visual Studio 2015. The webtest I currently have allows me to run a static test.
I would like to spice things up and therefore add more realistic data. The data I want to use is stored in an Oracle Database 12c.
So I'm trying to add a new Data Source to the webtest. I enter the TNSName, Username and Password for which I would like to connect and test the connection. The connection can be established, but the list with tables I can choose from is empty.
Connecting to the same Database using the "Server Explorer" in Visual Studio 2015 works. And using this method I do get the full list of Tables contained in that Database. I can even query any of the tables.
So how can I fix my webtest to have access to a specific database table (row)?
If you can connect to the DB but you don't see the needed tables it should be a permission issue.
Do you use same credentials from "VS->Server Explorer" to connect to the DB?
If this is not the case, do you have more than one Oracle clients installed in your system? If yes, then most probably, the DataSource control uses the wrong client and the "Server Explorer" the correct one.
Are you using synonyms as proxies for your tables (e.g. for permission reasons)? synonyms will not show up when querying the list of tables that the user can access. They need be queried separately. When only the available tables are queried but not the vendor specific aliases this might lead to an empty list.
You need to install ODAC for Visual Studio 2015 to view the database tables. Here is the link for it.
http://www.oracle.com/technetwork/topics/dotnet/downloads/odacmsidownload-2745497.html

What do the ASP.NET Universal Providers enable that the default sql providers don't?

Inside the readme file of the ASP.NET Universal providers NuGet package is this quote
The SqlMembershipProvider, SqlRoleProvider, SqlProfileProvider classes that shipped in ASP.NET through version 4 support only Microsoft SQL Server and Microsoft SQL Server Express. They do not support newer offerings such as Microsoft SQL Azure and Microsoft SQL Server Compact.
However, when I run the custom aspnet_regsql scripts for Sql Azure http://support.microsoft.com/kb/2006191 and then point my web.config to the SQL Azure database, ASP.NET membership seems to work correctly.
Can anyone tell me what exactly doesn't work with SQL Azure, that the universal providers enable?
The main difference, as far as I can tell, is that when you connect to Sql Azure you need to implement retry logic. The original providers won't retry when a connection error occurs and this will happen from time to time with SQL Azure.
Also, the original providers don't raise exceptions containing the full SQL error codes so if your database is being throttled you won't know which throttling rule is being applied. At least this is what the SQL Azure support team tell me - I'm currently in the process of upgrading for this reason.
A note of caution: the Universal Providers seem to use a different database schema to the original providers, so you will need to migrate membership data. If you are starting a new project it will be much easier to change these providers before you go live with real users!
the universal providers enable you to use asp.net membership system on sqlazure and also make the implementation sql agnostic. you can take the same app using universal providers and change the datasource to be sql server/sqlexpress/sqlce/localdb etc

Resources