Monday, October 17, 2016

[01000][unixODBC][Driver Manager]Can't open lib

I was testing unixODBC configuration to connect to SQLServer Database and received below error message

$ isql -v test_ds test_username test_password
[01000][unixODBC][Driver Manager]Can't open lib '/u01/boxi/app/testsrv/sap_bobj/enterprise_xi40/linux_x64/odbc/lib/CRsqls24.so' : file not found
[ISQL]ERROR: Could not SQLConnect


It looks like path does not exists, lets verify

ls: cannot access /u01/boxi/app/testsrv/sap_bobj/enterprise_xi40/linux_x64/odbc/lib/CRsqls24.so: No such file or directory

The patch does not exist, so update the correct path in odbc.ini and ran “isql –v” to test the connectivity

$ isql -v test_ds test_username test_password
[01000][unixODBC][Driver Manager]Can't open lib '/u01/boxi/app/testsrv/sap_bobj/enterprise_xi40/linux_x64/odbc/7.0.1/lib/CRsqls26.so' : file not found
[ISQL]ERROR: Could not SQLConnect


After updating correct library path, I still see same error. It looks like the environment variables might not set properly. I have verified the LD_LIBRARY_PATH and I see that path does not have right lib info.

After updating LD_LIBRARY_PATH with right library path I was able to connect successfully.

$ isql -v test_ds test_username test_password 
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL> quit

Regards,
Satishbabu Gunukula


Friday, October 7, 2016

Error converting data type varchar to numeric

I was working on an ETL load and I come across below error when loading data from one table another table.

Error converting data type varchar to numeric

I see that the source table has data type VARCHAR and Target table has data type INTEGER

Source Table: Employee_X
EMPLOYEE_ID VARCHAR(50)
EMPLOYEE_NAME VARCHAR(50)
COSTCODE VARCHAR(50)

Target Table: Employee_Y
EMPLOYEE_ID INT
EMPLOYEE_NAME VARCHAR2 (50)
COSTCODE INT

I have used CAST function in the insert command and able to load data successfully

Insert into Employee_Y (EMPLOYEE_ID, EMPLOYEE_NAME, COSTCODE)
SELECT cast(EMPLOYEE _ID as INT) as EMPLOYEE_ID,
               EMPLOYEE_NAME,
               cast(COSTCODE as INT) as COSTCODE,
FROM Employee_X;

Regards
Satishbabu Gunukula


Wednesday, February 17, 2016

VIEW SERVER STATE permission was denied on object ‘server’, database ‘master’.

With one of the application I have seen below error when working with SQL Server

VIEW SERVER STATE permission was denied on object ‘server’, database ‘master’ ( Microsoft SQL Server , Error: 300)

The issue is user don’t have VIEW SERVER STATE permission. Note that this will allow an auditing process to view all data or all database states on the instance of SQL Server.

The below command should solve the issue, but before you grant make sure you understand the implications of granting the below permission.

USE MASTER
GO
GRANT VIEW SERVER STATE TO <username>


Regards,
Satishbabu Gunukula



Wednesday, September 30, 2015

The cluster resource 'SQL Server (SQL2014)' could not be brought online due to an error bringing the dependency resource 'SQL Network Name (SQL2014)'


Users will face this common issue during SQL Server Failover Cluster installation. Note that SQL Server Engine service is always dependent on Network Name resource. The network resource failure can result the SQL Server resource not coming online.

User may see below messages in system log

Cluster network name resource 'SQL Network Name (SQL2014)' failed to create its associated computer object in domain sqlserver-expert.com' during: Resource online.

The text for the associated error code is: Access is denied.

Please work with your domain administrator to ensure that:
- The cluster identity 'SQL2014$' has Create Computer Objects permissions. By default all computer
objects are created in the same container as the cluster identity 'SQL2014$'.
- The quota for computer objects has not been reached.
- If there is an existing computer object, verify the Cluster Identity 'SQL2014$' has 'Full Control' permission to that computer object using the Active Directory Users and Computers tool.

The main cause for this error is insufficient permission to create computer objects. You have two options to resolve this error.

1. Ask your Windows Admin to grant permission “Read all properties” and “Create Computer Objects to the CNO via the container.

Or

2. Ask your Windows Admin to create required computer objects.

You can refer below link for more info

http://blogs.msdn.com/b/psssql/archive/2013/09/30/error-during-installation-of-an-sql-server-failover-cluster-instance.aspx

Regards,
Satishbabu Gunukula

Monday, September 14, 2015

User domain\user does not have required permissions during SSRS configuration

I have installed SQL Server Reporting Services and configuration went smoothly. But I have received below error while trying to open the Repots URL i.e http://servername/Reports

User domain\user does not have required permissions. Verify that sufficient permissions have been granted and Windows User Account Control (UAC) restrictions have been addressed

Below posts helped me to resolve the issue.

https://social.msdn.microsoft.com/forums/sqlserver/en-US/9b5a8763-84ce-46d0-b011-067ad39223d1/does-not-have-required-permissions

https://social.technet.microsoft.com/Forums/systemcenter/en-US/313e2166-1956-4dd0-a694-0b506e1ddba9/srs-reporting-permission-error

I hope this will help for you.

Regards,
Satishbabu Gunukula